From 4cf14979d88ed58a607bc5e3a4e2117aa7517d37 Mon Sep 17 00:00:00 2001 From: James DeFelice Date: Thu, 4 Apr 2019 14:52:25 +0000 Subject: [PATCH 1/7] spec: added alpha_xxx options Enumerations, fields, messages, methods, and services support `alpha_xxx` designations, indicating that they are part of an experimental feature that may never evolve to "stable" status. --- csi.proto | 35 +++ lib/go/csi/csi.pb.go | 632 ++++++++++++++++++++++++------------------- spec.md | 35 +++ 3 files changed, 420 insertions(+), 282 deletions(-) diff --git a/csi.proto b/csi.proto index 4c4d225b..278cce83 100644 --- a/csi.proto +++ b/csi.proto @@ -8,10 +8,45 @@ import "google/protobuf/wrappers.proto"; option go_package = "csi"; +extend google.protobuf.EnumOptions { + // Indicates that this enum is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_enum = 1060; +} +extend google.protobuf.EnumValueOptions { + // Indicates that this enum value is OPTIONAL and part of an + // experimental API that may be deprecated and eventually removed + // between minor releases. + bool alpha_enum_value = 1060; +} extend google.protobuf.FieldOptions { // Indicates that a field MAY contain information that is sensitive // and MUST be treated as such (e.g. not logged). bool csi_secret = 1059; + + // Indicates that this field is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_field = 1060; +} +extend google.protobuf.MessageOptions { + // Indicates that this message is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_message = 1060; +} +extend google.protobuf.MethodOptions { + // Indicates that this method is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_method = 1060; +} +extend google.protobuf.ServiceOptions { + // Indicates that this service is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_service = 1060; } service Identity { rpc GetPluginInfo(GetPluginInfoRequest) diff --git a/lib/go/csi/csi.pb.go b/lib/go/csi/csi.pb.go index d84db2fc..e4d072d5 100644 --- a/lib/go/csi/csi.pb.go +++ b/lib/go/csi/csi.pb.go @@ -63,7 +63,7 @@ func (x PluginCapability_Service_Type) String() string { return proto.EnumName(PluginCapability_Service_Type_name, int32(x)) } func (PluginCapability_Service_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{4, 0, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{4, 0, 0} } type PluginCapability_VolumeExpansion_Type int32 @@ -124,7 +124,7 @@ func (x PluginCapability_VolumeExpansion_Type) String() string { return proto.EnumName(PluginCapability_VolumeExpansion_Type_name, int32(x)) } func (PluginCapability_VolumeExpansion_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{4, 1, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{4, 1, 0} } type VolumeCapability_AccessMode_Mode int32 @@ -168,7 +168,7 @@ func (x VolumeCapability_AccessMode_Mode) String() string { return proto.EnumName(VolumeCapability_AccessMode_Mode_name, int32(x)) } func (VolumeCapability_AccessMode_Mode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{10, 2, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{10, 2, 0} } type ControllerServiceCapability_RPC_Type int32 @@ -226,7 +226,7 @@ func (x ControllerServiceCapability_RPC_Type) String() string { return proto.EnumName(ControllerServiceCapability_RPC_Type_name, int32(x)) } func (ControllerServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{29, 0, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{29, 0, 0} } type VolumeUsage_Unit int32 @@ -252,7 +252,7 @@ func (x VolumeUsage_Unit) String() string { return proto.EnumName(VolumeUsage_Unit_name, int32(x)) } func (VolumeUsage_Unit) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{49, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{49, 0} } type NodeServiceCapability_RPC_Type int32 @@ -285,7 +285,7 @@ func (x NodeServiceCapability_RPC_Type) String() string { return proto.EnumName(NodeServiceCapability_RPC_Type_name, int32(x)) } func (NodeServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{52, 0, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{52, 0, 0} } type GetPluginInfoRequest struct { @@ -298,7 +298,7 @@ func (m *GetPluginInfoRequest) Reset() { *m = GetPluginInfoRequest{} } func (m *GetPluginInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoRequest) ProtoMessage() {} func (*GetPluginInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{0} } func (m *GetPluginInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoRequest.Unmarshal(m, b) @@ -340,7 +340,7 @@ func (m *GetPluginInfoResponse) Reset() { *m = GetPluginInfoResponse{} } func (m *GetPluginInfoResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoResponse) ProtoMessage() {} func (*GetPluginInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{1} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{1} } func (m *GetPluginInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoResponse.Unmarshal(m, b) @@ -391,7 +391,7 @@ func (m *GetPluginCapabilitiesRequest) Reset() { *m = GetPluginCapabilit func (m *GetPluginCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesRequest) ProtoMessage() {} func (*GetPluginCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{2} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{2} } func (m *GetPluginCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesRequest.Unmarshal(m, b) @@ -424,7 +424,7 @@ func (m *GetPluginCapabilitiesResponse) Reset() { *m = GetPluginCapabili func (m *GetPluginCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesResponse) ProtoMessage() {} func (*GetPluginCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{3} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{3} } func (m *GetPluginCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesResponse.Unmarshal(m, b) @@ -466,7 +466,7 @@ func (m *PluginCapability) Reset() { *m = PluginCapability{} } func (m *PluginCapability) String() string { return proto.CompactTextString(m) } func (*PluginCapability) ProtoMessage() {} func (*PluginCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{4} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{4} } func (m *PluginCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability.Unmarshal(m, b) @@ -608,7 +608,7 @@ func (m *PluginCapability_Service) Reset() { *m = PluginCapability_Servi func (m *PluginCapability_Service) String() string { return proto.CompactTextString(m) } func (*PluginCapability_Service) ProtoMessage() {} func (*PluginCapability_Service) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{4, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{4, 0} } func (m *PluginCapability_Service) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_Service.Unmarshal(m, b) @@ -646,7 +646,7 @@ func (m *PluginCapability_VolumeExpansion) Reset() { *m = PluginCapabili func (m *PluginCapability_VolumeExpansion) String() string { return proto.CompactTextString(m) } func (*PluginCapability_VolumeExpansion) ProtoMessage() {} func (*PluginCapability_VolumeExpansion) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{4, 1} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{4, 1} } func (m *PluginCapability_VolumeExpansion) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_VolumeExpansion.Unmarshal(m, b) @@ -683,7 +683,7 @@ func (m *ProbeRequest) Reset() { *m = ProbeRequest{} } func (m *ProbeRequest) String() string { return proto.CompactTextString(m) } func (*ProbeRequest) ProtoMessage() {} func (*ProbeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{5} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{5} } func (m *ProbeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeRequest.Unmarshal(m, b) @@ -734,7 +734,7 @@ func (m *ProbeResponse) Reset() { *m = ProbeResponse{} } func (m *ProbeResponse) String() string { return proto.CompactTextString(m) } func (*ProbeResponse) ProtoMessage() {} func (*ProbeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{6} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{6} } func (m *ProbeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeResponse.Unmarshal(m, b) @@ -843,7 +843,7 @@ func (m *CreateVolumeRequest) Reset() { *m = CreateVolumeRequest{} } func (m *CreateVolumeRequest) String() string { return proto.CompactTextString(m) } func (*CreateVolumeRequest) ProtoMessage() {} func (*CreateVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{7} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{7} } func (m *CreateVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeRequest.Unmarshal(m, b) @@ -928,7 +928,7 @@ func (m *VolumeContentSource) Reset() { *m = VolumeContentSource{} } func (m *VolumeContentSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource) ProtoMessage() {} func (*VolumeContentSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{8} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{8} } func (m *VolumeContentSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource.Unmarshal(m, b) @@ -1074,7 +1074,7 @@ func (m *VolumeContentSource_SnapshotSource) Reset() { *m = VolumeConten func (m *VolumeContentSource_SnapshotSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_SnapshotSource) ProtoMessage() {} func (*VolumeContentSource_SnapshotSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{8, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{8, 0} } func (m *VolumeContentSource_SnapshotSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_SnapshotSource.Unmarshal(m, b) @@ -1115,7 +1115,7 @@ func (m *VolumeContentSource_VolumeSource) Reset() { *m = VolumeContentS func (m *VolumeContentSource_VolumeSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_VolumeSource) ProtoMessage() {} func (*VolumeContentSource_VolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{8, 1} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{8, 1} } func (m *VolumeContentSource_VolumeSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_VolumeSource.Unmarshal(m, b) @@ -1156,7 +1156,7 @@ func (m *CreateVolumeResponse) Reset() { *m = CreateVolumeResponse{} } func (m *CreateVolumeResponse) String() string { return proto.CompactTextString(m) } func (*CreateVolumeResponse) ProtoMessage() {} func (*CreateVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{9} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{9} } func (m *CreateVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeResponse.Unmarshal(m, b) @@ -1203,7 +1203,7 @@ func (m *VolumeCapability) Reset() { *m = VolumeCapability{} } func (m *VolumeCapability) String() string { return proto.CompactTextString(m) } func (*VolumeCapability) ProtoMessage() {} func (*VolumeCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{10} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{10} } func (m *VolumeCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability.Unmarshal(m, b) @@ -1352,7 +1352,7 @@ func (m *VolumeCapability_BlockVolume) Reset() { *m = VolumeCapability_B func (m *VolumeCapability_BlockVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_BlockVolume) ProtoMessage() {} func (*VolumeCapability_BlockVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{10, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{10, 0} } func (m *VolumeCapability_BlockVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_BlockVolume.Unmarshal(m, b) @@ -1392,7 +1392,7 @@ func (m *VolumeCapability_MountVolume) Reset() { *m = VolumeCapability_M func (m *VolumeCapability_MountVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_MountVolume) ProtoMessage() {} func (*VolumeCapability_MountVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{10, 1} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{10, 1} } func (m *VolumeCapability_MountVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_MountVolume.Unmarshal(m, b) @@ -1439,7 +1439,7 @@ func (m *VolumeCapability_AccessMode) Reset() { *m = VolumeCapability_Ac func (m *VolumeCapability_AccessMode) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_AccessMode) ProtoMessage() {} func (*VolumeCapability_AccessMode) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{10, 2} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{10, 2} } func (m *VolumeCapability_AccessMode) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_AccessMode.Unmarshal(m, b) @@ -1487,7 +1487,7 @@ func (m *CapacityRange) Reset() { *m = CapacityRange{} } func (m *CapacityRange) String() string { return proto.CompactTextString(m) } func (*CapacityRange) ProtoMessage() {} func (*CapacityRange) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{11} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{11} } func (m *CapacityRange) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CapacityRange.Unmarshal(m, b) @@ -1592,7 +1592,7 @@ func (m *Volume) Reset() { *m = Volume{} } func (m *Volume) String() string { return proto.CompactTextString(m) } func (*Volume) ProtoMessage() {} func (*Volume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{12} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{12} } func (m *Volume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Volume.Unmarshal(m, b) @@ -1784,7 +1784,7 @@ func (m *TopologyRequirement) Reset() { *m = TopologyRequirement{} } func (m *TopologyRequirement) String() string { return proto.CompactTextString(m) } func (*TopologyRequirement) ProtoMessage() {} func (*TopologyRequirement) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{13} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{13} } func (m *TopologyRequirement) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TopologyRequirement.Unmarshal(m, b) @@ -1858,7 +1858,7 @@ func (m *Topology) Reset() { *m = Topology{} } func (m *Topology) String() string { return proto.CompactTextString(m) } func (*Topology) ProtoMessage() {} func (*Topology) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{14} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{14} } func (m *Topology) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Topology.Unmarshal(m, b) @@ -1902,7 +1902,7 @@ func (m *DeleteVolumeRequest) Reset() { *m = DeleteVolumeRequest{} } func (m *DeleteVolumeRequest) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeRequest) ProtoMessage() {} func (*DeleteVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{15} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{15} } func (m *DeleteVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeRequest.Unmarshal(m, b) @@ -1946,7 +1946,7 @@ func (m *DeleteVolumeResponse) Reset() { *m = DeleteVolumeResponse{} } func (m *DeleteVolumeResponse) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeResponse) ProtoMessage() {} func (*DeleteVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{16} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{16} } func (m *DeleteVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeResponse.Unmarshal(m, b) @@ -2000,7 +2000,7 @@ func (m *ControllerPublishVolumeRequest) Reset() { *m = ControllerPublis func (m *ControllerPublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeRequest) ProtoMessage() {} func (*ControllerPublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{17} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{17} } func (m *ControllerPublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeRequest.Unmarshal(m, b) @@ -2086,7 +2086,7 @@ func (m *ControllerPublishVolumeResponse) Reset() { *m = ControllerPubli func (m *ControllerPublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeResponse) ProtoMessage() {} func (*ControllerPublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{18} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{18} } func (m *ControllerPublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeResponse.Unmarshal(m, b) @@ -2137,7 +2137,7 @@ func (m *ControllerUnpublishVolumeRequest) Reset() { *m = ControllerUnpu func (m *ControllerUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeRequest) ProtoMessage() {} func (*ControllerUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{19} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{19} } func (m *ControllerUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeRequest.Unmarshal(m, b) @@ -2188,7 +2188,7 @@ func (m *ControllerUnpublishVolumeResponse) Reset() { *m = ControllerUnp func (m *ControllerUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeResponse) ProtoMessage() {} func (*ControllerUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{20} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{20} } func (m *ControllerUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeResponse.Unmarshal(m, b) @@ -2235,7 +2235,7 @@ func (m *ValidateVolumeCapabilitiesRequest) Reset() { *m = ValidateVolum func (m *ValidateVolumeCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesRequest) ProtoMessage() {} func (*ValidateVolumeCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{21} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{21} } func (m *ValidateVolumeCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesRequest.Unmarshal(m, b) @@ -2313,7 +2313,7 @@ func (m *ValidateVolumeCapabilitiesResponse) Reset() { *m = ValidateVolu func (m *ValidateVolumeCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesResponse) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{22} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{22} } func (m *ValidateVolumeCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse.Unmarshal(m, b) @@ -2370,7 +2370,7 @@ func (m *ValidateVolumeCapabilitiesResponse_Confirmed) String() string { } func (*ValidateVolumeCapabilitiesResponse_Confirmed) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse_Confirmed) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{22, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{22, 0} } func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse_Confirmed.Unmarshal(m, b) @@ -2435,7 +2435,7 @@ func (m *ListVolumesRequest) Reset() { *m = ListVolumesRequest{} } func (m *ListVolumesRequest) String() string { return proto.CompactTextString(m) } func (*ListVolumesRequest) ProtoMessage() {} func (*ListVolumesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{23} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{23} } func (m *ListVolumesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesRequest.Unmarshal(m, b) @@ -2487,7 +2487,7 @@ func (m *ListVolumesResponse) Reset() { *m = ListVolumesResponse{} } func (m *ListVolumesResponse) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse) ProtoMessage() {} func (*ListVolumesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{24} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{24} } func (m *ListVolumesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse.Unmarshal(m, b) @@ -2532,7 +2532,7 @@ func (m *ListVolumesResponse_Entry) Reset() { *m = ListVolumesResponse_E func (m *ListVolumesResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse_Entry) ProtoMessage() {} func (*ListVolumesResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{24, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{24, 0} } func (m *ListVolumesResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse_Entry.Unmarshal(m, b) @@ -2587,7 +2587,7 @@ func (m *GetCapacityRequest) Reset() { *m = GetCapacityRequest{} } func (m *GetCapacityRequest) String() string { return proto.CompactTextString(m) } func (*GetCapacityRequest) ProtoMessage() {} func (*GetCapacityRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{25} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{25} } func (m *GetCapacityRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityRequest.Unmarshal(m, b) @@ -2645,7 +2645,7 @@ func (m *GetCapacityResponse) Reset() { *m = GetCapacityResponse{} } func (m *GetCapacityResponse) String() string { return proto.CompactTextString(m) } func (*GetCapacityResponse) ProtoMessage() {} func (*GetCapacityResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{26} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{26} } func (m *GetCapacityResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityResponse.Unmarshal(m, b) @@ -2682,7 +2682,7 @@ func (m *ControllerGetCapabilitiesRequest) Reset() { *m = ControllerGetC func (m *ControllerGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesRequest) ProtoMessage() {} func (*ControllerGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{27} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{27} } func (m *ControllerGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesRequest.Unmarshal(m, b) @@ -2715,7 +2715,7 @@ func (m *ControllerGetCapabilitiesResponse) Reset() { *m = ControllerGet func (m *ControllerGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesResponse) ProtoMessage() {} func (*ControllerGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{28} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{28} } func (m *ControllerGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesResponse.Unmarshal(m, b) @@ -2756,7 +2756,7 @@ func (m *ControllerServiceCapability) Reset() { *m = ControllerServiceCa func (m *ControllerServiceCapability) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability) ProtoMessage() {} func (*ControllerServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{29} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{29} } func (m *ControllerServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability.Unmarshal(m, b) @@ -2866,7 +2866,7 @@ func (m *ControllerServiceCapability_RPC) Reset() { *m = ControllerServi func (m *ControllerServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_RPC) ProtoMessage() {} func (*ControllerServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{29, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{29, 0} } func (m *ControllerServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_RPC.Unmarshal(m, b) @@ -2928,7 +2928,7 @@ func (m *CreateSnapshotRequest) Reset() { *m = CreateSnapshotRequest{} } func (m *CreateSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotRequest) ProtoMessage() {} func (*CreateSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{30} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{30} } func (m *CreateSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotRequest.Unmarshal(m, b) @@ -2990,7 +2990,7 @@ func (m *CreateSnapshotResponse) Reset() { *m = CreateSnapshotResponse{} func (m *CreateSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotResponse) ProtoMessage() {} func (*CreateSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{31} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{31} } func (m *CreateSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotResponse.Unmarshal(m, b) @@ -3057,7 +3057,7 @@ func (m *Snapshot) Reset() { *m = Snapshot{} } func (m *Snapshot) String() string { return proto.CompactTextString(m) } func (*Snapshot) ProtoMessage() {} func (*Snapshot) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{32} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{32} } func (m *Snapshot) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Snapshot.Unmarshal(m, b) @@ -3129,7 +3129,7 @@ func (m *DeleteSnapshotRequest) Reset() { *m = DeleteSnapshotRequest{} } func (m *DeleteSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotRequest) ProtoMessage() {} func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{33} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{33} } func (m *DeleteSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotRequest.Unmarshal(m, b) @@ -3173,7 +3173,7 @@ func (m *DeleteSnapshotResponse) Reset() { *m = DeleteSnapshotResponse{} func (m *DeleteSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotResponse) ProtoMessage() {} func (*DeleteSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{34} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{34} } func (m *DeleteSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotResponse.Unmarshal(m, b) @@ -3228,7 +3228,7 @@ func (m *ListSnapshotsRequest) Reset() { *m = ListSnapshotsRequest{} } func (m *ListSnapshotsRequest) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsRequest) ProtoMessage() {} func (*ListSnapshotsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{35} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{35} } func (m *ListSnapshotsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsRequest.Unmarshal(m, b) @@ -3294,7 +3294,7 @@ func (m *ListSnapshotsResponse) Reset() { *m = ListSnapshotsResponse{} } func (m *ListSnapshotsResponse) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse) ProtoMessage() {} func (*ListSnapshotsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{36} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{36} } func (m *ListSnapshotsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse.Unmarshal(m, b) @@ -3339,7 +3339,7 @@ func (m *ListSnapshotsResponse_Entry) Reset() { *m = ListSnapshotsRespon func (m *ListSnapshotsResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse_Entry) ProtoMessage() {} func (*ListSnapshotsResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{36, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{36, 0} } func (m *ListSnapshotsResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse_Entry.Unmarshal(m, b) @@ -3384,7 +3384,7 @@ func (m *ControllerExpandVolumeRequest) Reset() { *m = ControllerExpandV func (m *ControllerExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeRequest) ProtoMessage() {} func (*ControllerExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{37} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{37} } func (m *ControllerExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeRequest.Unmarshal(m, b) @@ -3441,7 +3441,7 @@ func (m *ControllerExpandVolumeResponse) Reset() { *m = ControllerExpand func (m *ControllerExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeResponse) ProtoMessage() {} func (*ControllerExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{38} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{38} } func (m *ControllerExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeResponse.Unmarshal(m, b) @@ -3516,7 +3516,7 @@ func (m *NodeStageVolumeRequest) Reset() { *m = NodeStageVolumeRequest{} func (m *NodeStageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeRequest) ProtoMessage() {} func (*NodeStageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{39} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{39} } func (m *NodeStageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeRequest.Unmarshal(m, b) @@ -3588,7 +3588,7 @@ func (m *NodeStageVolumeResponse) Reset() { *m = NodeStageVolumeResponse func (m *NodeStageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeResponse) ProtoMessage() {} func (*NodeStageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{40} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{40} } func (m *NodeStageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeResponse.Unmarshal(m, b) @@ -3624,7 +3624,7 @@ func (m *NodeUnstageVolumeRequest) Reset() { *m = NodeUnstageVolumeReque func (m *NodeUnstageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeRequest) ProtoMessage() {} func (*NodeUnstageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{41} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{41} } func (m *NodeUnstageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeRequest.Unmarshal(m, b) @@ -3668,7 +3668,7 @@ func (m *NodeUnstageVolumeResponse) Reset() { *m = NodeUnstageVolumeResp func (m *NodeUnstageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeResponse) ProtoMessage() {} func (*NodeUnstageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{42} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{42} } func (m *NodeUnstageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeResponse.Unmarshal(m, b) @@ -3742,7 +3742,7 @@ func (m *NodePublishVolumeRequest) Reset() { *m = NodePublishVolumeReque func (m *NodePublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeRequest) ProtoMessage() {} func (*NodePublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{43} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{43} } func (m *NodePublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeRequest.Unmarshal(m, b) @@ -3828,7 +3828,7 @@ func (m *NodePublishVolumeResponse) Reset() { *m = NodePublishVolumeResp func (m *NodePublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeResponse) ProtoMessage() {} func (*NodePublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{44} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{44} } func (m *NodePublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeResponse.Unmarshal(m, b) @@ -3865,7 +3865,7 @@ func (m *NodeUnpublishVolumeRequest) Reset() { *m = NodeUnpublishVolumeR func (m *NodeUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeRequest) ProtoMessage() {} func (*NodeUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{45} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{45} } func (m *NodeUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeRequest.Unmarshal(m, b) @@ -3909,7 +3909,7 @@ func (m *NodeUnpublishVolumeResponse) Reset() { *m = NodeUnpublishVolume func (m *NodeUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeResponse) ProtoMessage() {} func (*NodeUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{46} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{46} } func (m *NodeUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeResponse.Unmarshal(m, b) @@ -3947,7 +3947,7 @@ func (m *NodeGetVolumeStatsRequest) Reset() { *m = NodeGetVolumeStatsReq func (m *NodeGetVolumeStatsRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsRequest) ProtoMessage() {} func (*NodeGetVolumeStatsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{47} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{47} } func (m *NodeGetVolumeStatsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsRequest.Unmarshal(m, b) @@ -3993,7 +3993,7 @@ func (m *NodeGetVolumeStatsResponse) Reset() { *m = NodeGetVolumeStatsRe func (m *NodeGetVolumeStatsResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsResponse) ProtoMessage() {} func (*NodeGetVolumeStatsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{48} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{48} } func (m *NodeGetVolumeStatsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsResponse.Unmarshal(m, b) @@ -4041,7 +4041,7 @@ func (m *VolumeUsage) Reset() { *m = VolumeUsage{} } func (m *VolumeUsage) String() string { return proto.CompactTextString(m) } func (*VolumeUsage) ProtoMessage() {} func (*VolumeUsage) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{49} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{49} } func (m *VolumeUsage) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeUsage.Unmarshal(m, b) @@ -4099,7 +4099,7 @@ func (m *NodeGetCapabilitiesRequest) Reset() { *m = NodeGetCapabilitiesR func (m *NodeGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesRequest) ProtoMessage() {} func (*NodeGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{50} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{50} } func (m *NodeGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesRequest.Unmarshal(m, b) @@ -4132,7 +4132,7 @@ func (m *NodeGetCapabilitiesResponse) Reset() { *m = NodeGetCapabilities func (m *NodeGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesResponse) ProtoMessage() {} func (*NodeGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{51} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{51} } func (m *NodeGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesResponse.Unmarshal(m, b) @@ -4173,7 +4173,7 @@ func (m *NodeServiceCapability) Reset() { *m = NodeServiceCapability{} } func (m *NodeServiceCapability) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability) ProtoMessage() {} func (*NodeServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{52} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{52} } func (m *NodeServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability.Unmarshal(m, b) @@ -4283,7 +4283,7 @@ func (m *NodeServiceCapability_RPC) Reset() { *m = NodeServiceCapability func (m *NodeServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_RPC) ProtoMessage() {} func (*NodeServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{52, 0} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{52, 0} } func (m *NodeServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_RPC.Unmarshal(m, b) @@ -4320,7 +4320,7 @@ func (m *NodeGetInfoRequest) Reset() { *m = NodeGetInfoRequest{} } func (m *NodeGetInfoRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoRequest) ProtoMessage() {} func (*NodeGetInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{53} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{53} } func (m *NodeGetInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoRequest.Unmarshal(m, b) @@ -4383,7 +4383,7 @@ func (m *NodeGetInfoResponse) Reset() { *m = NodeGetInfoResponse{} } func (m *NodeGetInfoResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoResponse) ProtoMessage() {} func (*NodeGetInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{54} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{54} } func (m *NodeGetInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoResponse.Unmarshal(m, b) @@ -4445,7 +4445,7 @@ func (m *NodeExpandVolumeRequest) Reset() { *m = NodeExpandVolumeRequest func (m *NodeExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeRequest) ProtoMessage() {} func (*NodeExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{55} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{55} } func (m *NodeExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeRequest.Unmarshal(m, b) @@ -4498,7 +4498,7 @@ func (m *NodeExpandVolumeResponse) Reset() { *m = NodeExpandVolumeRespon func (m *NodeExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeResponse) ProtoMessage() {} func (*NodeExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2c5455657a82ae49, []int{56} + return fileDescriptor_csi_2ca1bb642d957c8c, []int{56} } func (m *NodeExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeResponse.Unmarshal(m, b) @@ -4525,6 +4525,24 @@ func (m *NodeExpandVolumeResponse) GetCapacityBytes() int64 { return 0 } +var E_AlphaEnum = &proto.ExtensionDesc{ + ExtendedType: (*descriptor.EnumOptions)(nil), + ExtensionType: (*bool)(nil), + Field: 1060, + Name: "csi.v1.alpha_enum", + Tag: "varint,1060,opt,name=alpha_enum,json=alphaEnum", + Filename: "github.com/container-storage-interface/spec/csi.proto", +} + +var E_AlphaEnumValue = &proto.ExtensionDesc{ + ExtendedType: (*descriptor.EnumValueOptions)(nil), + ExtensionType: (*bool)(nil), + Field: 1060, + Name: "csi.v1.alpha_enum_value", + Tag: "varint,1060,opt,name=alpha_enum_value,json=alphaEnumValue", + Filename: "github.com/container-storage-interface/spec/csi.proto", +} + var E_CsiSecret = &proto.ExtensionDesc{ ExtendedType: (*descriptor.FieldOptions)(nil), ExtensionType: (*bool)(nil), @@ -4534,6 +4552,42 @@ var E_CsiSecret = &proto.ExtensionDesc{ Filename: "github.com/container-storage-interface/spec/csi.proto", } +var E_AlphaField = &proto.ExtensionDesc{ + ExtendedType: (*descriptor.FieldOptions)(nil), + ExtensionType: (*bool)(nil), + Field: 1060, + Name: "csi.v1.alpha_field", + Tag: "varint,1060,opt,name=alpha_field,json=alphaField", + Filename: "github.com/container-storage-interface/spec/csi.proto", +} + +var E_AlphaMessage = &proto.ExtensionDesc{ + ExtendedType: (*descriptor.MessageOptions)(nil), + ExtensionType: (*bool)(nil), + Field: 1060, + Name: "csi.v1.alpha_message", + Tag: "varint,1060,opt,name=alpha_message,json=alphaMessage", + Filename: "github.com/container-storage-interface/spec/csi.proto", +} + +var E_AlphaMethod = &proto.ExtensionDesc{ + ExtendedType: (*descriptor.MethodOptions)(nil), + ExtensionType: (*bool)(nil), + Field: 1060, + Name: "csi.v1.alpha_method", + Tag: "varint,1060,opt,name=alpha_method,json=alphaMethod", + Filename: "github.com/container-storage-interface/spec/csi.proto", +} + +var E_AlphaService = &proto.ExtensionDesc{ + ExtendedType: (*descriptor.ServiceOptions)(nil), + ExtensionType: (*bool)(nil), + Field: 1060, + Name: "csi.v1.alpha_service", + Tag: "varint,1060,opt,name=alpha_service,json=alphaService", + Filename: "github.com/container-storage-interface/spec/csi.proto", +} + func init() { proto.RegisterType((*GetPluginInfoRequest)(nil), "csi.v1.GetPluginInfoRequest") proto.RegisterType((*GetPluginInfoResponse)(nil), "csi.v1.GetPluginInfoResponse") @@ -4636,7 +4690,13 @@ func init() { proto.RegisterEnum("csi.v1.ControllerServiceCapability_RPC_Type", ControllerServiceCapability_RPC_Type_name, ControllerServiceCapability_RPC_Type_value) proto.RegisterEnum("csi.v1.VolumeUsage_Unit", VolumeUsage_Unit_name, VolumeUsage_Unit_value) proto.RegisterEnum("csi.v1.NodeServiceCapability_RPC_Type", NodeServiceCapability_RPC_Type_name, NodeServiceCapability_RPC_Type_value) + proto.RegisterExtension(E_AlphaEnum) + proto.RegisterExtension(E_AlphaEnumValue) proto.RegisterExtension(E_CsiSecret) + proto.RegisterExtension(E_AlphaField) + proto.RegisterExtension(E_AlphaMessage) + proto.RegisterExtension(E_AlphaMethod) + proto.RegisterExtension(E_AlphaService) } // Reference imports to suppress errors if they are not otherwise used. @@ -5500,214 +5560,222 @@ var _Node_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_2c5455657a82ae49) + proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_2ca1bb642d957c8c) } -var fileDescriptor_csi_2c5455657a82ae49 = []byte{ - // 3276 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5a, 0x4d, 0x70, 0xdb, 0xc6, - 0x15, 0x26, 0xf8, 0x23, 0x51, 0x4f, 0x3f, 0xa6, 0x57, 0x3f, 0xa6, 0x21, 0xc9, 0x96, 0xe1, 0xd8, - 0x51, 0x1c, 0x9b, 0x6a, 0x94, 0x38, 0xd3, 0xd8, 0x4e, 0x1b, 0x8a, 0xa2, 0x25, 0xc6, 0x34, 0xa9, - 0x80, 0x94, 0x1c, 0xbb, 0xcd, 0x20, 0x10, 0xb9, 0xa2, 0x31, 0x21, 0x01, 0x06, 0x00, 0x55, 0xa9, - 0x97, 0xce, 0xb4, 0xa7, 0x4c, 0xcf, 0x9d, 0xb6, 0xa7, 0xce, 0xa4, 0xbd, 0xb4, 0xd3, 0x4c, 0x4f, +var fileDescriptor_csi_2ca1bb642d957c8c = []byte{ + // 3398 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x4d, 0x70, 0xdb, 0xc6, + 0x15, 0x16, 0xf8, 0xa3, 0x9f, 0x47, 0x89, 0xa6, 0x57, 0x3f, 0xa6, 0x21, 0xc9, 0x96, 0xe1, 0xd8, + 0x51, 0x1c, 0x9b, 0x6e, 0x9c, 0x38, 0xd3, 0xc8, 0x4e, 0x13, 0x92, 0xa2, 0x25, 0xc6, 0x34, 0xa9, + 0x80, 0x94, 0x1c, 0xbb, 0xcd, 0x20, 0x10, 0xb9, 0xa2, 0x31, 0x21, 0x01, 0x06, 0x00, 0x55, 0xab, + 0x97, 0xce, 0xb4, 0xa7, 0x4c, 0xcf, 0x9d, 0xb6, 0xa7, 0xce, 0xa4, 0xb9, 0xb4, 0xd3, 0x4c, 0x4f, 0x9d, 0x1e, 0x3b, 0xd3, 0x63, 0x0f, 0xbd, 0xb6, 0x93, 0x4b, 0xae, 0x9d, 0x4c, 0x3b, 0x93, 0xe9, - 0xb1, 0xa7, 0x0e, 0xb0, 0x0b, 0x10, 0x0b, 0x02, 0x20, 0x69, 0xd9, 0xe3, 0x43, 0x4f, 0x24, 0xde, - 0xbe, 0x7d, 0xfb, 0xf6, 0xe1, 0xbd, 0xb7, 0xef, 0x7d, 0x0b, 0xb8, 0xdd, 0x52, 0xcc, 0xa7, 0xbd, - 0xc3, 0x5c, 0x43, 0xeb, 0x6c, 0x34, 0x34, 0xd5, 0x94, 0x15, 0x15, 0xeb, 0xb7, 0x0c, 0x53, 0xd3, - 0xe5, 0x16, 0xbe, 0xa5, 0xa8, 0x26, 0xd6, 0x8f, 0xe4, 0x06, 0xde, 0x30, 0xba, 0xb8, 0xb1, 0xd1, - 0x30, 0x94, 0x5c, 0x57, 0xd7, 0x4c, 0x0d, 0x4d, 0x58, 0x7f, 0x8f, 0xdf, 0xe0, 0xd7, 0x5a, 0x9a, - 0xd6, 0x6a, 0xe3, 0x0d, 0x9b, 0x7a, 0xd8, 0x3b, 0xda, 0x68, 0x62, 0xa3, 0xa1, 0x2b, 0x5d, 0x53, - 0xd3, 0x09, 0x27, 0x7f, 0xd9, 0xcf, 0x61, 0x2a, 0x1d, 0x6c, 0x98, 0x72, 0xa7, 0x4b, 0x19, 0x2e, - 0xf9, 0x19, 0x7e, 0xa0, 0xcb, 0xdd, 0x2e, 0xd6, 0x0d, 0x32, 0x2e, 0x2c, 0xc1, 0xc2, 0x0e, 0x36, - 0xf7, 0xda, 0xbd, 0x96, 0xa2, 0x96, 0xd4, 0x23, 0x4d, 0xc4, 0x9f, 0xf6, 0xb0, 0x61, 0x0a, 0xff, - 0xe0, 0x60, 0xd1, 0x37, 0x60, 0x74, 0x35, 0xd5, 0xc0, 0x08, 0x41, 0x52, 0x95, 0x3b, 0x38, 0xcb, - 0xad, 0x71, 0xeb, 0x53, 0xa2, 0xfd, 0x1f, 0x5d, 0x83, 0xb9, 0x63, 0xac, 0x36, 0x35, 0x5d, 0x3a, - 0xc6, 0xba, 0xa1, 0x68, 0x6a, 0x36, 0x6e, 0x8f, 0xce, 0x12, 0xea, 0x01, 0x21, 0xa2, 0x1d, 0x48, - 0x77, 0x64, 0x55, 0x39, 0xc2, 0x86, 0x99, 0x4d, 0xac, 0x25, 0xd6, 0xa7, 0x37, 0x5f, 0xcf, 0x91, - 0xad, 0xe6, 0x02, 0xd7, 0xca, 0x3d, 0xa4, 0xdc, 0x45, 0xd5, 0xd4, 0x4f, 0x45, 0x77, 0x32, 0x7f, - 0x17, 0x66, 0x99, 0x21, 0x94, 0x81, 0xc4, 0x27, 0xf8, 0x94, 0xea, 0x64, 0xfd, 0x45, 0x0b, 0x90, - 0x3a, 0x96, 0xdb, 0x3d, 0x4c, 0x35, 0x21, 0x0f, 0x77, 0xe2, 0xdf, 0xe6, 0x84, 0x4b, 0xb0, 0xe2, - 0xae, 0x56, 0x90, 0xbb, 0xf2, 0xa1, 0xd2, 0x56, 0x4c, 0x05, 0x1b, 0xce, 0xd6, 0x3f, 0x82, 0xd5, - 0x90, 0x71, 0x6a, 0x81, 0x7b, 0x30, 0xd3, 0xf0, 0xd0, 0xb3, 0x9c, 0xbd, 0x95, 0xac, 0xb3, 0x15, - 0xdf, 0xcc, 0x53, 0x91, 0xe1, 0x16, 0xfe, 0x96, 0x80, 0x8c, 0x9f, 0x05, 0xdd, 0x83, 0x49, 0x03, - 0xeb, 0xc7, 0x4a, 0x83, 0xd8, 0x75, 0x7a, 0x73, 0x2d, 0x4c, 0x5a, 0xae, 0x46, 0xf8, 0x76, 0x63, - 0xa2, 0x33, 0x05, 0xed, 0x43, 0xe6, 0x58, 0x6b, 0xf7, 0x3a, 0x58, 0xc2, 0x27, 0x5d, 0x59, 0x75, - 0x5f, 0xc0, 0xf4, 0xe6, 0x7a, 0xa8, 0x98, 0x03, 0x7b, 0x42, 0xd1, 0xe1, 0xdf, 0x8d, 0x89, 0xe7, - 0x8e, 0x59, 0x12, 0xff, 0x73, 0x0e, 0x26, 0xe9, 0x6a, 0xe8, 0x1d, 0x48, 0x9a, 0xa7, 0x5d, 0xa2, - 0xdd, 0xdc, 0xe6, 0xb5, 0x61, 0xda, 0xe5, 0xea, 0xa7, 0x5d, 0x2c, 0xda, 0x53, 0x84, 0x0f, 0x20, - 0x69, 0x3d, 0xa1, 0x69, 0x98, 0xdc, 0xaf, 0x3c, 0xa8, 0x54, 0x1f, 0x55, 0x32, 0x31, 0xb4, 0x04, - 0xa8, 0x50, 0xad, 0xd4, 0xc5, 0x6a, 0xb9, 0x5c, 0x14, 0xa5, 0x5a, 0x51, 0x3c, 0x28, 0x15, 0x8a, - 0x19, 0x0e, 0xbd, 0x02, 0x6b, 0x07, 0xd5, 0xf2, 0xfe, 0xc3, 0xa2, 0x94, 0x2f, 0x14, 0x8a, 0xb5, - 0x5a, 0x69, 0xab, 0x54, 0x2e, 0xd5, 0x1f, 0x4b, 0x85, 0x6a, 0xa5, 0x56, 0x17, 0xf3, 0xa5, 0x4a, - 0xbd, 0x96, 0x89, 0xf3, 0x3f, 0xe6, 0xe0, 0x9c, 0x6f, 0x03, 0x28, 0xcf, 0x68, 0x78, 0x6b, 0xd4, - 0x8d, 0x7b, 0x35, 0xbd, 0x19, 0xa4, 0x29, 0xc0, 0x44, 0xb5, 0x52, 0x2e, 0x55, 0x2c, 0xed, 0xa6, - 0x61, 0xb2, 0x7a, 0xff, 0xbe, 0xfd, 0x10, 0xdf, 0x9a, 0x20, 0x0b, 0x0a, 0x73, 0x30, 0xb3, 0xa7, - 0x6b, 0x87, 0xd8, 0xf1, 0x9f, 0x3c, 0xcc, 0xd2, 0x67, 0xea, 0x2f, 0xdf, 0x82, 0x94, 0x8e, 0xe5, - 0xe6, 0x29, 0x7d, 0xb5, 0x7c, 0x8e, 0xc4, 0x64, 0xce, 0x89, 0xc9, 0xdc, 0x96, 0xa6, 0xb5, 0x0f, - 0x2c, 0xff, 0x14, 0x09, 0xa3, 0xf0, 0x4d, 0x12, 0xe6, 0x0b, 0x3a, 0x96, 0x4d, 0x4c, 0xb4, 0xa5, - 0xa2, 0x03, 0x63, 0xef, 0x1e, 0xcc, 0x59, 0xfe, 0xd5, 0x50, 0xcc, 0x53, 0x49, 0x97, 0xd5, 0x16, - 0xa6, 0xaf, 0x7e, 0xd1, 0xb1, 0x40, 0x81, 0x8e, 0x8a, 0xd6, 0xa0, 0x38, 0xdb, 0xf0, 0x3e, 0xa2, - 0x12, 0xcc, 0x53, 0xd7, 0x61, 0x5c, 0x3a, 0xc1, 0xba, 0x34, 0xd1, 0xc2, 0xe3, 0xd2, 0xe8, 0x98, - 0xa5, 0x28, 0xd8, 0x40, 0x0f, 0x00, 0xba, 0xb2, 0x2e, 0x77, 0xb0, 0x89, 0x75, 0x23, 0x9b, 0x64, - 0xe3, 0x3b, 0x60, 0x37, 0xb9, 0x3d, 0x97, 0x9b, 0xc4, 0xb7, 0x67, 0x3a, 0xda, 0xb1, 0x02, 0xa2, - 0xa1, 0x63, 0xd3, 0xc8, 0xa6, 0x6c, 0x49, 0xeb, 0x51, 0x92, 0x6a, 0x84, 0xd5, 0x16, 0xb3, 0x95, - 0xf8, 0xc5, 0x16, 0x27, 0x3a, 0xb3, 0x51, 0x15, 0x16, 0x9d, 0x0d, 0x6a, 0xaa, 0x89, 0x55, 0x53, - 0x32, 0xb4, 0x9e, 0xde, 0xc0, 0xd9, 0x09, 0xdb, 0x4a, 0xcb, 0xbe, 0x2d, 0x12, 0x9e, 0x9a, 0xcd, - 0x22, 0x52, 0xd3, 0x30, 0x44, 0xf4, 0x04, 0x78, 0xb9, 0xd1, 0xc0, 0x86, 0xa1, 0x10, 0x5b, 0x48, - 0x3a, 0xfe, 0xb4, 0xa7, 0xe8, 0xb8, 0x83, 0x55, 0xd3, 0xc8, 0x4e, 0xb2, 0x52, 0xeb, 0x5a, 0x57, - 0x6b, 0x6b, 0xad, 0x53, 0xb1, 0xcf, 0x23, 0x5e, 0x64, 0xa6, 0x7b, 0x46, 0x0c, 0xfe, 0x5d, 0x38, - 0xe7, 0x33, 0xca, 0x38, 0x99, 0x8d, 0xbf, 0x03, 0x33, 0x5e, 0x4b, 0x8c, 0x95, 0x15, 0x7f, 0x1a, - 0x87, 0xf9, 0x00, 0x1b, 0xa0, 0x5d, 0x48, 0x1b, 0xaa, 0xdc, 0x35, 0x9e, 0x6a, 0x26, 0xf5, 0xdf, - 0x1b, 0x11, 0x26, 0xcb, 0xd5, 0x28, 0x2f, 0x79, 0xdc, 0x8d, 0x89, 0xee, 0x6c, 0xb4, 0x05, 0x13, - 0xc4, 0x9e, 0xfe, 0xdc, 0x14, 0x24, 0x87, 0xd0, 0x5c, 0x29, 0x74, 0x26, 0xff, 0x06, 0xcc, 0xb1, - 0x2b, 0xa0, 0xcb, 0x30, 0xed, 0xac, 0x20, 0x29, 0x4d, 0xba, 0x57, 0x70, 0x48, 0xa5, 0x26, 0xff, - 0x3a, 0xcc, 0x78, 0x85, 0xa1, 0x65, 0x98, 0xa2, 0x0e, 0xe1, 0xb2, 0xa7, 0x09, 0xa1, 0xd4, 0x74, - 0x63, 0xfa, 0x3b, 0xb0, 0xc0, 0xfa, 0x19, 0x0d, 0xe5, 0xeb, 0xee, 0x1e, 0x88, 0x2d, 0xe6, 0xd8, - 0x3d, 0x38, 0x7a, 0x0a, 0xbf, 0x4b, 0x42, 0xc6, 0x1f, 0x34, 0xe8, 0x1e, 0xa4, 0x0e, 0xdb, 0x5a, - 0xe3, 0x13, 0x3a, 0xf7, 0x95, 0xb0, 0xe8, 0xca, 0x6d, 0x59, 0x5c, 0x84, 0xba, 0x1b, 0x13, 0xc9, - 0x24, 0x6b, 0x76, 0x47, 0xeb, 0xa9, 0x26, 0xb5, 0x5e, 0xf8, 0xec, 0x87, 0x16, 0x57, 0x7f, 0xb6, - 0x3d, 0x09, 0x6d, 0xc3, 0x34, 0x71, 0x3b, 0xa9, 0xa3, 0x35, 0x71, 0x36, 0x61, 0xcb, 0xb8, 0x1a, - 0x2a, 0x23, 0x6f, 0xf3, 0x3e, 0xd4, 0x9a, 0x58, 0x04, 0xd9, 0xfd, 0xcf, 0xcf, 0xc2, 0xb4, 0x47, - 0x37, 0x7e, 0x07, 0xa6, 0x3d, 0x8b, 0xa1, 0x0b, 0x30, 0x79, 0x64, 0x48, 0x6e, 0x12, 0x9e, 0x12, - 0x27, 0x8e, 0x0c, 0x3b, 0x9f, 0x5e, 0x86, 0x69, 0x5b, 0x0b, 0xe9, 0xa8, 0x2d, 0xb7, 0x8c, 0x6c, - 0x7c, 0x2d, 0x61, 0xbd, 0x23, 0x9b, 0x74, 0xdf, 0xa2, 0xf0, 0xff, 0xe2, 0x00, 0xfa, 0x4b, 0xa2, - 0x7b, 0x90, 0xb4, 0xb5, 0x24, 0xa9, 0x7c, 0x7d, 0x04, 0x2d, 0x73, 0xb6, 0xaa, 0xf6, 0x2c, 0xe1, - 0x57, 0x1c, 0x24, 0x6d, 0x31, 0xfe, 0x03, 0xa7, 0x56, 0xaa, 0xec, 0x94, 0x8b, 0x52, 0xa5, 0xba, - 0x5d, 0x94, 0x1e, 0x89, 0xa5, 0x7a, 0x51, 0xcc, 0x70, 0x68, 0x19, 0x2e, 0x78, 0xe9, 0x62, 0x31, - 0xbf, 0x5d, 0x14, 0xa5, 0x6a, 0xa5, 0xfc, 0x38, 0x13, 0x47, 0x3c, 0x2c, 0x3d, 0xdc, 0x2f, 0xd7, - 0x4b, 0x83, 0x63, 0x09, 0xb4, 0x02, 0x59, 0xcf, 0x18, 0x95, 0x41, 0xc5, 0x26, 0x2d, 0xb1, 0x9e, - 0x51, 0xf2, 0x97, 0x0e, 0xa6, 0xb6, 0x66, 0xdd, 0x97, 0x61, 0x3b, 0xdb, 0x23, 0x98, 0x65, 0x72, - 0xb4, 0x55, 0x4e, 0xd1, 0xa4, 0xd2, 0x94, 0x0e, 0x4f, 0x4d, 0xbb, 0xc4, 0xe0, 0xd6, 0x13, 0xe2, - 0xac, 0x43, 0xdd, 0xb2, 0x88, 0x96, 0x59, 0xdb, 0x4a, 0x47, 0x31, 0x29, 0x4f, 0xdc, 0xe6, 0x01, - 0x9b, 0x64, 0x33, 0x08, 0x5f, 0xc5, 0x61, 0x82, 0xbe, 0x9b, 0x6b, 0x9e, 0x53, 0x82, 0x11, 0xe9, - 0x50, 0x89, 0x48, 0x26, 0x38, 0xe2, 0x6c, 0x70, 0xa0, 0x5d, 0x98, 0xf3, 0xa6, 0xd2, 0x13, 0xa7, - 0x88, 0xbb, 0xc2, 0xbe, 0x20, 0x6f, 0x3c, 0x9f, 0xd0, 0xd2, 0x6d, 0xf6, 0xd8, 0x4b, 0x43, 0x5b, - 0x30, 0xe7, 0xcb, 0xc6, 0xc9, 0xe1, 0xd9, 0x78, 0xb6, 0xc1, 0x24, 0xa6, 0x3c, 0xcc, 0x3b, 0x89, - 0xb4, 0x8d, 0x25, 0x93, 0x26, 0x5a, 0x7a, 0x5a, 0x64, 0x06, 0x12, 0x30, 0xea, 0x33, 0x3b, 0x34, - 0xfe, 0x3d, 0x40, 0x83, 0xba, 0x8e, 0x95, 0x35, 0x7b, 0x30, 0x1f, 0x90, 0xe2, 0x51, 0x0e, 0xa6, - 0xec, 0x57, 0x65, 0x28, 0x26, 0xa6, 0xe5, 0xe1, 0xa0, 0x46, 0x7d, 0x16, 0x8b, 0xbf, 0xab, 0xe3, - 0x23, 0xac, 0xeb, 0xb8, 0x69, 0x87, 0x47, 0x20, 0xbf, 0xcb, 0x22, 0xfc, 0x84, 0x83, 0xb4, 0x43, - 0x47, 0x77, 0x20, 0x6d, 0xe0, 0x16, 0x39, 0x7e, 0xc8, 0x5a, 0x97, 0xfc, 0x73, 0x73, 0x35, 0xca, - 0x40, 0x0b, 0x69, 0x87, 0xdf, 0x2a, 0xa4, 0x99, 0xa1, 0xb1, 0x36, 0xff, 0x27, 0x0e, 0xe6, 0xb7, - 0x71, 0x1b, 0xfb, 0xab, 0x94, 0xa8, 0x0c, 0xeb, 0x3d, 0xd8, 0xe3, 0xec, 0xc1, 0x1e, 0x20, 0x2a, - 0xe2, 0x60, 0x3f, 0xd3, 0x61, 0xb7, 0x04, 0x0b, 0xec, 0x6a, 0x24, 0xbd, 0x0b, 0xff, 0x4e, 0xc0, - 0x25, 0xcb, 0x17, 0x74, 0xad, 0xdd, 0xc6, 0xfa, 0x5e, 0xef, 0xb0, 0xad, 0x18, 0x4f, 0xc7, 0xd8, - 0xdc, 0x05, 0x98, 0x54, 0xb5, 0xa6, 0x27, 0x78, 0x26, 0xac, 0xc7, 0x52, 0x13, 0x15, 0xe1, 0xbc, - 0xbf, 0xcc, 0x3a, 0xa5, 0x49, 0x38, 0xbc, 0xc8, 0xca, 0x1c, 0xfb, 0x4f, 0x10, 0x1e, 0xd2, 0x56, - 0x81, 0xa8, 0xa9, 0xed, 0x53, 0x3b, 0x62, 0xd2, 0xa2, 0xfb, 0x8c, 0x44, 0x7f, 0xc5, 0xf4, 0xa6, - 0x5b, 0x31, 0x45, 0xee, 0x28, 0xaa, 0x78, 0xfa, 0x78, 0x20, 0xe2, 0x27, 0x6c, 0xd1, 0xef, 0x8c, - 0x28, 0x7a, 0x68, 0x26, 0x38, 0xcb, 0x5b, 0x7c, 0x0e, 0xe1, 0xfb, 0x57, 0x0e, 0x2e, 0x87, 0x6e, - 0x81, 0x1e, 0xf9, 0x4d, 0x38, 0xd7, 0x25, 0x03, 0xae, 0x11, 0x48, 0x94, 0xdd, 0x1d, 0x6a, 0x04, - 0xda, 0xc5, 0x52, 0x2a, 0x63, 0x86, 0xb9, 0x2e, 0x43, 0xe4, 0xf3, 0x30, 0x1f, 0xc0, 0x36, 0xd6, - 0x66, 0xbe, 0xe6, 0x60, 0xad, 0xaf, 0xca, 0xbe, 0xda, 0x7d, 0x7e, 0xee, 0x5b, 0xef, 0xfb, 0x16, - 0x49, 0xf9, 0xb7, 0x07, 0xf7, 0x1e, 0xbc, 0xe0, 0x8b, 0x8a, 0xe0, 0xab, 0x70, 0x25, 0x62, 0x69, - 0x1a, 0xce, 0x5f, 0x25, 0xe1, 0xca, 0x81, 0xdc, 0x56, 0x9a, 0x6e, 0x21, 0x17, 0xd0, 0xef, 0x47, - 0x9b, 0xa4, 0x31, 0x10, 0x01, 0x24, 0x6b, 0xdd, 0x73, 0xa3, 0x76, 0x98, 0xfc, 0x11, 0x8e, 0xc3, - 0xe7, 0xd8, 0x84, 0x3d, 0x0e, 0x68, 0xc2, 0xde, 0x19, 0x5d, 0xd7, 0xa8, 0x96, 0x6c, 0xdf, 0x9f, - 0x60, 0xde, 0x1e, 0x5d, 0x6e, 0x84, 0x17, 0x9c, 0x39, 0x8a, 0x5f, 0x66, 0xd7, 0xf4, 0x97, 0x24, - 0x08, 0x51, 0xbb, 0xa7, 0x39, 0x44, 0x84, 0xa9, 0x86, 0xa6, 0x1e, 0x29, 0x7a, 0x07, 0x37, 0x69, - 0xf5, 0xff, 0xd6, 0x28, 0xc6, 0xa3, 0x09, 0xa4, 0xe0, 0xcc, 0x15, 0xfb, 0x62, 0x50, 0x16, 0x26, - 0x3b, 0xd8, 0x30, 0xe4, 0x96, 0xa3, 0x96, 0xf3, 0xc8, 0x7f, 0x91, 0x80, 0x29, 0x77, 0x0a, 0x52, - 0x07, 0x3c, 0x98, 0xa4, 0xaf, 0x9d, 0x67, 0x51, 0xe0, 0xd9, 0x9d, 0x39, 0xfe, 0x0c, 0xce, 0xdc, - 0x64, 0x9c, 0x99, 0x84, 0xc3, 0xf6, 0x33, 0xa9, 0x1d, 0xe1, 0xd7, 0x2f, 0xdd, 0x01, 0x85, 0xef, - 0x03, 0x2a, 0x2b, 0x06, 0xed, 0xa2, 0xdc, 0xb4, 0x64, 0x35, 0x4d, 0xf2, 0x89, 0x84, 0x55, 0x53, - 0x57, 0x68, 0xb9, 0x9e, 0x12, 0xa1, 0x23, 0x9f, 0x14, 0x09, 0xc5, 0x2a, 0xe9, 0x0d, 0x53, 0xd6, - 0x4d, 0x45, 0x6d, 0x49, 0xa6, 0xf6, 0x09, 0x76, 0x41, 0x57, 0x87, 0x5a, 0xb7, 0x88, 0xc2, 0xe7, - 0x1c, 0xcc, 0x33, 0xe2, 0xa9, 0x4f, 0xde, 0x85, 0xc9, 0xbe, 0x6c, 0xa6, 0x8c, 0x0f, 0xe0, 0xce, - 0x11, 0xb3, 0x39, 0x33, 0xd0, 0x2a, 0x80, 0x8a, 0x4f, 0x4c, 0x66, 0xdd, 0x29, 0x8b, 0x62, 0xaf, - 0xc9, 0x6f, 0x40, 0x8a, 0x98, 0x61, 0xd4, 0x7e, 0xf9, 0x8b, 0x38, 0xa0, 0x1d, 0x6c, 0xba, 0x6d, - 0x10, 0xb5, 0x41, 0x88, 0x2f, 0x71, 0xcf, 0xe0, 0x4b, 0xef, 0x33, 0xbe, 0x44, 0xbc, 0xf1, 0x86, - 0x07, 0x7d, 0xf6, 0x2d, 0x1d, 0x99, 0x09, 0x43, 0x5a, 0x0f, 0x52, 0xcf, 0x8d, 0xd6, 0x7a, 0x9c, - 0xd1, 0x65, 0xb6, 0x61, 0x9e, 0xd1, 0x99, 0xbe, 0xd3, 0x5b, 0x80, 0xe4, 0x63, 0x59, 0x69, 0xcb, - 0x96, 0x5e, 0x4e, 0x67, 0x47, 0x3b, 0xbd, 0xf3, 0xee, 0x88, 0x33, 0x4d, 0x10, 0xbc, 0x05, 0x03, - 0x95, 0xe7, 0x47, 0xc3, 0xdb, 0xde, 0x83, 0x76, 0x80, 0x87, 0xae, 0xbb, 0x13, 0x88, 0x88, 0x5f, - 0x1d, 0x2c, 0x12, 0x28, 0x3c, 0x1c, 0x0a, 0x8e, 0x7f, 0x96, 0x80, 0xe5, 0x08, 0x6e, 0x74, 0x17, - 0x12, 0x7a, 0xb7, 0x41, 0x9d, 0xe9, 0xd5, 0x11, 0xe4, 0xe7, 0xc4, 0xbd, 0xc2, 0x6e, 0x4c, 0xb4, - 0x66, 0xf1, 0xbf, 0x89, 0x43, 0x42, 0xdc, 0x2b, 0xa0, 0xf7, 0x18, 0xa4, 0xf8, 0xe6, 0x88, 0x52, - 0xbc, 0x40, 0xf1, 0x97, 0x5c, 0x10, 0x52, 0x9c, 0x85, 0x85, 0x82, 0x58, 0xcc, 0xd7, 0x8b, 0xd2, - 0x76, 0xb1, 0x5c, 0xac, 0x17, 0x25, 0x82, 0x64, 0x67, 0x38, 0xb4, 0x02, 0xd9, 0xbd, 0xfd, 0xad, - 0x72, 0xa9, 0xb6, 0x2b, 0xed, 0x57, 0x9c, 0x7f, 0x74, 0x34, 0x8e, 0x32, 0x30, 0x53, 0x2e, 0xd5, - 0xea, 0x94, 0x50, 0xcb, 0x24, 0x2c, 0xca, 0x4e, 0xb1, 0x2e, 0x15, 0xf2, 0x7b, 0xf9, 0x42, 0xa9, - 0xfe, 0x38, 0x93, 0x44, 0x3c, 0x2c, 0xb1, 0xb2, 0x6b, 0x95, 0xfc, 0x5e, 0x6d, 0xb7, 0x5a, 0xcf, - 0xa4, 0x10, 0x82, 0x39, 0x7b, 0xbe, 0x43, 0xaa, 0x65, 0x26, 0x2c, 0x09, 0x85, 0x72, 0xb5, 0xe2, - 0xea, 0x30, 0x89, 0x16, 0x20, 0xe3, 0xac, 0x2c, 0x16, 0xf3, 0xdb, 0x36, 0x8a, 0x91, 0x46, 0xe7, - 0x61, 0xb6, 0xf8, 0xe1, 0x5e, 0xbe, 0xb2, 0xed, 0x30, 0x4e, 0xb9, 0x18, 0xd8, 0xd7, 0x71, 0x58, - 0x24, 0x20, 0x98, 0x03, 0xb9, 0x39, 0x61, 0xb9, 0x0e, 0x19, 0xd2, 0xb6, 0x4b, 0xfe, 0xc2, 0x69, - 0x8e, 0xd0, 0x0f, 0x9c, 0xf2, 0xc9, 0x01, 0xac, 0xe3, 0x1e, 0xc0, 0xba, 0xe4, 0x2f, 0x26, 0x6f, - 0xb0, 0xd0, 0xae, 0x6f, 0xb5, 0xa8, 0xfe, 0xe4, 0x61, 0x40, 0xb5, 0x73, 0x2b, 0x5a, 0x5a, 0xd4, - 0x49, 0x70, 0x96, 0x66, 0xe4, 0x8c, 0x01, 0x7d, 0x1f, 0x96, 0xfc, 0xfa, 0xd2, 0xd8, 0xba, 0x39, - 0x00, 0xc0, 0xba, 0x19, 0xc6, 0xe5, 0x75, 0x39, 0x84, 0xbf, 0x73, 0x90, 0x76, 0xc8, 0x56, 0x96, - 0x36, 0x94, 0x1f, 0x62, 0x06, 0xf0, 0x99, 0xb2, 0x28, 0x2e, 0x7e, 0xe4, 0x85, 0x4e, 0xe3, 0x7e, - 0xe8, 0x34, 0xf0, 0x3d, 0x27, 0x02, 0xdf, 0xf3, 0x77, 0x61, 0xb6, 0x61, 0xa9, 0xaf, 0x68, 0xaa, - 0x64, 0x2a, 0x1d, 0x07, 0xcf, 0x19, 0xbc, 0xea, 0xa8, 0x3b, 0xf7, 0x93, 0xe2, 0x8c, 0x33, 0xc1, - 0x22, 0xa1, 0x35, 0x98, 0xb1, 0xaf, 0x3e, 0x24, 0x53, 0x93, 0x7a, 0x06, 0xce, 0xa6, 0xec, 0xee, - 0x16, 0x6c, 0x5a, 0x5d, 0xdb, 0x37, 0xb0, 0xf0, 0x67, 0x0e, 0x16, 0x49, 0xd3, 0xee, 0x77, 0xc7, - 0x61, 0x10, 0xb0, 0xd7, 0xe3, 0x7c, 0x89, 0x3f, 0x50, 0xe0, 0x8b, 0xea, 0x59, 0xb2, 0xb0, 0xe4, - 0x5f, 0x8f, 0x36, 0x2a, 0xbf, 0xe5, 0x60, 0xc1, 0x3a, 0x75, 0x9d, 0x81, 0xe7, 0x5d, 0x04, 0x8c, - 0xf1, 0x26, 0x7d, 0xc6, 0x4c, 0xfa, 0x8d, 0x29, 0xfc, 0x9e, 0x83, 0x45, 0x9f, 0xae, 0xd4, 0x53, - 0xdf, 0xf5, 0x57, 0x14, 0x57, 0xbd, 0x15, 0xc5, 0x00, 0xff, 0x98, 0x35, 0xc5, 0x6d, 0xa7, 0xa6, - 0x18, 0x2f, 0x20, 0x3e, 0x8b, 0xc3, 0x6a, 0x3f, 0xb3, 0xdb, 0xd7, 0x7e, 0xcd, 0x31, 0x5a, 0xe2, - 0xb3, 0xdd, 0xae, 0x7d, 0xe0, 0x4f, 0x75, 0x9b, 0x83, 0x87, 0x4d, 0x80, 0x4a, 0x2f, 0xca, 0x01, - 0x7f, 0xe4, 0x45, 0xb7, 0xd8, 0x75, 0xe9, 0x2b, 0x1c, 0x11, 0x26, 0x7e, 0x1b, 0x2e, 0xd8, 0x40, - 0x81, 0x7b, 0xdd, 0xec, 0x5c, 0x82, 0x91, 0x2c, 0x92, 0x16, 0x17, 0xad, 0x61, 0xf7, 0x8e, 0x95, - 0x42, 0xa3, 0x4d, 0xe1, 0x9b, 0x24, 0x2c, 0x55, 0xb4, 0x26, 0xae, 0x99, 0x72, 0x6b, 0x1c, 0xd0, - 0xf0, 0x7b, 0x83, 0x18, 0x4c, 0x9c, 0xb5, 0x67, 0xb0, 0xd4, 0x51, 0xa0, 0x17, 0x94, 0x83, 0x79, - 0xc3, 0x94, 0x5b, 0x76, 0x04, 0xc9, 0x7a, 0x0b, 0x9b, 0x52, 0x57, 0x36, 0x9f, 0xd2, 0xf0, 0x38, - 0x4f, 0x87, 0xea, 0xf6, 0xc8, 0x9e, 0x6c, 0x3e, 0x0d, 0xc6, 0xf2, 0x92, 0x63, 0x63, 0x79, 0xef, - 0xfb, 0xdb, 0xe9, 0xd7, 0x87, 0xec, 0x25, 0xe2, 0x1c, 0xfc, 0x30, 0x04, 0xa7, 0x7b, 0x63, 0x88, - 0xc8, 0xe1, 0xf8, 0xdc, 0xd9, 0x71, 0xa9, 0x97, 0x0c, 0xf1, 0x5d, 0x84, 0x0b, 0x03, 0x9b, 0xa7, - 0x59, 0xb7, 0x05, 0x59, 0x6b, 0x68, 0x5f, 0x35, 0xc6, 0x74, 0xc7, 0x10, 0x8f, 0x89, 0x87, 0x78, - 0x8c, 0xb0, 0x0c, 0x17, 0x03, 0x16, 0xa2, 0x5a, 0xfc, 0x31, 0x45, 0xd4, 0x18, 0x1f, 0x6d, 0xfe, - 0x28, 0x2c, 0x2a, 0xde, 0xf2, 0xbe, 0xf6, 0x40, 0x60, 0xf6, 0x45, 0xc4, 0xc5, 0x65, 0x98, 0xf6, - 0xf2, 0xd1, 0x93, 0xc3, 0x1c, 0x12, 0x38, 0xa9, 0x33, 0x81, 0xe0, 0x13, 0x3e, 0x10, 0xbc, 0xdc, - 0x0f, 0xaa, 0x49, 0xb6, 0x1a, 0x0c, 0x35, 0x45, 0x44, 0x58, 0x3d, 0x19, 0x08, 0xab, 0x34, 0x8b, - 0xac, 0x87, 0x0a, 0xfd, 0x3f, 0x08, 0x2c, 0xea, 0xd4, 0x81, 0x90, 0xb7, 0xf0, 0x04, 0x78, 0xe2, - 0xf1, 0xe3, 0x83, 0xd0, 0x3e, 0x37, 0x8a, 0xfb, 0xdd, 0x48, 0x58, 0x85, 0xe5, 0x40, 0xd9, 0x74, - 0xe9, 0xc7, 0x44, 0xaf, 0x1d, 0x4c, 0x31, 0x8c, 0x9a, 0x29, 0x9b, 0xc6, 0xa8, 0x2b, 0xd3, 0x41, - 0xef, 0xca, 0x84, 0x64, 0xaf, 0xbc, 0x43, 0x76, 0xe5, 0x17, 0x4d, 0xcf, 0xce, 0xd7, 0x20, 0xd5, - 0xb3, 0xe1, 0x38, 0x52, 0xfc, 0xcc, 0xb3, 0x2e, 0xbd, 0x6f, 0x0d, 0x89, 0x84, 0x43, 0xf8, 0x03, - 0x07, 0xd3, 0x1e, 0x32, 0x5a, 0x81, 0x29, 0xb7, 0x3b, 0x77, 0xea, 0x74, 0x97, 0x60, 0xbd, 0x03, - 0x53, 0x33, 0xe5, 0x36, 0xbd, 0xe1, 0x25, 0x0f, 0x56, 0x6b, 0xd5, 0x33, 0x30, 0x29, 0xe3, 0x12, - 0xa2, 0xfd, 0x1f, 0xdd, 0x84, 0x64, 0x4f, 0x55, 0x4c, 0x3b, 0xf6, 0xe6, 0xfc, 0x41, 0x65, 0x2f, - 0x95, 0xdb, 0x57, 0x15, 0x53, 0xb4, 0xb9, 0x84, 0x1b, 0x90, 0xb4, 0x9e, 0xd8, 0x26, 0x76, 0x0a, - 0x52, 0x5b, 0x8f, 0xeb, 0xc5, 0x5a, 0x86, 0x43, 0x00, 0x13, 0xa5, 0x4a, 0x75, 0xbb, 0x58, 0xcb, - 0xc4, 0x85, 0x15, 0x77, 0xeb, 0x41, 0x20, 0xc1, 0xc7, 0xe4, 0x95, 0x84, 0xc1, 0x03, 0xf9, 0x40, - 0x78, 0x60, 0x95, 0x39, 0x9c, 0x86, 0x00, 0x03, 0xff, 0xe1, 0x60, 0x31, 0x90, 0x0f, 0xdd, 0xf6, - 0x42, 0x02, 0x57, 0x22, 0x65, 0x7a, 0xc1, 0x80, 0x5f, 0x72, 0x04, 0x0c, 0xb8, 0xc3, 0x80, 0x01, - 0xd7, 0x87, 0xce, 0xf7, 0xc2, 0x00, 0x07, 0x21, 0x28, 0x40, 0xad, 0x9e, 0xdf, 0x29, 0x4a, 0xfb, - 0x15, 0xf2, 0xeb, 0xa2, 0x00, 0x0b, 0x90, 0xb1, 0xba, 0x7a, 0xfa, 0x7d, 0x5b, 0xad, 0x9e, 0xaf, - 0xd7, 0x32, 0xf1, 0xc1, 0x0e, 0x3c, 0xe1, 0x76, 0xe0, 0x0b, 0x80, 0xa8, 0x59, 0xbd, 0x9f, 0x66, - 0x7e, 0xce, 0xc1, 0x3c, 0x43, 0xa6, 0x56, 0xf6, 0xdc, 0xde, 0x70, 0xcc, 0xed, 0xcd, 0x06, 0x2c, - 0x58, 0x4d, 0x04, 0x71, 0x64, 0x43, 0xea, 0x62, 0x5d, 0xb2, 0x46, 0xa8, 0x3b, 0x9d, 0xef, 0xc8, - 0x27, 0x14, 0xed, 0xdb, 0xc3, 0xba, 0x25, 0xf8, 0x39, 0xe0, 0x5b, 0xc2, 0xcf, 0x38, 0x72, 0xee, - 0x8e, 0x5d, 0x70, 0x0f, 0x0b, 0xc2, 0x80, 0x8a, 0x3c, 0x31, 0x7a, 0x45, 0x2e, 0xe4, 0xc9, 0x61, - 0x7b, 0x86, 0xe2, 0x77, 0xf3, 0xbf, 0x1c, 0xa4, 0x4b, 0x4d, 0xac, 0x9a, 0x96, 0xf7, 0x55, 0x60, - 0x96, 0xf9, 0x74, 0x15, 0xad, 0x84, 0x7c, 0xd1, 0x6a, 0x6f, 0x9d, 0x5f, 0x8d, 0xfc, 0xde, 0x55, - 0x88, 0xa1, 0x23, 0xcf, 0x67, 0xb7, 0x0c, 0x7e, 0xf9, 0xca, 0xc0, 0xcc, 0x80, 0x40, 0xe4, 0xaf, - 0x0d, 0xe1, 0x72, 0xd7, 0x79, 0x1b, 0x52, 0xf6, 0x47, 0x8a, 0x68, 0xc1, 0xfd, 0x50, 0xd2, 0xf3, - 0x0d, 0x23, 0xbf, 0xe8, 0xa3, 0x3a, 0xf3, 0x36, 0xff, 0x99, 0x06, 0xe8, 0xf7, 0x10, 0xe8, 0x01, - 0xcc, 0x78, 0xbf, 0x93, 0x42, 0xcb, 0x11, 0x5f, 0xe9, 0xf1, 0x2b, 0xc1, 0x83, 0xae, 0x4e, 0x0f, - 0x60, 0xc6, 0x7b, 0x2b, 0xdf, 0x17, 0x16, 0xf0, 0x65, 0x40, 0x5f, 0x58, 0xe0, 0x45, 0x7e, 0x0c, - 0xb5, 0xe1, 0x42, 0xc8, 0xbd, 0x2c, 0xba, 0x3e, 0xda, 0xed, 0x35, 0xff, 0xea, 0x88, 0x17, 0xbc, - 0x42, 0x0c, 0xe9, 0x70, 0x31, 0xf4, 0x3a, 0x12, 0xad, 0x8f, 0x7a, 0x59, 0xca, 0xbf, 0x36, 0x02, - 0xa7, 0xbb, 0x66, 0x0f, 0xf8, 0xf0, 0x3b, 0x10, 0xf4, 0xda, 0xc8, 0x97, 0x73, 0xfc, 0x8d, 0xd1, - 0xaf, 0x54, 0x84, 0x18, 0xda, 0x85, 0x69, 0xcf, 0x05, 0x01, 0xe2, 0x03, 0x6f, 0x0d, 0x88, 0xe0, - 0xe5, 0x88, 0x1b, 0x05, 0x22, 0xc9, 0x03, 0x62, 0xf7, 0x25, 0x0d, 0xa2, 0xf1, 0x7d, 0x49, 0x01, - 0xa8, 0xb7, 0xdf, 0xfc, 0xbe, 0x53, 0x28, 0xc8, 0xfc, 0xc1, 0xc7, 0x58, 0x90, 0xf9, 0x43, 0x8e, - 0x34, 0x21, 0x86, 0x3e, 0x80, 0x39, 0x16, 0xb1, 0x43, 0xab, 0x91, 0xc8, 0x23, 0x7f, 0x29, 0x6c, - 0xd8, 0x2b, 0x92, 0x05, 0x88, 0xfa, 0x22, 0x03, 0x81, 0xaa, 0xbe, 0xc8, 0x10, 0x5c, 0x29, 0x66, - 0xe5, 0x27, 0x06, 0x7c, 0xe9, 0xe7, 0xa7, 0x20, 0xbc, 0xa9, 0x9f, 0x9f, 0x02, 0x11, 0x1b, 0x21, - 0x86, 0x14, 0x58, 0x0a, 0x86, 0x10, 0xd0, 0xb5, 0x91, 0xa0, 0x0d, 0xfe, 0xfa, 0x30, 0x36, 0x37, - 0xd5, 0x7c, 0x99, 0x82, 0xa4, 0x7d, 0x1c, 0xd5, 0xe1, 0x9c, 0xaf, 0x85, 0x43, 0x97, 0xa2, 0x1b, - 0x5b, 0xfe, 0x72, 0xe8, 0xb8, 0xbb, 0x93, 0x27, 0x70, 0x7e, 0xa0, 0x29, 0x43, 0x6b, 0xde, 0x79, - 0x41, 0x8d, 0x21, 0x7f, 0x25, 0x82, 0xc3, 0x2f, 0x9b, 0x4d, 0x3b, 0x6b, 0xc3, 0xba, 0x06, 0x56, - 0x76, 0x58, 0xaa, 0xf9, 0x98, 0x9c, 0xfe, 0xfe, 0x24, 0x23, 0xb0, 0x7a, 0x05, 0xa6, 0x97, 0xab, - 0x91, 0x3c, 0xee, 0x0a, 0x1f, 0xb9, 0x65, 0x87, 0xa7, 0xcc, 0x45, 0x8c, 0x72, 0x81, 0xd5, 0x35, - 0x2f, 0x44, 0xb1, 0xb8, 0xe2, 0x1f, 0x41, 0xc6, 0x7f, 0x04, 0x23, 0xe6, 0x7d, 0x05, 0xb9, 0xcd, - 0x5a, 0x38, 0x83, 0xdf, 0x32, 0xfe, 0xf8, 0xf7, 0x6b, 0x15, 0x14, 0xf9, 0x57, 0x23, 0x79, 0xbc, - 0x19, 0xcb, 0x53, 0x79, 0xf5, 0x33, 0xd6, 0x60, 0x95, 0xd6, 0xcf, 0x58, 0x01, 0xa5, 0x9a, 0x10, - 0xbb, 0xf3, 0x2e, 0x40, 0xc3, 0x50, 0x24, 0xd2, 0x69, 0xa2, 0xd5, 0x01, 0x9c, 0xfc, 0xbe, 0x82, - 0xdb, 0xcd, 0x6a, 0xd7, 0x54, 0x34, 0xd5, 0xc8, 0xfe, 0x3a, 0x6d, 0xb7, 0xb9, 0x53, 0x0d, 0x43, - 0x21, 0x0d, 0xdf, 0x56, 0xea, 0x49, 0xa2, 0x61, 0x28, 0x87, 0x13, 0x36, 0xff, 0x9b, 0xff, 0x0b, - 0x00, 0x00, 0xff, 0xff, 0x95, 0x8e, 0xb8, 0x49, 0x68, 0x34, 0x00, 0x00, + 0xb1, 0xa7, 0x0e, 0x76, 0x17, 0x20, 0x00, 0x02, 0x20, 0x69, 0xd9, 0x93, 0x43, 0x4f, 0x22, 0xde, + 0x7b, 0xfb, 0xf6, 0xed, 0xe2, 0xbd, 0xb7, 0xef, 0x7d, 0x0b, 0xc1, 0xed, 0xb6, 0x62, 0x3e, 0xe9, + 0x1f, 0xe6, 0x9a, 0x5a, 0xf7, 0x66, 0x53, 0x53, 0x4d, 0x59, 0x51, 0xb1, 0x7e, 0xc3, 0x30, 0x35, + 0x5d, 0x6e, 0xe3, 0x1b, 0x8a, 0x6a, 0x62, 0xfd, 0x48, 0x6e, 0xe2, 0x9b, 0x46, 0x0f, 0x37, 0x6f, + 0x36, 0x0d, 0x25, 0xd7, 0xd3, 0x35, 0x53, 0x43, 0xd3, 0xd6, 0xcf, 0xe3, 0xd7, 0xf8, 0x8d, 0xb6, + 0xa6, 0xb5, 0x3b, 0xf8, 0x26, 0xa1, 0x1e, 0xf6, 0x8f, 0x6e, 0xb6, 0xb0, 0xd1, 0xd4, 0x95, 0x9e, + 0xa9, 0xe9, 0x54, 0x92, 0xbf, 0xe8, 0x97, 0x30, 0x95, 0x2e, 0x36, 0x4c, 0xb9, 0xdb, 0x63, 0x02, + 0x17, 0xfc, 0x02, 0x3f, 0xd4, 0xe5, 0x5e, 0x0f, 0xeb, 0x06, 0xe5, 0x0b, 0x2b, 0xb0, 0xb4, 0x83, + 0xcd, 0xbd, 0x4e, 0xbf, 0xad, 0xa8, 0x65, 0xf5, 0x48, 0x13, 0xf1, 0x27, 0x7d, 0x6c, 0x98, 0xc2, + 0x3f, 0x38, 0x58, 0xf6, 0x31, 0x8c, 0x9e, 0xa6, 0x1a, 0x18, 0x21, 0x48, 0xa8, 0x72, 0x17, 0x67, + 0xb9, 0x0d, 0x6e, 0x73, 0x4e, 0x24, 0xbf, 0xd1, 0x15, 0x48, 0x1f, 0x63, 0xb5, 0xa5, 0xe9, 0xd2, + 0x31, 0xd6, 0x0d, 0x45, 0x53, 0xb3, 0x31, 0xc2, 0x5d, 0xa0, 0xd4, 0x03, 0x4a, 0x44, 0x3b, 0x30, + 0xdb, 0x95, 0x55, 0xe5, 0x08, 0x1b, 0x66, 0x36, 0xbe, 0x11, 0xdf, 0x4c, 0xdd, 0x7a, 0x35, 0x47, + 0x97, 0x9a, 0x0b, 0x9c, 0x2b, 0xf7, 0x80, 0x49, 0x97, 0x54, 0x53, 0x3f, 0x11, 0x9d, 0xc1, 0xfc, + 0x1d, 0x58, 0xf0, 0xb0, 0x50, 0x06, 0xe2, 0x1f, 0xe3, 0x13, 0x66, 0x93, 0xf5, 0x13, 0x2d, 0x41, + 0xf2, 0x58, 0xee, 0xf4, 0x31, 0xb3, 0x84, 0x3e, 0x6c, 0xc5, 0xbe, 0xcb, 0x09, 0x17, 0x60, 0xcd, + 0x99, 0xad, 0x28, 0xf7, 0xe4, 0x43, 0xa5, 0xa3, 0x98, 0x0a, 0x36, 0xec, 0xa5, 0x7f, 0x08, 0xeb, + 0x21, 0x7c, 0xb6, 0x03, 0x77, 0x61, 0xbe, 0xe9, 0xa2, 0x67, 0x39, 0xb2, 0x94, 0xac, 0xbd, 0x14, + 0xdf, 0xc8, 0x13, 0xd1, 0x23, 0x2d, 0xfc, 0x2d, 0x0e, 0x19, 0xbf, 0x08, 0xba, 0x0b, 0x33, 0x06, + 0xd6, 0x8f, 0x95, 0x26, 0xdd, 0xd7, 0xd4, 0xad, 0x8d, 0x30, 0x6d, 0xb9, 0x3a, 0x95, 0xdb, 0x9d, + 0x12, 0xed, 0x21, 0x68, 0x1f, 0x32, 0xc7, 0x5a, 0xa7, 0xdf, 0xc5, 0x12, 0x7e, 0xda, 0x93, 0x55, + 0xe7, 0x05, 0xa4, 0x6e, 0x6d, 0x86, 0xaa, 0x39, 0x20, 0x03, 0x4a, 0xb6, 0xfc, 0xee, 0x94, 0x78, + 0xe6, 0xd8, 0x4b, 0xe2, 0x7f, 0xc1, 0xc1, 0x0c, 0x9b, 0x0d, 0xbd, 0x05, 0x09, 0xf3, 0xa4, 0x47, + 0xad, 0x4b, 0xdf, 0xba, 0x32, 0xca, 0xba, 0x5c, 0xe3, 0xa4, 0x87, 0x45, 0x32, 0x44, 0x78, 0x1f, + 0x12, 0xd6, 0x13, 0x4a, 0xc1, 0xcc, 0x7e, 0xf5, 0x7e, 0xb5, 0xf6, 0xb0, 0x9a, 0x99, 0x42, 0x2b, + 0x80, 0x8a, 0xb5, 0x6a, 0x43, 0xac, 0x55, 0x2a, 0x25, 0x51, 0xaa, 0x97, 0xc4, 0x83, 0x72, 0xb1, + 0x94, 0xe1, 0xd0, 0x4b, 0xb0, 0x71, 0x50, 0xab, 0xec, 0x3f, 0x28, 0x49, 0xf9, 0x62, 0xb1, 0x54, + 0xaf, 0x97, 0x0b, 0xe5, 0x4a, 0xb9, 0xf1, 0x48, 0x2a, 0xd6, 0xaa, 0xf5, 0x86, 0x98, 0x2f, 0x57, + 0x1b, 0xf5, 0x4c, 0x8c, 0xff, 0x09, 0x07, 0x67, 0x7c, 0x0b, 0x40, 0x79, 0x8f, 0x85, 0x37, 0xc6, + 0x5d, 0xb8, 0xdb, 0xd2, 0xeb, 0x41, 0x96, 0x02, 0x4c, 0xd7, 0xaa, 0x95, 0x72, 0xd5, 0xb2, 0x2e, + 0x05, 0x33, 0xb5, 0x7b, 0xf7, 0xc8, 0x43, 0xac, 0x30, 0x4d, 0x27, 0x14, 0xd2, 0x30, 0xbf, 0xa7, + 0x6b, 0x87, 0xd8, 0xf6, 0x9f, 0x3c, 0x2c, 0xb0, 0x67, 0xe6, 0x2f, 0xdf, 0x81, 0xa4, 0x8e, 0xe5, + 0xd6, 0x09, 0x7b, 0xb5, 0x7c, 0x8e, 0xc6, 0x64, 0xce, 0x8e, 0xc9, 0x5c, 0x41, 0xd3, 0x3a, 0x07, + 0x96, 0x7f, 0x8a, 0x54, 0x50, 0xf8, 0x26, 0x01, 0x8b, 0x45, 0x1d, 0xcb, 0x26, 0xa6, 0xd6, 0x32, + 0xd5, 0x81, 0xb1, 0x77, 0x17, 0xd2, 0x96, 0x7f, 0x35, 0x15, 0xf3, 0x44, 0xd2, 0x65, 0xb5, 0x8d, + 0xd9, 0xab, 0x5f, 0xb6, 0x77, 0xa0, 0xc8, 0xb8, 0xa2, 0xc5, 0x14, 0x17, 0x9a, 0xee, 0x47, 0x54, + 0x86, 0x45, 0xe6, 0x3a, 0x1e, 0x97, 0x8e, 0x7b, 0x5d, 0x9a, 0x5a, 0xe1, 0x72, 0x69, 0x74, 0xec, + 0xa5, 0x28, 0xd8, 0x40, 0xf7, 0x01, 0x7a, 0xb2, 0x2e, 0x77, 0xb1, 0x89, 0x75, 0x23, 0x9b, 0xf0, + 0xc6, 0x77, 0xc0, 0x6a, 0x72, 0x7b, 0x8e, 0x34, 0x8d, 0x6f, 0xd7, 0x70, 0xb4, 0x63, 0x05, 0x44, + 0x53, 0xc7, 0xa6, 0x91, 0x4d, 0x12, 0x4d, 0x9b, 0x51, 0x9a, 0xea, 0x54, 0x94, 0xa8, 0x29, 0xc4, + 0x7f, 0x59, 0xe0, 0x44, 0x7b, 0x34, 0xaa, 0xc1, 0xb2, 0xbd, 0x40, 0x4d, 0x35, 0xb1, 0x6a, 0x4a, + 0x86, 0xd6, 0xd7, 0x9b, 0x38, 0x3b, 0x4d, 0x76, 0x69, 0xd5, 0xb7, 0x44, 0x2a, 0x53, 0x27, 0x22, + 0x22, 0xdb, 0x1a, 0x0f, 0x11, 0x3d, 0x06, 0x5e, 0x6e, 0x36, 0xb1, 0x61, 0x28, 0x74, 0x2f, 0x24, + 0x1d, 0x7f, 0xd2, 0x57, 0x74, 0xdc, 0xc5, 0xaa, 0x69, 0x64, 0x67, 0xbc, 0x5a, 0x1b, 0x5a, 0x4f, + 0xeb, 0x68, 0xed, 0x13, 0x71, 0x20, 0x23, 0x9e, 0xf7, 0x0c, 0x77, 0x71, 0x0c, 0xfe, 0x6d, 0x38, + 0xe3, 0xdb, 0x94, 0x49, 0x32, 0x1b, 0xbf, 0x05, 0xf3, 0xee, 0x9d, 0x98, 0x28, 0x2b, 0xfe, 0x2c, + 0x06, 0x8b, 0x01, 0x7b, 0x80, 0x76, 0x61, 0xd6, 0x50, 0xe5, 0x9e, 0xf1, 0x44, 0x33, 0x99, 0xff, + 0x5e, 0x8b, 0xd8, 0xb2, 0x5c, 0x9d, 0xc9, 0xd2, 0xc7, 0xdd, 0x29, 0xd1, 0x19, 0x8d, 0x0a, 0x30, + 0x4d, 0xf7, 0xd3, 0x9f, 0x9b, 0x82, 0xf4, 0x50, 0x9a, 0xa3, 0x85, 0x8d, 0xe4, 0x5f, 0x83, 0xb4, + 0x77, 0x06, 0x74, 0x11, 0x52, 0xf6, 0x0c, 0x92, 0xd2, 0x62, 0x6b, 0x05, 0x9b, 0x54, 0x6e, 0xf1, + 0xaf, 0xc2, 0xbc, 0x5b, 0x19, 0x5a, 0x85, 0x39, 0xe6, 0x10, 0x8e, 0xf8, 0x2c, 0x25, 0x94, 0x5b, + 0x4e, 0x4c, 0x7f, 0x0f, 0x96, 0xbc, 0x7e, 0xc6, 0x42, 0xf9, 0xaa, 0xb3, 0x06, 0xba, 0x17, 0x69, + 0xef, 0x1a, 0x6c, 0x3b, 0x85, 0xdf, 0x25, 0x20, 0xe3, 0x0f, 0x1a, 0x74, 0x17, 0x92, 0x87, 0x1d, + 0xad, 0xf9, 0x31, 0x1b, 0xfb, 0x52, 0x58, 0x74, 0xe5, 0x0a, 0x96, 0x14, 0xa5, 0xee, 0x4e, 0x89, + 0x74, 0x90, 0x35, 0xba, 0xab, 0xf5, 0x55, 0x93, 0xed, 0x5e, 0xf8, 0xe8, 0x07, 0x96, 0xd4, 0x60, + 0x34, 0x19, 0x84, 0xb6, 0x21, 0x45, 0xdd, 0x4e, 0xea, 0x6a, 0x2d, 0x9c, 0x8d, 0x13, 0x1d, 0x97, + 0x43, 0x75, 0xe4, 0x89, 0xec, 0x03, 0xad, 0x85, 0x45, 0x90, 0x9d, 0xdf, 0xfc, 0x02, 0xa4, 0x5c, + 0xb6, 0xf1, 0x3b, 0x90, 0x72, 0x4d, 0x86, 0xce, 0xc1, 0xcc, 0x91, 0x21, 0x39, 0x49, 0x78, 0x4e, + 0x9c, 0x3e, 0x32, 0x48, 0x3e, 0xbd, 0x08, 0x29, 0x62, 0x85, 0x74, 0xd4, 0x91, 0xdb, 0x46, 0x36, + 0xb6, 0x11, 0xb7, 0xde, 0x11, 0x21, 0xdd, 0xb3, 0x28, 0xfc, 0xbf, 0x38, 0x80, 0xc1, 0x94, 0xe8, + 0x2e, 0x24, 0x88, 0x95, 0x34, 0x95, 0x6f, 0x8e, 0x61, 0x65, 0x8e, 0x98, 0x4a, 0x46, 0x09, 0xbf, + 0xe6, 0x20, 0x41, 0xd4, 0xf8, 0x0f, 0x9c, 0x7a, 0xb9, 0xba, 0x53, 0x29, 0x49, 0xd5, 0xda, 0x76, + 0x49, 0x7a, 0x28, 0x96, 0x1b, 0x25, 0x31, 0xc3, 0xa1, 0x55, 0x38, 0xe7, 0xa6, 0x8b, 0xa5, 0xfc, + 0x76, 0x49, 0x94, 0x6a, 0xd5, 0xca, 0xa3, 0x4c, 0x0c, 0xf1, 0xb0, 0xf2, 0x60, 0xbf, 0xd2, 0x28, + 0x0f, 0xf3, 0xe2, 0x68, 0x0d, 0xb2, 0x2e, 0x1e, 0xd3, 0xc1, 0xd4, 0x26, 0x2c, 0xb5, 0x2e, 0x2e, + 0xfd, 0xc9, 0x98, 0xc9, 0xc2, 0x82, 0xf3, 0x32, 0x88, 0xb3, 0x3d, 0x84, 0x05, 0x4f, 0x8e, 0xb6, + 0xca, 0x29, 0x96, 0x54, 0x5a, 0xd2, 0xe1, 0x89, 0x49, 0x4a, 0x0c, 0x6e, 0x33, 0x2e, 0x2e, 0xd8, + 0xd4, 0x82, 0x45, 0xb4, 0xb6, 0xb5, 0xa3, 0x74, 0x15, 0x93, 0xc9, 0xc4, 0x88, 0x0c, 0x10, 0x12, + 0x11, 0x10, 0xbe, 0x8a, 0xc1, 0x34, 0x7b, 0x37, 0x57, 0x5c, 0xa7, 0x84, 0x47, 0xa5, 0x4d, 0xa5, + 0x2a, 0x3d, 0xc1, 0x11, 0xf3, 0x06, 0x07, 0xda, 0x85, 0xb4, 0x3b, 0x95, 0x3e, 0xb5, 0x8b, 0xb8, + 0x4b, 0xde, 0x17, 0xe4, 0x8e, 0xe7, 0xa7, 0xac, 0x74, 0x5b, 0x38, 0x76, 0xd3, 0x50, 0x01, 0xd2, + 0xbe, 0x6c, 0x9c, 0x18, 0x9d, 0x8d, 0x17, 0x9a, 0x9e, 0xc4, 0x94, 0x87, 0x45, 0x3b, 0x91, 0x76, + 0xb0, 0x64, 0xb2, 0x44, 0xcb, 0x4e, 0x8b, 0xcc, 0x50, 0x02, 0x46, 0x03, 0x61, 0x9b, 0xc6, 0xbf, + 0x0b, 0x68, 0xd8, 0xd6, 0x89, 0xb2, 0x66, 0x1f, 0x16, 0x03, 0x52, 0x3c, 0xca, 0xc1, 0x1c, 0x79, + 0x55, 0x86, 0x62, 0x62, 0x56, 0x1e, 0x0e, 0x5b, 0x34, 0x10, 0xb1, 0xe4, 0x7b, 0x3a, 0x3e, 0xc2, + 0xba, 0x8e, 0x5b, 0x24, 0x3c, 0x02, 0xe5, 0x1d, 0x11, 0xe1, 0xa7, 0x1c, 0xcc, 0xda, 0x74, 0xb4, + 0x05, 0xb3, 0x06, 0x6e, 0xd3, 0xe3, 0x87, 0xce, 0x75, 0xc1, 0x3f, 0x36, 0x57, 0x67, 0x02, 0xac, + 0x90, 0xb6, 0xe5, 0xad, 0x42, 0xda, 0xc3, 0x9a, 0x68, 0xf1, 0x7f, 0xe2, 0x60, 0x71, 0x1b, 0x77, + 0xb0, 0xbf, 0x4a, 0x89, 0xca, 0xb0, 0xee, 0x83, 0x3d, 0xe6, 0x3d, 0xd8, 0x03, 0x54, 0x45, 0x1c, + 0xec, 0xa7, 0x3a, 0xec, 0x56, 0x60, 0xc9, 0x3b, 0x1b, 0x4d, 0xef, 0xc2, 0xbf, 0xe3, 0x70, 0xc1, + 0xf2, 0x05, 0x5d, 0xeb, 0x74, 0xb0, 0xbe, 0xd7, 0x3f, 0xec, 0x28, 0xc6, 0x93, 0x09, 0x16, 0x77, + 0x0e, 0x66, 0x54, 0xad, 0xe5, 0x0a, 0x9e, 0x69, 0xeb, 0xb1, 0xdc, 0x42, 0x25, 0x38, 0xeb, 0x2f, + 0xb3, 0x4e, 0x58, 0x12, 0x0e, 0x2f, 0xb2, 0x32, 0xc7, 0xfe, 0x13, 0x84, 0x87, 0x59, 0xab, 0x40, + 0xd4, 0xd4, 0xce, 0x09, 0x89, 0x98, 0x59, 0xd1, 0x79, 0x46, 0xa2, 0xbf, 0x62, 0x7a, 0xdd, 0xa9, + 0x98, 0x22, 0x57, 0x14, 0x55, 0x3c, 0x7d, 0x34, 0x14, 0xf1, 0xd3, 0x44, 0xf5, 0x5b, 0x63, 0xaa, + 0x1e, 0x99, 0x09, 0x4e, 0xf3, 0x16, 0x9f, 0x43, 0xf8, 0xfe, 0x95, 0x83, 0x8b, 0xa1, 0x4b, 0x60, + 0x47, 0x7e, 0x0b, 0xce, 0xf4, 0x28, 0xc3, 0xd9, 0x04, 0x1a, 0x65, 0x77, 0x46, 0x6e, 0x02, 0xeb, + 0x62, 0x19, 0xd5, 0xb3, 0x0d, 0xe9, 0x9e, 0x87, 0xc8, 0xe7, 0x61, 0x31, 0x40, 0x6c, 0xa2, 0xc5, + 0x7c, 0xcd, 0xc1, 0xc6, 0xc0, 0x94, 0x7d, 0xb5, 0xf7, 0xfc, 0xdc, 0xb7, 0x31, 0xf0, 0x2d, 0x9a, + 0xf2, 0x6f, 0x0f, 0xaf, 0x3d, 0x78, 0xc2, 0x17, 0x15, 0xc1, 0x97, 0xe1, 0x52, 0xc4, 0xd4, 0x2c, + 0x9c, 0xbf, 0x4a, 0xc0, 0xa5, 0x03, 0xb9, 0xa3, 0xb4, 0x9c, 0x42, 0x2e, 0xa0, 0xdf, 0x8f, 0xde, + 0x92, 0xe6, 0x50, 0x04, 0xd0, 0xac, 0x75, 0xd7, 0x89, 0xda, 0x51, 0xfa, 0xc7, 0x38, 0x0e, 0x9f, + 0x63, 0x13, 0xf6, 0x28, 0xa0, 0x09, 0x7b, 0x6b, 0x7c, 0x5b, 0xa3, 0x5a, 0xb2, 0x7d, 0x7f, 0x82, + 0x79, 0x73, 0x7c, 0xbd, 0x11, 0x5e, 0x70, 0xea, 0x28, 0xfe, 0x36, 0xbb, 0xa6, 0xbf, 0x24, 0x40, + 0x88, 0x5a, 0x3d, 0xcb, 0x21, 0x22, 0xcc, 0x35, 0x35, 0xf5, 0x48, 0xd1, 0xbb, 0xb8, 0xc5, 0xaa, + 0xff, 0x37, 0xc6, 0xd9, 0x3c, 0x96, 0x40, 0x8a, 0xf6, 0x58, 0x71, 0xa0, 0x06, 0x65, 0x61, 0xa6, + 0x8b, 0x0d, 0x43, 0x6e, 0xdb, 0x66, 0xd9, 0x8f, 0xfc, 0x17, 0x71, 0x98, 0x73, 0x86, 0x20, 0x75, + 0xc8, 0x83, 0x69, 0xfa, 0xda, 0x79, 0x16, 0x03, 0x9e, 0xdd, 0x99, 0x63, 0xcf, 0xe0, 0xcc, 0x2d, + 0x8f, 0x33, 0xd3, 0x70, 0xd8, 0x7e, 0x26, 0xb3, 0x23, 0xfc, 0xfa, 0x5b, 0x77, 0x40, 0xe1, 0x07, + 0x80, 0x2a, 0x8a, 0xc1, 0xba, 0x28, 0x27, 0x2d, 0x59, 0x4d, 0x93, 0xfc, 0x54, 0xc2, 0xaa, 0xa9, + 0x2b, 0xac, 0x5c, 0x4f, 0x8a, 0xd0, 0x95, 0x9f, 0x96, 0x28, 0xc5, 0x2a, 0xe9, 0x0d, 0x53, 0xd6, + 0x4d, 0x45, 0x6d, 0x4b, 0xa6, 0xf6, 0x31, 0x76, 0x40, 0x57, 0x9b, 0xda, 0xb0, 0x88, 0xc2, 0x67, + 0x1c, 0x2c, 0x7a, 0xd4, 0x33, 0x9f, 0xbc, 0x03, 0x33, 0x03, 0xdd, 0x9e, 0x32, 0x3e, 0x40, 0x3a, + 0x47, 0xb7, 0xcd, 0x1e, 0x81, 0xd6, 0x01, 0x54, 0xfc, 0xd4, 0xf4, 0xcc, 0x3b, 0x67, 0x51, 0xc8, + 0x9c, 0xfc, 0x4d, 0x48, 0xd2, 0x6d, 0x18, 0xb7, 0x5f, 0xfe, 0x22, 0x06, 0x68, 0x07, 0x9b, 0x4e, + 0x1b, 0xc4, 0xf6, 0x20, 0xc4, 0x97, 0xb8, 0x67, 0xf0, 0xa5, 0xf7, 0x3c, 0xbe, 0x44, 0xbd, 0xf1, + 0x9a, 0x0b, 0x7d, 0xf6, 0x4d, 0x1d, 0x99, 0x09, 0x43, 0x5a, 0x0f, 0x5a, 0xcf, 0x8d, 0xd7, 0x7a, + 0x9c, 0xd2, 0x65, 0xb6, 0x61, 0xd1, 0x63, 0x33, 0x7b, 0xa7, 0x37, 0x00, 0xc9, 0xc7, 0xb2, 0xd2, + 0x91, 0x2d, 0xbb, 0xec, 0xce, 0x8e, 0x75, 0x7a, 0x67, 0x1d, 0x8e, 0x3d, 0x4c, 0x10, 0xdc, 0x05, + 0x03, 0xd3, 0xe7, 0x47, 0xc3, 0x3b, 0xee, 0x83, 0x76, 0x48, 0x86, 0xcd, 0xbb, 0x13, 0x88, 0x88, + 0x5f, 0x1e, 0x2e, 0x12, 0x18, 0x3c, 0x1c, 0x0a, 0x8e, 0x7f, 0x1a, 0x87, 0xd5, 0x08, 0x69, 0x74, + 0x07, 0xe2, 0x7a, 0xaf, 0xc9, 0x9c, 0xe9, 0xe5, 0x31, 0xf4, 0xe7, 0xc4, 0xbd, 0xe2, 0xee, 0x94, + 0x68, 0x8d, 0xe2, 0x3f, 0x8f, 0x41, 0x5c, 0xdc, 0x2b, 0xa2, 0x77, 0x3d, 0x48, 0xf1, 0xf5, 0x31, + 0xb5, 0xb8, 0x81, 0xe2, 0x2f, 0xb9, 0x20, 0xa4, 0x38, 0x0b, 0x4b, 0x45, 0xb1, 0x94, 0x6f, 0x94, + 0xa4, 0xed, 0x52, 0xa5, 0xd4, 0x28, 0x49, 0x14, 0xc9, 0xce, 0x70, 0x68, 0x0d, 0xb2, 0x7b, 0xfb, + 0x85, 0x4a, 0xb9, 0xbe, 0x2b, 0xed, 0x57, 0xed, 0x5f, 0x8c, 0x1b, 0x43, 0x19, 0x98, 0xaf, 0x94, + 0xeb, 0x0d, 0x46, 0xa8, 0x67, 0xe2, 0x16, 0x65, 0xa7, 0xd4, 0x90, 0x8a, 0xf9, 0xbd, 0x7c, 0xb1, + 0xdc, 0x78, 0x94, 0x49, 0x20, 0x1e, 0x56, 0xbc, 0xba, 0xeb, 0xd5, 0xfc, 0x5e, 0x7d, 0xb7, 0xd6, + 0xc8, 0x24, 0x11, 0x82, 0x34, 0x19, 0x6f, 0x93, 0xea, 0x99, 0x69, 0x4b, 0x43, 0xb1, 0x52, 0xab, + 0x3a, 0x36, 0xcc, 0xa0, 0x25, 0xc8, 0xd8, 0x33, 0x8b, 0xa5, 0xfc, 0x36, 0x41, 0x31, 0x66, 0xd1, + 0x59, 0x58, 0x28, 0x7d, 0xb0, 0x97, 0xaf, 0x6e, 0xdb, 0x82, 0x73, 0x0e, 0x06, 0xf6, 0x75, 0x0c, + 0x96, 0x29, 0x08, 0x66, 0x43, 0x6e, 0x76, 0x58, 0x6e, 0x42, 0x86, 0xb6, 0xed, 0x92, 0xbf, 0x70, + 0x4a, 0x53, 0xfa, 0x81, 0x5d, 0x3e, 0xd9, 0x80, 0x75, 0xcc, 0x05, 0x58, 0x97, 0xfd, 0xc5, 0xe4, + 0x35, 0x2f, 0xb4, 0xeb, 0x9b, 0x2d, 0xaa, 0x3f, 0x79, 0x10, 0x50, 0xed, 0xdc, 0x88, 0xd6, 0x16, + 0x75, 0x12, 0x9c, 0xa6, 0x19, 0x39, 0x65, 0x40, 0xdf, 0x83, 0x15, 0xbf, 0xbd, 0x2c, 0xb6, 0xae, + 0x0f, 0x01, 0xb0, 0x4e, 0x86, 0x71, 0x64, 0x1d, 0x09, 0xe1, 0xef, 0x1c, 0xcc, 0xda, 0x64, 0x2b, + 0x4b, 0x1b, 0xca, 0x8f, 0xb0, 0x07, 0xf0, 0x99, 0xb3, 0x28, 0x0e, 0x7e, 0xe4, 0x86, 0x4e, 0x63, + 0x7e, 0xe8, 0x34, 0xf0, 0x3d, 0xc7, 0x03, 0xdf, 0xf3, 0x3b, 0xb0, 0xd0, 0xb4, 0xcc, 0x57, 0x34, + 0x55, 0x32, 0x95, 0xae, 0x8d, 0xe7, 0x0c, 0x5f, 0x75, 0x34, 0xec, 0xfb, 0x49, 0x71, 0xde, 0x1e, + 0x60, 0x91, 0xd0, 0x06, 0xcc, 0x93, 0xab, 0x0f, 0xc9, 0xd4, 0xa4, 0xbe, 0x81, 0xb3, 0x49, 0xd2, + 0xdd, 0x02, 0xa1, 0x35, 0xb4, 0x7d, 0x03, 0x0b, 0x7f, 0xe6, 0x60, 0x99, 0x36, 0xed, 0x7e, 0x77, + 0x1c, 0x05, 0x01, 0xbb, 0x3d, 0xce, 0x97, 0xf8, 0x03, 0x15, 0xbe, 0xa8, 0x9e, 0x25, 0x0b, 0x2b, + 0xfe, 0xf9, 0x58, 0xa3, 0xf2, 0x5b, 0x0e, 0x96, 0xac, 0x53, 0xd7, 0x66, 0x3c, 0xef, 0x22, 0x60, + 0x82, 0x37, 0xe9, 0xdb, 0xcc, 0x84, 0x7f, 0x33, 0x85, 0xdf, 0x73, 0xb0, 0xec, 0xb3, 0x95, 0x79, + 0xea, 0xdb, 0xfe, 0x8a, 0xe2, 0xb2, 0xbb, 0xa2, 0x18, 0x92, 0x9f, 0xb0, 0xa6, 0xb8, 0x6d, 0xd7, + 0x14, 0x93, 0x05, 0xc4, 0xa7, 0x31, 0x58, 0x1f, 0x64, 0x76, 0x72, 0xed, 0xd7, 0x9a, 0xa0, 0x25, + 0x3e, 0xdd, 0xed, 0xda, 0xfb, 0xfe, 0x54, 0x77, 0x6b, 0xf8, 0xb0, 0x09, 0x30, 0xe9, 0x45, 0x39, + 0xe0, 0x8f, 0xdd, 0xe8, 0x96, 0x77, 0x5e, 0xf6, 0x0a, 0xc7, 0x84, 0x89, 0xdf, 0x84, 0x73, 0x04, + 0x28, 0x70, 0xae, 0x9b, 0xed, 0x4b, 0x30, 0x9a, 0x45, 0x66, 0xc5, 0x65, 0x8b, 0xed, 0xdc, 0xb1, + 0x32, 0x68, 0xb4, 0x25, 0x7c, 0x93, 0x80, 0x95, 0xaa, 0xd6, 0xc2, 0x75, 0x53, 0x6e, 0x4f, 0x02, + 0x1a, 0x7e, 0x7f, 0x18, 0x83, 0x89, 0x79, 0xf7, 0x33, 0x58, 0xeb, 0x38, 0xd0, 0x0b, 0xca, 0xc1, + 0xa2, 0x61, 0xca, 0x6d, 0x12, 0x41, 0xb2, 0xde, 0xc6, 0xa6, 0xd4, 0x93, 0xcd, 0x27, 0x2c, 0x3c, + 0xce, 0x32, 0x56, 0x83, 0x70, 0xf6, 0x64, 0xf3, 0x49, 0x30, 0x96, 0x97, 0x98, 0x18, 0xcb, 0x7b, + 0xcf, 0xdf, 0x4e, 0xbf, 0x3a, 0x62, 0x2d, 0x11, 0xe7, 0xe0, 0x07, 0x21, 0x38, 0xdd, 0x6b, 0x23, + 0x54, 0x8e, 0xc6, 0xe7, 0x4e, 0x8f, 0x4b, 0x7d, 0xcb, 0x10, 0xdf, 0x79, 0x38, 0x37, 0xb4, 0x78, + 0x96, 0x75, 0xdb, 0x90, 0xb5, 0x58, 0xfb, 0xaa, 0x31, 0xa1, 0x3b, 0x86, 0x78, 0x4c, 0x2c, 0xc4, + 0x63, 0x84, 0x55, 0x38, 0x1f, 0x30, 0x11, 0xb3, 0xe2, 0x8f, 0x49, 0x6a, 0xc6, 0xe4, 0x68, 0xf3, + 0x87, 0x61, 0x51, 0xf1, 0x86, 0xfb, 0xb5, 0x07, 0x02, 0xb3, 0x2f, 0x22, 0x2e, 0x2e, 0x42, 0xca, + 0x2d, 0xc7, 0x4e, 0x0e, 0x73, 0x44, 0xe0, 0x24, 0x4f, 0x05, 0x82, 0x4f, 0xfb, 0x40, 0xf0, 0xca, + 0x20, 0xa8, 0x66, 0xbc, 0xd5, 0x60, 0xe8, 0x56, 0x44, 0x84, 0xd5, 0xe3, 0xa1, 0xb0, 0x9a, 0xf5, + 0x22, 0xeb, 0xa1, 0x4a, 0xff, 0x0f, 0x02, 0x8b, 0x39, 0x75, 0x20, 0xe4, 0x2d, 0x3c, 0x06, 0x9e, + 0x7a, 0xfc, 0xe4, 0x20, 0xb4, 0xcf, 0x8d, 0x62, 0x7e, 0x37, 0x12, 0xd6, 0x61, 0x35, 0x50, 0x37, + 0x9b, 0xfa, 0x11, 0xb5, 0x6b, 0x07, 0x33, 0x0c, 0xa3, 0x6e, 0xca, 0xa6, 0x31, 0xee, 0xcc, 0x8c, + 0xe9, 0x9e, 0x99, 0x92, 0xc8, 0xcc, 0x3b, 0x74, 0x55, 0x7e, 0xd5, 0xec, 0xec, 0x7c, 0x05, 0x92, + 0x7d, 0x02, 0xc7, 0xd1, 0xe2, 0x67, 0xd1, 0xeb, 0xd2, 0xfb, 0x16, 0x4b, 0xa4, 0x12, 0xc2, 0x1f, + 0x38, 0x48, 0xb9, 0xc8, 0x68, 0x0d, 0xe6, 0x9c, 0xee, 0xdc, 0xae, 0xd3, 0x1d, 0x82, 0xf5, 0x0e, + 0x4c, 0xcd, 0x94, 0x3b, 0xec, 0x86, 0x97, 0x3e, 0x58, 0xad, 0x55, 0xdf, 0xc0, 0xb4, 0x8c, 0x8b, + 0x8b, 0xe4, 0x37, 0xba, 0x0e, 0x89, 0xbe, 0xaa, 0x98, 0x24, 0xf6, 0xd2, 0xfe, 0xa0, 0x22, 0x53, + 0xe5, 0xf6, 0x55, 0xc5, 0x14, 0x89, 0x94, 0x70, 0x0d, 0x12, 0xd6, 0x93, 0xb7, 0x89, 0x9d, 0x83, + 0x64, 0xe1, 0x51, 0xa3, 0x54, 0xcf, 0x70, 0x08, 0x60, 0xba, 0x5c, 0xad, 0x6d, 0x97, 0xea, 0x99, + 0x98, 0xb0, 0xe6, 0x2c, 0x3d, 0x08, 0x24, 0xf8, 0x88, 0xbe, 0x92, 0x30, 0x78, 0x20, 0x1f, 0x08, + 0x0f, 0xac, 0x7b, 0x0e, 0xa7, 0x11, 0xc0, 0xc0, 0x7f, 0x38, 0x58, 0x0e, 0x94, 0x43, 0xb7, 0xdd, + 0x90, 0xc0, 0xa5, 0x48, 0x9d, 0x6e, 0x30, 0xe0, 0x57, 0x1c, 0x05, 0x03, 0xb6, 0x3c, 0x60, 0xc0, + 0xd5, 0x91, 0xe3, 0xdd, 0x30, 0xc0, 0x41, 0x08, 0x0a, 0x50, 0x6f, 0xe4, 0x77, 0x4a, 0xd2, 0x7e, + 0x95, 0xfe, 0x75, 0x50, 0x80, 0x25, 0xc8, 0x58, 0x5d, 0x3d, 0xfb, 0xbe, 0xad, 0xde, 0xc8, 0x37, + 0xea, 0x99, 0xd8, 0x70, 0x07, 0x1e, 0x77, 0x3a, 0xf0, 0x25, 0x40, 0x6c, 0x5b, 0xdd, 0x9f, 0x66, + 0x7e, 0xc6, 0xc1, 0xa2, 0x87, 0xcc, 0x76, 0xd9, 0x75, 0x7b, 0xc3, 0x79, 0x6e, 0x6f, 0x6e, 0xc2, + 0x92, 0xd5, 0x44, 0x50, 0x47, 0x36, 0xa4, 0x1e, 0xd6, 0x25, 0x8b, 0xc3, 0xdc, 0xe9, 0x6c, 0x57, + 0x7e, 0xca, 0xd0, 0xbe, 0x3d, 0xac, 0x5b, 0x8a, 0x9f, 0x03, 0xbe, 0x25, 0xfc, 0x9c, 0xa3, 0xe7, + 0xee, 0xc4, 0x05, 0xf7, 0xa8, 0x20, 0x0c, 0xa8, 0xc8, 0xe3, 0xe3, 0x57, 0xe4, 0x42, 0x9e, 0x1e, + 0xb6, 0xa7, 0x28, 0x7e, 0x6f, 0xfd, 0x97, 0x83, 0xd9, 0x72, 0x0b, 0xab, 0xa6, 0xe5, 0x7d, 0x55, + 0x58, 0xf0, 0x7c, 0xba, 0x8a, 0xd6, 0x42, 0xbe, 0x68, 0x25, 0x4b, 0xe7, 0xd7, 0x23, 0xbf, 0x77, + 0x15, 0xa6, 0xd0, 0x91, 0xeb, 0xb3, 0x5b, 0x0f, 0x7e, 0xf9, 0xd2, 0xd0, 0xc8, 0x80, 0x40, 0xe4, + 0xaf, 0x8c, 0x90, 0x72, 0xe6, 0x79, 0x13, 0x92, 0xe4, 0x23, 0x45, 0xb4, 0xe4, 0x7c, 0x28, 0xe9, + 0xfa, 0x86, 0x91, 0x5f, 0xf6, 0x51, 0xed, 0x71, 0xb7, 0xfe, 0x39, 0x0b, 0x30, 0xe8, 0x21, 0xd0, + 0x7d, 0x98, 0x77, 0x7f, 0x27, 0x85, 0x56, 0x23, 0xbe, 0xd2, 0xe3, 0xd7, 0x82, 0x99, 0x8e, 0x4d, + 0xf7, 0x61, 0xde, 0x7d, 0x2b, 0x3f, 0x50, 0x16, 0xf0, 0x65, 0xc0, 0x40, 0x59, 0xe0, 0x45, 0xfe, + 0x14, 0xea, 0xc0, 0xb9, 0x90, 0x7b, 0x59, 0x74, 0x75, 0xbc, 0xdb, 0x6b, 0xfe, 0xe5, 0x31, 0x2f, + 0x78, 0x85, 0x29, 0xa4, 0xc3, 0xf9, 0xd0, 0xeb, 0x48, 0xb4, 0x39, 0xee, 0x65, 0x29, 0xff, 0xca, + 0x18, 0x92, 0xce, 0x9c, 0x7d, 0xe0, 0xc3, 0xef, 0x40, 0xd0, 0x2b, 0x63, 0x5f, 0xce, 0xf1, 0xd7, + 0xc6, 0xbf, 0x52, 0x11, 0xa6, 0xd0, 0x2e, 0xa4, 0x5c, 0x17, 0x04, 0x88, 0x0f, 0xbc, 0x35, 0xa0, + 0x8a, 0x57, 0x23, 0x6e, 0x14, 0xa8, 0x26, 0x17, 0x88, 0x3d, 0xd0, 0x34, 0x8c, 0xc6, 0x0f, 0x34, + 0x05, 0xa0, 0xde, 0xfe, 0xed, 0xf7, 0x9d, 0x42, 0x41, 0xdb, 0x1f, 0x7c, 0x8c, 0x05, 0x6d, 0x7f, + 0xc8, 0x91, 0x26, 0x4c, 0xa1, 0xf7, 0x21, 0xed, 0x45, 0xec, 0xd0, 0x7a, 0x24, 0xf2, 0xc8, 0x5f, + 0x08, 0x63, 0xbb, 0x55, 0x7a, 0x01, 0xa2, 0x81, 0xca, 0x40, 0xa0, 0x6a, 0xa0, 0x32, 0x04, 0x57, + 0x9a, 0xb2, 0xf2, 0x93, 0x07, 0x7c, 0x19, 0xe4, 0xa7, 0x20, 0xbc, 0x69, 0x90, 0x9f, 0x02, 0x11, + 0x1b, 0x61, 0x0a, 0x29, 0xb0, 0x12, 0x0c, 0x21, 0xa0, 0x2b, 0x63, 0x41, 0x1b, 0xfc, 0xd5, 0x51, + 0x62, 0x4e, 0xaa, 0xf9, 0x32, 0x09, 0x09, 0x72, 0x1c, 0x35, 0xe0, 0x8c, 0xaf, 0x85, 0x43, 0x17, + 0xa2, 0x1b, 0x5b, 0xfe, 0x62, 0x28, 0xdf, 0x59, 0xc9, 0x63, 0x38, 0x3b, 0xd4, 0x94, 0xa1, 0x0d, + 0xf7, 0xb8, 0xa0, 0xc6, 0x90, 0xbf, 0x14, 0x21, 0xe1, 0xd7, 0xed, 0x4d, 0x3b, 0x1b, 0xa3, 0xba, + 0x06, 0xaf, 0xee, 0xb0, 0x54, 0xf3, 0x11, 0x3d, 0xfd, 0xfd, 0x49, 0x46, 0xf0, 0xda, 0x15, 0x98, + 0x5e, 0x2e, 0x47, 0xca, 0x38, 0x33, 0x7c, 0xe8, 0x94, 0x1d, 0xae, 0x32, 0x17, 0x79, 0x8c, 0x0b, + 0xac, 0xae, 0x79, 0x21, 0x4a, 0xc4, 0x51, 0xff, 0x10, 0x32, 0xfe, 0x23, 0x18, 0x79, 0xde, 0x57, + 0x90, 0xdb, 0x6c, 0x84, 0x0b, 0xf8, 0x77, 0xc6, 0x1f, 0xff, 0x7e, 0xab, 0x82, 0x22, 0xff, 0x72, + 0xa4, 0x8c, 0x3b, 0x63, 0xb9, 0x2a, 0xaf, 0x41, 0xc6, 0x1a, 0xae, 0xd2, 0x06, 0x19, 0x2b, 0xa0, + 0x54, 0x13, 0xa6, 0xb6, 0xee, 0x02, 0xc8, 0x9d, 0xde, 0x13, 0x59, 0xc2, 0x6a, 0xbf, 0x8b, 0xd6, + 0x86, 0x70, 0xf2, 0x92, 0xda, 0xef, 0xd6, 0x7a, 0xa6, 0xa2, 0xa9, 0x46, 0xf6, 0xf3, 0x59, 0xd2, + 0xe5, 0xce, 0x91, 0x01, 0x16, 0x63, 0xab, 0x02, 0x99, 0xc1, 0x68, 0x89, 0xf4, 0x64, 0xe8, 0x52, + 0xa0, 0x0e, 0xf2, 0x6f, 0x05, 0x3e, 0x45, 0x69, 0x47, 0x11, 0xe1, 0x6e, 0xbd, 0x0d, 0xd0, 0x34, + 0x14, 0x89, 0x76, 0xbd, 0x68, 0x7d, 0x48, 0xcf, 0x3d, 0x05, 0x77, 0x5a, 0xb6, 0x8e, 0xdf, 0x30, + 0x63, 0x9a, 0x86, 0x42, 0x9b, 0xcf, 0xad, 0x77, 0x20, 0x45, 0x8d, 0x39, 0xb2, 0xe4, 0x46, 0x8d, + 0x67, 0x36, 0xd0, 0xd5, 0x13, 0xce, 0x56, 0x09, 0x16, 0xa8, 0x02, 0xf6, 0x01, 0x03, 0xba, 0x38, + 0xa4, 0xe2, 0x01, 0xe5, 0xf8, 0x94, 0xcc, 0x93, 0x61, 0x8c, 0xb7, 0x55, 0x80, 0x79, 0x5b, 0x8d, + 0xf9, 0x44, 0x6b, 0xa1, 0x0b, 0x01, 0x5a, 0x2c, 0x86, 0x4f, 0x49, 0x8a, 0x29, 0xb1, 0x58, 0x03, + 0x53, 0xec, 0x7f, 0xad, 0x19, 0x36, 0x85, 0x75, 0x05, 0x81, 0xa6, 0x30, 0x5e, 0x21, 0xf9, 0x38, + 0xde, 0x34, 0x94, 0xc3, 0x69, 0x32, 0xe8, 0xf5, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0x37, 0xa7, + 0xb1, 0xe8, 0x07, 0x36, 0x00, 0x00, } diff --git a/spec.md b/spec.md index bd46f08c..d1906b6a 100644 --- a/spec.md +++ b/spec.md @@ -280,10 +280,45 @@ import "google/protobuf/wrappers.proto"; option go_package = "csi"; +extend google.protobuf.EnumOptions { + // Indicates that this enum is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_enum = 1060; +} +extend google.protobuf.EnumValueOptions { + // Indicates that this enum value is OPTIONAL and part of an + // experimental API that may be deprecated and eventually removed + // between minor releases. + bool alpha_enum_value = 1060; +} extend google.protobuf.FieldOptions { // Indicates that a field MAY contain information that is sensitive // and MUST be treated as such (e.g. not logged). bool csi_secret = 1059; + + // Indicates that this field is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_field = 1060; +} +extend google.protobuf.MessageOptions { + // Indicates that this message is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_message = 1060; +} +extend google.protobuf.MethodOptions { + // Indicates that this method is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_method = 1060; +} +extend google.protobuf.ServiceOptions { + // Indicates that this service is OPTIONAL and part of an experimental + // API that may be deprecated and eventually removed between minor + // releases. + bool alpha_service = 1060; } ``` From 1548e078373c3667ace7066d929cfa5b89617d57 Mon Sep 17 00:00:00 2001 From: James DeFelice Date: Thu, 4 Apr 2019 14:53:47 +0000 Subject: [PATCH 2/7] spec: remove superfluous newlines --- csi.proto | 2 - lib/go/csi/csi.pb.go | 154 +++++++++++++++++++++---------------------- spec.md | 2 - 3 files changed, 77 insertions(+), 81 deletions(-) diff --git a/csi.proto b/csi.proto index 278cce83..a3301cc7 100644 --- a/csi.proto +++ b/csi.proto @@ -113,11 +113,9 @@ service Node { rpc NodeGetVolumeStats (NodeGetVolumeStatsRequest) returns (NodeGetVolumeStatsResponse) {} - rpc NodeExpandVolume(NodeExpandVolumeRequest) returns (NodeExpandVolumeResponse) {} - rpc NodeGetCapabilities (NodeGetCapabilitiesRequest) returns (NodeGetCapabilitiesResponse) {} diff --git a/lib/go/csi/csi.pb.go b/lib/go/csi/csi.pb.go index e4d072d5..349c6e01 100644 --- a/lib/go/csi/csi.pb.go +++ b/lib/go/csi/csi.pb.go @@ -63,7 +63,7 @@ func (x PluginCapability_Service_Type) String() string { return proto.EnumName(PluginCapability_Service_Type_name, int32(x)) } func (PluginCapability_Service_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{4, 0, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{4, 0, 0} } type PluginCapability_VolumeExpansion_Type int32 @@ -124,7 +124,7 @@ func (x PluginCapability_VolumeExpansion_Type) String() string { return proto.EnumName(PluginCapability_VolumeExpansion_Type_name, int32(x)) } func (PluginCapability_VolumeExpansion_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{4, 1, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{4, 1, 0} } type VolumeCapability_AccessMode_Mode int32 @@ -168,7 +168,7 @@ func (x VolumeCapability_AccessMode_Mode) String() string { return proto.EnumName(VolumeCapability_AccessMode_Mode_name, int32(x)) } func (VolumeCapability_AccessMode_Mode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{10, 2, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{10, 2, 0} } type ControllerServiceCapability_RPC_Type int32 @@ -226,7 +226,7 @@ func (x ControllerServiceCapability_RPC_Type) String() string { return proto.EnumName(ControllerServiceCapability_RPC_Type_name, int32(x)) } func (ControllerServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{29, 0, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{29, 0, 0} } type VolumeUsage_Unit int32 @@ -252,7 +252,7 @@ func (x VolumeUsage_Unit) String() string { return proto.EnumName(VolumeUsage_Unit_name, int32(x)) } func (VolumeUsage_Unit) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{49, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{49, 0} } type NodeServiceCapability_RPC_Type int32 @@ -285,7 +285,7 @@ func (x NodeServiceCapability_RPC_Type) String() string { return proto.EnumName(NodeServiceCapability_RPC_Type_name, int32(x)) } func (NodeServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{52, 0, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{52, 0, 0} } type GetPluginInfoRequest struct { @@ -298,7 +298,7 @@ func (m *GetPluginInfoRequest) Reset() { *m = GetPluginInfoRequest{} } func (m *GetPluginInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoRequest) ProtoMessage() {} func (*GetPluginInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{0} } func (m *GetPluginInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoRequest.Unmarshal(m, b) @@ -340,7 +340,7 @@ func (m *GetPluginInfoResponse) Reset() { *m = GetPluginInfoResponse{} } func (m *GetPluginInfoResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoResponse) ProtoMessage() {} func (*GetPluginInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{1} + return fileDescriptor_csi_e223b37cbebe55a7, []int{1} } func (m *GetPluginInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoResponse.Unmarshal(m, b) @@ -391,7 +391,7 @@ func (m *GetPluginCapabilitiesRequest) Reset() { *m = GetPluginCapabilit func (m *GetPluginCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesRequest) ProtoMessage() {} func (*GetPluginCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{2} + return fileDescriptor_csi_e223b37cbebe55a7, []int{2} } func (m *GetPluginCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesRequest.Unmarshal(m, b) @@ -424,7 +424,7 @@ func (m *GetPluginCapabilitiesResponse) Reset() { *m = GetPluginCapabili func (m *GetPluginCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesResponse) ProtoMessage() {} func (*GetPluginCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{3} + return fileDescriptor_csi_e223b37cbebe55a7, []int{3} } func (m *GetPluginCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesResponse.Unmarshal(m, b) @@ -466,7 +466,7 @@ func (m *PluginCapability) Reset() { *m = PluginCapability{} } func (m *PluginCapability) String() string { return proto.CompactTextString(m) } func (*PluginCapability) ProtoMessage() {} func (*PluginCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{4} + return fileDescriptor_csi_e223b37cbebe55a7, []int{4} } func (m *PluginCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability.Unmarshal(m, b) @@ -608,7 +608,7 @@ func (m *PluginCapability_Service) Reset() { *m = PluginCapability_Servi func (m *PluginCapability_Service) String() string { return proto.CompactTextString(m) } func (*PluginCapability_Service) ProtoMessage() {} func (*PluginCapability_Service) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{4, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{4, 0} } func (m *PluginCapability_Service) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_Service.Unmarshal(m, b) @@ -646,7 +646,7 @@ func (m *PluginCapability_VolumeExpansion) Reset() { *m = PluginCapabili func (m *PluginCapability_VolumeExpansion) String() string { return proto.CompactTextString(m) } func (*PluginCapability_VolumeExpansion) ProtoMessage() {} func (*PluginCapability_VolumeExpansion) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{4, 1} + return fileDescriptor_csi_e223b37cbebe55a7, []int{4, 1} } func (m *PluginCapability_VolumeExpansion) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_VolumeExpansion.Unmarshal(m, b) @@ -683,7 +683,7 @@ func (m *ProbeRequest) Reset() { *m = ProbeRequest{} } func (m *ProbeRequest) String() string { return proto.CompactTextString(m) } func (*ProbeRequest) ProtoMessage() {} func (*ProbeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{5} + return fileDescriptor_csi_e223b37cbebe55a7, []int{5} } func (m *ProbeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeRequest.Unmarshal(m, b) @@ -734,7 +734,7 @@ func (m *ProbeResponse) Reset() { *m = ProbeResponse{} } func (m *ProbeResponse) String() string { return proto.CompactTextString(m) } func (*ProbeResponse) ProtoMessage() {} func (*ProbeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{6} + return fileDescriptor_csi_e223b37cbebe55a7, []int{6} } func (m *ProbeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeResponse.Unmarshal(m, b) @@ -843,7 +843,7 @@ func (m *CreateVolumeRequest) Reset() { *m = CreateVolumeRequest{} } func (m *CreateVolumeRequest) String() string { return proto.CompactTextString(m) } func (*CreateVolumeRequest) ProtoMessage() {} func (*CreateVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{7} + return fileDescriptor_csi_e223b37cbebe55a7, []int{7} } func (m *CreateVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeRequest.Unmarshal(m, b) @@ -928,7 +928,7 @@ func (m *VolumeContentSource) Reset() { *m = VolumeContentSource{} } func (m *VolumeContentSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource) ProtoMessage() {} func (*VolumeContentSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{8} + return fileDescriptor_csi_e223b37cbebe55a7, []int{8} } func (m *VolumeContentSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource.Unmarshal(m, b) @@ -1074,7 +1074,7 @@ func (m *VolumeContentSource_SnapshotSource) Reset() { *m = VolumeConten func (m *VolumeContentSource_SnapshotSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_SnapshotSource) ProtoMessage() {} func (*VolumeContentSource_SnapshotSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{8, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{8, 0} } func (m *VolumeContentSource_SnapshotSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_SnapshotSource.Unmarshal(m, b) @@ -1115,7 +1115,7 @@ func (m *VolumeContentSource_VolumeSource) Reset() { *m = VolumeContentS func (m *VolumeContentSource_VolumeSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_VolumeSource) ProtoMessage() {} func (*VolumeContentSource_VolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{8, 1} + return fileDescriptor_csi_e223b37cbebe55a7, []int{8, 1} } func (m *VolumeContentSource_VolumeSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_VolumeSource.Unmarshal(m, b) @@ -1156,7 +1156,7 @@ func (m *CreateVolumeResponse) Reset() { *m = CreateVolumeResponse{} } func (m *CreateVolumeResponse) String() string { return proto.CompactTextString(m) } func (*CreateVolumeResponse) ProtoMessage() {} func (*CreateVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{9} + return fileDescriptor_csi_e223b37cbebe55a7, []int{9} } func (m *CreateVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeResponse.Unmarshal(m, b) @@ -1203,7 +1203,7 @@ func (m *VolumeCapability) Reset() { *m = VolumeCapability{} } func (m *VolumeCapability) String() string { return proto.CompactTextString(m) } func (*VolumeCapability) ProtoMessage() {} func (*VolumeCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{10} + return fileDescriptor_csi_e223b37cbebe55a7, []int{10} } func (m *VolumeCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability.Unmarshal(m, b) @@ -1352,7 +1352,7 @@ func (m *VolumeCapability_BlockVolume) Reset() { *m = VolumeCapability_B func (m *VolumeCapability_BlockVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_BlockVolume) ProtoMessage() {} func (*VolumeCapability_BlockVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{10, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{10, 0} } func (m *VolumeCapability_BlockVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_BlockVolume.Unmarshal(m, b) @@ -1392,7 +1392,7 @@ func (m *VolumeCapability_MountVolume) Reset() { *m = VolumeCapability_M func (m *VolumeCapability_MountVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_MountVolume) ProtoMessage() {} func (*VolumeCapability_MountVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{10, 1} + return fileDescriptor_csi_e223b37cbebe55a7, []int{10, 1} } func (m *VolumeCapability_MountVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_MountVolume.Unmarshal(m, b) @@ -1439,7 +1439,7 @@ func (m *VolumeCapability_AccessMode) Reset() { *m = VolumeCapability_Ac func (m *VolumeCapability_AccessMode) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_AccessMode) ProtoMessage() {} func (*VolumeCapability_AccessMode) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{10, 2} + return fileDescriptor_csi_e223b37cbebe55a7, []int{10, 2} } func (m *VolumeCapability_AccessMode) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_AccessMode.Unmarshal(m, b) @@ -1487,7 +1487,7 @@ func (m *CapacityRange) Reset() { *m = CapacityRange{} } func (m *CapacityRange) String() string { return proto.CompactTextString(m) } func (*CapacityRange) ProtoMessage() {} func (*CapacityRange) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{11} + return fileDescriptor_csi_e223b37cbebe55a7, []int{11} } func (m *CapacityRange) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CapacityRange.Unmarshal(m, b) @@ -1592,7 +1592,7 @@ func (m *Volume) Reset() { *m = Volume{} } func (m *Volume) String() string { return proto.CompactTextString(m) } func (*Volume) ProtoMessage() {} func (*Volume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{12} + return fileDescriptor_csi_e223b37cbebe55a7, []int{12} } func (m *Volume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Volume.Unmarshal(m, b) @@ -1784,7 +1784,7 @@ func (m *TopologyRequirement) Reset() { *m = TopologyRequirement{} } func (m *TopologyRequirement) String() string { return proto.CompactTextString(m) } func (*TopologyRequirement) ProtoMessage() {} func (*TopologyRequirement) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{13} + return fileDescriptor_csi_e223b37cbebe55a7, []int{13} } func (m *TopologyRequirement) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TopologyRequirement.Unmarshal(m, b) @@ -1858,7 +1858,7 @@ func (m *Topology) Reset() { *m = Topology{} } func (m *Topology) String() string { return proto.CompactTextString(m) } func (*Topology) ProtoMessage() {} func (*Topology) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{14} + return fileDescriptor_csi_e223b37cbebe55a7, []int{14} } func (m *Topology) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Topology.Unmarshal(m, b) @@ -1902,7 +1902,7 @@ func (m *DeleteVolumeRequest) Reset() { *m = DeleteVolumeRequest{} } func (m *DeleteVolumeRequest) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeRequest) ProtoMessage() {} func (*DeleteVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{15} + return fileDescriptor_csi_e223b37cbebe55a7, []int{15} } func (m *DeleteVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeRequest.Unmarshal(m, b) @@ -1946,7 +1946,7 @@ func (m *DeleteVolumeResponse) Reset() { *m = DeleteVolumeResponse{} } func (m *DeleteVolumeResponse) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeResponse) ProtoMessage() {} func (*DeleteVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{16} + return fileDescriptor_csi_e223b37cbebe55a7, []int{16} } func (m *DeleteVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeResponse.Unmarshal(m, b) @@ -2000,7 +2000,7 @@ func (m *ControllerPublishVolumeRequest) Reset() { *m = ControllerPublis func (m *ControllerPublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeRequest) ProtoMessage() {} func (*ControllerPublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{17} + return fileDescriptor_csi_e223b37cbebe55a7, []int{17} } func (m *ControllerPublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeRequest.Unmarshal(m, b) @@ -2086,7 +2086,7 @@ func (m *ControllerPublishVolumeResponse) Reset() { *m = ControllerPubli func (m *ControllerPublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeResponse) ProtoMessage() {} func (*ControllerPublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{18} + return fileDescriptor_csi_e223b37cbebe55a7, []int{18} } func (m *ControllerPublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeResponse.Unmarshal(m, b) @@ -2137,7 +2137,7 @@ func (m *ControllerUnpublishVolumeRequest) Reset() { *m = ControllerUnpu func (m *ControllerUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeRequest) ProtoMessage() {} func (*ControllerUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{19} + return fileDescriptor_csi_e223b37cbebe55a7, []int{19} } func (m *ControllerUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeRequest.Unmarshal(m, b) @@ -2188,7 +2188,7 @@ func (m *ControllerUnpublishVolumeResponse) Reset() { *m = ControllerUnp func (m *ControllerUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeResponse) ProtoMessage() {} func (*ControllerUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{20} + return fileDescriptor_csi_e223b37cbebe55a7, []int{20} } func (m *ControllerUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeResponse.Unmarshal(m, b) @@ -2235,7 +2235,7 @@ func (m *ValidateVolumeCapabilitiesRequest) Reset() { *m = ValidateVolum func (m *ValidateVolumeCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesRequest) ProtoMessage() {} func (*ValidateVolumeCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{21} + return fileDescriptor_csi_e223b37cbebe55a7, []int{21} } func (m *ValidateVolumeCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesRequest.Unmarshal(m, b) @@ -2313,7 +2313,7 @@ func (m *ValidateVolumeCapabilitiesResponse) Reset() { *m = ValidateVolu func (m *ValidateVolumeCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesResponse) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{22} + return fileDescriptor_csi_e223b37cbebe55a7, []int{22} } func (m *ValidateVolumeCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse.Unmarshal(m, b) @@ -2370,7 +2370,7 @@ func (m *ValidateVolumeCapabilitiesResponse_Confirmed) String() string { } func (*ValidateVolumeCapabilitiesResponse_Confirmed) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse_Confirmed) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{22, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{22, 0} } func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse_Confirmed.Unmarshal(m, b) @@ -2435,7 +2435,7 @@ func (m *ListVolumesRequest) Reset() { *m = ListVolumesRequest{} } func (m *ListVolumesRequest) String() string { return proto.CompactTextString(m) } func (*ListVolumesRequest) ProtoMessage() {} func (*ListVolumesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{23} + return fileDescriptor_csi_e223b37cbebe55a7, []int{23} } func (m *ListVolumesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesRequest.Unmarshal(m, b) @@ -2487,7 +2487,7 @@ func (m *ListVolumesResponse) Reset() { *m = ListVolumesResponse{} } func (m *ListVolumesResponse) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse) ProtoMessage() {} func (*ListVolumesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{24} + return fileDescriptor_csi_e223b37cbebe55a7, []int{24} } func (m *ListVolumesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse.Unmarshal(m, b) @@ -2532,7 +2532,7 @@ func (m *ListVolumesResponse_Entry) Reset() { *m = ListVolumesResponse_E func (m *ListVolumesResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse_Entry) ProtoMessage() {} func (*ListVolumesResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{24, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{24, 0} } func (m *ListVolumesResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse_Entry.Unmarshal(m, b) @@ -2587,7 +2587,7 @@ func (m *GetCapacityRequest) Reset() { *m = GetCapacityRequest{} } func (m *GetCapacityRequest) String() string { return proto.CompactTextString(m) } func (*GetCapacityRequest) ProtoMessage() {} func (*GetCapacityRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{25} + return fileDescriptor_csi_e223b37cbebe55a7, []int{25} } func (m *GetCapacityRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityRequest.Unmarshal(m, b) @@ -2645,7 +2645,7 @@ func (m *GetCapacityResponse) Reset() { *m = GetCapacityResponse{} } func (m *GetCapacityResponse) String() string { return proto.CompactTextString(m) } func (*GetCapacityResponse) ProtoMessage() {} func (*GetCapacityResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{26} + return fileDescriptor_csi_e223b37cbebe55a7, []int{26} } func (m *GetCapacityResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityResponse.Unmarshal(m, b) @@ -2682,7 +2682,7 @@ func (m *ControllerGetCapabilitiesRequest) Reset() { *m = ControllerGetC func (m *ControllerGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesRequest) ProtoMessage() {} func (*ControllerGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{27} + return fileDescriptor_csi_e223b37cbebe55a7, []int{27} } func (m *ControllerGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesRequest.Unmarshal(m, b) @@ -2715,7 +2715,7 @@ func (m *ControllerGetCapabilitiesResponse) Reset() { *m = ControllerGet func (m *ControllerGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesResponse) ProtoMessage() {} func (*ControllerGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{28} + return fileDescriptor_csi_e223b37cbebe55a7, []int{28} } func (m *ControllerGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesResponse.Unmarshal(m, b) @@ -2756,7 +2756,7 @@ func (m *ControllerServiceCapability) Reset() { *m = ControllerServiceCa func (m *ControllerServiceCapability) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability) ProtoMessage() {} func (*ControllerServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{29} + return fileDescriptor_csi_e223b37cbebe55a7, []int{29} } func (m *ControllerServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability.Unmarshal(m, b) @@ -2866,7 +2866,7 @@ func (m *ControllerServiceCapability_RPC) Reset() { *m = ControllerServi func (m *ControllerServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_RPC) ProtoMessage() {} func (*ControllerServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{29, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{29, 0} } func (m *ControllerServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_RPC.Unmarshal(m, b) @@ -2928,7 +2928,7 @@ func (m *CreateSnapshotRequest) Reset() { *m = CreateSnapshotRequest{} } func (m *CreateSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotRequest) ProtoMessage() {} func (*CreateSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{30} + return fileDescriptor_csi_e223b37cbebe55a7, []int{30} } func (m *CreateSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotRequest.Unmarshal(m, b) @@ -2990,7 +2990,7 @@ func (m *CreateSnapshotResponse) Reset() { *m = CreateSnapshotResponse{} func (m *CreateSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotResponse) ProtoMessage() {} func (*CreateSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{31} + return fileDescriptor_csi_e223b37cbebe55a7, []int{31} } func (m *CreateSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotResponse.Unmarshal(m, b) @@ -3057,7 +3057,7 @@ func (m *Snapshot) Reset() { *m = Snapshot{} } func (m *Snapshot) String() string { return proto.CompactTextString(m) } func (*Snapshot) ProtoMessage() {} func (*Snapshot) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{32} + return fileDescriptor_csi_e223b37cbebe55a7, []int{32} } func (m *Snapshot) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Snapshot.Unmarshal(m, b) @@ -3129,7 +3129,7 @@ func (m *DeleteSnapshotRequest) Reset() { *m = DeleteSnapshotRequest{} } func (m *DeleteSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotRequest) ProtoMessage() {} func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{33} + return fileDescriptor_csi_e223b37cbebe55a7, []int{33} } func (m *DeleteSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotRequest.Unmarshal(m, b) @@ -3173,7 +3173,7 @@ func (m *DeleteSnapshotResponse) Reset() { *m = DeleteSnapshotResponse{} func (m *DeleteSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotResponse) ProtoMessage() {} func (*DeleteSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{34} + return fileDescriptor_csi_e223b37cbebe55a7, []int{34} } func (m *DeleteSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotResponse.Unmarshal(m, b) @@ -3228,7 +3228,7 @@ func (m *ListSnapshotsRequest) Reset() { *m = ListSnapshotsRequest{} } func (m *ListSnapshotsRequest) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsRequest) ProtoMessage() {} func (*ListSnapshotsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{35} + return fileDescriptor_csi_e223b37cbebe55a7, []int{35} } func (m *ListSnapshotsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsRequest.Unmarshal(m, b) @@ -3294,7 +3294,7 @@ func (m *ListSnapshotsResponse) Reset() { *m = ListSnapshotsResponse{} } func (m *ListSnapshotsResponse) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse) ProtoMessage() {} func (*ListSnapshotsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{36} + return fileDescriptor_csi_e223b37cbebe55a7, []int{36} } func (m *ListSnapshotsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse.Unmarshal(m, b) @@ -3339,7 +3339,7 @@ func (m *ListSnapshotsResponse_Entry) Reset() { *m = ListSnapshotsRespon func (m *ListSnapshotsResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse_Entry) ProtoMessage() {} func (*ListSnapshotsResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{36, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{36, 0} } func (m *ListSnapshotsResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse_Entry.Unmarshal(m, b) @@ -3384,7 +3384,7 @@ func (m *ControllerExpandVolumeRequest) Reset() { *m = ControllerExpandV func (m *ControllerExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeRequest) ProtoMessage() {} func (*ControllerExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{37} + return fileDescriptor_csi_e223b37cbebe55a7, []int{37} } func (m *ControllerExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeRequest.Unmarshal(m, b) @@ -3441,7 +3441,7 @@ func (m *ControllerExpandVolumeResponse) Reset() { *m = ControllerExpand func (m *ControllerExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeResponse) ProtoMessage() {} func (*ControllerExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{38} + return fileDescriptor_csi_e223b37cbebe55a7, []int{38} } func (m *ControllerExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeResponse.Unmarshal(m, b) @@ -3516,7 +3516,7 @@ func (m *NodeStageVolumeRequest) Reset() { *m = NodeStageVolumeRequest{} func (m *NodeStageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeRequest) ProtoMessage() {} func (*NodeStageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{39} + return fileDescriptor_csi_e223b37cbebe55a7, []int{39} } func (m *NodeStageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeRequest.Unmarshal(m, b) @@ -3588,7 +3588,7 @@ func (m *NodeStageVolumeResponse) Reset() { *m = NodeStageVolumeResponse func (m *NodeStageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeResponse) ProtoMessage() {} func (*NodeStageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{40} + return fileDescriptor_csi_e223b37cbebe55a7, []int{40} } func (m *NodeStageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeResponse.Unmarshal(m, b) @@ -3624,7 +3624,7 @@ func (m *NodeUnstageVolumeRequest) Reset() { *m = NodeUnstageVolumeReque func (m *NodeUnstageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeRequest) ProtoMessage() {} func (*NodeUnstageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{41} + return fileDescriptor_csi_e223b37cbebe55a7, []int{41} } func (m *NodeUnstageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeRequest.Unmarshal(m, b) @@ -3668,7 +3668,7 @@ func (m *NodeUnstageVolumeResponse) Reset() { *m = NodeUnstageVolumeResp func (m *NodeUnstageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeResponse) ProtoMessage() {} func (*NodeUnstageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{42} + return fileDescriptor_csi_e223b37cbebe55a7, []int{42} } func (m *NodeUnstageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeResponse.Unmarshal(m, b) @@ -3742,7 +3742,7 @@ func (m *NodePublishVolumeRequest) Reset() { *m = NodePublishVolumeReque func (m *NodePublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeRequest) ProtoMessage() {} func (*NodePublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{43} + return fileDescriptor_csi_e223b37cbebe55a7, []int{43} } func (m *NodePublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeRequest.Unmarshal(m, b) @@ -3828,7 +3828,7 @@ func (m *NodePublishVolumeResponse) Reset() { *m = NodePublishVolumeResp func (m *NodePublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeResponse) ProtoMessage() {} func (*NodePublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{44} + return fileDescriptor_csi_e223b37cbebe55a7, []int{44} } func (m *NodePublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeResponse.Unmarshal(m, b) @@ -3865,7 +3865,7 @@ func (m *NodeUnpublishVolumeRequest) Reset() { *m = NodeUnpublishVolumeR func (m *NodeUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeRequest) ProtoMessage() {} func (*NodeUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{45} + return fileDescriptor_csi_e223b37cbebe55a7, []int{45} } func (m *NodeUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeRequest.Unmarshal(m, b) @@ -3909,7 +3909,7 @@ func (m *NodeUnpublishVolumeResponse) Reset() { *m = NodeUnpublishVolume func (m *NodeUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeResponse) ProtoMessage() {} func (*NodeUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{46} + return fileDescriptor_csi_e223b37cbebe55a7, []int{46} } func (m *NodeUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeResponse.Unmarshal(m, b) @@ -3947,7 +3947,7 @@ func (m *NodeGetVolumeStatsRequest) Reset() { *m = NodeGetVolumeStatsReq func (m *NodeGetVolumeStatsRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsRequest) ProtoMessage() {} func (*NodeGetVolumeStatsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{47} + return fileDescriptor_csi_e223b37cbebe55a7, []int{47} } func (m *NodeGetVolumeStatsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsRequest.Unmarshal(m, b) @@ -3993,7 +3993,7 @@ func (m *NodeGetVolumeStatsResponse) Reset() { *m = NodeGetVolumeStatsRe func (m *NodeGetVolumeStatsResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsResponse) ProtoMessage() {} func (*NodeGetVolumeStatsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{48} + return fileDescriptor_csi_e223b37cbebe55a7, []int{48} } func (m *NodeGetVolumeStatsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsResponse.Unmarshal(m, b) @@ -4041,7 +4041,7 @@ func (m *VolumeUsage) Reset() { *m = VolumeUsage{} } func (m *VolumeUsage) String() string { return proto.CompactTextString(m) } func (*VolumeUsage) ProtoMessage() {} func (*VolumeUsage) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{49} + return fileDescriptor_csi_e223b37cbebe55a7, []int{49} } func (m *VolumeUsage) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeUsage.Unmarshal(m, b) @@ -4099,7 +4099,7 @@ func (m *NodeGetCapabilitiesRequest) Reset() { *m = NodeGetCapabilitiesR func (m *NodeGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesRequest) ProtoMessage() {} func (*NodeGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{50} + return fileDescriptor_csi_e223b37cbebe55a7, []int{50} } func (m *NodeGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesRequest.Unmarshal(m, b) @@ -4132,7 +4132,7 @@ func (m *NodeGetCapabilitiesResponse) Reset() { *m = NodeGetCapabilities func (m *NodeGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesResponse) ProtoMessage() {} func (*NodeGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{51} + return fileDescriptor_csi_e223b37cbebe55a7, []int{51} } func (m *NodeGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesResponse.Unmarshal(m, b) @@ -4173,7 +4173,7 @@ func (m *NodeServiceCapability) Reset() { *m = NodeServiceCapability{} } func (m *NodeServiceCapability) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability) ProtoMessage() {} func (*NodeServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{52} + return fileDescriptor_csi_e223b37cbebe55a7, []int{52} } func (m *NodeServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability.Unmarshal(m, b) @@ -4283,7 +4283,7 @@ func (m *NodeServiceCapability_RPC) Reset() { *m = NodeServiceCapability func (m *NodeServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_RPC) ProtoMessage() {} func (*NodeServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{52, 0} + return fileDescriptor_csi_e223b37cbebe55a7, []int{52, 0} } func (m *NodeServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_RPC.Unmarshal(m, b) @@ -4320,7 +4320,7 @@ func (m *NodeGetInfoRequest) Reset() { *m = NodeGetInfoRequest{} } func (m *NodeGetInfoRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoRequest) ProtoMessage() {} func (*NodeGetInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{53} + return fileDescriptor_csi_e223b37cbebe55a7, []int{53} } func (m *NodeGetInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoRequest.Unmarshal(m, b) @@ -4383,7 +4383,7 @@ func (m *NodeGetInfoResponse) Reset() { *m = NodeGetInfoResponse{} } func (m *NodeGetInfoResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoResponse) ProtoMessage() {} func (*NodeGetInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{54} + return fileDescriptor_csi_e223b37cbebe55a7, []int{54} } func (m *NodeGetInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoResponse.Unmarshal(m, b) @@ -4445,7 +4445,7 @@ func (m *NodeExpandVolumeRequest) Reset() { *m = NodeExpandVolumeRequest func (m *NodeExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeRequest) ProtoMessage() {} func (*NodeExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{55} + return fileDescriptor_csi_e223b37cbebe55a7, []int{55} } func (m *NodeExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeRequest.Unmarshal(m, b) @@ -4498,7 +4498,7 @@ func (m *NodeExpandVolumeResponse) Reset() { *m = NodeExpandVolumeRespon func (m *NodeExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeResponse) ProtoMessage() {} func (*NodeExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2ca1bb642d957c8c, []int{56} + return fileDescriptor_csi_e223b37cbebe55a7, []int{56} } func (m *NodeExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeResponse.Unmarshal(m, b) @@ -5560,10 +5560,10 @@ var _Node_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_2ca1bb642d957c8c) + proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_e223b37cbebe55a7) } -var fileDescriptor_csi_2ca1bb642d957c8c = []byte{ +var fileDescriptor_csi_e223b37cbebe55a7 = []byte{ // 3398 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x4d, 0x70, 0xdb, 0xc6, 0x15, 0x16, 0xf8, 0xa3, 0x9f, 0x47, 0x89, 0xa6, 0x57, 0x3f, 0xa6, 0x21, 0xc9, 0x96, 0xe1, 0xd8, diff --git a/spec.md b/spec.md index d1906b6a..8108a799 100644 --- a/spec.md +++ b/spec.md @@ -394,11 +394,9 @@ service Node { rpc NodeGetVolumeStats (NodeGetVolumeStatsRequest) returns (NodeGetVolumeStatsResponse) {} - rpc NodeExpandVolume(NodeExpandVolumeRequest) returns (NodeExpandVolumeResponse) {} - rpc NodeGetCapabilities (NodeGetCapabilitiesRequest) returns (NodeGetCapabilitiesResponse) {} From 4c4253d21e624134d7de87193d8438e3a2a1eb5e Mon Sep 17 00:00:00 2001 From: James DeFelice Date: Thu, 4 Apr 2019 15:11:09 +0000 Subject: [PATCH 3/7] spec: AlphaFeature capability for all services. A new AlphaFeature message type was added for each of the plugin, controller, and node services. Experimental features supported by the SP should be advertised via one or more of the following RPCs: * Identity.GetPluginCapabilities * Controller.ControllerGetCapabilities * Node.NodeGetCapabilities --- csi.proto | 36 ++ lib/go/csi/csi.pb.go | 867 ++++++++++++++++++++++++++++--------------- spec.md | 36 ++ 3 files changed, 649 insertions(+), 290 deletions(-) diff --git a/csi.proto b/csi.proto index a3301cc7..04775a59 100644 --- a/csi.proto +++ b/csi.proto @@ -224,10 +224,22 @@ message PluginCapability { Type type = 1; } + message AlphaFeature { + enum Type { + UNKNOWN = 0; + } + + Type type = 1; // REQUIRED + } + oneof type { // Service that the plugin supports. Service service = 1; VolumeExpansion volume_expansion = 2; + + // AlphaFeature indicates that an experimental feature is offered by + // the plugin. + AlphaFeature alpha_feature = 3; } } message ProbeRequest { @@ -922,9 +934,21 @@ message ControllerServiceCapability { Type type = 1; } + message AlphaFeature { + enum Type { + UNKNOWN = 0; + } + + Type type = 1; // REQUIRED + } + oneof type { // RPC that the controller supports. RPC rpc = 1; + + // AlphaFeature indicates that an experimental feature is offered by + // the controller service. + AlphaFeature alpha_feature = 2; } } message CreateSnapshotRequest { @@ -1272,9 +1296,21 @@ message NodeServiceCapability { Type type = 1; } + message AlphaFeature { + enum Type { + UNKNOWN = 0; + } + + Type type = 1; // REQUIRED + } + oneof type { // RPC that the controller supports. RPC rpc = 1; + + // AlphaFeature indicates that an experimental feature is offered by + // the node service. + AlphaFeature alpha_feature = 2; } } message NodeGetInfoRequest { diff --git a/lib/go/csi/csi.pb.go b/lib/go/csi/csi.pb.go index 349c6e01..e2925321 100644 --- a/lib/go/csi/csi.pb.go +++ b/lib/go/csi/csi.pb.go @@ -63,7 +63,7 @@ func (x PluginCapability_Service_Type) String() string { return proto.EnumName(PluginCapability_Service_Type_name, int32(x)) } func (PluginCapability_Service_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{4, 0, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 0, 0} } type PluginCapability_VolumeExpansion_Type int32 @@ -124,7 +124,27 @@ func (x PluginCapability_VolumeExpansion_Type) String() string { return proto.EnumName(PluginCapability_VolumeExpansion_Type_name, int32(x)) } func (PluginCapability_VolumeExpansion_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{4, 1, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 1, 0} +} + +type PluginCapability_AlphaFeature_Type int32 + +const ( + PluginCapability_AlphaFeature_UNKNOWN PluginCapability_AlphaFeature_Type = 0 +) + +var PluginCapability_AlphaFeature_Type_name = map[int32]string{ + 0: "UNKNOWN", +} +var PluginCapability_AlphaFeature_Type_value = map[string]int32{ + "UNKNOWN": 0, +} + +func (x PluginCapability_AlphaFeature_Type) String() string { + return proto.EnumName(PluginCapability_AlphaFeature_Type_name, int32(x)) +} +func (PluginCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 2, 0} } type VolumeCapability_AccessMode_Mode int32 @@ -168,7 +188,7 @@ func (x VolumeCapability_AccessMode_Mode) String() string { return proto.EnumName(VolumeCapability_AccessMode_Mode_name, int32(x)) } func (VolumeCapability_AccessMode_Mode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{10, 2, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{10, 2, 0} } type ControllerServiceCapability_RPC_Type int32 @@ -226,7 +246,27 @@ func (x ControllerServiceCapability_RPC_Type) String() string { return proto.EnumName(ControllerServiceCapability_RPC_Type_name, int32(x)) } func (ControllerServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{29, 0, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{29, 0, 0} +} + +type ControllerServiceCapability_AlphaFeature_Type int32 + +const ( + ControllerServiceCapability_AlphaFeature_UNKNOWN ControllerServiceCapability_AlphaFeature_Type = 0 +) + +var ControllerServiceCapability_AlphaFeature_Type_name = map[int32]string{ + 0: "UNKNOWN", +} +var ControllerServiceCapability_AlphaFeature_Type_value = map[string]int32{ + "UNKNOWN": 0, +} + +func (x ControllerServiceCapability_AlphaFeature_Type) String() string { + return proto.EnumName(ControllerServiceCapability_AlphaFeature_Type_name, int32(x)) +} +func (ControllerServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_csi_d236ce13b1aaecdd, []int{29, 1, 0} } type VolumeUsage_Unit int32 @@ -252,7 +292,7 @@ func (x VolumeUsage_Unit) String() string { return proto.EnumName(VolumeUsage_Unit_name, int32(x)) } func (VolumeUsage_Unit) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{49, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{49, 0} } type NodeServiceCapability_RPC_Type int32 @@ -285,7 +325,27 @@ func (x NodeServiceCapability_RPC_Type) String() string { return proto.EnumName(NodeServiceCapability_RPC_Type_name, int32(x)) } func (NodeServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{52, 0, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{52, 0, 0} +} + +type NodeServiceCapability_AlphaFeature_Type int32 + +const ( + NodeServiceCapability_AlphaFeature_UNKNOWN NodeServiceCapability_AlphaFeature_Type = 0 +) + +var NodeServiceCapability_AlphaFeature_Type_name = map[int32]string{ + 0: "UNKNOWN", +} +var NodeServiceCapability_AlphaFeature_Type_value = map[string]int32{ + "UNKNOWN": 0, +} + +func (x NodeServiceCapability_AlphaFeature_Type) String() string { + return proto.EnumName(NodeServiceCapability_AlphaFeature_Type_name, int32(x)) +} +func (NodeServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_csi_d236ce13b1aaecdd, []int{52, 1, 0} } type GetPluginInfoRequest struct { @@ -298,7 +358,7 @@ func (m *GetPluginInfoRequest) Reset() { *m = GetPluginInfoRequest{} } func (m *GetPluginInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoRequest) ProtoMessage() {} func (*GetPluginInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{0} } func (m *GetPluginInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoRequest.Unmarshal(m, b) @@ -340,7 +400,7 @@ func (m *GetPluginInfoResponse) Reset() { *m = GetPluginInfoResponse{} } func (m *GetPluginInfoResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoResponse) ProtoMessage() {} func (*GetPluginInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{1} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{1} } func (m *GetPluginInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoResponse.Unmarshal(m, b) @@ -391,7 +451,7 @@ func (m *GetPluginCapabilitiesRequest) Reset() { *m = GetPluginCapabilit func (m *GetPluginCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesRequest) ProtoMessage() {} func (*GetPluginCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{2} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{2} } func (m *GetPluginCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesRequest.Unmarshal(m, b) @@ -424,7 +484,7 @@ func (m *GetPluginCapabilitiesResponse) Reset() { *m = GetPluginCapabili func (m *GetPluginCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesResponse) ProtoMessage() {} func (*GetPluginCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{3} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{3} } func (m *GetPluginCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesResponse.Unmarshal(m, b) @@ -456,6 +516,7 @@ type PluginCapability struct { // Types that are valid to be assigned to Type: // *PluginCapability_Service_ // *PluginCapability_VolumeExpansion_ + // *PluginCapability_AlphaFeature_ Type isPluginCapability_Type `protobuf_oneof:"type"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -466,7 +527,7 @@ func (m *PluginCapability) Reset() { *m = PluginCapability{} } func (m *PluginCapability) String() string { return proto.CompactTextString(m) } func (*PluginCapability) ProtoMessage() {} func (*PluginCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{4} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{4} } func (m *PluginCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability.Unmarshal(m, b) @@ -498,10 +559,16 @@ type PluginCapability_VolumeExpansion_ struct { VolumeExpansion *PluginCapability_VolumeExpansion `protobuf:"bytes,2,opt,name=volume_expansion,json=volumeExpansion,proto3,oneof"` } +type PluginCapability_AlphaFeature_ struct { + AlphaFeature *PluginCapability_AlphaFeature `protobuf:"bytes,3,opt,name=alpha_feature,json=alphaFeature,proto3,oneof"` +} + func (*PluginCapability_Service_) isPluginCapability_Type() {} func (*PluginCapability_VolumeExpansion_) isPluginCapability_Type() {} +func (*PluginCapability_AlphaFeature_) isPluginCapability_Type() {} + func (m *PluginCapability) GetType() isPluginCapability_Type { if m != nil { return m.Type @@ -523,11 +590,19 @@ func (m *PluginCapability) GetVolumeExpansion() *PluginCapability_VolumeExpansio return nil } +func (m *PluginCapability) GetAlphaFeature() *PluginCapability_AlphaFeature { + if x, ok := m.GetType().(*PluginCapability_AlphaFeature_); ok { + return x.AlphaFeature + } + return nil +} + // XXX_OneofFuncs is for the internal use of the proto package. func (*PluginCapability) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { return _PluginCapability_OneofMarshaler, _PluginCapability_OneofUnmarshaler, _PluginCapability_OneofSizer, []interface{}{ (*PluginCapability_Service_)(nil), (*PluginCapability_VolumeExpansion_)(nil), + (*PluginCapability_AlphaFeature_)(nil), } } @@ -545,6 +620,11 @@ func _PluginCapability_OneofMarshaler(msg proto.Message, b *proto.Buffer) error if err := b.EncodeMessage(x.VolumeExpansion); err != nil { return err } + case *PluginCapability_AlphaFeature_: + b.EncodeVarint(3<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.AlphaFeature); err != nil { + return err + } case nil: default: return fmt.Errorf("PluginCapability.Type has unexpected type %T", x) @@ -571,6 +651,14 @@ func _PluginCapability_OneofUnmarshaler(msg proto.Message, tag, wire int, b *pro err := b.DecodeMessage(msg) m.Type = &PluginCapability_VolumeExpansion_{msg} return true, err + case 3: // type.alpha_feature + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(PluginCapability_AlphaFeature) + err := b.DecodeMessage(msg) + m.Type = &PluginCapability_AlphaFeature_{msg} + return true, err default: return false, nil } @@ -590,6 +678,11 @@ func _PluginCapability_OneofSizer(msg proto.Message) (n int) { n += 1 // tag and wire n += proto.SizeVarint(uint64(s)) n += s + case *PluginCapability_AlphaFeature_: + s := proto.Size(x.AlphaFeature) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s case nil: default: panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) @@ -608,7 +701,7 @@ func (m *PluginCapability_Service) Reset() { *m = PluginCapability_Servi func (m *PluginCapability_Service) String() string { return proto.CompactTextString(m) } func (*PluginCapability_Service) ProtoMessage() {} func (*PluginCapability_Service) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{4, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 0} } func (m *PluginCapability_Service) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_Service.Unmarshal(m, b) @@ -646,7 +739,7 @@ func (m *PluginCapability_VolumeExpansion) Reset() { *m = PluginCapabili func (m *PluginCapability_VolumeExpansion) String() string { return proto.CompactTextString(m) } func (*PluginCapability_VolumeExpansion) ProtoMessage() {} func (*PluginCapability_VolumeExpansion) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{4, 1} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 1} } func (m *PluginCapability_VolumeExpansion) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_VolumeExpansion.Unmarshal(m, b) @@ -673,6 +766,44 @@ func (m *PluginCapability_VolumeExpansion) GetType() PluginCapability_VolumeExpa return PluginCapability_VolumeExpansion_UNKNOWN } +type PluginCapability_AlphaFeature struct { + Type PluginCapability_AlphaFeature_Type `protobuf:"varint,1,opt,name=type,proto3,enum=csi.v1.PluginCapability_AlphaFeature_Type" json:"type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *PluginCapability_AlphaFeature) Reset() { *m = PluginCapability_AlphaFeature{} } +func (m *PluginCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } +func (*PluginCapability_AlphaFeature) ProtoMessage() {} +func (*PluginCapability_AlphaFeature) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 2} +} +func (m *PluginCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_PluginCapability_AlphaFeature.Unmarshal(m, b) +} +func (m *PluginCapability_AlphaFeature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_PluginCapability_AlphaFeature.Marshal(b, m, deterministic) +} +func (dst *PluginCapability_AlphaFeature) XXX_Merge(src proto.Message) { + xxx_messageInfo_PluginCapability_AlphaFeature.Merge(dst, src) +} +func (m *PluginCapability_AlphaFeature) XXX_Size() int { + return xxx_messageInfo_PluginCapability_AlphaFeature.Size(m) +} +func (m *PluginCapability_AlphaFeature) XXX_DiscardUnknown() { + xxx_messageInfo_PluginCapability_AlphaFeature.DiscardUnknown(m) +} + +var xxx_messageInfo_PluginCapability_AlphaFeature proto.InternalMessageInfo + +func (m *PluginCapability_AlphaFeature) GetType() PluginCapability_AlphaFeature_Type { + if m != nil { + return m.Type + } + return PluginCapability_AlphaFeature_UNKNOWN +} + type ProbeRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -683,7 +814,7 @@ func (m *ProbeRequest) Reset() { *m = ProbeRequest{} } func (m *ProbeRequest) String() string { return proto.CompactTextString(m) } func (*ProbeRequest) ProtoMessage() {} func (*ProbeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{5} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{5} } func (m *ProbeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeRequest.Unmarshal(m, b) @@ -734,7 +865,7 @@ func (m *ProbeResponse) Reset() { *m = ProbeResponse{} } func (m *ProbeResponse) String() string { return proto.CompactTextString(m) } func (*ProbeResponse) ProtoMessage() {} func (*ProbeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{6} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{6} } func (m *ProbeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeResponse.Unmarshal(m, b) @@ -843,7 +974,7 @@ func (m *CreateVolumeRequest) Reset() { *m = CreateVolumeRequest{} } func (m *CreateVolumeRequest) String() string { return proto.CompactTextString(m) } func (*CreateVolumeRequest) ProtoMessage() {} func (*CreateVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{7} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{7} } func (m *CreateVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeRequest.Unmarshal(m, b) @@ -928,7 +1059,7 @@ func (m *VolumeContentSource) Reset() { *m = VolumeContentSource{} } func (m *VolumeContentSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource) ProtoMessage() {} func (*VolumeContentSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{8} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{8} } func (m *VolumeContentSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource.Unmarshal(m, b) @@ -1074,7 +1205,7 @@ func (m *VolumeContentSource_SnapshotSource) Reset() { *m = VolumeConten func (m *VolumeContentSource_SnapshotSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_SnapshotSource) ProtoMessage() {} func (*VolumeContentSource_SnapshotSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{8, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{8, 0} } func (m *VolumeContentSource_SnapshotSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_SnapshotSource.Unmarshal(m, b) @@ -1115,7 +1246,7 @@ func (m *VolumeContentSource_VolumeSource) Reset() { *m = VolumeContentS func (m *VolumeContentSource_VolumeSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_VolumeSource) ProtoMessage() {} func (*VolumeContentSource_VolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{8, 1} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{8, 1} } func (m *VolumeContentSource_VolumeSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_VolumeSource.Unmarshal(m, b) @@ -1156,7 +1287,7 @@ func (m *CreateVolumeResponse) Reset() { *m = CreateVolumeResponse{} } func (m *CreateVolumeResponse) String() string { return proto.CompactTextString(m) } func (*CreateVolumeResponse) ProtoMessage() {} func (*CreateVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{9} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{9} } func (m *CreateVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeResponse.Unmarshal(m, b) @@ -1203,7 +1334,7 @@ func (m *VolumeCapability) Reset() { *m = VolumeCapability{} } func (m *VolumeCapability) String() string { return proto.CompactTextString(m) } func (*VolumeCapability) ProtoMessage() {} func (*VolumeCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{10} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{10} } func (m *VolumeCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability.Unmarshal(m, b) @@ -1352,7 +1483,7 @@ func (m *VolumeCapability_BlockVolume) Reset() { *m = VolumeCapability_B func (m *VolumeCapability_BlockVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_BlockVolume) ProtoMessage() {} func (*VolumeCapability_BlockVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{10, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{10, 0} } func (m *VolumeCapability_BlockVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_BlockVolume.Unmarshal(m, b) @@ -1392,7 +1523,7 @@ func (m *VolumeCapability_MountVolume) Reset() { *m = VolumeCapability_M func (m *VolumeCapability_MountVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_MountVolume) ProtoMessage() {} func (*VolumeCapability_MountVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{10, 1} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{10, 1} } func (m *VolumeCapability_MountVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_MountVolume.Unmarshal(m, b) @@ -1439,7 +1570,7 @@ func (m *VolumeCapability_AccessMode) Reset() { *m = VolumeCapability_Ac func (m *VolumeCapability_AccessMode) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_AccessMode) ProtoMessage() {} func (*VolumeCapability_AccessMode) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{10, 2} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{10, 2} } func (m *VolumeCapability_AccessMode) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_AccessMode.Unmarshal(m, b) @@ -1487,7 +1618,7 @@ func (m *CapacityRange) Reset() { *m = CapacityRange{} } func (m *CapacityRange) String() string { return proto.CompactTextString(m) } func (*CapacityRange) ProtoMessage() {} func (*CapacityRange) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{11} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{11} } func (m *CapacityRange) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CapacityRange.Unmarshal(m, b) @@ -1592,7 +1723,7 @@ func (m *Volume) Reset() { *m = Volume{} } func (m *Volume) String() string { return proto.CompactTextString(m) } func (*Volume) ProtoMessage() {} func (*Volume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{12} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{12} } func (m *Volume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Volume.Unmarshal(m, b) @@ -1784,7 +1915,7 @@ func (m *TopologyRequirement) Reset() { *m = TopologyRequirement{} } func (m *TopologyRequirement) String() string { return proto.CompactTextString(m) } func (*TopologyRequirement) ProtoMessage() {} func (*TopologyRequirement) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{13} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{13} } func (m *TopologyRequirement) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TopologyRequirement.Unmarshal(m, b) @@ -1858,7 +1989,7 @@ func (m *Topology) Reset() { *m = Topology{} } func (m *Topology) String() string { return proto.CompactTextString(m) } func (*Topology) ProtoMessage() {} func (*Topology) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{14} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{14} } func (m *Topology) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Topology.Unmarshal(m, b) @@ -1902,7 +2033,7 @@ func (m *DeleteVolumeRequest) Reset() { *m = DeleteVolumeRequest{} } func (m *DeleteVolumeRequest) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeRequest) ProtoMessage() {} func (*DeleteVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{15} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{15} } func (m *DeleteVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeRequest.Unmarshal(m, b) @@ -1946,7 +2077,7 @@ func (m *DeleteVolumeResponse) Reset() { *m = DeleteVolumeResponse{} } func (m *DeleteVolumeResponse) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeResponse) ProtoMessage() {} func (*DeleteVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{16} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{16} } func (m *DeleteVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeResponse.Unmarshal(m, b) @@ -2000,7 +2131,7 @@ func (m *ControllerPublishVolumeRequest) Reset() { *m = ControllerPublis func (m *ControllerPublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeRequest) ProtoMessage() {} func (*ControllerPublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{17} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{17} } func (m *ControllerPublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeRequest.Unmarshal(m, b) @@ -2086,7 +2217,7 @@ func (m *ControllerPublishVolumeResponse) Reset() { *m = ControllerPubli func (m *ControllerPublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeResponse) ProtoMessage() {} func (*ControllerPublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{18} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{18} } func (m *ControllerPublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeResponse.Unmarshal(m, b) @@ -2137,7 +2268,7 @@ func (m *ControllerUnpublishVolumeRequest) Reset() { *m = ControllerUnpu func (m *ControllerUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeRequest) ProtoMessage() {} func (*ControllerUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{19} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{19} } func (m *ControllerUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeRequest.Unmarshal(m, b) @@ -2188,7 +2319,7 @@ func (m *ControllerUnpublishVolumeResponse) Reset() { *m = ControllerUnp func (m *ControllerUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeResponse) ProtoMessage() {} func (*ControllerUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{20} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{20} } func (m *ControllerUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeResponse.Unmarshal(m, b) @@ -2235,7 +2366,7 @@ func (m *ValidateVolumeCapabilitiesRequest) Reset() { *m = ValidateVolum func (m *ValidateVolumeCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesRequest) ProtoMessage() {} func (*ValidateVolumeCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{21} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{21} } func (m *ValidateVolumeCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesRequest.Unmarshal(m, b) @@ -2313,7 +2444,7 @@ func (m *ValidateVolumeCapabilitiesResponse) Reset() { *m = ValidateVolu func (m *ValidateVolumeCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesResponse) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{22} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{22} } func (m *ValidateVolumeCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse.Unmarshal(m, b) @@ -2370,7 +2501,7 @@ func (m *ValidateVolumeCapabilitiesResponse_Confirmed) String() string { } func (*ValidateVolumeCapabilitiesResponse_Confirmed) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse_Confirmed) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{22, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{22, 0} } func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse_Confirmed.Unmarshal(m, b) @@ -2435,7 +2566,7 @@ func (m *ListVolumesRequest) Reset() { *m = ListVolumesRequest{} } func (m *ListVolumesRequest) String() string { return proto.CompactTextString(m) } func (*ListVolumesRequest) ProtoMessage() {} func (*ListVolumesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{23} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{23} } func (m *ListVolumesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesRequest.Unmarshal(m, b) @@ -2487,7 +2618,7 @@ func (m *ListVolumesResponse) Reset() { *m = ListVolumesResponse{} } func (m *ListVolumesResponse) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse) ProtoMessage() {} func (*ListVolumesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{24} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{24} } func (m *ListVolumesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse.Unmarshal(m, b) @@ -2532,7 +2663,7 @@ func (m *ListVolumesResponse_Entry) Reset() { *m = ListVolumesResponse_E func (m *ListVolumesResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse_Entry) ProtoMessage() {} func (*ListVolumesResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{24, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{24, 0} } func (m *ListVolumesResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse_Entry.Unmarshal(m, b) @@ -2587,7 +2718,7 @@ func (m *GetCapacityRequest) Reset() { *m = GetCapacityRequest{} } func (m *GetCapacityRequest) String() string { return proto.CompactTextString(m) } func (*GetCapacityRequest) ProtoMessage() {} func (*GetCapacityRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{25} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{25} } func (m *GetCapacityRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityRequest.Unmarshal(m, b) @@ -2645,7 +2776,7 @@ func (m *GetCapacityResponse) Reset() { *m = GetCapacityResponse{} } func (m *GetCapacityResponse) String() string { return proto.CompactTextString(m) } func (*GetCapacityResponse) ProtoMessage() {} func (*GetCapacityResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{26} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{26} } func (m *GetCapacityResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityResponse.Unmarshal(m, b) @@ -2682,7 +2813,7 @@ func (m *ControllerGetCapabilitiesRequest) Reset() { *m = ControllerGetC func (m *ControllerGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesRequest) ProtoMessage() {} func (*ControllerGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{27} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{27} } func (m *ControllerGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesRequest.Unmarshal(m, b) @@ -2715,7 +2846,7 @@ func (m *ControllerGetCapabilitiesResponse) Reset() { *m = ControllerGet func (m *ControllerGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesResponse) ProtoMessage() {} func (*ControllerGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{28} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{28} } func (m *ControllerGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesResponse.Unmarshal(m, b) @@ -2746,6 +2877,7 @@ func (m *ControllerGetCapabilitiesResponse) GetCapabilities() []*ControllerServi type ControllerServiceCapability struct { // Types that are valid to be assigned to Type: // *ControllerServiceCapability_Rpc + // *ControllerServiceCapability_AlphaFeature_ Type isControllerServiceCapability_Type `protobuf_oneof:"type"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -2756,7 +2888,7 @@ func (m *ControllerServiceCapability) Reset() { *m = ControllerServiceCa func (m *ControllerServiceCapability) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability) ProtoMessage() {} func (*ControllerServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{29} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{29} } func (m *ControllerServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability.Unmarshal(m, b) @@ -2784,8 +2916,14 @@ type ControllerServiceCapability_Rpc struct { Rpc *ControllerServiceCapability_RPC `protobuf:"bytes,1,opt,name=rpc,proto3,oneof"` } +type ControllerServiceCapability_AlphaFeature_ struct { + AlphaFeature *ControllerServiceCapability_AlphaFeature `protobuf:"bytes,2,opt,name=alpha_feature,json=alphaFeature,proto3,oneof"` +} + func (*ControllerServiceCapability_Rpc) isControllerServiceCapability_Type() {} +func (*ControllerServiceCapability_AlphaFeature_) isControllerServiceCapability_Type() {} + func (m *ControllerServiceCapability) GetType() isControllerServiceCapability_Type { if m != nil { return m.Type @@ -2800,10 +2938,18 @@ func (m *ControllerServiceCapability) GetRpc() *ControllerServiceCapability_RPC return nil } +func (m *ControllerServiceCapability) GetAlphaFeature() *ControllerServiceCapability_AlphaFeature { + if x, ok := m.GetType().(*ControllerServiceCapability_AlphaFeature_); ok { + return x.AlphaFeature + } + return nil +} + // XXX_OneofFuncs is for the internal use of the proto package. func (*ControllerServiceCapability) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { return _ControllerServiceCapability_OneofMarshaler, _ControllerServiceCapability_OneofUnmarshaler, _ControllerServiceCapability_OneofSizer, []interface{}{ (*ControllerServiceCapability_Rpc)(nil), + (*ControllerServiceCapability_AlphaFeature_)(nil), } } @@ -2816,6 +2962,11 @@ func _ControllerServiceCapability_OneofMarshaler(msg proto.Message, b *proto.Buf if err := b.EncodeMessage(x.Rpc); err != nil { return err } + case *ControllerServiceCapability_AlphaFeature_: + b.EncodeVarint(2<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.AlphaFeature); err != nil { + return err + } case nil: default: return fmt.Errorf("ControllerServiceCapability.Type has unexpected type %T", x) @@ -2834,6 +2985,14 @@ func _ControllerServiceCapability_OneofUnmarshaler(msg proto.Message, tag, wire err := b.DecodeMessage(msg) m.Type = &ControllerServiceCapability_Rpc{msg} return true, err + case 2: // type.alpha_feature + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(ControllerServiceCapability_AlphaFeature) + err := b.DecodeMessage(msg) + m.Type = &ControllerServiceCapability_AlphaFeature_{msg} + return true, err default: return false, nil } @@ -2848,6 +3007,11 @@ func _ControllerServiceCapability_OneofSizer(msg proto.Message) (n int) { n += 1 // tag and wire n += proto.SizeVarint(uint64(s)) n += s + case *ControllerServiceCapability_AlphaFeature_: + s := proto.Size(x.AlphaFeature) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s case nil: default: panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) @@ -2866,7 +3030,7 @@ func (m *ControllerServiceCapability_RPC) Reset() { *m = ControllerServi func (m *ControllerServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_RPC) ProtoMessage() {} func (*ControllerServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{29, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{29, 0} } func (m *ControllerServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_RPC.Unmarshal(m, b) @@ -2893,6 +3057,46 @@ func (m *ControllerServiceCapability_RPC) GetType() ControllerServiceCapability_ return ControllerServiceCapability_RPC_UNKNOWN } +type ControllerServiceCapability_AlphaFeature struct { + Type ControllerServiceCapability_AlphaFeature_Type `protobuf:"varint,1,opt,name=type,proto3,enum=csi.v1.ControllerServiceCapability_AlphaFeature_Type" json:"type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ControllerServiceCapability_AlphaFeature) Reset() { + *m = ControllerServiceCapability_AlphaFeature{} +} +func (m *ControllerServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } +func (*ControllerServiceCapability_AlphaFeature) ProtoMessage() {} +func (*ControllerServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_d236ce13b1aaecdd, []int{29, 1} +} +func (m *ControllerServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ControllerServiceCapability_AlphaFeature.Unmarshal(m, b) +} +func (m *ControllerServiceCapability_AlphaFeature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ControllerServiceCapability_AlphaFeature.Marshal(b, m, deterministic) +} +func (dst *ControllerServiceCapability_AlphaFeature) XXX_Merge(src proto.Message) { + xxx_messageInfo_ControllerServiceCapability_AlphaFeature.Merge(dst, src) +} +func (m *ControllerServiceCapability_AlphaFeature) XXX_Size() int { + return xxx_messageInfo_ControllerServiceCapability_AlphaFeature.Size(m) +} +func (m *ControllerServiceCapability_AlphaFeature) XXX_DiscardUnknown() { + xxx_messageInfo_ControllerServiceCapability_AlphaFeature.DiscardUnknown(m) +} + +var xxx_messageInfo_ControllerServiceCapability_AlphaFeature proto.InternalMessageInfo + +func (m *ControllerServiceCapability_AlphaFeature) GetType() ControllerServiceCapability_AlphaFeature_Type { + if m != nil { + return m.Type + } + return ControllerServiceCapability_AlphaFeature_UNKNOWN +} + type CreateSnapshotRequest struct { // The ID of the source volume to be snapshotted. // This field is REQUIRED. @@ -2928,7 +3132,7 @@ func (m *CreateSnapshotRequest) Reset() { *m = CreateSnapshotRequest{} } func (m *CreateSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotRequest) ProtoMessage() {} func (*CreateSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{30} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{30} } func (m *CreateSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotRequest.Unmarshal(m, b) @@ -2990,7 +3194,7 @@ func (m *CreateSnapshotResponse) Reset() { *m = CreateSnapshotResponse{} func (m *CreateSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotResponse) ProtoMessage() {} func (*CreateSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{31} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{31} } func (m *CreateSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotResponse.Unmarshal(m, b) @@ -3057,7 +3261,7 @@ func (m *Snapshot) Reset() { *m = Snapshot{} } func (m *Snapshot) String() string { return proto.CompactTextString(m) } func (*Snapshot) ProtoMessage() {} func (*Snapshot) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{32} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{32} } func (m *Snapshot) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Snapshot.Unmarshal(m, b) @@ -3129,7 +3333,7 @@ func (m *DeleteSnapshotRequest) Reset() { *m = DeleteSnapshotRequest{} } func (m *DeleteSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotRequest) ProtoMessage() {} func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{33} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{33} } func (m *DeleteSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotRequest.Unmarshal(m, b) @@ -3173,7 +3377,7 @@ func (m *DeleteSnapshotResponse) Reset() { *m = DeleteSnapshotResponse{} func (m *DeleteSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotResponse) ProtoMessage() {} func (*DeleteSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{34} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{34} } func (m *DeleteSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotResponse.Unmarshal(m, b) @@ -3228,7 +3432,7 @@ func (m *ListSnapshotsRequest) Reset() { *m = ListSnapshotsRequest{} } func (m *ListSnapshotsRequest) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsRequest) ProtoMessage() {} func (*ListSnapshotsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{35} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{35} } func (m *ListSnapshotsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsRequest.Unmarshal(m, b) @@ -3294,7 +3498,7 @@ func (m *ListSnapshotsResponse) Reset() { *m = ListSnapshotsResponse{} } func (m *ListSnapshotsResponse) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse) ProtoMessage() {} func (*ListSnapshotsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{36} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{36} } func (m *ListSnapshotsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse.Unmarshal(m, b) @@ -3339,7 +3543,7 @@ func (m *ListSnapshotsResponse_Entry) Reset() { *m = ListSnapshotsRespon func (m *ListSnapshotsResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse_Entry) ProtoMessage() {} func (*ListSnapshotsResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{36, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{36, 0} } func (m *ListSnapshotsResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse_Entry.Unmarshal(m, b) @@ -3384,7 +3588,7 @@ func (m *ControllerExpandVolumeRequest) Reset() { *m = ControllerExpandV func (m *ControllerExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeRequest) ProtoMessage() {} func (*ControllerExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{37} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{37} } func (m *ControllerExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeRequest.Unmarshal(m, b) @@ -3441,7 +3645,7 @@ func (m *ControllerExpandVolumeResponse) Reset() { *m = ControllerExpand func (m *ControllerExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeResponse) ProtoMessage() {} func (*ControllerExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{38} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{38} } func (m *ControllerExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeResponse.Unmarshal(m, b) @@ -3516,7 +3720,7 @@ func (m *NodeStageVolumeRequest) Reset() { *m = NodeStageVolumeRequest{} func (m *NodeStageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeRequest) ProtoMessage() {} func (*NodeStageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{39} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{39} } func (m *NodeStageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeRequest.Unmarshal(m, b) @@ -3588,7 +3792,7 @@ func (m *NodeStageVolumeResponse) Reset() { *m = NodeStageVolumeResponse func (m *NodeStageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeResponse) ProtoMessage() {} func (*NodeStageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{40} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{40} } func (m *NodeStageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeResponse.Unmarshal(m, b) @@ -3624,7 +3828,7 @@ func (m *NodeUnstageVolumeRequest) Reset() { *m = NodeUnstageVolumeReque func (m *NodeUnstageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeRequest) ProtoMessage() {} func (*NodeUnstageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{41} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{41} } func (m *NodeUnstageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeRequest.Unmarshal(m, b) @@ -3668,7 +3872,7 @@ func (m *NodeUnstageVolumeResponse) Reset() { *m = NodeUnstageVolumeResp func (m *NodeUnstageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeResponse) ProtoMessage() {} func (*NodeUnstageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{42} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{42} } func (m *NodeUnstageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeResponse.Unmarshal(m, b) @@ -3742,7 +3946,7 @@ func (m *NodePublishVolumeRequest) Reset() { *m = NodePublishVolumeReque func (m *NodePublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeRequest) ProtoMessage() {} func (*NodePublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{43} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{43} } func (m *NodePublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeRequest.Unmarshal(m, b) @@ -3828,7 +4032,7 @@ func (m *NodePublishVolumeResponse) Reset() { *m = NodePublishVolumeResp func (m *NodePublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeResponse) ProtoMessage() {} func (*NodePublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{44} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{44} } func (m *NodePublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeResponse.Unmarshal(m, b) @@ -3865,7 +4069,7 @@ func (m *NodeUnpublishVolumeRequest) Reset() { *m = NodeUnpublishVolumeR func (m *NodeUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeRequest) ProtoMessage() {} func (*NodeUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{45} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{45} } func (m *NodeUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeRequest.Unmarshal(m, b) @@ -3909,7 +4113,7 @@ func (m *NodeUnpublishVolumeResponse) Reset() { *m = NodeUnpublishVolume func (m *NodeUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeResponse) ProtoMessage() {} func (*NodeUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{46} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{46} } func (m *NodeUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeResponse.Unmarshal(m, b) @@ -3947,7 +4151,7 @@ func (m *NodeGetVolumeStatsRequest) Reset() { *m = NodeGetVolumeStatsReq func (m *NodeGetVolumeStatsRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsRequest) ProtoMessage() {} func (*NodeGetVolumeStatsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{47} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{47} } func (m *NodeGetVolumeStatsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsRequest.Unmarshal(m, b) @@ -3993,7 +4197,7 @@ func (m *NodeGetVolumeStatsResponse) Reset() { *m = NodeGetVolumeStatsRe func (m *NodeGetVolumeStatsResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsResponse) ProtoMessage() {} func (*NodeGetVolumeStatsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{48} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{48} } func (m *NodeGetVolumeStatsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsResponse.Unmarshal(m, b) @@ -4041,7 +4245,7 @@ func (m *VolumeUsage) Reset() { *m = VolumeUsage{} } func (m *VolumeUsage) String() string { return proto.CompactTextString(m) } func (*VolumeUsage) ProtoMessage() {} func (*VolumeUsage) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{49} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{49} } func (m *VolumeUsage) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeUsage.Unmarshal(m, b) @@ -4099,7 +4303,7 @@ func (m *NodeGetCapabilitiesRequest) Reset() { *m = NodeGetCapabilitiesR func (m *NodeGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesRequest) ProtoMessage() {} func (*NodeGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{50} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{50} } func (m *NodeGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesRequest.Unmarshal(m, b) @@ -4132,7 +4336,7 @@ func (m *NodeGetCapabilitiesResponse) Reset() { *m = NodeGetCapabilities func (m *NodeGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesResponse) ProtoMessage() {} func (*NodeGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{51} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{51} } func (m *NodeGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesResponse.Unmarshal(m, b) @@ -4163,6 +4367,7 @@ func (m *NodeGetCapabilitiesResponse) GetCapabilities() []*NodeServiceCapability type NodeServiceCapability struct { // Types that are valid to be assigned to Type: // *NodeServiceCapability_Rpc + // *NodeServiceCapability_AlphaFeature_ Type isNodeServiceCapability_Type `protobuf_oneof:"type"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -4173,7 +4378,7 @@ func (m *NodeServiceCapability) Reset() { *m = NodeServiceCapability{} } func (m *NodeServiceCapability) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability) ProtoMessage() {} func (*NodeServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{52} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{52} } func (m *NodeServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability.Unmarshal(m, b) @@ -4201,8 +4406,14 @@ type NodeServiceCapability_Rpc struct { Rpc *NodeServiceCapability_RPC `protobuf:"bytes,1,opt,name=rpc,proto3,oneof"` } +type NodeServiceCapability_AlphaFeature_ struct { + AlphaFeature *NodeServiceCapability_AlphaFeature `protobuf:"bytes,2,opt,name=alpha_feature,json=alphaFeature,proto3,oneof"` +} + func (*NodeServiceCapability_Rpc) isNodeServiceCapability_Type() {} +func (*NodeServiceCapability_AlphaFeature_) isNodeServiceCapability_Type() {} + func (m *NodeServiceCapability) GetType() isNodeServiceCapability_Type { if m != nil { return m.Type @@ -4217,10 +4428,18 @@ func (m *NodeServiceCapability) GetRpc() *NodeServiceCapability_RPC { return nil } +func (m *NodeServiceCapability) GetAlphaFeature() *NodeServiceCapability_AlphaFeature { + if x, ok := m.GetType().(*NodeServiceCapability_AlphaFeature_); ok { + return x.AlphaFeature + } + return nil +} + // XXX_OneofFuncs is for the internal use of the proto package. func (*NodeServiceCapability) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { return _NodeServiceCapability_OneofMarshaler, _NodeServiceCapability_OneofUnmarshaler, _NodeServiceCapability_OneofSizer, []interface{}{ (*NodeServiceCapability_Rpc)(nil), + (*NodeServiceCapability_AlphaFeature_)(nil), } } @@ -4233,6 +4452,11 @@ func _NodeServiceCapability_OneofMarshaler(msg proto.Message, b *proto.Buffer) e if err := b.EncodeMessage(x.Rpc); err != nil { return err } + case *NodeServiceCapability_AlphaFeature_: + b.EncodeVarint(2<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.AlphaFeature); err != nil { + return err + } case nil: default: return fmt.Errorf("NodeServiceCapability.Type has unexpected type %T", x) @@ -4251,6 +4475,14 @@ func _NodeServiceCapability_OneofUnmarshaler(msg proto.Message, tag, wire int, b err := b.DecodeMessage(msg) m.Type = &NodeServiceCapability_Rpc{msg} return true, err + case 2: // type.alpha_feature + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(NodeServiceCapability_AlphaFeature) + err := b.DecodeMessage(msg) + m.Type = &NodeServiceCapability_AlphaFeature_{msg} + return true, err default: return false, nil } @@ -4265,6 +4497,11 @@ func _NodeServiceCapability_OneofSizer(msg proto.Message) (n int) { n += 1 // tag and wire n += proto.SizeVarint(uint64(s)) n += s + case *NodeServiceCapability_AlphaFeature_: + s := proto.Size(x.AlphaFeature) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s case nil: default: panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) @@ -4283,7 +4520,7 @@ func (m *NodeServiceCapability_RPC) Reset() { *m = NodeServiceCapability func (m *NodeServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_RPC) ProtoMessage() {} func (*NodeServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{52, 0} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{52, 0} } func (m *NodeServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_RPC.Unmarshal(m, b) @@ -4310,6 +4547,44 @@ func (m *NodeServiceCapability_RPC) GetType() NodeServiceCapability_RPC_Type { return NodeServiceCapability_RPC_UNKNOWN } +type NodeServiceCapability_AlphaFeature struct { + Type NodeServiceCapability_AlphaFeature_Type `protobuf:"varint,1,opt,name=type,proto3,enum=csi.v1.NodeServiceCapability_AlphaFeature_Type" json:"type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *NodeServiceCapability_AlphaFeature) Reset() { *m = NodeServiceCapability_AlphaFeature{} } +func (m *NodeServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } +func (*NodeServiceCapability_AlphaFeature) ProtoMessage() {} +func (*NodeServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_d236ce13b1aaecdd, []int{52, 1} +} +func (m *NodeServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_NodeServiceCapability_AlphaFeature.Unmarshal(m, b) +} +func (m *NodeServiceCapability_AlphaFeature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_NodeServiceCapability_AlphaFeature.Marshal(b, m, deterministic) +} +func (dst *NodeServiceCapability_AlphaFeature) XXX_Merge(src proto.Message) { + xxx_messageInfo_NodeServiceCapability_AlphaFeature.Merge(dst, src) +} +func (m *NodeServiceCapability_AlphaFeature) XXX_Size() int { + return xxx_messageInfo_NodeServiceCapability_AlphaFeature.Size(m) +} +func (m *NodeServiceCapability_AlphaFeature) XXX_DiscardUnknown() { + xxx_messageInfo_NodeServiceCapability_AlphaFeature.DiscardUnknown(m) +} + +var xxx_messageInfo_NodeServiceCapability_AlphaFeature proto.InternalMessageInfo + +func (m *NodeServiceCapability_AlphaFeature) GetType() NodeServiceCapability_AlphaFeature_Type { + if m != nil { + return m.Type + } + return NodeServiceCapability_AlphaFeature_UNKNOWN +} + type NodeGetInfoRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -4320,7 +4595,7 @@ func (m *NodeGetInfoRequest) Reset() { *m = NodeGetInfoRequest{} } func (m *NodeGetInfoRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoRequest) ProtoMessage() {} func (*NodeGetInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{53} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{53} } func (m *NodeGetInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoRequest.Unmarshal(m, b) @@ -4383,7 +4658,7 @@ func (m *NodeGetInfoResponse) Reset() { *m = NodeGetInfoResponse{} } func (m *NodeGetInfoResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoResponse) ProtoMessage() {} func (*NodeGetInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{54} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{54} } func (m *NodeGetInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoResponse.Unmarshal(m, b) @@ -4445,7 +4720,7 @@ func (m *NodeExpandVolumeRequest) Reset() { *m = NodeExpandVolumeRequest func (m *NodeExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeRequest) ProtoMessage() {} func (*NodeExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{55} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{55} } func (m *NodeExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeRequest.Unmarshal(m, b) @@ -4498,7 +4773,7 @@ func (m *NodeExpandVolumeResponse) Reset() { *m = NodeExpandVolumeRespon func (m *NodeExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeResponse) ProtoMessage() {} func (*NodeExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_e223b37cbebe55a7, []int{56} + return fileDescriptor_csi_d236ce13b1aaecdd, []int{56} } func (m *NodeExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeResponse.Unmarshal(m, b) @@ -4597,6 +4872,7 @@ func init() { proto.RegisterType((*PluginCapability)(nil), "csi.v1.PluginCapability") proto.RegisterType((*PluginCapability_Service)(nil), "csi.v1.PluginCapability.Service") proto.RegisterType((*PluginCapability_VolumeExpansion)(nil), "csi.v1.PluginCapability.VolumeExpansion") + proto.RegisterType((*PluginCapability_AlphaFeature)(nil), "csi.v1.PluginCapability.AlphaFeature") proto.RegisterType((*ProbeRequest)(nil), "csi.v1.ProbeRequest") proto.RegisterType((*ProbeResponse)(nil), "csi.v1.ProbeResponse") proto.RegisterType((*CreateVolumeRequest)(nil), "csi.v1.CreateVolumeRequest") @@ -4645,6 +4921,7 @@ func init() { proto.RegisterType((*ControllerGetCapabilitiesResponse)(nil), "csi.v1.ControllerGetCapabilitiesResponse") proto.RegisterType((*ControllerServiceCapability)(nil), "csi.v1.ControllerServiceCapability") proto.RegisterType((*ControllerServiceCapability_RPC)(nil), "csi.v1.ControllerServiceCapability.RPC") + proto.RegisterType((*ControllerServiceCapability_AlphaFeature)(nil), "csi.v1.ControllerServiceCapability.AlphaFeature") proto.RegisterType((*CreateSnapshotRequest)(nil), "csi.v1.CreateSnapshotRequest") proto.RegisterMapType((map[string]string)(nil), "csi.v1.CreateSnapshotRequest.ParametersEntry") proto.RegisterMapType((map[string]string)(nil), "csi.v1.CreateSnapshotRequest.SecretsEntry") @@ -4680,16 +4957,20 @@ func init() { proto.RegisterType((*NodeGetCapabilitiesResponse)(nil), "csi.v1.NodeGetCapabilitiesResponse") proto.RegisterType((*NodeServiceCapability)(nil), "csi.v1.NodeServiceCapability") proto.RegisterType((*NodeServiceCapability_RPC)(nil), "csi.v1.NodeServiceCapability.RPC") + proto.RegisterType((*NodeServiceCapability_AlphaFeature)(nil), "csi.v1.NodeServiceCapability.AlphaFeature") proto.RegisterType((*NodeGetInfoRequest)(nil), "csi.v1.NodeGetInfoRequest") proto.RegisterType((*NodeGetInfoResponse)(nil), "csi.v1.NodeGetInfoResponse") proto.RegisterType((*NodeExpandVolumeRequest)(nil), "csi.v1.NodeExpandVolumeRequest") proto.RegisterType((*NodeExpandVolumeResponse)(nil), "csi.v1.NodeExpandVolumeResponse") proto.RegisterEnum("csi.v1.PluginCapability_Service_Type", PluginCapability_Service_Type_name, PluginCapability_Service_Type_value) proto.RegisterEnum("csi.v1.PluginCapability_VolumeExpansion_Type", PluginCapability_VolumeExpansion_Type_name, PluginCapability_VolumeExpansion_Type_value) + proto.RegisterEnum("csi.v1.PluginCapability_AlphaFeature_Type", PluginCapability_AlphaFeature_Type_name, PluginCapability_AlphaFeature_Type_value) proto.RegisterEnum("csi.v1.VolumeCapability_AccessMode_Mode", VolumeCapability_AccessMode_Mode_name, VolumeCapability_AccessMode_Mode_value) proto.RegisterEnum("csi.v1.ControllerServiceCapability_RPC_Type", ControllerServiceCapability_RPC_Type_name, ControllerServiceCapability_RPC_Type_value) + proto.RegisterEnum("csi.v1.ControllerServiceCapability_AlphaFeature_Type", ControllerServiceCapability_AlphaFeature_Type_name, ControllerServiceCapability_AlphaFeature_Type_value) proto.RegisterEnum("csi.v1.VolumeUsage_Unit", VolumeUsage_Unit_name, VolumeUsage_Unit_value) proto.RegisterEnum("csi.v1.NodeServiceCapability_RPC_Type", NodeServiceCapability_RPC_Type_name, NodeServiceCapability_RPC_Type_value) + proto.RegisterEnum("csi.v1.NodeServiceCapability_AlphaFeature_Type", NodeServiceCapability_AlphaFeature_Type_name, NodeServiceCapability_AlphaFeature_Type_value) proto.RegisterExtension(E_AlphaEnum) proto.RegisterExtension(E_AlphaEnumValue) proto.RegisterExtension(E_CsiSecret) @@ -5560,222 +5841,228 @@ var _Node_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_e223b37cbebe55a7) + proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_d236ce13b1aaecdd) } -var fileDescriptor_csi_e223b37cbebe55a7 = []byte{ - // 3398 bytes of a gzipped FileDescriptorProto +var fileDescriptor_csi_d236ce13b1aaecdd = []byte{ + // 3490 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x4d, 0x70, 0xdb, 0xc6, - 0x15, 0x16, 0xf8, 0xa3, 0x9f, 0x47, 0x89, 0xa6, 0x57, 0x3f, 0xa6, 0x21, 0xc9, 0x96, 0xe1, 0xd8, - 0x51, 0x1c, 0x9b, 0x6e, 0x9c, 0x38, 0xd3, 0xc8, 0x4e, 0x13, 0x92, 0xa2, 0x25, 0xc6, 0x34, 0xa9, - 0x80, 0x94, 0x1c, 0xbb, 0xcd, 0x20, 0x10, 0xb9, 0xa2, 0x31, 0x21, 0x01, 0x06, 0x00, 0x55, 0xab, - 0x97, 0xce, 0xb4, 0xa7, 0x4c, 0xcf, 0x9d, 0xb6, 0xa7, 0xce, 0xa4, 0xb9, 0xb4, 0xd3, 0x4c, 0x4f, - 0x9d, 0x1e, 0x3b, 0xd3, 0x63, 0x0f, 0xbd, 0xb6, 0x93, 0x4b, 0xae, 0x9d, 0x4c, 0x3b, 0x93, 0xe9, - 0xb1, 0xa7, 0x0e, 0x76, 0x17, 0x20, 0x00, 0x02, 0x20, 0x69, 0xd9, 0x93, 0x43, 0x4f, 0x22, 0xde, - 0x7b, 0xfb, 0xf6, 0xed, 0xe2, 0xbd, 0xb7, 0xef, 0x7d, 0x0b, 0xc1, 0xed, 0xb6, 0x62, 0x3e, 0xe9, - 0x1f, 0xe6, 0x9a, 0x5a, 0xf7, 0x66, 0x53, 0x53, 0x4d, 0x59, 0x51, 0xb1, 0x7e, 0xc3, 0x30, 0x35, - 0x5d, 0x6e, 0xe3, 0x1b, 0x8a, 0x6a, 0x62, 0xfd, 0x48, 0x6e, 0xe2, 0x9b, 0x46, 0x0f, 0x37, 0x6f, - 0x36, 0x0d, 0x25, 0xd7, 0xd3, 0x35, 0x53, 0x43, 0xd3, 0xd6, 0xcf, 0xe3, 0xd7, 0xf8, 0x8d, 0xb6, - 0xa6, 0xb5, 0x3b, 0xf8, 0x26, 0xa1, 0x1e, 0xf6, 0x8f, 0x6e, 0xb6, 0xb0, 0xd1, 0xd4, 0x95, 0x9e, - 0xa9, 0xe9, 0x54, 0x92, 0xbf, 0xe8, 0x97, 0x30, 0x95, 0x2e, 0x36, 0x4c, 0xb9, 0xdb, 0x63, 0x02, - 0x17, 0xfc, 0x02, 0x3f, 0xd4, 0xe5, 0x5e, 0x0f, 0xeb, 0x06, 0xe5, 0x0b, 0x2b, 0xb0, 0xb4, 0x83, - 0xcd, 0xbd, 0x4e, 0xbf, 0xad, 0xa8, 0x65, 0xf5, 0x48, 0x13, 0xf1, 0x27, 0x7d, 0x6c, 0x98, 0xc2, - 0x3f, 0x38, 0x58, 0xf6, 0x31, 0x8c, 0x9e, 0xa6, 0x1a, 0x18, 0x21, 0x48, 0xa8, 0x72, 0x17, 0x67, - 0xb9, 0x0d, 0x6e, 0x73, 0x4e, 0x24, 0xbf, 0xd1, 0x15, 0x48, 0x1f, 0x63, 0xb5, 0xa5, 0xe9, 0xd2, - 0x31, 0xd6, 0x0d, 0x45, 0x53, 0xb3, 0x31, 0xc2, 0x5d, 0xa0, 0xd4, 0x03, 0x4a, 0x44, 0x3b, 0x30, - 0xdb, 0x95, 0x55, 0xe5, 0x08, 0x1b, 0x66, 0x36, 0xbe, 0x11, 0xdf, 0x4c, 0xdd, 0x7a, 0x35, 0x47, - 0x97, 0x9a, 0x0b, 0x9c, 0x2b, 0xf7, 0x80, 0x49, 0x97, 0x54, 0x53, 0x3f, 0x11, 0x9d, 0xc1, 0xfc, - 0x1d, 0x58, 0xf0, 0xb0, 0x50, 0x06, 0xe2, 0x1f, 0xe3, 0x13, 0x66, 0x93, 0xf5, 0x13, 0x2d, 0x41, - 0xf2, 0x58, 0xee, 0xf4, 0x31, 0xb3, 0x84, 0x3e, 0x6c, 0xc5, 0xbe, 0xcb, 0x09, 0x17, 0x60, 0xcd, - 0x99, 0xad, 0x28, 0xf7, 0xe4, 0x43, 0xa5, 0xa3, 0x98, 0x0a, 0x36, 0xec, 0xa5, 0x7f, 0x08, 0xeb, - 0x21, 0x7c, 0xb6, 0x03, 0x77, 0x61, 0xbe, 0xe9, 0xa2, 0x67, 0x39, 0xb2, 0x94, 0xac, 0xbd, 0x14, - 0xdf, 0xc8, 0x13, 0xd1, 0x23, 0x2d, 0xfc, 0x2d, 0x0e, 0x19, 0xbf, 0x08, 0xba, 0x0b, 0x33, 0x06, - 0xd6, 0x8f, 0x95, 0x26, 0xdd, 0xd7, 0xd4, 0xad, 0x8d, 0x30, 0x6d, 0xb9, 0x3a, 0x95, 0xdb, 0x9d, - 0x12, 0xed, 0x21, 0x68, 0x1f, 0x32, 0xc7, 0x5a, 0xa7, 0xdf, 0xc5, 0x12, 0x7e, 0xda, 0x93, 0x55, - 0xe7, 0x05, 0xa4, 0x6e, 0x6d, 0x86, 0xaa, 0x39, 0x20, 0x03, 0x4a, 0xb6, 0xfc, 0xee, 0x94, 0x78, - 0xe6, 0xd8, 0x4b, 0xe2, 0x7f, 0xc1, 0xc1, 0x0c, 0x9b, 0x0d, 0xbd, 0x05, 0x09, 0xf3, 0xa4, 0x47, - 0xad, 0x4b, 0xdf, 0xba, 0x32, 0xca, 0xba, 0x5c, 0xe3, 0xa4, 0x87, 0x45, 0x32, 0x44, 0x78, 0x1f, - 0x12, 0xd6, 0x13, 0x4a, 0xc1, 0xcc, 0x7e, 0xf5, 0x7e, 0xb5, 0xf6, 0xb0, 0x9a, 0x99, 0x42, 0x2b, - 0x80, 0x8a, 0xb5, 0x6a, 0x43, 0xac, 0x55, 0x2a, 0x25, 0x51, 0xaa, 0x97, 0xc4, 0x83, 0x72, 0xb1, - 0x94, 0xe1, 0xd0, 0x4b, 0xb0, 0x71, 0x50, 0xab, 0xec, 0x3f, 0x28, 0x49, 0xf9, 0x62, 0xb1, 0x54, - 0xaf, 0x97, 0x0b, 0xe5, 0x4a, 0xb9, 0xf1, 0x48, 0x2a, 0xd6, 0xaa, 0xf5, 0x86, 0x98, 0x2f, 0x57, - 0x1b, 0xf5, 0x4c, 0x8c, 0xff, 0x09, 0x07, 0x67, 0x7c, 0x0b, 0x40, 0x79, 0x8f, 0x85, 0x37, 0xc6, - 0x5d, 0xb8, 0xdb, 0xd2, 0xeb, 0x41, 0x96, 0x02, 0x4c, 0xd7, 0xaa, 0x95, 0x72, 0xd5, 0xb2, 0x2e, - 0x05, 0x33, 0xb5, 0x7b, 0xf7, 0xc8, 0x43, 0xac, 0x30, 0x4d, 0x27, 0x14, 0xd2, 0x30, 0xbf, 0xa7, - 0x6b, 0x87, 0xd8, 0xf6, 0x9f, 0x3c, 0x2c, 0xb0, 0x67, 0xe6, 0x2f, 0xdf, 0x81, 0xa4, 0x8e, 0xe5, - 0xd6, 0x09, 0x7b, 0xb5, 0x7c, 0x8e, 0xc6, 0x64, 0xce, 0x8e, 0xc9, 0x5c, 0x41, 0xd3, 0x3a, 0x07, - 0x96, 0x7f, 0x8a, 0x54, 0x50, 0xf8, 0x26, 0x01, 0x8b, 0x45, 0x1d, 0xcb, 0x26, 0xa6, 0xd6, 0x32, - 0xd5, 0x81, 0xb1, 0x77, 0x17, 0xd2, 0x96, 0x7f, 0x35, 0x15, 0xf3, 0x44, 0xd2, 0x65, 0xb5, 0x8d, - 0xd9, 0xab, 0x5f, 0xb6, 0x77, 0xa0, 0xc8, 0xb8, 0xa2, 0xc5, 0x14, 0x17, 0x9a, 0xee, 0x47, 0x54, - 0x86, 0x45, 0xe6, 0x3a, 0x1e, 0x97, 0x8e, 0x7b, 0x5d, 0x9a, 0x5a, 0xe1, 0x72, 0x69, 0x74, 0xec, - 0xa5, 0x28, 0xd8, 0x40, 0xf7, 0x01, 0x7a, 0xb2, 0x2e, 0x77, 0xb1, 0x89, 0x75, 0x23, 0x9b, 0xf0, - 0xc6, 0x77, 0xc0, 0x6a, 0x72, 0x7b, 0x8e, 0x34, 0x8d, 0x6f, 0xd7, 0x70, 0xb4, 0x63, 0x05, 0x44, - 0x53, 0xc7, 0xa6, 0x91, 0x4d, 0x12, 0x4d, 0x9b, 0x51, 0x9a, 0xea, 0x54, 0x94, 0xa8, 0x29, 0xc4, - 0x7f, 0x59, 0xe0, 0x44, 0x7b, 0x34, 0xaa, 0xc1, 0xb2, 0xbd, 0x40, 0x4d, 0x35, 0xb1, 0x6a, 0x4a, - 0x86, 0xd6, 0xd7, 0x9b, 0x38, 0x3b, 0x4d, 0x76, 0x69, 0xd5, 0xb7, 0x44, 0x2a, 0x53, 0x27, 0x22, - 0x22, 0xdb, 0x1a, 0x0f, 0x11, 0x3d, 0x06, 0x5e, 0x6e, 0x36, 0xb1, 0x61, 0x28, 0x74, 0x2f, 0x24, - 0x1d, 0x7f, 0xd2, 0x57, 0x74, 0xdc, 0xc5, 0xaa, 0x69, 0x64, 0x67, 0xbc, 0x5a, 0x1b, 0x5a, 0x4f, - 0xeb, 0x68, 0xed, 0x13, 0x71, 0x20, 0x23, 0x9e, 0xf7, 0x0c, 0x77, 0x71, 0x0c, 0xfe, 0x6d, 0x38, - 0xe3, 0xdb, 0x94, 0x49, 0x32, 0x1b, 0xbf, 0x05, 0xf3, 0xee, 0x9d, 0x98, 0x28, 0x2b, 0xfe, 0x2c, - 0x06, 0x8b, 0x01, 0x7b, 0x80, 0x76, 0x61, 0xd6, 0x50, 0xe5, 0x9e, 0xf1, 0x44, 0x33, 0x99, 0xff, - 0x5e, 0x8b, 0xd8, 0xb2, 0x5c, 0x9d, 0xc9, 0xd2, 0xc7, 0xdd, 0x29, 0xd1, 0x19, 0x8d, 0x0a, 0x30, - 0x4d, 0xf7, 0xd3, 0x9f, 0x9b, 0x82, 0xf4, 0x50, 0x9a, 0xa3, 0x85, 0x8d, 0xe4, 0x5f, 0x83, 0xb4, - 0x77, 0x06, 0x74, 0x11, 0x52, 0xf6, 0x0c, 0x92, 0xd2, 0x62, 0x6b, 0x05, 0x9b, 0x54, 0x6e, 0xf1, - 0xaf, 0xc2, 0xbc, 0x5b, 0x19, 0x5a, 0x85, 0x39, 0xe6, 0x10, 0x8e, 0xf8, 0x2c, 0x25, 0x94, 0x5b, - 0x4e, 0x4c, 0x7f, 0x0f, 0x96, 0xbc, 0x7e, 0xc6, 0x42, 0xf9, 0xaa, 0xb3, 0x06, 0xba, 0x17, 0x69, - 0xef, 0x1a, 0x6c, 0x3b, 0x85, 0xdf, 0x25, 0x20, 0xe3, 0x0f, 0x1a, 0x74, 0x17, 0x92, 0x87, 0x1d, - 0xad, 0xf9, 0x31, 0x1b, 0xfb, 0x52, 0x58, 0x74, 0xe5, 0x0a, 0x96, 0x14, 0xa5, 0xee, 0x4e, 0x89, - 0x74, 0x90, 0x35, 0xba, 0xab, 0xf5, 0x55, 0x93, 0xed, 0x5e, 0xf8, 0xe8, 0x07, 0x96, 0xd4, 0x60, - 0x34, 0x19, 0x84, 0xb6, 0x21, 0x45, 0xdd, 0x4e, 0xea, 0x6a, 0x2d, 0x9c, 0x8d, 0x13, 0x1d, 0x97, - 0x43, 0x75, 0xe4, 0x89, 0xec, 0x03, 0xad, 0x85, 0x45, 0x90, 0x9d, 0xdf, 0xfc, 0x02, 0xa4, 0x5c, - 0xb6, 0xf1, 0x3b, 0x90, 0x72, 0x4d, 0x86, 0xce, 0xc1, 0xcc, 0x91, 0x21, 0x39, 0x49, 0x78, 0x4e, - 0x9c, 0x3e, 0x32, 0x48, 0x3e, 0xbd, 0x08, 0x29, 0x62, 0x85, 0x74, 0xd4, 0x91, 0xdb, 0x46, 0x36, - 0xb6, 0x11, 0xb7, 0xde, 0x11, 0x21, 0xdd, 0xb3, 0x28, 0xfc, 0xbf, 0x38, 0x80, 0xc1, 0x94, 0xe8, - 0x2e, 0x24, 0x88, 0x95, 0x34, 0x95, 0x6f, 0x8e, 0x61, 0x65, 0x8e, 0x98, 0x4a, 0x46, 0x09, 0xbf, - 0xe6, 0x20, 0x41, 0xd4, 0xf8, 0x0f, 0x9c, 0x7a, 0xb9, 0xba, 0x53, 0x29, 0x49, 0xd5, 0xda, 0x76, - 0x49, 0x7a, 0x28, 0x96, 0x1b, 0x25, 0x31, 0xc3, 0xa1, 0x55, 0x38, 0xe7, 0xa6, 0x8b, 0xa5, 0xfc, - 0x76, 0x49, 0x94, 0x6a, 0xd5, 0xca, 0xa3, 0x4c, 0x0c, 0xf1, 0xb0, 0xf2, 0x60, 0xbf, 0xd2, 0x28, - 0x0f, 0xf3, 0xe2, 0x68, 0x0d, 0xb2, 0x2e, 0x1e, 0xd3, 0xc1, 0xd4, 0x26, 0x2c, 0xb5, 0x2e, 0x2e, - 0xfd, 0xc9, 0x98, 0xc9, 0xc2, 0x82, 0xf3, 0x32, 0x88, 0xb3, 0x3d, 0x84, 0x05, 0x4f, 0x8e, 0xb6, - 0xca, 0x29, 0x96, 0x54, 0x5a, 0xd2, 0xe1, 0x89, 0x49, 0x4a, 0x0c, 0x6e, 0x33, 0x2e, 0x2e, 0xd8, - 0xd4, 0x82, 0x45, 0xb4, 0xb6, 0xb5, 0xa3, 0x74, 0x15, 0x93, 0xc9, 0xc4, 0x88, 0x0c, 0x10, 0x12, - 0x11, 0x10, 0xbe, 0x8a, 0xc1, 0x34, 0x7b, 0x37, 0x57, 0x5c, 0xa7, 0x84, 0x47, 0xa5, 0x4d, 0xa5, - 0x2a, 0x3d, 0xc1, 0x11, 0xf3, 0x06, 0x07, 0xda, 0x85, 0xb4, 0x3b, 0x95, 0x3e, 0xb5, 0x8b, 0xb8, - 0x4b, 0xde, 0x17, 0xe4, 0x8e, 0xe7, 0xa7, 0xac, 0x74, 0x5b, 0x38, 0x76, 0xd3, 0x50, 0x01, 0xd2, - 0xbe, 0x6c, 0x9c, 0x18, 0x9d, 0x8d, 0x17, 0x9a, 0x9e, 0xc4, 0x94, 0x87, 0x45, 0x3b, 0x91, 0x76, - 0xb0, 0x64, 0xb2, 0x44, 0xcb, 0x4e, 0x8b, 0xcc, 0x50, 0x02, 0x46, 0x03, 0x61, 0x9b, 0xc6, 0xbf, - 0x0b, 0x68, 0xd8, 0xd6, 0x89, 0xb2, 0x66, 0x1f, 0x16, 0x03, 0x52, 0x3c, 0xca, 0xc1, 0x1c, 0x79, - 0x55, 0x86, 0x62, 0x62, 0x56, 0x1e, 0x0e, 0x5b, 0x34, 0x10, 0xb1, 0xe4, 0x7b, 0x3a, 0x3e, 0xc2, - 0xba, 0x8e, 0x5b, 0x24, 0x3c, 0x02, 0xe5, 0x1d, 0x11, 0xe1, 0xa7, 0x1c, 0xcc, 0xda, 0x74, 0xb4, - 0x05, 0xb3, 0x06, 0x6e, 0xd3, 0xe3, 0x87, 0xce, 0x75, 0xc1, 0x3f, 0x36, 0x57, 0x67, 0x02, 0xac, - 0x90, 0xb6, 0xe5, 0xad, 0x42, 0xda, 0xc3, 0x9a, 0x68, 0xf1, 0x7f, 0xe2, 0x60, 0x71, 0x1b, 0x77, - 0xb0, 0xbf, 0x4a, 0x89, 0xca, 0xb0, 0xee, 0x83, 0x3d, 0xe6, 0x3d, 0xd8, 0x03, 0x54, 0x45, 0x1c, - 0xec, 0xa7, 0x3a, 0xec, 0x56, 0x60, 0xc9, 0x3b, 0x1b, 0x4d, 0xef, 0xc2, 0xbf, 0xe3, 0x70, 0xc1, - 0xf2, 0x05, 0x5d, 0xeb, 0x74, 0xb0, 0xbe, 0xd7, 0x3f, 0xec, 0x28, 0xc6, 0x93, 0x09, 0x16, 0x77, - 0x0e, 0x66, 0x54, 0xad, 0xe5, 0x0a, 0x9e, 0x69, 0xeb, 0xb1, 0xdc, 0x42, 0x25, 0x38, 0xeb, 0x2f, - 0xb3, 0x4e, 0x58, 0x12, 0x0e, 0x2f, 0xb2, 0x32, 0xc7, 0xfe, 0x13, 0x84, 0x87, 0x59, 0xab, 0x40, - 0xd4, 0xd4, 0xce, 0x09, 0x89, 0x98, 0x59, 0xd1, 0x79, 0x46, 0xa2, 0xbf, 0x62, 0x7a, 0xdd, 0xa9, - 0x98, 0x22, 0x57, 0x14, 0x55, 0x3c, 0x7d, 0x34, 0x14, 0xf1, 0xd3, 0x44, 0xf5, 0x5b, 0x63, 0xaa, - 0x1e, 0x99, 0x09, 0x4e, 0xf3, 0x16, 0x9f, 0x43, 0xf8, 0xfe, 0x95, 0x83, 0x8b, 0xa1, 0x4b, 0x60, - 0x47, 0x7e, 0x0b, 0xce, 0xf4, 0x28, 0xc3, 0xd9, 0x04, 0x1a, 0x65, 0x77, 0x46, 0x6e, 0x02, 0xeb, - 0x62, 0x19, 0xd5, 0xb3, 0x0d, 0xe9, 0x9e, 0x87, 0xc8, 0xe7, 0x61, 0x31, 0x40, 0x6c, 0xa2, 0xc5, - 0x7c, 0xcd, 0xc1, 0xc6, 0xc0, 0x94, 0x7d, 0xb5, 0xf7, 0xfc, 0xdc, 0xb7, 0x31, 0xf0, 0x2d, 0x9a, - 0xf2, 0x6f, 0x0f, 0xaf, 0x3d, 0x78, 0xc2, 0x17, 0x15, 0xc1, 0x97, 0xe1, 0x52, 0xc4, 0xd4, 0x2c, - 0x9c, 0xbf, 0x4a, 0xc0, 0xa5, 0x03, 0xb9, 0xa3, 0xb4, 0x9c, 0x42, 0x2e, 0xa0, 0xdf, 0x8f, 0xde, - 0x92, 0xe6, 0x50, 0x04, 0xd0, 0xac, 0x75, 0xd7, 0x89, 0xda, 0x51, 0xfa, 0xc7, 0x38, 0x0e, 0x9f, - 0x63, 0x13, 0xf6, 0x28, 0xa0, 0x09, 0x7b, 0x6b, 0x7c, 0x5b, 0xa3, 0x5a, 0xb2, 0x7d, 0x7f, 0x82, - 0x79, 0x73, 0x7c, 0xbd, 0x11, 0x5e, 0x70, 0xea, 0x28, 0xfe, 0x36, 0xbb, 0xa6, 0xbf, 0x24, 0x40, - 0x88, 0x5a, 0x3d, 0xcb, 0x21, 0x22, 0xcc, 0x35, 0x35, 0xf5, 0x48, 0xd1, 0xbb, 0xb8, 0xc5, 0xaa, - 0xff, 0x37, 0xc6, 0xd9, 0x3c, 0x96, 0x40, 0x8a, 0xf6, 0x58, 0x71, 0xa0, 0x06, 0x65, 0x61, 0xa6, - 0x8b, 0x0d, 0x43, 0x6e, 0xdb, 0x66, 0xd9, 0x8f, 0xfc, 0x17, 0x71, 0x98, 0x73, 0x86, 0x20, 0x75, - 0xc8, 0x83, 0x69, 0xfa, 0xda, 0x79, 0x16, 0x03, 0x9e, 0xdd, 0x99, 0x63, 0xcf, 0xe0, 0xcc, 0x2d, - 0x8f, 0x33, 0xd3, 0x70, 0xd8, 0x7e, 0x26, 0xb3, 0x23, 0xfc, 0xfa, 0x5b, 0x77, 0x40, 0xe1, 0x07, - 0x80, 0x2a, 0x8a, 0xc1, 0xba, 0x28, 0x27, 0x2d, 0x59, 0x4d, 0x93, 0xfc, 0x54, 0xc2, 0xaa, 0xa9, - 0x2b, 0xac, 0x5c, 0x4f, 0x8a, 0xd0, 0x95, 0x9f, 0x96, 0x28, 0xc5, 0x2a, 0xe9, 0x0d, 0x53, 0xd6, - 0x4d, 0x45, 0x6d, 0x4b, 0xa6, 0xf6, 0x31, 0x76, 0x40, 0x57, 0x9b, 0xda, 0xb0, 0x88, 0xc2, 0x67, - 0x1c, 0x2c, 0x7a, 0xd4, 0x33, 0x9f, 0xbc, 0x03, 0x33, 0x03, 0xdd, 0x9e, 0x32, 0x3e, 0x40, 0x3a, - 0x47, 0xb7, 0xcd, 0x1e, 0x81, 0xd6, 0x01, 0x54, 0xfc, 0xd4, 0xf4, 0xcc, 0x3b, 0x67, 0x51, 0xc8, - 0x9c, 0xfc, 0x4d, 0x48, 0xd2, 0x6d, 0x18, 0xb7, 0x5f, 0xfe, 0x22, 0x06, 0x68, 0x07, 0x9b, 0x4e, - 0x1b, 0xc4, 0xf6, 0x20, 0xc4, 0x97, 0xb8, 0x67, 0xf0, 0xa5, 0xf7, 0x3c, 0xbe, 0x44, 0xbd, 0xf1, - 0x9a, 0x0b, 0x7d, 0xf6, 0x4d, 0x1d, 0x99, 0x09, 0x43, 0x5a, 0x0f, 0x5a, 0xcf, 0x8d, 0xd7, 0x7a, - 0x9c, 0xd2, 0x65, 0xb6, 0x61, 0xd1, 0x63, 0x33, 0x7b, 0xa7, 0x37, 0x00, 0xc9, 0xc7, 0xb2, 0xd2, - 0x91, 0x2d, 0xbb, 0xec, 0xce, 0x8e, 0x75, 0x7a, 0x67, 0x1d, 0x8e, 0x3d, 0x4c, 0x10, 0xdc, 0x05, - 0x03, 0xd3, 0xe7, 0x47, 0xc3, 0x3b, 0xee, 0x83, 0x76, 0x48, 0x86, 0xcd, 0xbb, 0x13, 0x88, 0x88, - 0x5f, 0x1e, 0x2e, 0x12, 0x18, 0x3c, 0x1c, 0x0a, 0x8e, 0x7f, 0x1a, 0x87, 0xd5, 0x08, 0x69, 0x74, - 0x07, 0xe2, 0x7a, 0xaf, 0xc9, 0x9c, 0xe9, 0xe5, 0x31, 0xf4, 0xe7, 0xc4, 0xbd, 0xe2, 0xee, 0x94, - 0x68, 0x8d, 0xe2, 0x3f, 0x8f, 0x41, 0x5c, 0xdc, 0x2b, 0xa2, 0x77, 0x3d, 0x48, 0xf1, 0xf5, 0x31, - 0xb5, 0xb8, 0x81, 0xe2, 0x2f, 0xb9, 0x20, 0xa4, 0x38, 0x0b, 0x4b, 0x45, 0xb1, 0x94, 0x6f, 0x94, - 0xa4, 0xed, 0x52, 0xa5, 0xd4, 0x28, 0x49, 0x14, 0xc9, 0xce, 0x70, 0x68, 0x0d, 0xb2, 0x7b, 0xfb, - 0x85, 0x4a, 0xb9, 0xbe, 0x2b, 0xed, 0x57, 0xed, 0x5f, 0x8c, 0x1b, 0x43, 0x19, 0x98, 0xaf, 0x94, - 0xeb, 0x0d, 0x46, 0xa8, 0x67, 0xe2, 0x16, 0x65, 0xa7, 0xd4, 0x90, 0x8a, 0xf9, 0xbd, 0x7c, 0xb1, - 0xdc, 0x78, 0x94, 0x49, 0x20, 0x1e, 0x56, 0xbc, 0xba, 0xeb, 0xd5, 0xfc, 0x5e, 0x7d, 0xb7, 0xd6, - 0xc8, 0x24, 0x11, 0x82, 0x34, 0x19, 0x6f, 0x93, 0xea, 0x99, 0x69, 0x4b, 0x43, 0xb1, 0x52, 0xab, - 0x3a, 0x36, 0xcc, 0xa0, 0x25, 0xc8, 0xd8, 0x33, 0x8b, 0xa5, 0xfc, 0x36, 0x41, 0x31, 0x66, 0xd1, - 0x59, 0x58, 0x28, 0x7d, 0xb0, 0x97, 0xaf, 0x6e, 0xdb, 0x82, 0x73, 0x0e, 0x06, 0xf6, 0x75, 0x0c, - 0x96, 0x29, 0x08, 0x66, 0x43, 0x6e, 0x76, 0x58, 0x6e, 0x42, 0x86, 0xb6, 0xed, 0x92, 0xbf, 0x70, - 0x4a, 0x53, 0xfa, 0x81, 0x5d, 0x3e, 0xd9, 0x80, 0x75, 0xcc, 0x05, 0x58, 0x97, 0xfd, 0xc5, 0xe4, - 0x35, 0x2f, 0xb4, 0xeb, 0x9b, 0x2d, 0xaa, 0x3f, 0x79, 0x10, 0x50, 0xed, 0xdc, 0x88, 0xd6, 0x16, - 0x75, 0x12, 0x9c, 0xa6, 0x19, 0x39, 0x65, 0x40, 0xdf, 0x83, 0x15, 0xbf, 0xbd, 0x2c, 0xb6, 0xae, - 0x0f, 0x01, 0xb0, 0x4e, 0x86, 0x71, 0x64, 0x1d, 0x09, 0xe1, 0xef, 0x1c, 0xcc, 0xda, 0x64, 0x2b, - 0x4b, 0x1b, 0xca, 0x8f, 0xb0, 0x07, 0xf0, 0x99, 0xb3, 0x28, 0x0e, 0x7e, 0xe4, 0x86, 0x4e, 0x63, - 0x7e, 0xe8, 0x34, 0xf0, 0x3d, 0xc7, 0x03, 0xdf, 0xf3, 0x3b, 0xb0, 0xd0, 0xb4, 0xcc, 0x57, 0x34, - 0x55, 0x32, 0x95, 0xae, 0x8d, 0xe7, 0x0c, 0x5f, 0x75, 0x34, 0xec, 0xfb, 0x49, 0x71, 0xde, 0x1e, - 0x60, 0x91, 0xd0, 0x06, 0xcc, 0x93, 0xab, 0x0f, 0xc9, 0xd4, 0xa4, 0xbe, 0x81, 0xb3, 0x49, 0xd2, - 0xdd, 0x02, 0xa1, 0x35, 0xb4, 0x7d, 0x03, 0x0b, 0x7f, 0xe6, 0x60, 0x99, 0x36, 0xed, 0x7e, 0x77, - 0x1c, 0x05, 0x01, 0xbb, 0x3d, 0xce, 0x97, 0xf8, 0x03, 0x15, 0xbe, 0xa8, 0x9e, 0x25, 0x0b, 0x2b, - 0xfe, 0xf9, 0x58, 0xa3, 0xf2, 0x5b, 0x0e, 0x96, 0xac, 0x53, 0xd7, 0x66, 0x3c, 0xef, 0x22, 0x60, - 0x82, 0x37, 0xe9, 0xdb, 0xcc, 0x84, 0x7f, 0x33, 0x85, 0xdf, 0x73, 0xb0, 0xec, 0xb3, 0x95, 0x79, - 0xea, 0xdb, 0xfe, 0x8a, 0xe2, 0xb2, 0xbb, 0xa2, 0x18, 0x92, 0x9f, 0xb0, 0xa6, 0xb8, 0x6d, 0xd7, - 0x14, 0x93, 0x05, 0xc4, 0xa7, 0x31, 0x58, 0x1f, 0x64, 0x76, 0x72, 0xed, 0xd7, 0x9a, 0xa0, 0x25, - 0x3e, 0xdd, 0xed, 0xda, 0xfb, 0xfe, 0x54, 0x77, 0x6b, 0xf8, 0xb0, 0x09, 0x30, 0xe9, 0x45, 0x39, - 0xe0, 0x8f, 0xdd, 0xe8, 0x96, 0x77, 0x5e, 0xf6, 0x0a, 0xc7, 0x84, 0x89, 0xdf, 0x84, 0x73, 0x04, - 0x28, 0x70, 0xae, 0x9b, 0xed, 0x4b, 0x30, 0x9a, 0x45, 0x66, 0xc5, 0x65, 0x8b, 0xed, 0xdc, 0xb1, - 0x32, 0x68, 0xb4, 0x25, 0x7c, 0x93, 0x80, 0x95, 0xaa, 0xd6, 0xc2, 0x75, 0x53, 0x6e, 0x4f, 0x02, - 0x1a, 0x7e, 0x7f, 0x18, 0x83, 0x89, 0x79, 0xf7, 0x33, 0x58, 0xeb, 0x38, 0xd0, 0x0b, 0xca, 0xc1, - 0xa2, 0x61, 0xca, 0x6d, 0x12, 0x41, 0xb2, 0xde, 0xc6, 0xa6, 0xd4, 0x93, 0xcd, 0x27, 0x2c, 0x3c, - 0xce, 0x32, 0x56, 0x83, 0x70, 0xf6, 0x64, 0xf3, 0x49, 0x30, 0x96, 0x97, 0x98, 0x18, 0xcb, 0x7b, - 0xcf, 0xdf, 0x4e, 0xbf, 0x3a, 0x62, 0x2d, 0x11, 0xe7, 0xe0, 0x07, 0x21, 0x38, 0xdd, 0x6b, 0x23, - 0x54, 0x8e, 0xc6, 0xe7, 0x4e, 0x8f, 0x4b, 0x7d, 0xcb, 0x10, 0xdf, 0x79, 0x38, 0x37, 0xb4, 0x78, - 0x96, 0x75, 0xdb, 0x90, 0xb5, 0x58, 0xfb, 0xaa, 0x31, 0xa1, 0x3b, 0x86, 0x78, 0x4c, 0x2c, 0xc4, - 0x63, 0x84, 0x55, 0x38, 0x1f, 0x30, 0x11, 0xb3, 0xe2, 0x8f, 0x49, 0x6a, 0xc6, 0xe4, 0x68, 0xf3, - 0x87, 0x61, 0x51, 0xf1, 0x86, 0xfb, 0xb5, 0x07, 0x02, 0xb3, 0x2f, 0x22, 0x2e, 0x2e, 0x42, 0xca, - 0x2d, 0xc7, 0x4e, 0x0e, 0x73, 0x44, 0xe0, 0x24, 0x4f, 0x05, 0x82, 0x4f, 0xfb, 0x40, 0xf0, 0xca, - 0x20, 0xa8, 0x66, 0xbc, 0xd5, 0x60, 0xe8, 0x56, 0x44, 0x84, 0xd5, 0xe3, 0xa1, 0xb0, 0x9a, 0xf5, - 0x22, 0xeb, 0xa1, 0x4a, 0xff, 0x0f, 0x02, 0x8b, 0x39, 0x75, 0x20, 0xe4, 0x2d, 0x3c, 0x06, 0x9e, - 0x7a, 0xfc, 0xe4, 0x20, 0xb4, 0xcf, 0x8d, 0x62, 0x7e, 0x37, 0x12, 0xd6, 0x61, 0x35, 0x50, 0x37, - 0x9b, 0xfa, 0x11, 0xb5, 0x6b, 0x07, 0x33, 0x0c, 0xa3, 0x6e, 0xca, 0xa6, 0x31, 0xee, 0xcc, 0x8c, - 0xe9, 0x9e, 0x99, 0x92, 0xc8, 0xcc, 0x3b, 0x74, 0x55, 0x7e, 0xd5, 0xec, 0xec, 0x7c, 0x05, 0x92, - 0x7d, 0x02, 0xc7, 0xd1, 0xe2, 0x67, 0xd1, 0xeb, 0xd2, 0xfb, 0x16, 0x4b, 0xa4, 0x12, 0xc2, 0x1f, - 0x38, 0x48, 0xb9, 0xc8, 0x68, 0x0d, 0xe6, 0x9c, 0xee, 0xdc, 0xae, 0xd3, 0x1d, 0x82, 0xf5, 0x0e, - 0x4c, 0xcd, 0x94, 0x3b, 0xec, 0x86, 0x97, 0x3e, 0x58, 0xad, 0x55, 0xdf, 0xc0, 0xb4, 0x8c, 0x8b, - 0x8b, 0xe4, 0x37, 0xba, 0x0e, 0x89, 0xbe, 0xaa, 0x98, 0x24, 0xf6, 0xd2, 0xfe, 0xa0, 0x22, 0x53, - 0xe5, 0xf6, 0x55, 0xc5, 0x14, 0x89, 0x94, 0x70, 0x0d, 0x12, 0xd6, 0x93, 0xb7, 0x89, 0x9d, 0x83, - 0x64, 0xe1, 0x51, 0xa3, 0x54, 0xcf, 0x70, 0x08, 0x60, 0xba, 0x5c, 0xad, 0x6d, 0x97, 0xea, 0x99, - 0x98, 0xb0, 0xe6, 0x2c, 0x3d, 0x08, 0x24, 0xf8, 0x88, 0xbe, 0x92, 0x30, 0x78, 0x20, 0x1f, 0x08, - 0x0f, 0xac, 0x7b, 0x0e, 0xa7, 0x11, 0xc0, 0xc0, 0x7f, 0x38, 0x58, 0x0e, 0x94, 0x43, 0xb7, 0xdd, - 0x90, 0xc0, 0xa5, 0x48, 0x9d, 0x6e, 0x30, 0xe0, 0x57, 0x1c, 0x05, 0x03, 0xb6, 0x3c, 0x60, 0xc0, - 0xd5, 0x91, 0xe3, 0xdd, 0x30, 0xc0, 0x41, 0x08, 0x0a, 0x50, 0x6f, 0xe4, 0x77, 0x4a, 0xd2, 0x7e, - 0x95, 0xfe, 0x75, 0x50, 0x80, 0x25, 0xc8, 0x58, 0x5d, 0x3d, 0xfb, 0xbe, 0xad, 0xde, 0xc8, 0x37, - 0xea, 0x99, 0xd8, 0x70, 0x07, 0x1e, 0x77, 0x3a, 0xf0, 0x25, 0x40, 0x6c, 0x5b, 0xdd, 0x9f, 0x66, - 0x7e, 0xc6, 0xc1, 0xa2, 0x87, 0xcc, 0x76, 0xd9, 0x75, 0x7b, 0xc3, 0x79, 0x6e, 0x6f, 0x6e, 0xc2, - 0x92, 0xd5, 0x44, 0x50, 0x47, 0x36, 0xa4, 0x1e, 0xd6, 0x25, 0x8b, 0xc3, 0xdc, 0xe9, 0x6c, 0x57, - 0x7e, 0xca, 0xd0, 0xbe, 0x3d, 0xac, 0x5b, 0x8a, 0x9f, 0x03, 0xbe, 0x25, 0xfc, 0x9c, 0xa3, 0xe7, - 0xee, 0xc4, 0x05, 0xf7, 0xa8, 0x20, 0x0c, 0xa8, 0xc8, 0xe3, 0xe3, 0x57, 0xe4, 0x42, 0x9e, 0x1e, - 0xb6, 0xa7, 0x28, 0x7e, 0x6f, 0xfd, 0x97, 0x83, 0xd9, 0x72, 0x0b, 0xab, 0xa6, 0xe5, 0x7d, 0x55, - 0x58, 0xf0, 0x7c, 0xba, 0x8a, 0xd6, 0x42, 0xbe, 0x68, 0x25, 0x4b, 0xe7, 0xd7, 0x23, 0xbf, 0x77, - 0x15, 0xa6, 0xd0, 0x91, 0xeb, 0xb3, 0x5b, 0x0f, 0x7e, 0xf9, 0xd2, 0xd0, 0xc8, 0x80, 0x40, 0xe4, - 0xaf, 0x8c, 0x90, 0x72, 0xe6, 0x79, 0x13, 0x92, 0xe4, 0x23, 0x45, 0xb4, 0xe4, 0x7c, 0x28, 0xe9, - 0xfa, 0x86, 0x91, 0x5f, 0xf6, 0x51, 0xed, 0x71, 0xb7, 0xfe, 0x39, 0x0b, 0x30, 0xe8, 0x21, 0xd0, - 0x7d, 0x98, 0x77, 0x7f, 0x27, 0x85, 0x56, 0x23, 0xbe, 0xd2, 0xe3, 0xd7, 0x82, 0x99, 0x8e, 0x4d, - 0xf7, 0x61, 0xde, 0x7d, 0x2b, 0x3f, 0x50, 0x16, 0xf0, 0x65, 0xc0, 0x40, 0x59, 0xe0, 0x45, 0xfe, - 0x14, 0xea, 0xc0, 0xb9, 0x90, 0x7b, 0x59, 0x74, 0x75, 0xbc, 0xdb, 0x6b, 0xfe, 0xe5, 0x31, 0x2f, - 0x78, 0x85, 0x29, 0xa4, 0xc3, 0xf9, 0xd0, 0xeb, 0x48, 0xb4, 0x39, 0xee, 0x65, 0x29, 0xff, 0xca, - 0x18, 0x92, 0xce, 0x9c, 0x7d, 0xe0, 0xc3, 0xef, 0x40, 0xd0, 0x2b, 0x63, 0x5f, 0xce, 0xf1, 0xd7, - 0xc6, 0xbf, 0x52, 0x11, 0xa6, 0xd0, 0x2e, 0xa4, 0x5c, 0x17, 0x04, 0x88, 0x0f, 0xbc, 0x35, 0xa0, - 0x8a, 0x57, 0x23, 0x6e, 0x14, 0xa8, 0x26, 0x17, 0x88, 0x3d, 0xd0, 0x34, 0x8c, 0xc6, 0x0f, 0x34, - 0x05, 0xa0, 0xde, 0xfe, 0xed, 0xf7, 0x9d, 0x42, 0x41, 0xdb, 0x1f, 0x7c, 0x8c, 0x05, 0x6d, 0x7f, - 0xc8, 0x91, 0x26, 0x4c, 0xa1, 0xf7, 0x21, 0xed, 0x45, 0xec, 0xd0, 0x7a, 0x24, 0xf2, 0xc8, 0x5f, - 0x08, 0x63, 0xbb, 0x55, 0x7a, 0x01, 0xa2, 0x81, 0xca, 0x40, 0xa0, 0x6a, 0xa0, 0x32, 0x04, 0x57, - 0x9a, 0xb2, 0xf2, 0x93, 0x07, 0x7c, 0x19, 0xe4, 0xa7, 0x20, 0xbc, 0x69, 0x90, 0x9f, 0x02, 0x11, - 0x1b, 0x61, 0x0a, 0x29, 0xb0, 0x12, 0x0c, 0x21, 0xa0, 0x2b, 0x63, 0x41, 0x1b, 0xfc, 0xd5, 0x51, - 0x62, 0x4e, 0xaa, 0xf9, 0x32, 0x09, 0x09, 0x72, 0x1c, 0x35, 0xe0, 0x8c, 0xaf, 0x85, 0x43, 0x17, - 0xa2, 0x1b, 0x5b, 0xfe, 0x62, 0x28, 0xdf, 0x59, 0xc9, 0x63, 0x38, 0x3b, 0xd4, 0x94, 0xa1, 0x0d, - 0xf7, 0xb8, 0xa0, 0xc6, 0x90, 0xbf, 0x14, 0x21, 0xe1, 0xd7, 0xed, 0x4d, 0x3b, 0x1b, 0xa3, 0xba, - 0x06, 0xaf, 0xee, 0xb0, 0x54, 0xf3, 0x11, 0x3d, 0xfd, 0xfd, 0x49, 0x46, 0xf0, 0xda, 0x15, 0x98, - 0x5e, 0x2e, 0x47, 0xca, 0x38, 0x33, 0x7c, 0xe8, 0x94, 0x1d, 0xae, 0x32, 0x17, 0x79, 0x8c, 0x0b, - 0xac, 0xae, 0x79, 0x21, 0x4a, 0xc4, 0x51, 0xff, 0x10, 0x32, 0xfe, 0x23, 0x18, 0x79, 0xde, 0x57, - 0x90, 0xdb, 0x6c, 0x84, 0x0b, 0xf8, 0x77, 0xc6, 0x1f, 0xff, 0x7e, 0xab, 0x82, 0x22, 0xff, 0x72, - 0xa4, 0x8c, 0x3b, 0x63, 0xb9, 0x2a, 0xaf, 0x41, 0xc6, 0x1a, 0xae, 0xd2, 0x06, 0x19, 0x2b, 0xa0, - 0x54, 0x13, 0xa6, 0xb6, 0xee, 0x02, 0xc8, 0x9d, 0xde, 0x13, 0x59, 0xc2, 0x6a, 0xbf, 0x8b, 0xd6, - 0x86, 0x70, 0xf2, 0x92, 0xda, 0xef, 0xd6, 0x7a, 0xa6, 0xa2, 0xa9, 0x46, 0xf6, 0xf3, 0x59, 0xd2, - 0xe5, 0xce, 0x91, 0x01, 0x16, 0x63, 0xab, 0x02, 0x99, 0xc1, 0x68, 0x89, 0xf4, 0x64, 0xe8, 0x52, - 0xa0, 0x0e, 0xf2, 0x6f, 0x05, 0x3e, 0x45, 0x69, 0x47, 0x11, 0xe1, 0x6e, 0xbd, 0x0d, 0xd0, 0x34, - 0x14, 0x89, 0x76, 0xbd, 0x68, 0x7d, 0x48, 0xcf, 0x3d, 0x05, 0x77, 0x5a, 0xb6, 0x8e, 0xdf, 0x30, - 0x63, 0x9a, 0x86, 0x42, 0x9b, 0xcf, 0xad, 0x77, 0x20, 0x45, 0x8d, 0x39, 0xb2, 0xe4, 0x46, 0x8d, - 0x67, 0x36, 0xd0, 0xd5, 0x13, 0xce, 0x56, 0x09, 0x16, 0xa8, 0x02, 0xf6, 0x01, 0x03, 0xba, 0x38, - 0xa4, 0xe2, 0x01, 0xe5, 0xf8, 0x94, 0xcc, 0x93, 0x61, 0x8c, 0xb7, 0x55, 0x80, 0x79, 0x5b, 0x8d, - 0xf9, 0x44, 0x6b, 0xa1, 0x0b, 0x01, 0x5a, 0x2c, 0x86, 0x4f, 0x49, 0x8a, 0x29, 0xb1, 0x58, 0x03, - 0x53, 0xec, 0x7f, 0xad, 0x19, 0x36, 0x85, 0x75, 0x05, 0x81, 0xa6, 0x30, 0x5e, 0x21, 0xf9, 0x38, - 0xde, 0x34, 0x94, 0xc3, 0x69, 0x32, 0xe8, 0xf5, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0x37, 0xa7, - 0xb1, 0xe8, 0x07, 0x36, 0x00, 0x00, + 0x15, 0x26, 0xf8, 0xa3, 0x9f, 0x47, 0x49, 0xa6, 0x57, 0x3f, 0xa6, 0x21, 0xc9, 0x96, 0xe1, 0xd8, + 0x51, 0x1c, 0x9b, 0x4a, 0x9c, 0x38, 0xd3, 0xc8, 0xce, 0x0f, 0x45, 0xd1, 0x12, 0x63, 0x9a, 0x92, + 0x41, 0x4a, 0x8e, 0xdd, 0x66, 0x10, 0x88, 0x5c, 0x51, 0x98, 0x90, 0x00, 0x03, 0x80, 0xaa, 0xd4, + 0x4b, 0xa7, 0xed, 0xa9, 0xd3, 0x73, 0xa7, 0xed, 0xa9, 0x33, 0x69, 0x2e, 0xed, 0x34, 0x93, 0x53, + 0xa7, 0xc7, 0xce, 0xf4, 0xd8, 0x63, 0x2f, 0xed, 0xe4, 0x92, 0x6b, 0x27, 0xd3, 0xce, 0xe4, 0xdc, + 0x53, 0x07, 0xd8, 0x05, 0x88, 0x05, 0x01, 0x90, 0xb4, 0xec, 0xc9, 0xa1, 0x27, 0x11, 0x6f, 0xdf, + 0xbe, 0x7d, 0xfb, 0xf0, 0xde, 0xdb, 0xf7, 0xbe, 0x85, 0xe0, 0x4e, 0x53, 0x31, 0x8f, 0xba, 0x07, + 0xb9, 0xba, 0xd6, 0x5e, 0xab, 0x6b, 0xaa, 0x29, 0x2b, 0x2a, 0xd6, 0x6f, 0x19, 0xa6, 0xa6, 0xcb, + 0x4d, 0x7c, 0x4b, 0x51, 0x4d, 0xac, 0x1f, 0xca, 0x75, 0xbc, 0x66, 0x74, 0x70, 0x7d, 0xad, 0x6e, + 0x28, 0xb9, 0x8e, 0xae, 0x99, 0x1a, 0x1a, 0xb3, 0x7e, 0x1e, 0xbf, 0xce, 0xaf, 0x34, 0x35, 0xad, + 0xd9, 0xc2, 0x6b, 0x36, 0xf5, 0xa0, 0x7b, 0xb8, 0xd6, 0xc0, 0x46, 0x5d, 0x57, 0x3a, 0xa6, 0xa6, + 0x13, 0x4e, 0xfe, 0xb2, 0x9f, 0xc3, 0x54, 0xda, 0xd8, 0x30, 0xe5, 0x76, 0x87, 0x32, 0x5c, 0xf2, + 0x33, 0xfc, 0x50, 0x97, 0x3b, 0x1d, 0xac, 0x1b, 0x64, 0x5c, 0x58, 0x80, 0xb9, 0x2d, 0x6c, 0xee, + 0xb6, 0xba, 0x4d, 0x45, 0x2d, 0xa9, 0x87, 0x9a, 0x88, 0x3f, 0xed, 0x62, 0xc3, 0x14, 0xfe, 0xc9, + 0xc1, 0xbc, 0x6f, 0xc0, 0xe8, 0x68, 0xaa, 0x81, 0x11, 0x82, 0xa4, 0x2a, 0xb7, 0x71, 0x96, 0x5b, + 0xe1, 0x56, 0x27, 0x45, 0xfb, 0x37, 0xba, 0x06, 0x33, 0xc7, 0x58, 0x6d, 0x68, 0xba, 0x74, 0x8c, + 0x75, 0x43, 0xd1, 0xd4, 0x6c, 0xdc, 0x1e, 0x9d, 0x26, 0xd4, 0x7d, 0x42, 0x44, 0x5b, 0x30, 0xd1, + 0x96, 0x55, 0xe5, 0x10, 0x1b, 0x66, 0x36, 0xb1, 0x92, 0x58, 0x4d, 0xdf, 0x7e, 0x35, 0x47, 0xb6, + 0x9a, 0x0b, 0x5c, 0x2b, 0xf7, 0x90, 0x72, 0x17, 0x55, 0x53, 0x3f, 0x15, 0xdd, 0xc9, 0xfc, 0x5d, + 0x98, 0x66, 0x86, 0x50, 0x06, 0x12, 0x9f, 0xe0, 0x53, 0xaa, 0x93, 0xf5, 0x13, 0xcd, 0x41, 0xea, + 0x58, 0x6e, 0x75, 0x31, 0xd5, 0x84, 0x3c, 0xac, 0xc7, 0xbf, 0xc7, 0x09, 0x97, 0x60, 0xc9, 0x5d, + 0xad, 0x20, 0x77, 0xe4, 0x03, 0xa5, 0xa5, 0x98, 0x0a, 0x36, 0x9c, 0xad, 0x7f, 0x04, 0xcb, 0x21, + 0xe3, 0xd4, 0x02, 0xf7, 0x60, 0xaa, 0xee, 0xa1, 0x67, 0x39, 0x7b, 0x2b, 0x59, 0x67, 0x2b, 0xbe, + 0x99, 0xa7, 0x22, 0xc3, 0x2d, 0xfc, 0x24, 0x05, 0x19, 0x3f, 0x0b, 0xba, 0x07, 0xe3, 0x06, 0xd6, + 0x8f, 0x95, 0x3a, 0xb1, 0x6b, 0xfa, 0xf6, 0x4a, 0x98, 0xb4, 0x5c, 0x95, 0xf0, 0x6d, 0xc7, 0x44, + 0x67, 0x0a, 0xda, 0x83, 0xcc, 0xb1, 0xd6, 0xea, 0xb6, 0xb1, 0x84, 0x4f, 0x3a, 0xb2, 0xea, 0xbe, + 0x80, 0xf4, 0xed, 0xd5, 0x50, 0x31, 0xfb, 0xf6, 0x84, 0xa2, 0xc3, 0xbf, 0x1d, 0x13, 0xcf, 0x1d, + 0xb3, 0x24, 0x54, 0x86, 0x69, 0xb9, 0xd5, 0x39, 0x92, 0xa5, 0x43, 0x2c, 0x9b, 0x5d, 0x1d, 0x67, + 0x13, 0xb6, 0xcc, 0x6b, 0xa1, 0x32, 0xf3, 0x16, 0xf7, 0x7d, 0xc2, 0xbc, 0x1d, 0x13, 0xa7, 0x64, + 0xcf, 0x33, 0xff, 0x2b, 0x0e, 0xc6, 0xa9, 0xee, 0xe8, 0x6d, 0x48, 0x9a, 0xa7, 0x1d, 0xb2, 0xd7, + 0x99, 0x08, 0x81, 0x94, 0x3f, 0x57, 0x3b, 0xed, 0x60, 0xd1, 0x9e, 0x22, 0x3c, 0x82, 0xa4, 0xf5, + 0x84, 0xd2, 0x30, 0xbe, 0x57, 0x79, 0x50, 0xd9, 0x79, 0x5c, 0xc9, 0xc4, 0xd0, 0x02, 0xa0, 0xc2, + 0x4e, 0xa5, 0x26, 0xee, 0x94, 0xcb, 0x45, 0x51, 0xaa, 0x16, 0xc5, 0xfd, 0x52, 0xa1, 0x98, 0xe1, + 0xd0, 0x4b, 0xb0, 0xb2, 0xbf, 0x53, 0xde, 0x7b, 0x58, 0x94, 0xf2, 0x85, 0x42, 0xb1, 0x5a, 0x2d, + 0x6d, 0x94, 0xca, 0xa5, 0xda, 0x13, 0xa9, 0xb0, 0x53, 0xa9, 0xd6, 0xc4, 0x7c, 0xa9, 0x52, 0xab, + 0x66, 0xe2, 0xfc, 0x4f, 0x39, 0x38, 0xe7, 0x33, 0x07, 0xca, 0x33, 0x1a, 0xde, 0x1a, 0xd6, 0x8c, + 0x5e, 0x4d, 0x6f, 0x06, 0x69, 0x0a, 0x30, 0xb6, 0x53, 0x29, 0x97, 0x2a, 0x96, 0x76, 0x69, 0x18, + 0xdf, 0xb9, 0x7f, 0xdf, 0x7e, 0x88, 0xf3, 0x75, 0x98, 0xf2, 0x9a, 0x0f, 0xbd, 0xcb, 0x28, 0x70, + 0x63, 0x28, 0x9b, 0x7b, 0x57, 0x9f, 0x0d, 0x58, 0x7d, 0x63, 0x8c, 0x08, 0x15, 0x66, 0x60, 0x6a, + 0x57, 0xd7, 0x0e, 0xb0, 0xe3, 0xf2, 0x79, 0x98, 0xa6, 0xcf, 0xd4, 0xc5, 0x5f, 0x83, 0x94, 0x8e, + 0xe5, 0xc6, 0x29, 0xf5, 0x46, 0x3e, 0x47, 0xd2, 0x48, 0xce, 0x49, 0x23, 0xb9, 0x0d, 0x4d, 0x6b, + 0xed, 0x5b, 0x21, 0x25, 0x12, 0x46, 0xe1, 0xdb, 0x24, 0xcc, 0x16, 0x74, 0x2c, 0x9b, 0x98, 0x98, + 0x84, 0x8a, 0x0e, 0x4c, 0x17, 0xf7, 0x60, 0xc6, 0x0a, 0x89, 0xba, 0x62, 0x9e, 0x4a, 0xba, 0xac, + 0x36, 0x31, 0xf5, 0xd6, 0x79, 0x67, 0x97, 0x05, 0x3a, 0x2a, 0x5a, 0x83, 0xe2, 0x74, 0xdd, 0xfb, + 0x88, 0x4a, 0x30, 0x4b, 0xbd, 0x9d, 0x89, 0xc2, 0x04, 0x1b, 0x85, 0x44, 0x0b, 0x4f, 0x14, 0xa2, + 0x63, 0x96, 0xa2, 0x60, 0x03, 0x3d, 0x00, 0xe8, 0xc8, 0xba, 0xdc, 0xc6, 0x26, 0xd6, 0x8d, 0x6c, + 0x92, 0x4d, 0x49, 0x01, 0xbb, 0xc9, 0xed, 0xba, 0xdc, 0x24, 0x25, 0x79, 0xa6, 0xa3, 0x2d, 0x2b, + 0x86, 0xeb, 0x3a, 0x36, 0x8d, 0x6c, 0xca, 0x96, 0xb4, 0x1a, 0x25, 0xa9, 0x4a, 0x58, 0x6d, 0x31, + 0x1b, 0x89, 0x5f, 0x6f, 0x70, 0xa2, 0x33, 0x1b, 0xed, 0xc0, 0xbc, 0xb3, 0x41, 0x4d, 0x35, 0xb1, + 0x6a, 0x4a, 0x86, 0xd6, 0xd5, 0xeb, 0x38, 0x3b, 0x66, 0x5b, 0x69, 0xd1, 0xb7, 0x45, 0xc2, 0x53, + 0xb5, 0x59, 0x44, 0x6a, 0x1a, 0x86, 0x88, 0x9e, 0x02, 0x2f, 0xd7, 0xeb, 0xd8, 0x30, 0x14, 0x62, + 0x0b, 0x49, 0xc7, 0x9f, 0x76, 0x15, 0x1d, 0xb7, 0xb1, 0x6a, 0x1a, 0xd9, 0x71, 0x56, 0x6a, 0x4d, + 0xeb, 0x68, 0x2d, 0xad, 0x79, 0x2a, 0xf6, 0x78, 0xc4, 0x8b, 0xcc, 0x74, 0xcf, 0x88, 0xc1, 0xbf, + 0x03, 0xe7, 0x7c, 0x46, 0x19, 0x25, 0x19, 0xf3, 0xeb, 0x30, 0xe5, 0xb5, 0xc4, 0x48, 0x89, 0xfc, + 0x17, 0x71, 0x98, 0x0d, 0xb0, 0x01, 0xda, 0x86, 0x09, 0x43, 0x95, 0x3b, 0xc6, 0x91, 0x66, 0x52, + 0xff, 0xbd, 0x11, 0x61, 0xb2, 0x5c, 0x95, 0xf2, 0x92, 0xc7, 0xed, 0x98, 0xe8, 0xce, 0x46, 0x1b, + 0x30, 0x46, 0xec, 0xe9, 0x4f, 0xa7, 0x41, 0x72, 0x08, 0xcd, 0x95, 0x42, 0x67, 0xf2, 0xaf, 0xc3, + 0x0c, 0xbb, 0x02, 0xba, 0x0c, 0x69, 0x67, 0x05, 0x49, 0x69, 0xd0, 0xbd, 0x82, 0x43, 0x2a, 0x35, + 0xf8, 0x57, 0x61, 0xca, 0x2b, 0x0c, 0x2d, 0xc2, 0x24, 0x75, 0x08, 0x97, 0x7d, 0x82, 0x10, 0x4a, + 0x0d, 0x37, 0xa6, 0xdf, 0x85, 0x39, 0xd6, 0xcf, 0x68, 0x28, 0x5f, 0x77, 0xf7, 0x40, 0x6c, 0x31, + 0xc3, 0xee, 0xc1, 0xd1, 0x53, 0xf8, 0x43, 0x12, 0x32, 0xfe, 0xa0, 0x41, 0xf7, 0x20, 0x75, 0xd0, + 0xd2, 0xea, 0x9f, 0xd0, 0xb9, 0x2f, 0x85, 0x45, 0x57, 0x6e, 0xc3, 0xe2, 0x22, 0xd4, 0xed, 0x98, + 0x48, 0x26, 0x59, 0xb3, 0xdb, 0x5a, 0x57, 0x35, 0xa9, 0xf5, 0xc2, 0x67, 0x3f, 0xb4, 0xb8, 0x7a, + 0xb3, 0xed, 0x49, 0x68, 0x13, 0xd2, 0xc4, 0xed, 0xa4, 0xb6, 0xd6, 0x70, 0x0e, 0x9f, 0xab, 0xa1, + 0x32, 0xf2, 0x36, 0xef, 0x43, 0xad, 0x81, 0x45, 0x90, 0xdd, 0xdf, 0xfc, 0x34, 0xa4, 0x3d, 0xba, + 0xf1, 0x5b, 0x90, 0xf6, 0x2c, 0x86, 0x2e, 0xc0, 0xf8, 0xa1, 0x21, 0xb9, 0x89, 0x76, 0x52, 0x1c, + 0x3b, 0x34, 0xec, 0xb4, 0x79, 0x19, 0xd2, 0xb6, 0x16, 0xd2, 0x61, 0x4b, 0x6e, 0x1a, 0xd9, 0xf8, + 0x4a, 0xc2, 0x7a, 0x47, 0x36, 0xe9, 0xbe, 0x45, 0xe1, 0xff, 0xcd, 0x01, 0xf4, 0x96, 0x44, 0xf7, + 0x20, 0x69, 0x6b, 0x49, 0xd2, 0xf5, 0xea, 0x10, 0x5a, 0xe6, 0x6c, 0x55, 0xed, 0x59, 0xc2, 0x6f, + 0x39, 0x48, 0xda, 0x62, 0xfc, 0xa7, 0x5a, 0xb5, 0x54, 0xd9, 0x2a, 0x17, 0xa5, 0xca, 0xce, 0x66, + 0x51, 0x7a, 0x2c, 0x96, 0x6a, 0x45, 0x31, 0xc3, 0xa1, 0x45, 0xb8, 0xe0, 0xa5, 0x8b, 0xc5, 0xfc, + 0x66, 0x51, 0x94, 0x76, 0x2a, 0xe5, 0x27, 0x99, 0x38, 0xe2, 0x61, 0xe1, 0xe1, 0x5e, 0xb9, 0x56, + 0xea, 0x1f, 0x4b, 0xa0, 0x25, 0xc8, 0x7a, 0xc6, 0xa8, 0x0c, 0x2a, 0x36, 0x69, 0x89, 0xf5, 0x8c, + 0x92, 0x9f, 0x74, 0x30, 0xb5, 0x31, 0xed, 0xbe, 0x0c, 0xdb, 0xd9, 0x1e, 0xc3, 0x34, 0x93, 0xa3, + 0xad, 0x0a, 0x90, 0x26, 0x95, 0x86, 0x74, 0x70, 0x6a, 0xda, 0x55, 0x11, 0xb7, 0x9a, 0x10, 0xa7, + 0x1d, 0xea, 0x86, 0x45, 0xb4, 0xcc, 0xda, 0x52, 0xda, 0x8a, 0x49, 0x79, 0xe2, 0x36, 0x0f, 0xd8, + 0x24, 0x9b, 0x41, 0xf8, 0x3a, 0x0e, 0x63, 0xf4, 0xdd, 0x5c, 0xf3, 0x9c, 0x12, 0x8c, 0x48, 0x87, + 0x4a, 0x44, 0x32, 0xc1, 0x11, 0x67, 0x83, 0x03, 0x6d, 0xc3, 0x8c, 0x37, 0x95, 0x9e, 0x38, 0x75, + 0xe7, 0x15, 0xf6, 0x05, 0x79, 0xe3, 0xf9, 0x84, 0x56, 0x9b, 0xd3, 0xc7, 0x5e, 0x1a, 0xda, 0x80, + 0x19, 0x5f, 0x36, 0x4e, 0x0e, 0xce, 0xc6, 0xd3, 0x75, 0x26, 0x31, 0xe5, 0x61, 0xd6, 0x49, 0xa4, + 0x2d, 0x2c, 0x99, 0x34, 0xd1, 0xd2, 0xd3, 0x22, 0xd3, 0x97, 0x80, 0x51, 0x8f, 0xd9, 0xa1, 0xf1, + 0xef, 0x03, 0xea, 0xd7, 0x75, 0xa4, 0xac, 0xd9, 0x85, 0xd9, 0x80, 0x14, 0x8f, 0x72, 0x30, 0x69, + 0xbf, 0x2a, 0x43, 0x31, 0x31, 0xad, 0x68, 0xfb, 0x35, 0xea, 0xb1, 0x58, 0xfc, 0x1d, 0x1d, 0x1f, + 0x62, 0x5d, 0xc7, 0x0d, 0x3b, 0x3c, 0x02, 0xf9, 0x5d, 0x16, 0xe1, 0x67, 0x1c, 0x4c, 0x38, 0x74, + 0xb4, 0x0e, 0x13, 0x06, 0x6e, 0x92, 0xe3, 0x87, 0xac, 0x75, 0xc9, 0x3f, 0x37, 0x57, 0xa5, 0x0c, + 0xb4, 0xf6, 0x77, 0xf8, 0xad, 0xda, 0x9f, 0x19, 0x1a, 0x69, 0xf3, 0x7f, 0xe6, 0x60, 0x76, 0x13, + 0xb7, 0xb0, 0xbf, 0x4a, 0x89, 0xca, 0xb0, 0xde, 0x83, 0x3d, 0xce, 0x1e, 0xec, 0x01, 0xa2, 0x22, + 0x0e, 0xf6, 0x33, 0x1d, 0x76, 0x0b, 0x30, 0xc7, 0xae, 0x46, 0xd2, 0xbb, 0xf0, 0x9f, 0x04, 0x5c, + 0xb2, 0x7c, 0x41, 0xd7, 0x5a, 0x2d, 0xac, 0xef, 0x76, 0x0f, 0x5a, 0x8a, 0x71, 0x34, 0xc2, 0xe6, + 0x2e, 0xc0, 0xb8, 0xaa, 0x35, 0x3c, 0xc1, 0x33, 0x66, 0x3d, 0x96, 0x1a, 0xa8, 0x08, 0xe7, 0xfd, + 0x65, 0xd6, 0x29, 0x4d, 0xc2, 0xe1, 0x45, 0x56, 0xe6, 0xd8, 0x7f, 0x82, 0xf0, 0x30, 0x61, 0x15, + 0x88, 0x9a, 0xda, 0x3a, 0xb5, 0x23, 0x66, 0x42, 0x74, 0x9f, 0x91, 0xe8, 0xaf, 0x98, 0xde, 0x70, + 0x2b, 0xa6, 0xc8, 0x1d, 0x45, 0x15, 0x4f, 0x1f, 0xf7, 0x45, 0xfc, 0x98, 0x2d, 0xfa, 0xed, 0x21, + 0x45, 0x0f, 0xcc, 0x04, 0x67, 0x79, 0x8b, 0xcf, 0x21, 0x7c, 0xff, 0xc6, 0xc1, 0xe5, 0xd0, 0x2d, + 0xd0, 0x23, 0xbf, 0x01, 0xe7, 0x3a, 0x64, 0xc0, 0x35, 0x02, 0x89, 0xb2, 0xbb, 0x03, 0x8d, 0x40, + 0x1b, 0x6f, 0x4a, 0x65, 0xcc, 0x30, 0xd3, 0x61, 0x88, 0x7c, 0x1e, 0x66, 0x03, 0xd8, 0x46, 0xda, + 0xcc, 0x37, 0x1c, 0xac, 0xf4, 0x54, 0xd9, 0x53, 0x3b, 0xcf, 0xcf, 0x7d, 0x6b, 0x3d, 0xdf, 0x22, + 0x29, 0xff, 0x4e, 0xff, 0xde, 0x83, 0x17, 0x7c, 0x51, 0x11, 0x7c, 0x15, 0xae, 0x44, 0x2c, 0x4d, + 0xc3, 0xf9, 0xeb, 0x24, 0x5c, 0xd9, 0x97, 0x5b, 0x4a, 0xc3, 0x2d, 0xe4, 0x02, 0x20, 0x8a, 0x68, + 0x93, 0xd4, 0xfb, 0x22, 0x80, 0x64, 0xad, 0x7b, 0x6e, 0xd4, 0x0e, 0x92, 0x3f, 0xc4, 0x71, 0xf8, + 0x1c, 0x9b, 0xb0, 0x27, 0x01, 0x4d, 0xd8, 0xdb, 0xc3, 0xeb, 0x1a, 0xd5, 0x92, 0xed, 0xf9, 0x13, + 0xcc, 0x5b, 0xc3, 0xcb, 0x8d, 0xf0, 0x82, 0x33, 0x47, 0xf1, 0x77, 0xd9, 0x35, 0xfd, 0x35, 0x09, + 0x42, 0xd4, 0xee, 0x69, 0x0e, 0x11, 0x61, 0xb2, 0xae, 0xa9, 0x87, 0x8a, 0xde, 0xc6, 0x0d, 0x5a, + 0xfd, 0xbf, 0x39, 0x8c, 0xf1, 0x68, 0x02, 0x29, 0x38, 0x73, 0xc5, 0x9e, 0x18, 0x94, 0x85, 0xf1, + 0x36, 0x36, 0x0c, 0xb9, 0xe9, 0xa8, 0xe5, 0x3c, 0xf2, 0x5f, 0x24, 0x60, 0xd2, 0x9d, 0x82, 0xd4, + 0x3e, 0x0f, 0x26, 0xe9, 0x6b, 0xeb, 0x59, 0x14, 0x78, 0x76, 0x67, 0x8e, 0x3f, 0x83, 0x33, 0x37, + 0x18, 0x67, 0x26, 0xe1, 0xb0, 0xf9, 0x4c, 0x6a, 0x47, 0xf8, 0xf5, 0x77, 0xee, 0x80, 0xc2, 0x0f, + 0x00, 0x95, 0x15, 0x83, 0x76, 0x51, 0x6e, 0x5a, 0xb2, 0x9a, 0x26, 0xf9, 0x44, 0xc2, 0xaa, 0xa9, + 0x2b, 0xb4, 0x5c, 0x4f, 0x89, 0xd0, 0x96, 0x4f, 0x8a, 0x84, 0x62, 0x95, 0xf4, 0x86, 0x29, 0xeb, + 0xa6, 0xa2, 0x36, 0x25, 0x53, 0xfb, 0x04, 0xbb, 0x38, 0xb1, 0x43, 0xad, 0x59, 0x44, 0xe1, 0x33, + 0x0e, 0x66, 0x19, 0xf1, 0xd4, 0x27, 0xef, 0xc2, 0x78, 0x4f, 0x36, 0x53, 0xc6, 0x07, 0x70, 0xe7, + 0x88, 0xd9, 0x9c, 0x19, 0x68, 0x19, 0x40, 0xc5, 0x27, 0x26, 0xb3, 0xee, 0xa4, 0x45, 0xb1, 0xd7, + 0xe4, 0xd7, 0x20, 0x45, 0xcc, 0x30, 0x6c, 0xbf, 0xfc, 0x45, 0x1c, 0xd0, 0x16, 0x36, 0xdd, 0x36, + 0x88, 0xda, 0x20, 0xc4, 0x97, 0xb8, 0x67, 0xf0, 0xa5, 0x0f, 0x18, 0x5f, 0x22, 0xde, 0x78, 0xc3, + 0x03, 0x98, 0xfb, 0x96, 0x8e, 0xcc, 0x84, 0x21, 0xad, 0x07, 0xa9, 0xe7, 0x86, 0x6b, 0x3d, 0xce, + 0xe8, 0x32, 0x9b, 0x30, 0xcb, 0xe8, 0x4c, 0xdf, 0xe9, 0x2d, 0x40, 0xf2, 0xb1, 0xac, 0xb4, 0x64, + 0x4b, 0x2f, 0xa7, 0xb3, 0xa3, 0x9d, 0xde, 0x79, 0x77, 0xc4, 0x99, 0x26, 0x08, 0xde, 0x82, 0x81, + 0xca, 0xf3, 0x03, 0xf8, 0x2d, 0xef, 0x41, 0xdb, 0xc7, 0x43, 0xd7, 0xdd, 0x0a, 0x04, 0xf1, 0xaf, + 0xf6, 0x17, 0x09, 0x14, 0x83, 0x0e, 0xc5, 0xf3, 0xff, 0x9e, 0x84, 0xc5, 0x08, 0x6e, 0x74, 0x17, + 0x12, 0x7a, 0xa7, 0x4e, 0x9d, 0xe9, 0xe5, 0x21, 0xe4, 0xe7, 0xc4, 0xdd, 0xc2, 0x76, 0x4c, 0xb4, + 0x66, 0xa1, 0xc7, 0x7e, 0x08, 0x9e, 0x20, 0x29, 0xaf, 0x0d, 0x23, 0x26, 0x12, 0x8d, 0xff, 0x3c, + 0x0e, 0x09, 0x71, 0xb7, 0x80, 0xde, 0x67, 0x60, 0xe6, 0x9b, 0x43, 0xaa, 0xe7, 0x05, 0x9a, 0xbf, + 0xe2, 0x82, 0x70, 0xee, 0x2c, 0xcc, 0x15, 0xc4, 0x62, 0xbe, 0x56, 0x94, 0x36, 0x8b, 0xe5, 0x62, + 0xad, 0x28, 0x11, 0x1c, 0x3e, 0xc3, 0xa1, 0x25, 0xc8, 0xee, 0xee, 0x6d, 0x94, 0x4b, 0xd5, 0x6d, + 0x69, 0xaf, 0xe2, 0xfc, 0xa2, 0xa3, 0x71, 0x94, 0x81, 0xa9, 0x72, 0xa9, 0x5a, 0xa3, 0x84, 0x6a, + 0x26, 0x61, 0x51, 0xb6, 0x8a, 0x35, 0xa9, 0x90, 0xdf, 0xcd, 0x17, 0x4a, 0xb5, 0x27, 0x99, 0x24, + 0xe2, 0x61, 0x81, 0x95, 0x5d, 0xad, 0xe4, 0x77, 0xab, 0xdb, 0x3b, 0xb5, 0x4c, 0x0a, 0x21, 0x98, + 0xb1, 0xe7, 0x3b, 0xa4, 0x6a, 0x66, 0xcc, 0x92, 0x50, 0x28, 0xef, 0x54, 0x5c, 0x1d, 0xc6, 0xd1, + 0x1c, 0x64, 0x9c, 0x95, 0xc5, 0x62, 0x7e, 0xd3, 0x86, 0x47, 0x26, 0xd0, 0x79, 0x98, 0x2e, 0x7e, + 0xb8, 0x9b, 0xaf, 0x6c, 0x3a, 0x8c, 0x93, 0xbc, 0xea, 0x43, 0xe5, 0x4b, 0x8c, 0xb9, 0xee, 0x8c, + 0xfa, 0x1a, 0x86, 0x06, 0xe8, 0xbf, 0x89, 0xc3, 0x3c, 0x41, 0xf3, 0x1c, 0xec, 0xd0, 0xc9, 0x2f, + 0xab, 0x90, 0x21, 0xf8, 0x83, 0xe4, 0xaf, 0x00, 0x67, 0x08, 0x7d, 0xdf, 0xa9, 0x03, 0x1d, 0xe4, + 0x3d, 0xee, 0x41, 0xde, 0x4b, 0xfe, 0xaa, 0xf8, 0x06, 0x8b, 0x51, 0xfb, 0x56, 0x8b, 0x6a, 0xb4, + 0x1e, 0x06, 0x94, 0x6d, 0xb7, 0xa2, 0xa5, 0x45, 0x1d, 0x69, 0x67, 0xe9, 0xaa, 0xce, 0x98, 0x99, + 0xee, 0xc3, 0x82, 0x5f, 0x5f, 0x9a, 0x24, 0x6e, 0xf6, 0x21, 0xc9, 0x6e, 0xaa, 0x74, 0x79, 0x5d, + 0x0e, 0xe1, 0x1f, 0x1c, 0x4c, 0x38, 0x64, 0xeb, 0xb8, 0x31, 0x94, 0x1f, 0x61, 0x06, 0xb9, 0x9a, + 0xb4, 0x28, 0x2e, 0x10, 0xe6, 0xc5, 0x80, 0xe3, 0x7e, 0x0c, 0x38, 0xf0, 0x3d, 0x27, 0x02, 0xdf, + 0xf3, 0x7b, 0x30, 0x5d, 0xb7, 0xd4, 0x57, 0x34, 0x55, 0x32, 0x95, 0xb6, 0x03, 0x4c, 0xf5, 0xdf, + 0xd9, 0xd4, 0x9c, 0xbb, 0x61, 0x71, 0xca, 0x99, 0x60, 0x91, 0xd0, 0x0a, 0x4c, 0xd9, 0x77, 0x38, + 0x92, 0xa9, 0x49, 0x5d, 0x03, 0x67, 0x53, 0x76, 0x9b, 0x0e, 0x36, 0xad, 0xa6, 0xed, 0x19, 0x58, + 0xf8, 0x0b, 0x07, 0xf3, 0x04, 0x7d, 0xf0, 0xbb, 0xe3, 0x20, 0x2c, 0xdb, 0xeb, 0x71, 0xbe, 0x13, + 0x2c, 0x50, 0xe0, 0x8b, 0x6a, 0xbe, 0xb2, 0xb0, 0xe0, 0x5f, 0x8f, 0x76, 0x5c, 0xbf, 0xe7, 0x60, + 0xce, 0x2a, 0x1f, 0x9c, 0x81, 0xe7, 0x5d, 0xcd, 0x8c, 0xf0, 0x26, 0x7d, 0xc6, 0x4c, 0xfa, 0x8d, + 0x29, 0xfc, 0x91, 0x83, 0x79, 0x9f, 0xae, 0xd4, 0x53, 0xdf, 0xf1, 0x97, 0x46, 0x57, 0xbd, 0xa5, + 0x51, 0x1f, 0xff, 0x88, 0xc5, 0xd1, 0x1d, 0xa7, 0x38, 0x1a, 0x2d, 0x20, 0x7e, 0x1e, 0x87, 0xe5, + 0x5e, 0x6a, 0xb4, 0x2f, 0x49, 0x1b, 0x23, 0xf4, 0xf6, 0x67, 0xbb, 0x26, 0x7c, 0xe4, 0x4f, 0x75, + 0xb7, 0xfb, 0xb3, 0x75, 0x80, 0x4a, 0x2f, 0xca, 0x01, 0x7f, 0xec, 0x85, 0xe9, 0xd8, 0x75, 0xe9, + 0x2b, 0x1c, 0x12, 0xef, 0x7e, 0x0b, 0x2e, 0xd8, 0x88, 0x87, 0x7b, 0xd5, 0xef, 0xdc, 0xe6, 0x91, + 0x2c, 0x32, 0x21, 0xce, 0x5b, 0xc3, 0xee, 0x8d, 0x34, 0xc5, 0x78, 0x1b, 0xc2, 0xb7, 0x49, 0x58, + 0xa8, 0x68, 0x0d, 0x5c, 0x35, 0xe5, 0xe6, 0x28, 0xe8, 0xe7, 0xf7, 0xfb, 0xc1, 0xa4, 0x38, 0x6b, + 0xcf, 0x60, 0xa9, 0xc3, 0x60, 0x48, 0x28, 0x07, 0xb3, 0x86, 0x29, 0x37, 0xed, 0x08, 0x92, 0xf5, + 0x26, 0x36, 0xa5, 0x8e, 0x6c, 0x1e, 0xd1, 0xf0, 0x38, 0x4f, 0x87, 0x6a, 0xf6, 0xc8, 0xae, 0x6c, + 0x1e, 0x05, 0x83, 0x92, 0xc9, 0x91, 0x41, 0xc9, 0x0f, 0xfc, 0xb8, 0xc0, 0xab, 0x03, 0xf6, 0x12, + 0x71, 0x0e, 0x7e, 0x18, 0x02, 0x38, 0xbe, 0x3e, 0x40, 0xe4, 0x60, 0xa0, 0xf1, 0xec, 0x00, 0xdb, + 0x77, 0x8c, 0x55, 0x5e, 0x84, 0x0b, 0x7d, 0x9b, 0xa7, 0x59, 0xb7, 0x09, 0x59, 0x6b, 0x68, 0x4f, + 0x35, 0x46, 0x74, 0xc7, 0x10, 0x8f, 0x89, 0x87, 0x78, 0x8c, 0xb0, 0x08, 0x17, 0x03, 0x16, 0xa2, + 0x5a, 0xfc, 0x29, 0x45, 0xd4, 0x18, 0x1d, 0x36, 0xff, 0x28, 0x2c, 0x2a, 0xde, 0xf4, 0xbe, 0xf6, + 0x40, 0x84, 0xf9, 0x45, 0xc4, 0xc5, 0x65, 0x48, 0x7b, 0xf9, 0xe8, 0xc9, 0x61, 0x0e, 0x08, 0x9c, + 0xd4, 0x99, 0xd0, 0xfc, 0x31, 0x1f, 0x9a, 0x5f, 0xee, 0x05, 0xd5, 0x38, 0x5b, 0x0d, 0x86, 0x9a, + 0x22, 0x22, 0xac, 0x9e, 0xf6, 0x85, 0xd5, 0x04, 0x7b, 0x45, 0x10, 0x2a, 0xf4, 0xff, 0x20, 0xb0, + 0xa8, 0x53, 0x07, 0x62, 0xf7, 0xc2, 0x53, 0xe0, 0x89, 0xc7, 0x8f, 0x8e, 0xa6, 0xfb, 0xdc, 0x28, + 0xee, 0x77, 0x23, 0x61, 0x19, 0x16, 0x03, 0x65, 0xd3, 0xa5, 0x9f, 0x10, 0xbd, 0xb6, 0x30, 0x05, + 0x63, 0xaa, 0xa6, 0x6c, 0x1a, 0xc3, 0xae, 0x4c, 0x07, 0xbd, 0x2b, 0x13, 0x92, 0xbd, 0xf2, 0x16, + 0xd9, 0x95, 0x5f, 0x34, 0x3d, 0x3b, 0x5f, 0x81, 0x54, 0xd7, 0xc6, 0x15, 0x49, 0xf1, 0x33, 0xcb, + 0xba, 0xf4, 0x9e, 0x35, 0x24, 0x12, 0x0e, 0xe1, 0x4b, 0x0e, 0xd2, 0x1e, 0x32, 0x5a, 0x82, 0x49, + 0x17, 0x66, 0x70, 0xea, 0x74, 0x97, 0x60, 0xbd, 0x03, 0x53, 0x33, 0xe5, 0x16, 0xbd, 0xaa, 0x26, + 0x0f, 0x56, 0x6b, 0xd5, 0x35, 0x30, 0x29, 0xe3, 0x12, 0xa2, 0xfd, 0x1b, 0xdd, 0x84, 0x64, 0x57, + 0x55, 0x4c, 0x3b, 0xf6, 0x66, 0xfc, 0x41, 0x65, 0x2f, 0x95, 0xdb, 0x53, 0x15, 0x53, 0xb4, 0xb9, + 0x84, 0x1b, 0x90, 0xb4, 0x9e, 0xd8, 0xa6, 0x79, 0x12, 0x52, 0x1b, 0x4f, 0x6a, 0xc5, 0x6a, 0x86, + 0x43, 0x00, 0x63, 0xa5, 0xca, 0xce, 0x66, 0xb1, 0x9a, 0x89, 0x0b, 0x4b, 0xee, 0xd6, 0x83, 0xd0, + 0x8e, 0x8f, 0xc9, 0x2b, 0x09, 0xc3, 0x39, 0xf2, 0x81, 0x38, 0xc7, 0x32, 0x73, 0x38, 0x0d, 0x40, + 0x38, 0xbe, 0x4c, 0xc0, 0x7c, 0x20, 0x1f, 0xba, 0xe3, 0xc5, 0x36, 0xae, 0x44, 0xca, 0xf4, 0xa2, + 0x1a, 0x8f, 0x82, 0x51, 0x8d, 0x1b, 0xd1, 0x02, 0x22, 0xf1, 0x8c, 0xdf, 0x70, 0x04, 0xcf, 0x58, + 0x67, 0x1a, 0xf4, 0xeb, 0x03, 0x55, 0xf2, 0x76, 0xe4, 0xfb, 0x21, 0x40, 0x46, 0xb5, 0x96, 0xdf, + 0x2a, 0x4a, 0x7b, 0x15, 0xf2, 0xd7, 0x05, 0x32, 0xe6, 0x20, 0xb3, 0x55, 0x74, 0x90, 0x0a, 0xa9, + 0x5a, 0xcb, 0xd7, 0xaa, 0x99, 0x78, 0x3f, 0x88, 0x90, 0xe0, 0x8f, 0x7c, 0x20, 0x42, 0x81, 0xd1, + 0x71, 0x6d, 0xf8, 0x5d, 0x0f, 0x0d, 0x1f, 0xcc, 0x01, 0xa2, 0x3e, 0xe1, 0xfd, 0xa6, 0xf7, 0x33, + 0x0e, 0x66, 0x19, 0x32, 0x75, 0x11, 0xcf, 0x1d, 0x1a, 0xc7, 0xdc, 0xa1, 0xad, 0xc1, 0x9c, 0xd5, + 0x01, 0x91, 0x28, 0x34, 0xa4, 0x0e, 0xd6, 0x25, 0x6b, 0x84, 0xc6, 0xc2, 0xf9, 0xb6, 0x7c, 0x42, + 0x31, 0xd7, 0x5d, 0xac, 0x5b, 0x82, 0x9f, 0x03, 0xca, 0x28, 0xfc, 0x92, 0x23, 0x45, 0xc3, 0xc8, + 0xdd, 0xc2, 0xa0, 0x0c, 0x12, 0xd0, 0x4e, 0x24, 0x86, 0x6f, 0x27, 0x84, 0x3c, 0xa9, 0x14, 0xce, + 0x50, 0xb9, 0xdf, 0xfe, 0x2f, 0x07, 0x13, 0xa5, 0x06, 0x56, 0x4d, 0x2b, 0x74, 0x2a, 0x30, 0xcd, + 0x7c, 0xf3, 0x8c, 0x96, 0x42, 0x3e, 0x85, 0xb6, 0xb7, 0xce, 0x2f, 0x47, 0x7e, 0x28, 0x2d, 0xc4, + 0xd0, 0xa1, 0xe7, 0x7b, 0x6d, 0x06, 0x45, 0x7e, 0xa9, 0x6f, 0x66, 0x40, 0x16, 0xe1, 0xaf, 0x0d, + 0xe0, 0x72, 0xd7, 0x79, 0x0b, 0x52, 0xf6, 0xa7, 0xa2, 0x68, 0xce, 0xfd, 0x24, 0xd5, 0xf3, 0x25, + 0x29, 0x3f, 0xef, 0xa3, 0x3a, 0xf3, 0x6e, 0xff, 0x6b, 0x02, 0xa0, 0xd7, 0x00, 0xa1, 0x07, 0x30, + 0xe5, 0xfd, 0x5a, 0x0d, 0x2d, 0x46, 0x7c, 0x2b, 0xc9, 0x2f, 0x05, 0x0f, 0xba, 0x3a, 0x3d, 0x80, + 0x29, 0xef, 0xb7, 0x11, 0x3d, 0x61, 0x01, 0xdf, 0x67, 0xf4, 0x84, 0x05, 0x7e, 0x4e, 0x11, 0x43, + 0x2d, 0xb8, 0x10, 0x72, 0x3b, 0x8e, 0xae, 0x0f, 0xf7, 0x0d, 0x01, 0xff, 0xf2, 0x90, 0xd7, 0xec, + 0x42, 0x0c, 0xe9, 0x70, 0x31, 0xf4, 0x52, 0x18, 0xad, 0x0e, 0x7b, 0x65, 0xcd, 0xbf, 0x32, 0x04, + 0xa7, 0xbb, 0x66, 0x17, 0xf8, 0xf0, 0x9b, 0x28, 0xf4, 0xca, 0xd0, 0x57, 0xa4, 0xfc, 0x8d, 0xe1, + 0x2f, 0xb6, 0x84, 0x18, 0xda, 0x86, 0xb4, 0xe7, 0x9a, 0x06, 0xf1, 0x81, 0x77, 0x37, 0x44, 0xf0, + 0x62, 0xc4, 0xbd, 0x0e, 0x91, 0xe4, 0xb9, 0x4a, 0xe8, 0x49, 0xea, 0xbf, 0x13, 0xe9, 0x49, 0x0a, + 0xb8, 0x7b, 0xf0, 0x9b, 0xdf, 0x77, 0x84, 0x06, 0x99, 0x3f, 0xf8, 0x0c, 0x0e, 0x32, 0x7f, 0xc8, + 0x79, 0x2c, 0xc4, 0xd0, 0x23, 0x98, 0x61, 0xe1, 0x46, 0xb4, 0x1c, 0x09, 0x9b, 0xf2, 0x97, 0xc2, + 0x86, 0xbd, 0x22, 0x59, 0x74, 0xab, 0x27, 0x32, 0x10, 0x65, 0xeb, 0x89, 0x0c, 0x01, 0xc5, 0x62, + 0x56, 0x7e, 0x62, 0x90, 0xa3, 0x5e, 0x7e, 0x0a, 0x02, 0xcb, 0x7a, 0xf9, 0x29, 0x10, 0x6e, 0x12, + 0x62, 0x48, 0x81, 0x85, 0x60, 0xfc, 0x03, 0x5d, 0x1b, 0x0a, 0x97, 0xe1, 0xaf, 0x0f, 0x62, 0x73, + 0x53, 0xcd, 0x57, 0x29, 0x48, 0xda, 0xc7, 0x51, 0x0d, 0xce, 0xf9, 0xfa, 0x4f, 0x74, 0x29, 0xba, + 0x2b, 0xe7, 0x2f, 0x87, 0x8e, 0xbb, 0x3b, 0x79, 0x0a, 0xe7, 0xfb, 0x3a, 0x4a, 0xb4, 0xe2, 0x9d, + 0x17, 0xd4, 0xd5, 0xf2, 0x57, 0x22, 0x38, 0xfc, 0xb2, 0xd9, 0xb4, 0xb3, 0x32, 0xa8, 0xe5, 0x61, + 0x65, 0x87, 0xa5, 0x9a, 0x8f, 0xc9, 0xe9, 0xef, 0x4f, 0x32, 0x02, 0xab, 0x57, 0x60, 0x7a, 0xb9, + 0x1a, 0xc9, 0xe3, 0xae, 0xf0, 0x91, 0x5b, 0x76, 0x78, 0x6a, 0x74, 0xc4, 0x28, 0x17, 0xd8, 0x1a, + 0xf0, 0x42, 0x14, 0x8b, 0x2b, 0xfe, 0x31, 0x64, 0xfc, 0x47, 0x30, 0x62, 0xde, 0x57, 0x90, 0xdb, + 0xac, 0x84, 0x33, 0xf8, 0x2d, 0xe3, 0x8f, 0x7f, 0xbf, 0x56, 0x41, 0x91, 0x7f, 0x35, 0x92, 0xc7, + 0x9b, 0xb1, 0x3c, 0x95, 0x57, 0x2f, 0x63, 0xf5, 0x57, 0x69, 0xbd, 0x8c, 0x15, 0x50, 0xaa, 0x09, + 0xb1, 0xf5, 0x7b, 0x00, 0xa4, 0x76, 0xc6, 0x6a, 0xb7, 0x8d, 0x96, 0xfa, 0x40, 0xfe, 0xa2, 0xda, + 0x6d, 0xef, 0x74, 0x4c, 0x45, 0x53, 0x8d, 0xec, 0xe7, 0x13, 0x76, 0x8b, 0x3e, 0x69, 0x4f, 0xb0, + 0x06, 0xd6, 0xcb, 0x90, 0xe9, 0xcd, 0x96, 0xec, 0x86, 0x12, 0x5d, 0x09, 0x94, 0x61, 0xff, 0x73, + 0x87, 0x4f, 0xd0, 0x8c, 0x2b, 0xc8, 0x1e, 0x5d, 0x7f, 0x07, 0xa0, 0x6e, 0x28, 0x12, 0x69, 0xd9, + 0xd1, 0x72, 0x9f, 0x9c, 0xfb, 0x0a, 0x6e, 0x35, 0x1c, 0x19, 0xbf, 0xa3, 0xca, 0xd4, 0x0d, 0x85, + 0x74, 0xce, 0xeb, 0xef, 0x41, 0x9a, 0xb6, 0x01, 0x16, 0xdf, 0xa0, 0xf9, 0x54, 0x07, 0xb2, 0x7b, + 0x7b, 0x64, 0xbd, 0xe8, 0xf4, 0x11, 0xf4, 0x33, 0x12, 0x74, 0xb9, 0x4f, 0xc4, 0x43, 0x32, 0xe2, + 0x13, 0x42, 0x7a, 0x07, 0x3a, 0xb6, 0xbe, 0x01, 0x53, 0x8e, 0x18, 0xf3, 0x48, 0x6b, 0xa0, 0x4b, + 0x01, 0x52, 0xac, 0x01, 0x9f, 0x90, 0x34, 0x15, 0x62, 0x0d, 0xf5, 0x54, 0x71, 0xfe, 0x27, 0xab, + 0x5f, 0x15, 0x5a, 0xdb, 0x07, 0xaa, 0x42, 0xc7, 0x36, 0x52, 0x4f, 0x13, 0x75, 0x43, 0x39, 0x18, + 0xb3, 0x27, 0xbd, 0xf1, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xfa, 0x13, 0x27, 0x52, 0x40, 0x38, + 0x00, 0x00, } diff --git a/spec.md b/spec.md index 8108a799..aa078f08 100644 --- a/spec.md +++ b/spec.md @@ -634,10 +634,22 @@ message PluginCapability { Type type = 1; } + message AlphaFeature { + enum Type { + UNKNOWN = 0; + } + + Type type = 1; // REQUIRED + } + oneof type { // Service that the plugin supports. Service service = 1; VolumeExpansion volume_expansion = 2; + + // AlphaFeature indicates that an experimental feature is offered by + // the plugin. + AlphaFeature alpha_feature = 3; } } ``` @@ -1553,9 +1565,21 @@ message ControllerServiceCapability { Type type = 1; } + message AlphaFeature { + enum Type { + UNKNOWN = 0; + } + + Type type = 1; // REQUIRED + } + oneof type { // RPC that the controller supports. RPC rpc = 1; + + // AlphaFeature indicates that an experimental feature is offered by + // the controller service. + AlphaFeature alpha_feature = 2; } } ``` @@ -2259,9 +2283,21 @@ message NodeServiceCapability { Type type = 1; } + message AlphaFeature { + enum Type { + UNKNOWN = 0; + } + + Type type = 1; // REQUIRED + } + oneof type { // RPC that the controller supports. RPC rpc = 1; + + // AlphaFeature indicates that an experimental feature is offered by + // the node service. + AlphaFeature alpha_feature = 2; } } ``` From 105831102506ec4999e8386c08a3421bed0b6d9f Mon Sep 17 00:00:00 2001 From: James DeFelice Date: Thu, 4 Apr 2019 15:44:14 +0000 Subject: [PATCH 4/7] spec: experimental RPC: tape rotation. Mock up of an experimental API to support tape rotation for plugin controllers. Note the RPC as well as each of the newly added request and response types has been labeled with an `alpha_xxx` marker option. --- csi.proto | 42 ++ lib/go/csi/csi.pb.go | 957 +++++++++++++++++++++++++++++-------------- spec.md | 52 +++ 3 files changed, 745 insertions(+), 306 deletions(-) diff --git a/csi.proto b/csi.proto index 04775a59..c81f6425 100644 --- a/csi.proto +++ b/csi.proto @@ -95,6 +95,11 @@ service Controller { rpc ControllerExpandVolume (ControllerExpandVolumeRequest) returns (ControllerExpandVolumeResponse) {} + + rpc ControllerTapeRotation (ControllerTapeRotationRequest) + returns (ControllerTapeRotationResponse) { + option (alpha_method) = true; + } } service Node { @@ -937,6 +942,10 @@ message ControllerServiceCapability { message AlphaFeature { enum Type { UNKNOWN = 0; + + // Indicates that the controller service supports the + // ControllerTapeRotation API. + TAPE_ROTATION = 1; } Type type = 1; // REQUIRED @@ -1105,6 +1114,39 @@ message ControllerExpandVolumeResponse { // is REQUIRED. bool node_expansion_required = 2; } +message ControllerTapeRotationRequest { + option (alpha_message) = true; + + message UpdateStrategy { + // https://en.wikipedia.org/wiki/Backup_rotation_scheme#Schemes + enum Scheme { + UNKNOWN = 0; + FIFO = 1; + GFS = 2;// Grandfather-father-son + SIX_TAPE = 3; // 5 weekday differentials; 1 weekday full backup + TOWER_OF_HANOI = 4; // pretty complicated + } + + Scheme scheme = 1; // REQURIED + } + + // action is OPTIONAL; failure to specify an action is interpreted as + // a read-only request, and SHOULD generate a non-error response. + oneof action { + UpdateStrategy update_strategy = 1; + bool rotate_now = 2; + } +} + +// All response fields are OPTIONAL. +message ControllerTapeRotationResponse { + option (alpha_message) = true; + + .google.protobuf.Timestamp last_rotation_success = 1; + .google.protobuf.Timestamp last_rotation_failure = 2; + int32 successive_failures = 3; // failures since last success + .google.protobuf.Timestamp next_rotation_time = 4; +} message NodeStageVolumeRequest { // The ID of the volume to publish. This field is REQUIRED. string volume_id = 1; diff --git a/lib/go/csi/csi.pb.go b/lib/go/csi/csi.pb.go index e2925321..cb126bec 100644 --- a/lib/go/csi/csi.pb.go +++ b/lib/go/csi/csi.pb.go @@ -63,7 +63,7 @@ func (x PluginCapability_Service_Type) String() string { return proto.EnumName(PluginCapability_Service_Type_name, int32(x)) } func (PluginCapability_Service_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 0, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{4, 0, 0} } type PluginCapability_VolumeExpansion_Type int32 @@ -124,7 +124,7 @@ func (x PluginCapability_VolumeExpansion_Type) String() string { return proto.EnumName(PluginCapability_VolumeExpansion_Type_name, int32(x)) } func (PluginCapability_VolumeExpansion_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 1, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{4, 1, 0} } type PluginCapability_AlphaFeature_Type int32 @@ -144,7 +144,7 @@ func (x PluginCapability_AlphaFeature_Type) String() string { return proto.EnumName(PluginCapability_AlphaFeature_Type_name, int32(x)) } func (PluginCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 2, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{4, 2, 0} } type VolumeCapability_AccessMode_Mode int32 @@ -188,7 +188,7 @@ func (x VolumeCapability_AccessMode_Mode) String() string { return proto.EnumName(VolumeCapability_AccessMode_Mode_name, int32(x)) } func (VolumeCapability_AccessMode_Mode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{10, 2, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{10, 2, 0} } type ControllerServiceCapability_RPC_Type int32 @@ -246,27 +246,65 @@ func (x ControllerServiceCapability_RPC_Type) String() string { return proto.EnumName(ControllerServiceCapability_RPC_Type_name, int32(x)) } func (ControllerServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{29, 0, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{29, 0, 0} } type ControllerServiceCapability_AlphaFeature_Type int32 const ( ControllerServiceCapability_AlphaFeature_UNKNOWN ControllerServiceCapability_AlphaFeature_Type = 0 + // Indicates that the controller service supports the + // ControllerTapeRotation API. + ControllerServiceCapability_AlphaFeature_TAPE_ROTATION ControllerServiceCapability_AlphaFeature_Type = 1 ) var ControllerServiceCapability_AlphaFeature_Type_name = map[int32]string{ 0: "UNKNOWN", + 1: "TAPE_ROTATION", } var ControllerServiceCapability_AlphaFeature_Type_value = map[string]int32{ - "UNKNOWN": 0, + "UNKNOWN": 0, + "TAPE_ROTATION": 1, } func (x ControllerServiceCapability_AlphaFeature_Type) String() string { return proto.EnumName(ControllerServiceCapability_AlphaFeature_Type_name, int32(x)) } func (ControllerServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{29, 1, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{29, 1, 0} +} + +// https://en.wikipedia.org/wiki/Backup_rotation_scheme#Schemes +type ControllerTapeRotationRequest_UpdateStrategy_Scheme int32 + +const ( + ControllerTapeRotationRequest_UpdateStrategy_UNKNOWN ControllerTapeRotationRequest_UpdateStrategy_Scheme = 0 + ControllerTapeRotationRequest_UpdateStrategy_FIFO ControllerTapeRotationRequest_UpdateStrategy_Scheme = 1 + ControllerTapeRotationRequest_UpdateStrategy_GFS ControllerTapeRotationRequest_UpdateStrategy_Scheme = 2 + ControllerTapeRotationRequest_UpdateStrategy_SIX_TAPE ControllerTapeRotationRequest_UpdateStrategy_Scheme = 3 + ControllerTapeRotationRequest_UpdateStrategy_TOWER_OF_HANOI ControllerTapeRotationRequest_UpdateStrategy_Scheme = 4 +) + +var ControllerTapeRotationRequest_UpdateStrategy_Scheme_name = map[int32]string{ + 0: "UNKNOWN", + 1: "FIFO", + 2: "GFS", + 3: "SIX_TAPE", + 4: "TOWER_OF_HANOI", +} +var ControllerTapeRotationRequest_UpdateStrategy_Scheme_value = map[string]int32{ + "UNKNOWN": 0, + "FIFO": 1, + "GFS": 2, + "SIX_TAPE": 3, + "TOWER_OF_HANOI": 4, +} + +func (x ControllerTapeRotationRequest_UpdateStrategy_Scheme) String() string { + return proto.EnumName(ControllerTapeRotationRequest_UpdateStrategy_Scheme_name, int32(x)) +} +func (ControllerTapeRotationRequest_UpdateStrategy_Scheme) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_csi_58ea024178a9e64e, []int{39, 0, 0} } type VolumeUsage_Unit int32 @@ -292,7 +330,7 @@ func (x VolumeUsage_Unit) String() string { return proto.EnumName(VolumeUsage_Unit_name, int32(x)) } func (VolumeUsage_Unit) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{49, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{51, 0} } type NodeServiceCapability_RPC_Type int32 @@ -325,7 +363,7 @@ func (x NodeServiceCapability_RPC_Type) String() string { return proto.EnumName(NodeServiceCapability_RPC_Type_name, int32(x)) } func (NodeServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{52, 0, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{54, 0, 0} } type NodeServiceCapability_AlphaFeature_Type int32 @@ -345,7 +383,7 @@ func (x NodeServiceCapability_AlphaFeature_Type) String() string { return proto.EnumName(NodeServiceCapability_AlphaFeature_Type_name, int32(x)) } func (NodeServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{52, 1, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{54, 1, 0} } type GetPluginInfoRequest struct { @@ -358,7 +396,7 @@ func (m *GetPluginInfoRequest) Reset() { *m = GetPluginInfoRequest{} } func (m *GetPluginInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoRequest) ProtoMessage() {} func (*GetPluginInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{0} + return fileDescriptor_csi_58ea024178a9e64e, []int{0} } func (m *GetPluginInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoRequest.Unmarshal(m, b) @@ -400,7 +438,7 @@ func (m *GetPluginInfoResponse) Reset() { *m = GetPluginInfoResponse{} } func (m *GetPluginInfoResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoResponse) ProtoMessage() {} func (*GetPluginInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{1} + return fileDescriptor_csi_58ea024178a9e64e, []int{1} } func (m *GetPluginInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoResponse.Unmarshal(m, b) @@ -451,7 +489,7 @@ func (m *GetPluginCapabilitiesRequest) Reset() { *m = GetPluginCapabilit func (m *GetPluginCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesRequest) ProtoMessage() {} func (*GetPluginCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{2} + return fileDescriptor_csi_58ea024178a9e64e, []int{2} } func (m *GetPluginCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesRequest.Unmarshal(m, b) @@ -484,7 +522,7 @@ func (m *GetPluginCapabilitiesResponse) Reset() { *m = GetPluginCapabili func (m *GetPluginCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesResponse) ProtoMessage() {} func (*GetPluginCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{3} + return fileDescriptor_csi_58ea024178a9e64e, []int{3} } func (m *GetPluginCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesResponse.Unmarshal(m, b) @@ -527,7 +565,7 @@ func (m *PluginCapability) Reset() { *m = PluginCapability{} } func (m *PluginCapability) String() string { return proto.CompactTextString(m) } func (*PluginCapability) ProtoMessage() {} func (*PluginCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{4} + return fileDescriptor_csi_58ea024178a9e64e, []int{4} } func (m *PluginCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability.Unmarshal(m, b) @@ -701,7 +739,7 @@ func (m *PluginCapability_Service) Reset() { *m = PluginCapability_Servi func (m *PluginCapability_Service) String() string { return proto.CompactTextString(m) } func (*PluginCapability_Service) ProtoMessage() {} func (*PluginCapability_Service) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{4, 0} } func (m *PluginCapability_Service) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_Service.Unmarshal(m, b) @@ -739,7 +777,7 @@ func (m *PluginCapability_VolumeExpansion) Reset() { *m = PluginCapabili func (m *PluginCapability_VolumeExpansion) String() string { return proto.CompactTextString(m) } func (*PluginCapability_VolumeExpansion) ProtoMessage() {} func (*PluginCapability_VolumeExpansion) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 1} + return fileDescriptor_csi_58ea024178a9e64e, []int{4, 1} } func (m *PluginCapability_VolumeExpansion) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_VolumeExpansion.Unmarshal(m, b) @@ -777,7 +815,7 @@ func (m *PluginCapability_AlphaFeature) Reset() { *m = PluginCapability_ func (m *PluginCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*PluginCapability_AlphaFeature) ProtoMessage() {} func (*PluginCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{4, 2} + return fileDescriptor_csi_58ea024178a9e64e, []int{4, 2} } func (m *PluginCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_AlphaFeature.Unmarshal(m, b) @@ -814,7 +852,7 @@ func (m *ProbeRequest) Reset() { *m = ProbeRequest{} } func (m *ProbeRequest) String() string { return proto.CompactTextString(m) } func (*ProbeRequest) ProtoMessage() {} func (*ProbeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{5} + return fileDescriptor_csi_58ea024178a9e64e, []int{5} } func (m *ProbeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeRequest.Unmarshal(m, b) @@ -865,7 +903,7 @@ func (m *ProbeResponse) Reset() { *m = ProbeResponse{} } func (m *ProbeResponse) String() string { return proto.CompactTextString(m) } func (*ProbeResponse) ProtoMessage() {} func (*ProbeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{6} + return fileDescriptor_csi_58ea024178a9e64e, []int{6} } func (m *ProbeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeResponse.Unmarshal(m, b) @@ -974,7 +1012,7 @@ func (m *CreateVolumeRequest) Reset() { *m = CreateVolumeRequest{} } func (m *CreateVolumeRequest) String() string { return proto.CompactTextString(m) } func (*CreateVolumeRequest) ProtoMessage() {} func (*CreateVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{7} + return fileDescriptor_csi_58ea024178a9e64e, []int{7} } func (m *CreateVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeRequest.Unmarshal(m, b) @@ -1059,7 +1097,7 @@ func (m *VolumeContentSource) Reset() { *m = VolumeContentSource{} } func (m *VolumeContentSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource) ProtoMessage() {} func (*VolumeContentSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{8} + return fileDescriptor_csi_58ea024178a9e64e, []int{8} } func (m *VolumeContentSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource.Unmarshal(m, b) @@ -1205,7 +1243,7 @@ func (m *VolumeContentSource_SnapshotSource) Reset() { *m = VolumeConten func (m *VolumeContentSource_SnapshotSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_SnapshotSource) ProtoMessage() {} func (*VolumeContentSource_SnapshotSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{8, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{8, 0} } func (m *VolumeContentSource_SnapshotSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_SnapshotSource.Unmarshal(m, b) @@ -1246,7 +1284,7 @@ func (m *VolumeContentSource_VolumeSource) Reset() { *m = VolumeContentS func (m *VolumeContentSource_VolumeSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_VolumeSource) ProtoMessage() {} func (*VolumeContentSource_VolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{8, 1} + return fileDescriptor_csi_58ea024178a9e64e, []int{8, 1} } func (m *VolumeContentSource_VolumeSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_VolumeSource.Unmarshal(m, b) @@ -1287,7 +1325,7 @@ func (m *CreateVolumeResponse) Reset() { *m = CreateVolumeResponse{} } func (m *CreateVolumeResponse) String() string { return proto.CompactTextString(m) } func (*CreateVolumeResponse) ProtoMessage() {} func (*CreateVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{9} + return fileDescriptor_csi_58ea024178a9e64e, []int{9} } func (m *CreateVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeResponse.Unmarshal(m, b) @@ -1334,7 +1372,7 @@ func (m *VolumeCapability) Reset() { *m = VolumeCapability{} } func (m *VolumeCapability) String() string { return proto.CompactTextString(m) } func (*VolumeCapability) ProtoMessage() {} func (*VolumeCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{10} + return fileDescriptor_csi_58ea024178a9e64e, []int{10} } func (m *VolumeCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability.Unmarshal(m, b) @@ -1483,7 +1521,7 @@ func (m *VolumeCapability_BlockVolume) Reset() { *m = VolumeCapability_B func (m *VolumeCapability_BlockVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_BlockVolume) ProtoMessage() {} func (*VolumeCapability_BlockVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{10, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{10, 0} } func (m *VolumeCapability_BlockVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_BlockVolume.Unmarshal(m, b) @@ -1523,7 +1561,7 @@ func (m *VolumeCapability_MountVolume) Reset() { *m = VolumeCapability_M func (m *VolumeCapability_MountVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_MountVolume) ProtoMessage() {} func (*VolumeCapability_MountVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{10, 1} + return fileDescriptor_csi_58ea024178a9e64e, []int{10, 1} } func (m *VolumeCapability_MountVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_MountVolume.Unmarshal(m, b) @@ -1570,7 +1608,7 @@ func (m *VolumeCapability_AccessMode) Reset() { *m = VolumeCapability_Ac func (m *VolumeCapability_AccessMode) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_AccessMode) ProtoMessage() {} func (*VolumeCapability_AccessMode) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{10, 2} + return fileDescriptor_csi_58ea024178a9e64e, []int{10, 2} } func (m *VolumeCapability_AccessMode) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_AccessMode.Unmarshal(m, b) @@ -1618,7 +1656,7 @@ func (m *CapacityRange) Reset() { *m = CapacityRange{} } func (m *CapacityRange) String() string { return proto.CompactTextString(m) } func (*CapacityRange) ProtoMessage() {} func (*CapacityRange) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{11} + return fileDescriptor_csi_58ea024178a9e64e, []int{11} } func (m *CapacityRange) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CapacityRange.Unmarshal(m, b) @@ -1723,7 +1761,7 @@ func (m *Volume) Reset() { *m = Volume{} } func (m *Volume) String() string { return proto.CompactTextString(m) } func (*Volume) ProtoMessage() {} func (*Volume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{12} + return fileDescriptor_csi_58ea024178a9e64e, []int{12} } func (m *Volume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Volume.Unmarshal(m, b) @@ -1915,7 +1953,7 @@ func (m *TopologyRequirement) Reset() { *m = TopologyRequirement{} } func (m *TopologyRequirement) String() string { return proto.CompactTextString(m) } func (*TopologyRequirement) ProtoMessage() {} func (*TopologyRequirement) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{13} + return fileDescriptor_csi_58ea024178a9e64e, []int{13} } func (m *TopologyRequirement) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TopologyRequirement.Unmarshal(m, b) @@ -1989,7 +2027,7 @@ func (m *Topology) Reset() { *m = Topology{} } func (m *Topology) String() string { return proto.CompactTextString(m) } func (*Topology) ProtoMessage() {} func (*Topology) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{14} + return fileDescriptor_csi_58ea024178a9e64e, []int{14} } func (m *Topology) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Topology.Unmarshal(m, b) @@ -2033,7 +2071,7 @@ func (m *DeleteVolumeRequest) Reset() { *m = DeleteVolumeRequest{} } func (m *DeleteVolumeRequest) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeRequest) ProtoMessage() {} func (*DeleteVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{15} + return fileDescriptor_csi_58ea024178a9e64e, []int{15} } func (m *DeleteVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeRequest.Unmarshal(m, b) @@ -2077,7 +2115,7 @@ func (m *DeleteVolumeResponse) Reset() { *m = DeleteVolumeResponse{} } func (m *DeleteVolumeResponse) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeResponse) ProtoMessage() {} func (*DeleteVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{16} + return fileDescriptor_csi_58ea024178a9e64e, []int{16} } func (m *DeleteVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeResponse.Unmarshal(m, b) @@ -2131,7 +2169,7 @@ func (m *ControllerPublishVolumeRequest) Reset() { *m = ControllerPublis func (m *ControllerPublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeRequest) ProtoMessage() {} func (*ControllerPublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{17} + return fileDescriptor_csi_58ea024178a9e64e, []int{17} } func (m *ControllerPublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeRequest.Unmarshal(m, b) @@ -2217,7 +2255,7 @@ func (m *ControllerPublishVolumeResponse) Reset() { *m = ControllerPubli func (m *ControllerPublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeResponse) ProtoMessage() {} func (*ControllerPublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{18} + return fileDescriptor_csi_58ea024178a9e64e, []int{18} } func (m *ControllerPublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeResponse.Unmarshal(m, b) @@ -2268,7 +2306,7 @@ func (m *ControllerUnpublishVolumeRequest) Reset() { *m = ControllerUnpu func (m *ControllerUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeRequest) ProtoMessage() {} func (*ControllerUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{19} + return fileDescriptor_csi_58ea024178a9e64e, []int{19} } func (m *ControllerUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeRequest.Unmarshal(m, b) @@ -2319,7 +2357,7 @@ func (m *ControllerUnpublishVolumeResponse) Reset() { *m = ControllerUnp func (m *ControllerUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeResponse) ProtoMessage() {} func (*ControllerUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{20} + return fileDescriptor_csi_58ea024178a9e64e, []int{20} } func (m *ControllerUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeResponse.Unmarshal(m, b) @@ -2366,7 +2404,7 @@ func (m *ValidateVolumeCapabilitiesRequest) Reset() { *m = ValidateVolum func (m *ValidateVolumeCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesRequest) ProtoMessage() {} func (*ValidateVolumeCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{21} + return fileDescriptor_csi_58ea024178a9e64e, []int{21} } func (m *ValidateVolumeCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesRequest.Unmarshal(m, b) @@ -2444,7 +2482,7 @@ func (m *ValidateVolumeCapabilitiesResponse) Reset() { *m = ValidateVolu func (m *ValidateVolumeCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesResponse) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{22} + return fileDescriptor_csi_58ea024178a9e64e, []int{22} } func (m *ValidateVolumeCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse.Unmarshal(m, b) @@ -2501,7 +2539,7 @@ func (m *ValidateVolumeCapabilitiesResponse_Confirmed) String() string { } func (*ValidateVolumeCapabilitiesResponse_Confirmed) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse_Confirmed) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{22, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{22, 0} } func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse_Confirmed.Unmarshal(m, b) @@ -2566,7 +2604,7 @@ func (m *ListVolumesRequest) Reset() { *m = ListVolumesRequest{} } func (m *ListVolumesRequest) String() string { return proto.CompactTextString(m) } func (*ListVolumesRequest) ProtoMessage() {} func (*ListVolumesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{23} + return fileDescriptor_csi_58ea024178a9e64e, []int{23} } func (m *ListVolumesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesRequest.Unmarshal(m, b) @@ -2618,7 +2656,7 @@ func (m *ListVolumesResponse) Reset() { *m = ListVolumesResponse{} } func (m *ListVolumesResponse) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse) ProtoMessage() {} func (*ListVolumesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{24} + return fileDescriptor_csi_58ea024178a9e64e, []int{24} } func (m *ListVolumesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse.Unmarshal(m, b) @@ -2663,7 +2701,7 @@ func (m *ListVolumesResponse_Entry) Reset() { *m = ListVolumesResponse_E func (m *ListVolumesResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse_Entry) ProtoMessage() {} func (*ListVolumesResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{24, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{24, 0} } func (m *ListVolumesResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse_Entry.Unmarshal(m, b) @@ -2718,7 +2756,7 @@ func (m *GetCapacityRequest) Reset() { *m = GetCapacityRequest{} } func (m *GetCapacityRequest) String() string { return proto.CompactTextString(m) } func (*GetCapacityRequest) ProtoMessage() {} func (*GetCapacityRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{25} + return fileDescriptor_csi_58ea024178a9e64e, []int{25} } func (m *GetCapacityRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityRequest.Unmarshal(m, b) @@ -2776,7 +2814,7 @@ func (m *GetCapacityResponse) Reset() { *m = GetCapacityResponse{} } func (m *GetCapacityResponse) String() string { return proto.CompactTextString(m) } func (*GetCapacityResponse) ProtoMessage() {} func (*GetCapacityResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{26} + return fileDescriptor_csi_58ea024178a9e64e, []int{26} } func (m *GetCapacityResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityResponse.Unmarshal(m, b) @@ -2813,7 +2851,7 @@ func (m *ControllerGetCapabilitiesRequest) Reset() { *m = ControllerGetC func (m *ControllerGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesRequest) ProtoMessage() {} func (*ControllerGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{27} + return fileDescriptor_csi_58ea024178a9e64e, []int{27} } func (m *ControllerGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesRequest.Unmarshal(m, b) @@ -2846,7 +2884,7 @@ func (m *ControllerGetCapabilitiesResponse) Reset() { *m = ControllerGet func (m *ControllerGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesResponse) ProtoMessage() {} func (*ControllerGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{28} + return fileDescriptor_csi_58ea024178a9e64e, []int{28} } func (m *ControllerGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesResponse.Unmarshal(m, b) @@ -2888,7 +2926,7 @@ func (m *ControllerServiceCapability) Reset() { *m = ControllerServiceCa func (m *ControllerServiceCapability) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability) ProtoMessage() {} func (*ControllerServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{29} + return fileDescriptor_csi_58ea024178a9e64e, []int{29} } func (m *ControllerServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability.Unmarshal(m, b) @@ -3030,7 +3068,7 @@ func (m *ControllerServiceCapability_RPC) Reset() { *m = ControllerServi func (m *ControllerServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_RPC) ProtoMessage() {} func (*ControllerServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{29, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{29, 0} } func (m *ControllerServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_RPC.Unmarshal(m, b) @@ -3070,7 +3108,7 @@ func (m *ControllerServiceCapability_AlphaFeature) Reset() { func (m *ControllerServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_AlphaFeature) ProtoMessage() {} func (*ControllerServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{29, 1} + return fileDescriptor_csi_58ea024178a9e64e, []int{29, 1} } func (m *ControllerServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_AlphaFeature.Unmarshal(m, b) @@ -3132,7 +3170,7 @@ func (m *CreateSnapshotRequest) Reset() { *m = CreateSnapshotRequest{} } func (m *CreateSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotRequest) ProtoMessage() {} func (*CreateSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{30} + return fileDescriptor_csi_58ea024178a9e64e, []int{30} } func (m *CreateSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotRequest.Unmarshal(m, b) @@ -3194,7 +3232,7 @@ func (m *CreateSnapshotResponse) Reset() { *m = CreateSnapshotResponse{} func (m *CreateSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotResponse) ProtoMessage() {} func (*CreateSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{31} + return fileDescriptor_csi_58ea024178a9e64e, []int{31} } func (m *CreateSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotResponse.Unmarshal(m, b) @@ -3261,7 +3299,7 @@ func (m *Snapshot) Reset() { *m = Snapshot{} } func (m *Snapshot) String() string { return proto.CompactTextString(m) } func (*Snapshot) ProtoMessage() {} func (*Snapshot) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{32} + return fileDescriptor_csi_58ea024178a9e64e, []int{32} } func (m *Snapshot) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Snapshot.Unmarshal(m, b) @@ -3333,7 +3371,7 @@ func (m *DeleteSnapshotRequest) Reset() { *m = DeleteSnapshotRequest{} } func (m *DeleteSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotRequest) ProtoMessage() {} func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{33} + return fileDescriptor_csi_58ea024178a9e64e, []int{33} } func (m *DeleteSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotRequest.Unmarshal(m, b) @@ -3377,7 +3415,7 @@ func (m *DeleteSnapshotResponse) Reset() { *m = DeleteSnapshotResponse{} func (m *DeleteSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotResponse) ProtoMessage() {} func (*DeleteSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{34} + return fileDescriptor_csi_58ea024178a9e64e, []int{34} } func (m *DeleteSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotResponse.Unmarshal(m, b) @@ -3432,7 +3470,7 @@ func (m *ListSnapshotsRequest) Reset() { *m = ListSnapshotsRequest{} } func (m *ListSnapshotsRequest) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsRequest) ProtoMessage() {} func (*ListSnapshotsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{35} + return fileDescriptor_csi_58ea024178a9e64e, []int{35} } func (m *ListSnapshotsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsRequest.Unmarshal(m, b) @@ -3498,7 +3536,7 @@ func (m *ListSnapshotsResponse) Reset() { *m = ListSnapshotsResponse{} } func (m *ListSnapshotsResponse) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse) ProtoMessage() {} func (*ListSnapshotsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{36} + return fileDescriptor_csi_58ea024178a9e64e, []int{36} } func (m *ListSnapshotsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse.Unmarshal(m, b) @@ -3543,7 +3581,7 @@ func (m *ListSnapshotsResponse_Entry) Reset() { *m = ListSnapshotsRespon func (m *ListSnapshotsResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse_Entry) ProtoMessage() {} func (*ListSnapshotsResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{36, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{36, 0} } func (m *ListSnapshotsResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse_Entry.Unmarshal(m, b) @@ -3588,7 +3626,7 @@ func (m *ControllerExpandVolumeRequest) Reset() { *m = ControllerExpandV func (m *ControllerExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeRequest) ProtoMessage() {} func (*ControllerExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{37} + return fileDescriptor_csi_58ea024178a9e64e, []int{37} } func (m *ControllerExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeRequest.Unmarshal(m, b) @@ -3645,7 +3683,7 @@ func (m *ControllerExpandVolumeResponse) Reset() { *m = ControllerExpand func (m *ControllerExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeResponse) ProtoMessage() {} func (*ControllerExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{38} + return fileDescriptor_csi_58ea024178a9e64e, []int{38} } func (m *ControllerExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeResponse.Unmarshal(m, b) @@ -3679,6 +3717,258 @@ func (m *ControllerExpandVolumeResponse) GetNodeExpansionRequired() bool { return false } +type ControllerTapeRotationRequest struct { + // action is OPTIONAL; failure to specify an action is interpreted as + // a read-only request, and SHOULD generate a non-error response. + // + // Types that are valid to be assigned to Action: + // *ControllerTapeRotationRequest_UpdateStrategy_ + // *ControllerTapeRotationRequest_RotateNow + Action isControllerTapeRotationRequest_Action `protobuf_oneof:"action"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ControllerTapeRotationRequest) Reset() { *m = ControllerTapeRotationRequest{} } +func (m *ControllerTapeRotationRequest) String() string { return proto.CompactTextString(m) } +func (*ControllerTapeRotationRequest) ProtoMessage() {} +func (*ControllerTapeRotationRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_58ea024178a9e64e, []int{39} +} +func (m *ControllerTapeRotationRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ControllerTapeRotationRequest.Unmarshal(m, b) +} +func (m *ControllerTapeRotationRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ControllerTapeRotationRequest.Marshal(b, m, deterministic) +} +func (dst *ControllerTapeRotationRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ControllerTapeRotationRequest.Merge(dst, src) +} +func (m *ControllerTapeRotationRequest) XXX_Size() int { + return xxx_messageInfo_ControllerTapeRotationRequest.Size(m) +} +func (m *ControllerTapeRotationRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ControllerTapeRotationRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ControllerTapeRotationRequest proto.InternalMessageInfo + +type isControllerTapeRotationRequest_Action interface { + isControllerTapeRotationRequest_Action() +} + +type ControllerTapeRotationRequest_UpdateStrategy_ struct { + UpdateStrategy *ControllerTapeRotationRequest_UpdateStrategy `protobuf:"bytes,1,opt,name=update_strategy,json=updateStrategy,proto3,oneof"` +} + +type ControllerTapeRotationRequest_RotateNow struct { + RotateNow bool `protobuf:"varint,2,opt,name=rotate_now,json=rotateNow,proto3,oneof"` +} + +func (*ControllerTapeRotationRequest_UpdateStrategy_) isControllerTapeRotationRequest_Action() {} + +func (*ControllerTapeRotationRequest_RotateNow) isControllerTapeRotationRequest_Action() {} + +func (m *ControllerTapeRotationRequest) GetAction() isControllerTapeRotationRequest_Action { + if m != nil { + return m.Action + } + return nil +} + +func (m *ControllerTapeRotationRequest) GetUpdateStrategy() *ControllerTapeRotationRequest_UpdateStrategy { + if x, ok := m.GetAction().(*ControllerTapeRotationRequest_UpdateStrategy_); ok { + return x.UpdateStrategy + } + return nil +} + +func (m *ControllerTapeRotationRequest) GetRotateNow() bool { + if x, ok := m.GetAction().(*ControllerTapeRotationRequest_RotateNow); ok { + return x.RotateNow + } + return false +} + +// XXX_OneofFuncs is for the internal use of the proto package. +func (*ControllerTapeRotationRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _ControllerTapeRotationRequest_OneofMarshaler, _ControllerTapeRotationRequest_OneofUnmarshaler, _ControllerTapeRotationRequest_OneofSizer, []interface{}{ + (*ControllerTapeRotationRequest_UpdateStrategy_)(nil), + (*ControllerTapeRotationRequest_RotateNow)(nil), + } +} + +func _ControllerTapeRotationRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*ControllerTapeRotationRequest) + // action + switch x := m.Action.(type) { + case *ControllerTapeRotationRequest_UpdateStrategy_: + b.EncodeVarint(1<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.UpdateStrategy); err != nil { + return err + } + case *ControllerTapeRotationRequest_RotateNow: + t := uint64(0) + if x.RotateNow { + t = 1 + } + b.EncodeVarint(2<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("ControllerTapeRotationRequest.Action has unexpected type %T", x) + } + return nil +} + +func _ControllerTapeRotationRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*ControllerTapeRotationRequest) + switch tag { + case 1: // action.update_strategy + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(ControllerTapeRotationRequest_UpdateStrategy) + err := b.DecodeMessage(msg) + m.Action = &ControllerTapeRotationRequest_UpdateStrategy_{msg} + return true, err + case 2: // action.rotate_now + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.Action = &ControllerTapeRotationRequest_RotateNow{x != 0} + return true, err + default: + return false, nil + } +} + +func _ControllerTapeRotationRequest_OneofSizer(msg proto.Message) (n int) { + m := msg.(*ControllerTapeRotationRequest) + // action + switch x := m.Action.(type) { + case *ControllerTapeRotationRequest_UpdateStrategy_: + s := proto.Size(x.UpdateStrategy) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *ControllerTapeRotationRequest_RotateNow: + n += 1 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + return n +} + +type ControllerTapeRotationRequest_UpdateStrategy struct { + Scheme ControllerTapeRotationRequest_UpdateStrategy_Scheme `protobuf:"varint,1,opt,name=scheme,proto3,enum=csi.v1.ControllerTapeRotationRequest_UpdateStrategy_Scheme" json:"scheme,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ControllerTapeRotationRequest_UpdateStrategy) Reset() { + *m = ControllerTapeRotationRequest_UpdateStrategy{} +} +func (m *ControllerTapeRotationRequest_UpdateStrategy) String() string { + return proto.CompactTextString(m) +} +func (*ControllerTapeRotationRequest_UpdateStrategy) ProtoMessage() {} +func (*ControllerTapeRotationRequest_UpdateStrategy) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_58ea024178a9e64e, []int{39, 0} +} +func (m *ControllerTapeRotationRequest_UpdateStrategy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ControllerTapeRotationRequest_UpdateStrategy.Unmarshal(m, b) +} +func (m *ControllerTapeRotationRequest_UpdateStrategy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ControllerTapeRotationRequest_UpdateStrategy.Marshal(b, m, deterministic) +} +func (dst *ControllerTapeRotationRequest_UpdateStrategy) XXX_Merge(src proto.Message) { + xxx_messageInfo_ControllerTapeRotationRequest_UpdateStrategy.Merge(dst, src) +} +func (m *ControllerTapeRotationRequest_UpdateStrategy) XXX_Size() int { + return xxx_messageInfo_ControllerTapeRotationRequest_UpdateStrategy.Size(m) +} +func (m *ControllerTapeRotationRequest_UpdateStrategy) XXX_DiscardUnknown() { + xxx_messageInfo_ControllerTapeRotationRequest_UpdateStrategy.DiscardUnknown(m) +} + +var xxx_messageInfo_ControllerTapeRotationRequest_UpdateStrategy proto.InternalMessageInfo + +func (m *ControllerTapeRotationRequest_UpdateStrategy) GetScheme() ControllerTapeRotationRequest_UpdateStrategy_Scheme { + if m != nil { + return m.Scheme + } + return ControllerTapeRotationRequest_UpdateStrategy_UNKNOWN +} + +// All response fields are OPTIONAL. +type ControllerTapeRotationResponse struct { + LastRotationSuccess *timestamp.Timestamp `protobuf:"bytes,1,opt,name=last_rotation_success,json=lastRotationSuccess,proto3" json:"last_rotation_success,omitempty"` + LastRotationFailure *timestamp.Timestamp `protobuf:"bytes,2,opt,name=last_rotation_failure,json=lastRotationFailure,proto3" json:"last_rotation_failure,omitempty"` + SuccessiveFailures int32 `protobuf:"varint,3,opt,name=successive_failures,json=successiveFailures,proto3" json:"successive_failures,omitempty"` + NextRotationTime *timestamp.Timestamp `protobuf:"bytes,4,opt,name=next_rotation_time,json=nextRotationTime,proto3" json:"next_rotation_time,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ControllerTapeRotationResponse) Reset() { *m = ControllerTapeRotationResponse{} } +func (m *ControllerTapeRotationResponse) String() string { return proto.CompactTextString(m) } +func (*ControllerTapeRotationResponse) ProtoMessage() {} +func (*ControllerTapeRotationResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_58ea024178a9e64e, []int{40} +} +func (m *ControllerTapeRotationResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ControllerTapeRotationResponse.Unmarshal(m, b) +} +func (m *ControllerTapeRotationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ControllerTapeRotationResponse.Marshal(b, m, deterministic) +} +func (dst *ControllerTapeRotationResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ControllerTapeRotationResponse.Merge(dst, src) +} +func (m *ControllerTapeRotationResponse) XXX_Size() int { + return xxx_messageInfo_ControllerTapeRotationResponse.Size(m) +} +func (m *ControllerTapeRotationResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ControllerTapeRotationResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ControllerTapeRotationResponse proto.InternalMessageInfo + +func (m *ControllerTapeRotationResponse) GetLastRotationSuccess() *timestamp.Timestamp { + if m != nil { + return m.LastRotationSuccess + } + return nil +} + +func (m *ControllerTapeRotationResponse) GetLastRotationFailure() *timestamp.Timestamp { + if m != nil { + return m.LastRotationFailure + } + return nil +} + +func (m *ControllerTapeRotationResponse) GetSuccessiveFailures() int32 { + if m != nil { + return m.SuccessiveFailures + } + return 0 +} + +func (m *ControllerTapeRotationResponse) GetNextRotationTime() *timestamp.Timestamp { + if m != nil { + return m.NextRotationTime + } + return nil +} + type NodeStageVolumeRequest struct { // The ID of the volume to publish. This field is REQUIRED. VolumeId string `protobuf:"bytes,1,opt,name=volume_id,json=volumeId,proto3" json:"volume_id,omitempty"` @@ -3720,7 +4010,7 @@ func (m *NodeStageVolumeRequest) Reset() { *m = NodeStageVolumeRequest{} func (m *NodeStageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeRequest) ProtoMessage() {} func (*NodeStageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{39} + return fileDescriptor_csi_58ea024178a9e64e, []int{41} } func (m *NodeStageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeRequest.Unmarshal(m, b) @@ -3792,7 +4082,7 @@ func (m *NodeStageVolumeResponse) Reset() { *m = NodeStageVolumeResponse func (m *NodeStageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeResponse) ProtoMessage() {} func (*NodeStageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{40} + return fileDescriptor_csi_58ea024178a9e64e, []int{42} } func (m *NodeStageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeResponse.Unmarshal(m, b) @@ -3828,7 +4118,7 @@ func (m *NodeUnstageVolumeRequest) Reset() { *m = NodeUnstageVolumeReque func (m *NodeUnstageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeRequest) ProtoMessage() {} func (*NodeUnstageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{41} + return fileDescriptor_csi_58ea024178a9e64e, []int{43} } func (m *NodeUnstageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeRequest.Unmarshal(m, b) @@ -3872,7 +4162,7 @@ func (m *NodeUnstageVolumeResponse) Reset() { *m = NodeUnstageVolumeResp func (m *NodeUnstageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeResponse) ProtoMessage() {} func (*NodeUnstageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{42} + return fileDescriptor_csi_58ea024178a9e64e, []int{44} } func (m *NodeUnstageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeResponse.Unmarshal(m, b) @@ -3946,7 +4236,7 @@ func (m *NodePublishVolumeRequest) Reset() { *m = NodePublishVolumeReque func (m *NodePublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeRequest) ProtoMessage() {} func (*NodePublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{43} + return fileDescriptor_csi_58ea024178a9e64e, []int{45} } func (m *NodePublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeRequest.Unmarshal(m, b) @@ -4032,7 +4322,7 @@ func (m *NodePublishVolumeResponse) Reset() { *m = NodePublishVolumeResp func (m *NodePublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeResponse) ProtoMessage() {} func (*NodePublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{44} + return fileDescriptor_csi_58ea024178a9e64e, []int{46} } func (m *NodePublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeResponse.Unmarshal(m, b) @@ -4069,7 +4359,7 @@ func (m *NodeUnpublishVolumeRequest) Reset() { *m = NodeUnpublishVolumeR func (m *NodeUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeRequest) ProtoMessage() {} func (*NodeUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{45} + return fileDescriptor_csi_58ea024178a9e64e, []int{47} } func (m *NodeUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeRequest.Unmarshal(m, b) @@ -4113,7 +4403,7 @@ func (m *NodeUnpublishVolumeResponse) Reset() { *m = NodeUnpublishVolume func (m *NodeUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeResponse) ProtoMessage() {} func (*NodeUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{46} + return fileDescriptor_csi_58ea024178a9e64e, []int{48} } func (m *NodeUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeResponse.Unmarshal(m, b) @@ -4151,7 +4441,7 @@ func (m *NodeGetVolumeStatsRequest) Reset() { *m = NodeGetVolumeStatsReq func (m *NodeGetVolumeStatsRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsRequest) ProtoMessage() {} func (*NodeGetVolumeStatsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{47} + return fileDescriptor_csi_58ea024178a9e64e, []int{49} } func (m *NodeGetVolumeStatsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsRequest.Unmarshal(m, b) @@ -4197,7 +4487,7 @@ func (m *NodeGetVolumeStatsResponse) Reset() { *m = NodeGetVolumeStatsRe func (m *NodeGetVolumeStatsResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsResponse) ProtoMessage() {} func (*NodeGetVolumeStatsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{48} + return fileDescriptor_csi_58ea024178a9e64e, []int{50} } func (m *NodeGetVolumeStatsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsResponse.Unmarshal(m, b) @@ -4245,7 +4535,7 @@ func (m *VolumeUsage) Reset() { *m = VolumeUsage{} } func (m *VolumeUsage) String() string { return proto.CompactTextString(m) } func (*VolumeUsage) ProtoMessage() {} func (*VolumeUsage) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{49} + return fileDescriptor_csi_58ea024178a9e64e, []int{51} } func (m *VolumeUsage) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeUsage.Unmarshal(m, b) @@ -4303,7 +4593,7 @@ func (m *NodeGetCapabilitiesRequest) Reset() { *m = NodeGetCapabilitiesR func (m *NodeGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesRequest) ProtoMessage() {} func (*NodeGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{50} + return fileDescriptor_csi_58ea024178a9e64e, []int{52} } func (m *NodeGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesRequest.Unmarshal(m, b) @@ -4336,7 +4626,7 @@ func (m *NodeGetCapabilitiesResponse) Reset() { *m = NodeGetCapabilities func (m *NodeGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesResponse) ProtoMessage() {} func (*NodeGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{51} + return fileDescriptor_csi_58ea024178a9e64e, []int{53} } func (m *NodeGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesResponse.Unmarshal(m, b) @@ -4378,7 +4668,7 @@ func (m *NodeServiceCapability) Reset() { *m = NodeServiceCapability{} } func (m *NodeServiceCapability) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability) ProtoMessage() {} func (*NodeServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{52} + return fileDescriptor_csi_58ea024178a9e64e, []int{54} } func (m *NodeServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability.Unmarshal(m, b) @@ -4520,7 +4810,7 @@ func (m *NodeServiceCapability_RPC) Reset() { *m = NodeServiceCapability func (m *NodeServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_RPC) ProtoMessage() {} func (*NodeServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{52, 0} + return fileDescriptor_csi_58ea024178a9e64e, []int{54, 0} } func (m *NodeServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_RPC.Unmarshal(m, b) @@ -4558,7 +4848,7 @@ func (m *NodeServiceCapability_AlphaFeature) Reset() { *m = NodeServiceC func (m *NodeServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_AlphaFeature) ProtoMessage() {} func (*NodeServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{52, 1} + return fileDescriptor_csi_58ea024178a9e64e, []int{54, 1} } func (m *NodeServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_AlphaFeature.Unmarshal(m, b) @@ -4595,7 +4885,7 @@ func (m *NodeGetInfoRequest) Reset() { *m = NodeGetInfoRequest{} } func (m *NodeGetInfoRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoRequest) ProtoMessage() {} func (*NodeGetInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{53} + return fileDescriptor_csi_58ea024178a9e64e, []int{55} } func (m *NodeGetInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoRequest.Unmarshal(m, b) @@ -4658,7 +4948,7 @@ func (m *NodeGetInfoResponse) Reset() { *m = NodeGetInfoResponse{} } func (m *NodeGetInfoResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoResponse) ProtoMessage() {} func (*NodeGetInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{54} + return fileDescriptor_csi_58ea024178a9e64e, []int{56} } func (m *NodeGetInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoResponse.Unmarshal(m, b) @@ -4720,7 +5010,7 @@ func (m *NodeExpandVolumeRequest) Reset() { *m = NodeExpandVolumeRequest func (m *NodeExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeRequest) ProtoMessage() {} func (*NodeExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{55} + return fileDescriptor_csi_58ea024178a9e64e, []int{57} } func (m *NodeExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeRequest.Unmarshal(m, b) @@ -4773,7 +5063,7 @@ func (m *NodeExpandVolumeResponse) Reset() { *m = NodeExpandVolumeRespon func (m *NodeExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeResponse) ProtoMessage() {} func (*NodeExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_d236ce13b1aaecdd, []int{56} + return fileDescriptor_csi_58ea024178a9e64e, []int{58} } func (m *NodeExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeResponse.Unmarshal(m, b) @@ -4936,6 +5226,9 @@ func init() { proto.RegisterType((*ControllerExpandVolumeRequest)(nil), "csi.v1.ControllerExpandVolumeRequest") proto.RegisterMapType((map[string]string)(nil), "csi.v1.ControllerExpandVolumeRequest.SecretsEntry") proto.RegisterType((*ControllerExpandVolumeResponse)(nil), "csi.v1.ControllerExpandVolumeResponse") + proto.RegisterType((*ControllerTapeRotationRequest)(nil), "csi.v1.ControllerTapeRotationRequest") + proto.RegisterType((*ControllerTapeRotationRequest_UpdateStrategy)(nil), "csi.v1.ControllerTapeRotationRequest.UpdateStrategy") + proto.RegisterType((*ControllerTapeRotationResponse)(nil), "csi.v1.ControllerTapeRotationResponse") proto.RegisterType((*NodeStageVolumeRequest)(nil), "csi.v1.NodeStageVolumeRequest") proto.RegisterMapType((map[string]string)(nil), "csi.v1.NodeStageVolumeRequest.PublishContextEntry") proto.RegisterMapType((map[string]string)(nil), "csi.v1.NodeStageVolumeRequest.SecretsEntry") @@ -4968,6 +5261,7 @@ func init() { proto.RegisterEnum("csi.v1.VolumeCapability_AccessMode_Mode", VolumeCapability_AccessMode_Mode_name, VolumeCapability_AccessMode_Mode_value) proto.RegisterEnum("csi.v1.ControllerServiceCapability_RPC_Type", ControllerServiceCapability_RPC_Type_name, ControllerServiceCapability_RPC_Type_value) proto.RegisterEnum("csi.v1.ControllerServiceCapability_AlphaFeature_Type", ControllerServiceCapability_AlphaFeature_Type_name, ControllerServiceCapability_AlphaFeature_Type_value) + proto.RegisterEnum("csi.v1.ControllerTapeRotationRequest_UpdateStrategy_Scheme", ControllerTapeRotationRequest_UpdateStrategy_Scheme_name, ControllerTapeRotationRequest_UpdateStrategy_Scheme_value) proto.RegisterEnum("csi.v1.VolumeUsage_Unit", VolumeUsage_Unit_name, VolumeUsage_Unit_value) proto.RegisterEnum("csi.v1.NodeServiceCapability_RPC_Type", NodeServiceCapability_RPC_Type_name, NodeServiceCapability_RPC_Type_value) proto.RegisterEnum("csi.v1.NodeServiceCapability_AlphaFeature_Type", NodeServiceCapability_AlphaFeature_Type_name, NodeServiceCapability_AlphaFeature_Type_value) @@ -5134,6 +5428,7 @@ type ControllerClient interface { DeleteSnapshot(ctx context.Context, in *DeleteSnapshotRequest, opts ...grpc.CallOption) (*DeleteSnapshotResponse, error) ListSnapshots(ctx context.Context, in *ListSnapshotsRequest, opts ...grpc.CallOption) (*ListSnapshotsResponse, error) ControllerExpandVolume(ctx context.Context, in *ControllerExpandVolumeRequest, opts ...grpc.CallOption) (*ControllerExpandVolumeResponse, error) + ControllerTapeRotation(ctx context.Context, in *ControllerTapeRotationRequest, opts ...grpc.CallOption) (*ControllerTapeRotationResponse, error) } type controllerClient struct { @@ -5252,6 +5547,15 @@ func (c *controllerClient) ControllerExpandVolume(ctx context.Context, in *Contr return out, nil } +func (c *controllerClient) ControllerTapeRotation(ctx context.Context, in *ControllerTapeRotationRequest, opts ...grpc.CallOption) (*ControllerTapeRotationResponse, error) { + out := new(ControllerTapeRotationResponse) + err := c.cc.Invoke(ctx, "/csi.v1.Controller/ControllerTapeRotation", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // ControllerServer is the server API for Controller service. type ControllerServer interface { CreateVolume(context.Context, *CreateVolumeRequest) (*CreateVolumeResponse, error) @@ -5266,6 +5570,7 @@ type ControllerServer interface { DeleteSnapshot(context.Context, *DeleteSnapshotRequest) (*DeleteSnapshotResponse, error) ListSnapshots(context.Context, *ListSnapshotsRequest) (*ListSnapshotsResponse, error) ControllerExpandVolume(context.Context, *ControllerExpandVolumeRequest) (*ControllerExpandVolumeResponse, error) + ControllerTapeRotation(context.Context, *ControllerTapeRotationRequest) (*ControllerTapeRotationResponse, error) } func RegisterControllerServer(s *grpc.Server, srv ControllerServer) { @@ -5488,6 +5793,24 @@ func _Controller_ControllerExpandVolume_Handler(srv interface{}, ctx context.Con return interceptor(ctx, in, info, handler) } +func _Controller_ControllerTapeRotation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ControllerTapeRotationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ControllerServer).ControllerTapeRotation(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/csi.v1.Controller/ControllerTapeRotation", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ControllerServer).ControllerTapeRotation(ctx, req.(*ControllerTapeRotationRequest)) + } + return interceptor(ctx, in, info, handler) +} + var _Controller_serviceDesc = grpc.ServiceDesc{ ServiceName: "csi.v1.Controller", HandlerType: (*ControllerServer)(nil), @@ -5540,6 +5863,10 @@ var _Controller_serviceDesc = grpc.ServiceDesc{ MethodName: "ControllerExpandVolume", Handler: _Controller_ControllerExpandVolume_Handler, }, + { + MethodName: "ControllerTapeRotation", + Handler: _Controller_ControllerTapeRotation_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "github.com/container-storage-interface/spec/csi.proto", @@ -5841,228 +6168,246 @@ var _Node_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_d236ce13b1aaecdd) -} - -var fileDescriptor_csi_d236ce13b1aaecdd = []byte{ - // 3490 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x4d, 0x70, 0xdb, 0xc6, - 0x15, 0x26, 0xf8, 0xa3, 0x9f, 0x47, 0x49, 0xa6, 0x57, 0x3f, 0xa6, 0x21, 0xc9, 0x96, 0xe1, 0xd8, - 0x51, 0x1c, 0x9b, 0x4a, 0x9c, 0x38, 0xd3, 0xc8, 0xce, 0x0f, 0x45, 0xd1, 0x12, 0x63, 0x9a, 0x92, - 0x41, 0x4a, 0x8e, 0xdd, 0x66, 0x10, 0x88, 0x5c, 0x51, 0x98, 0x90, 0x00, 0x03, 0x80, 0xaa, 0xd4, - 0x4b, 0xa7, 0xed, 0xa9, 0xd3, 0x73, 0xa7, 0xed, 0xa9, 0x33, 0x69, 0x2e, 0xed, 0x34, 0x93, 0x53, - 0xa7, 0xc7, 0xce, 0xf4, 0xd8, 0x63, 0x2f, 0xed, 0xe4, 0x92, 0x6b, 0x27, 0xd3, 0xce, 0xe4, 0xdc, - 0x53, 0x07, 0xd8, 0x05, 0x88, 0x05, 0x01, 0x90, 0xb4, 0xec, 0xc9, 0xa1, 0x27, 0x11, 0x6f, 0xdf, - 0xbe, 0x7d, 0xfb, 0xf0, 0xde, 0xdb, 0xf7, 0xbe, 0x85, 0xe0, 0x4e, 0x53, 0x31, 0x8f, 0xba, 0x07, - 0xb9, 0xba, 0xd6, 0x5e, 0xab, 0x6b, 0xaa, 0x29, 0x2b, 0x2a, 0xd6, 0x6f, 0x19, 0xa6, 0xa6, 0xcb, - 0x4d, 0x7c, 0x4b, 0x51, 0x4d, 0xac, 0x1f, 0xca, 0x75, 0xbc, 0x66, 0x74, 0x70, 0x7d, 0xad, 0x6e, - 0x28, 0xb9, 0x8e, 0xae, 0x99, 0x1a, 0x1a, 0xb3, 0x7e, 0x1e, 0xbf, 0xce, 0xaf, 0x34, 0x35, 0xad, - 0xd9, 0xc2, 0x6b, 0x36, 0xf5, 0xa0, 0x7b, 0xb8, 0xd6, 0xc0, 0x46, 0x5d, 0x57, 0x3a, 0xa6, 0xa6, - 0x13, 0x4e, 0xfe, 0xb2, 0x9f, 0xc3, 0x54, 0xda, 0xd8, 0x30, 0xe5, 0x76, 0x87, 0x32, 0x5c, 0xf2, - 0x33, 0xfc, 0x50, 0x97, 0x3b, 0x1d, 0xac, 0x1b, 0x64, 0x5c, 0x58, 0x80, 0xb9, 0x2d, 0x6c, 0xee, - 0xb6, 0xba, 0x4d, 0x45, 0x2d, 0xa9, 0x87, 0x9a, 0x88, 0x3f, 0xed, 0x62, 0xc3, 0x14, 0xfe, 0xc9, - 0xc1, 0xbc, 0x6f, 0xc0, 0xe8, 0x68, 0xaa, 0x81, 0x11, 0x82, 0xa4, 0x2a, 0xb7, 0x71, 0x96, 0x5b, - 0xe1, 0x56, 0x27, 0x45, 0xfb, 0x37, 0xba, 0x06, 0x33, 0xc7, 0x58, 0x6d, 0x68, 0xba, 0x74, 0x8c, - 0x75, 0x43, 0xd1, 0xd4, 0x6c, 0xdc, 0x1e, 0x9d, 0x26, 0xd4, 0x7d, 0x42, 0x44, 0x5b, 0x30, 0xd1, - 0x96, 0x55, 0xe5, 0x10, 0x1b, 0x66, 0x36, 0xb1, 0x92, 0x58, 0x4d, 0xdf, 0x7e, 0x35, 0x47, 0xb6, - 0x9a, 0x0b, 0x5c, 0x2b, 0xf7, 0x90, 0x72, 0x17, 0x55, 0x53, 0x3f, 0x15, 0xdd, 0xc9, 0xfc, 0x5d, - 0x98, 0x66, 0x86, 0x50, 0x06, 0x12, 0x9f, 0xe0, 0x53, 0xaa, 0x93, 0xf5, 0x13, 0xcd, 0x41, 0xea, - 0x58, 0x6e, 0x75, 0x31, 0xd5, 0x84, 0x3c, 0xac, 0xc7, 0xbf, 0xc7, 0x09, 0x97, 0x60, 0xc9, 0x5d, - 0xad, 0x20, 0x77, 0xe4, 0x03, 0xa5, 0xa5, 0x98, 0x0a, 0x36, 0x9c, 0xad, 0x7f, 0x04, 0xcb, 0x21, - 0xe3, 0xd4, 0x02, 0xf7, 0x60, 0xaa, 0xee, 0xa1, 0x67, 0x39, 0x7b, 0x2b, 0x59, 0x67, 0x2b, 0xbe, - 0x99, 0xa7, 0x22, 0xc3, 0x2d, 0xfc, 0x24, 0x05, 0x19, 0x3f, 0x0b, 0xba, 0x07, 0xe3, 0x06, 0xd6, - 0x8f, 0x95, 0x3a, 0xb1, 0x6b, 0xfa, 0xf6, 0x4a, 0x98, 0xb4, 0x5c, 0x95, 0xf0, 0x6d, 0xc7, 0x44, - 0x67, 0x0a, 0xda, 0x83, 0xcc, 0xb1, 0xd6, 0xea, 0xb6, 0xb1, 0x84, 0x4f, 0x3a, 0xb2, 0xea, 0xbe, - 0x80, 0xf4, 0xed, 0xd5, 0x50, 0x31, 0xfb, 0xf6, 0x84, 0xa2, 0xc3, 0xbf, 0x1d, 0x13, 0xcf, 0x1d, - 0xb3, 0x24, 0x54, 0x86, 0x69, 0xb9, 0xd5, 0x39, 0x92, 0xa5, 0x43, 0x2c, 0x9b, 0x5d, 0x1d, 0x67, - 0x13, 0xb6, 0xcc, 0x6b, 0xa1, 0x32, 0xf3, 0x16, 0xf7, 0x7d, 0xc2, 0xbc, 0x1d, 0x13, 0xa7, 0x64, - 0xcf, 0x33, 0xff, 0x2b, 0x0e, 0xc6, 0xa9, 0xee, 0xe8, 0x6d, 0x48, 0x9a, 0xa7, 0x1d, 0xb2, 0xd7, - 0x99, 0x08, 0x81, 0x94, 0x3f, 0x57, 0x3b, 0xed, 0x60, 0xd1, 0x9e, 0x22, 0x3c, 0x82, 0xa4, 0xf5, - 0x84, 0xd2, 0x30, 0xbe, 0x57, 0x79, 0x50, 0xd9, 0x79, 0x5c, 0xc9, 0xc4, 0xd0, 0x02, 0xa0, 0xc2, - 0x4e, 0xa5, 0x26, 0xee, 0x94, 0xcb, 0x45, 0x51, 0xaa, 0x16, 0xc5, 0xfd, 0x52, 0xa1, 0x98, 0xe1, - 0xd0, 0x4b, 0xb0, 0xb2, 0xbf, 0x53, 0xde, 0x7b, 0x58, 0x94, 0xf2, 0x85, 0x42, 0xb1, 0x5a, 0x2d, - 0x6d, 0x94, 0xca, 0xa5, 0xda, 0x13, 0xa9, 0xb0, 0x53, 0xa9, 0xd6, 0xc4, 0x7c, 0xa9, 0x52, 0xab, - 0x66, 0xe2, 0xfc, 0x4f, 0x39, 0x38, 0xe7, 0x33, 0x07, 0xca, 0x33, 0x1a, 0xde, 0x1a, 0xd6, 0x8c, - 0x5e, 0x4d, 0x6f, 0x06, 0x69, 0x0a, 0x30, 0xb6, 0x53, 0x29, 0x97, 0x2a, 0x96, 0x76, 0x69, 0x18, - 0xdf, 0xb9, 0x7f, 0xdf, 0x7e, 0x88, 0xf3, 0x75, 0x98, 0xf2, 0x9a, 0x0f, 0xbd, 0xcb, 0x28, 0x70, - 0x63, 0x28, 0x9b, 0x7b, 0x57, 0x9f, 0x0d, 0x58, 0x7d, 0x63, 0x8c, 0x08, 0x15, 0x66, 0x60, 0x6a, - 0x57, 0xd7, 0x0e, 0xb0, 0xe3, 0xf2, 0x79, 0x98, 0xa6, 0xcf, 0xd4, 0xc5, 0x5f, 0x83, 0x94, 0x8e, - 0xe5, 0xc6, 0x29, 0xf5, 0x46, 0x3e, 0x47, 0xd2, 0x48, 0xce, 0x49, 0x23, 0xb9, 0x0d, 0x4d, 0x6b, - 0xed, 0x5b, 0x21, 0x25, 0x12, 0x46, 0xe1, 0xdb, 0x24, 0xcc, 0x16, 0x74, 0x2c, 0x9b, 0x98, 0x98, - 0x84, 0x8a, 0x0e, 0x4c, 0x17, 0xf7, 0x60, 0xc6, 0x0a, 0x89, 0xba, 0x62, 0x9e, 0x4a, 0xba, 0xac, - 0x36, 0x31, 0xf5, 0xd6, 0x79, 0x67, 0x97, 0x05, 0x3a, 0x2a, 0x5a, 0x83, 0xe2, 0x74, 0xdd, 0xfb, - 0x88, 0x4a, 0x30, 0x4b, 0xbd, 0x9d, 0x89, 0xc2, 0x04, 0x1b, 0x85, 0x44, 0x0b, 0x4f, 0x14, 0xa2, - 0x63, 0x96, 0xa2, 0x60, 0x03, 0x3d, 0x00, 0xe8, 0xc8, 0xba, 0xdc, 0xc6, 0x26, 0xd6, 0x8d, 0x6c, - 0x92, 0x4d, 0x49, 0x01, 0xbb, 0xc9, 0xed, 0xba, 0xdc, 0x24, 0x25, 0x79, 0xa6, 0xa3, 0x2d, 0x2b, - 0x86, 0xeb, 0x3a, 0x36, 0x8d, 0x6c, 0xca, 0x96, 0xb4, 0x1a, 0x25, 0xa9, 0x4a, 0x58, 0x6d, 0x31, - 0x1b, 0x89, 0x5f, 0x6f, 0x70, 0xa2, 0x33, 0x1b, 0xed, 0xc0, 0xbc, 0xb3, 0x41, 0x4d, 0x35, 0xb1, - 0x6a, 0x4a, 0x86, 0xd6, 0xd5, 0xeb, 0x38, 0x3b, 0x66, 0x5b, 0x69, 0xd1, 0xb7, 0x45, 0xc2, 0x53, - 0xb5, 0x59, 0x44, 0x6a, 0x1a, 0x86, 0x88, 0x9e, 0x02, 0x2f, 0xd7, 0xeb, 0xd8, 0x30, 0x14, 0x62, - 0x0b, 0x49, 0xc7, 0x9f, 0x76, 0x15, 0x1d, 0xb7, 0xb1, 0x6a, 0x1a, 0xd9, 0x71, 0x56, 0x6a, 0x4d, - 0xeb, 0x68, 0x2d, 0xad, 0x79, 0x2a, 0xf6, 0x78, 0xc4, 0x8b, 0xcc, 0x74, 0xcf, 0x88, 0xc1, 0xbf, - 0x03, 0xe7, 0x7c, 0x46, 0x19, 0x25, 0x19, 0xf3, 0xeb, 0x30, 0xe5, 0xb5, 0xc4, 0x48, 0x89, 0xfc, - 0x17, 0x71, 0x98, 0x0d, 0xb0, 0x01, 0xda, 0x86, 0x09, 0x43, 0x95, 0x3b, 0xc6, 0x91, 0x66, 0x52, - 0xff, 0xbd, 0x11, 0x61, 0xb2, 0x5c, 0x95, 0xf2, 0x92, 0xc7, 0xed, 0x98, 0xe8, 0xce, 0x46, 0x1b, - 0x30, 0x46, 0xec, 0xe9, 0x4f, 0xa7, 0x41, 0x72, 0x08, 0xcd, 0x95, 0x42, 0x67, 0xf2, 0xaf, 0xc3, - 0x0c, 0xbb, 0x02, 0xba, 0x0c, 0x69, 0x67, 0x05, 0x49, 0x69, 0xd0, 0xbd, 0x82, 0x43, 0x2a, 0x35, - 0xf8, 0x57, 0x61, 0xca, 0x2b, 0x0c, 0x2d, 0xc2, 0x24, 0x75, 0x08, 0x97, 0x7d, 0x82, 0x10, 0x4a, - 0x0d, 0x37, 0xa6, 0xdf, 0x85, 0x39, 0xd6, 0xcf, 0x68, 0x28, 0x5f, 0x77, 0xf7, 0x40, 0x6c, 0x31, - 0xc3, 0xee, 0xc1, 0xd1, 0x53, 0xf8, 0x43, 0x12, 0x32, 0xfe, 0xa0, 0x41, 0xf7, 0x20, 0x75, 0xd0, - 0xd2, 0xea, 0x9f, 0xd0, 0xb9, 0x2f, 0x85, 0x45, 0x57, 0x6e, 0xc3, 0xe2, 0x22, 0xd4, 0xed, 0x98, - 0x48, 0x26, 0x59, 0xb3, 0xdb, 0x5a, 0x57, 0x35, 0xa9, 0xf5, 0xc2, 0x67, 0x3f, 0xb4, 0xb8, 0x7a, - 0xb3, 0xed, 0x49, 0x68, 0x13, 0xd2, 0xc4, 0xed, 0xa4, 0xb6, 0xd6, 0x70, 0x0e, 0x9f, 0xab, 0xa1, - 0x32, 0xf2, 0x36, 0xef, 0x43, 0xad, 0x81, 0x45, 0x90, 0xdd, 0xdf, 0xfc, 0x34, 0xa4, 0x3d, 0xba, - 0xf1, 0x5b, 0x90, 0xf6, 0x2c, 0x86, 0x2e, 0xc0, 0xf8, 0xa1, 0x21, 0xb9, 0x89, 0x76, 0x52, 0x1c, - 0x3b, 0x34, 0xec, 0xb4, 0x79, 0x19, 0xd2, 0xb6, 0x16, 0xd2, 0x61, 0x4b, 0x6e, 0x1a, 0xd9, 0xf8, - 0x4a, 0xc2, 0x7a, 0x47, 0x36, 0xe9, 0xbe, 0x45, 0xe1, 0xff, 0xcd, 0x01, 0xf4, 0x96, 0x44, 0xf7, - 0x20, 0x69, 0x6b, 0x49, 0xd2, 0xf5, 0xea, 0x10, 0x5a, 0xe6, 0x6c, 0x55, 0xed, 0x59, 0xc2, 0x6f, - 0x39, 0x48, 0xda, 0x62, 0xfc, 0xa7, 0x5a, 0xb5, 0x54, 0xd9, 0x2a, 0x17, 0xa5, 0xca, 0xce, 0x66, - 0x51, 0x7a, 0x2c, 0x96, 0x6a, 0x45, 0x31, 0xc3, 0xa1, 0x45, 0xb8, 0xe0, 0xa5, 0x8b, 0xc5, 0xfc, - 0x66, 0x51, 0x94, 0x76, 0x2a, 0xe5, 0x27, 0x99, 0x38, 0xe2, 0x61, 0xe1, 0xe1, 0x5e, 0xb9, 0x56, - 0xea, 0x1f, 0x4b, 0xa0, 0x25, 0xc8, 0x7a, 0xc6, 0xa8, 0x0c, 0x2a, 0x36, 0x69, 0x89, 0xf5, 0x8c, - 0x92, 0x9f, 0x74, 0x30, 0xb5, 0x31, 0xed, 0xbe, 0x0c, 0xdb, 0xd9, 0x1e, 0xc3, 0x34, 0x93, 0xa3, - 0xad, 0x0a, 0x90, 0x26, 0x95, 0x86, 0x74, 0x70, 0x6a, 0xda, 0x55, 0x11, 0xb7, 0x9a, 0x10, 0xa7, - 0x1d, 0xea, 0x86, 0x45, 0xb4, 0xcc, 0xda, 0x52, 0xda, 0x8a, 0x49, 0x79, 0xe2, 0x36, 0x0f, 0xd8, - 0x24, 0x9b, 0x41, 0xf8, 0x3a, 0x0e, 0x63, 0xf4, 0xdd, 0x5c, 0xf3, 0x9c, 0x12, 0x8c, 0x48, 0x87, - 0x4a, 0x44, 0x32, 0xc1, 0x11, 0x67, 0x83, 0x03, 0x6d, 0xc3, 0x8c, 0x37, 0x95, 0x9e, 0x38, 0x75, - 0xe7, 0x15, 0xf6, 0x05, 0x79, 0xe3, 0xf9, 0x84, 0x56, 0x9b, 0xd3, 0xc7, 0x5e, 0x1a, 0xda, 0x80, - 0x19, 0x5f, 0x36, 0x4e, 0x0e, 0xce, 0xc6, 0xd3, 0x75, 0x26, 0x31, 0xe5, 0x61, 0xd6, 0x49, 0xa4, - 0x2d, 0x2c, 0x99, 0x34, 0xd1, 0xd2, 0xd3, 0x22, 0xd3, 0x97, 0x80, 0x51, 0x8f, 0xd9, 0xa1, 0xf1, - 0xef, 0x03, 0xea, 0xd7, 0x75, 0xa4, 0xac, 0xd9, 0x85, 0xd9, 0x80, 0x14, 0x8f, 0x72, 0x30, 0x69, - 0xbf, 0x2a, 0x43, 0x31, 0x31, 0xad, 0x68, 0xfb, 0x35, 0xea, 0xb1, 0x58, 0xfc, 0x1d, 0x1d, 0x1f, - 0x62, 0x5d, 0xc7, 0x0d, 0x3b, 0x3c, 0x02, 0xf9, 0x5d, 0x16, 0xe1, 0x67, 0x1c, 0x4c, 0x38, 0x74, - 0xb4, 0x0e, 0x13, 0x06, 0x6e, 0x92, 0xe3, 0x87, 0xac, 0x75, 0xc9, 0x3f, 0x37, 0x57, 0xa5, 0x0c, - 0xb4, 0xf6, 0x77, 0xf8, 0xad, 0xda, 0x9f, 0x19, 0x1a, 0x69, 0xf3, 0x7f, 0xe6, 0x60, 0x76, 0x13, - 0xb7, 0xb0, 0xbf, 0x4a, 0x89, 0xca, 0xb0, 0xde, 0x83, 0x3d, 0xce, 0x1e, 0xec, 0x01, 0xa2, 0x22, - 0x0e, 0xf6, 0x33, 0x1d, 0x76, 0x0b, 0x30, 0xc7, 0xae, 0x46, 0xd2, 0xbb, 0xf0, 0x9f, 0x04, 0x5c, - 0xb2, 0x7c, 0x41, 0xd7, 0x5a, 0x2d, 0xac, 0xef, 0x76, 0x0f, 0x5a, 0x8a, 0x71, 0x34, 0xc2, 0xe6, - 0x2e, 0xc0, 0xb8, 0xaa, 0x35, 0x3c, 0xc1, 0x33, 0x66, 0x3d, 0x96, 0x1a, 0xa8, 0x08, 0xe7, 0xfd, - 0x65, 0xd6, 0x29, 0x4d, 0xc2, 0xe1, 0x45, 0x56, 0xe6, 0xd8, 0x7f, 0x82, 0xf0, 0x30, 0x61, 0x15, - 0x88, 0x9a, 0xda, 0x3a, 0xb5, 0x23, 0x66, 0x42, 0x74, 0x9f, 0x91, 0xe8, 0xaf, 0x98, 0xde, 0x70, - 0x2b, 0xa6, 0xc8, 0x1d, 0x45, 0x15, 0x4f, 0x1f, 0xf7, 0x45, 0xfc, 0x98, 0x2d, 0xfa, 0xed, 0x21, - 0x45, 0x0f, 0xcc, 0x04, 0x67, 0x79, 0x8b, 0xcf, 0x21, 0x7c, 0xff, 0xc6, 0xc1, 0xe5, 0xd0, 0x2d, - 0xd0, 0x23, 0xbf, 0x01, 0xe7, 0x3a, 0x64, 0xc0, 0x35, 0x02, 0x89, 0xb2, 0xbb, 0x03, 0x8d, 0x40, - 0x1b, 0x6f, 0x4a, 0x65, 0xcc, 0x30, 0xd3, 0x61, 0x88, 0x7c, 0x1e, 0x66, 0x03, 0xd8, 0x46, 0xda, - 0xcc, 0x37, 0x1c, 0xac, 0xf4, 0x54, 0xd9, 0x53, 0x3b, 0xcf, 0xcf, 0x7d, 0x6b, 0x3d, 0xdf, 0x22, - 0x29, 0xff, 0x4e, 0xff, 0xde, 0x83, 0x17, 0x7c, 0x51, 0x11, 0x7c, 0x15, 0xae, 0x44, 0x2c, 0x4d, - 0xc3, 0xf9, 0xeb, 0x24, 0x5c, 0xd9, 0x97, 0x5b, 0x4a, 0xc3, 0x2d, 0xe4, 0x02, 0x20, 0x8a, 0x68, - 0x93, 0xd4, 0xfb, 0x22, 0x80, 0x64, 0xad, 0x7b, 0x6e, 0xd4, 0x0e, 0x92, 0x3f, 0xc4, 0x71, 0xf8, - 0x1c, 0x9b, 0xb0, 0x27, 0x01, 0x4d, 0xd8, 0xdb, 0xc3, 0xeb, 0x1a, 0xd5, 0x92, 0xed, 0xf9, 0x13, - 0xcc, 0x5b, 0xc3, 0xcb, 0x8d, 0xf0, 0x82, 0x33, 0x47, 0xf1, 0x77, 0xd9, 0x35, 0xfd, 0x35, 0x09, - 0x42, 0xd4, 0xee, 0x69, 0x0e, 0x11, 0x61, 0xb2, 0xae, 0xa9, 0x87, 0x8a, 0xde, 0xc6, 0x0d, 0x5a, - 0xfd, 0xbf, 0x39, 0x8c, 0xf1, 0x68, 0x02, 0x29, 0x38, 0x73, 0xc5, 0x9e, 0x18, 0x94, 0x85, 0xf1, - 0x36, 0x36, 0x0c, 0xb9, 0xe9, 0xa8, 0xe5, 0x3c, 0xf2, 0x5f, 0x24, 0x60, 0xd2, 0x9d, 0x82, 0xd4, - 0x3e, 0x0f, 0x26, 0xe9, 0x6b, 0xeb, 0x59, 0x14, 0x78, 0x76, 0x67, 0x8e, 0x3f, 0x83, 0x33, 0x37, - 0x18, 0x67, 0x26, 0xe1, 0xb0, 0xf9, 0x4c, 0x6a, 0x47, 0xf8, 0xf5, 0x77, 0xee, 0x80, 0xc2, 0x0f, - 0x00, 0x95, 0x15, 0x83, 0x76, 0x51, 0x6e, 0x5a, 0xb2, 0x9a, 0x26, 0xf9, 0x44, 0xc2, 0xaa, 0xa9, - 0x2b, 0xb4, 0x5c, 0x4f, 0x89, 0xd0, 0x96, 0x4f, 0x8a, 0x84, 0x62, 0x95, 0xf4, 0x86, 0x29, 0xeb, - 0xa6, 0xa2, 0x36, 0x25, 0x53, 0xfb, 0x04, 0xbb, 0x38, 0xb1, 0x43, 0xad, 0x59, 0x44, 0xe1, 0x33, - 0x0e, 0x66, 0x19, 0xf1, 0xd4, 0x27, 0xef, 0xc2, 0x78, 0x4f, 0x36, 0x53, 0xc6, 0x07, 0x70, 0xe7, - 0x88, 0xd9, 0x9c, 0x19, 0x68, 0x19, 0x40, 0xc5, 0x27, 0x26, 0xb3, 0xee, 0xa4, 0x45, 0xb1, 0xd7, - 0xe4, 0xd7, 0x20, 0x45, 0xcc, 0x30, 0x6c, 0xbf, 0xfc, 0x45, 0x1c, 0xd0, 0x16, 0x36, 0xdd, 0x36, - 0x88, 0xda, 0x20, 0xc4, 0x97, 0xb8, 0x67, 0xf0, 0xa5, 0x0f, 0x18, 0x5f, 0x22, 0xde, 0x78, 0xc3, - 0x03, 0x98, 0xfb, 0x96, 0x8e, 0xcc, 0x84, 0x21, 0xad, 0x07, 0xa9, 0xe7, 0x86, 0x6b, 0x3d, 0xce, - 0xe8, 0x32, 0x9b, 0x30, 0xcb, 0xe8, 0x4c, 0xdf, 0xe9, 0x2d, 0x40, 0xf2, 0xb1, 0xac, 0xb4, 0x64, - 0x4b, 0x2f, 0xa7, 0xb3, 0xa3, 0x9d, 0xde, 0x79, 0x77, 0xc4, 0x99, 0x26, 0x08, 0xde, 0x82, 0x81, - 0xca, 0xf3, 0x03, 0xf8, 0x2d, 0xef, 0x41, 0xdb, 0xc7, 0x43, 0xd7, 0xdd, 0x0a, 0x04, 0xf1, 0xaf, - 0xf6, 0x17, 0x09, 0x14, 0x83, 0x0e, 0xc5, 0xf3, 0xff, 0x9e, 0x84, 0xc5, 0x08, 0x6e, 0x74, 0x17, - 0x12, 0x7a, 0xa7, 0x4e, 0x9d, 0xe9, 0xe5, 0x21, 0xe4, 0xe7, 0xc4, 0xdd, 0xc2, 0x76, 0x4c, 0xb4, - 0x66, 0xa1, 0xc7, 0x7e, 0x08, 0x9e, 0x20, 0x29, 0xaf, 0x0d, 0x23, 0x26, 0x12, 0x8d, 0xff, 0x3c, - 0x0e, 0x09, 0x71, 0xb7, 0x80, 0xde, 0x67, 0x60, 0xe6, 0x9b, 0x43, 0xaa, 0xe7, 0x05, 0x9a, 0xbf, - 0xe2, 0x82, 0x70, 0xee, 0x2c, 0xcc, 0x15, 0xc4, 0x62, 0xbe, 0x56, 0x94, 0x36, 0x8b, 0xe5, 0x62, - 0xad, 0x28, 0x11, 0x1c, 0x3e, 0xc3, 0xa1, 0x25, 0xc8, 0xee, 0xee, 0x6d, 0x94, 0x4b, 0xd5, 0x6d, - 0x69, 0xaf, 0xe2, 0xfc, 0xa2, 0xa3, 0x71, 0x94, 0x81, 0xa9, 0x72, 0xa9, 0x5a, 0xa3, 0x84, 0x6a, - 0x26, 0x61, 0x51, 0xb6, 0x8a, 0x35, 0xa9, 0x90, 0xdf, 0xcd, 0x17, 0x4a, 0xb5, 0x27, 0x99, 0x24, - 0xe2, 0x61, 0x81, 0x95, 0x5d, 0xad, 0xe4, 0x77, 0xab, 0xdb, 0x3b, 0xb5, 0x4c, 0x0a, 0x21, 0x98, - 0xb1, 0xe7, 0x3b, 0xa4, 0x6a, 0x66, 0xcc, 0x92, 0x50, 0x28, 0xef, 0x54, 0x5c, 0x1d, 0xc6, 0xd1, - 0x1c, 0x64, 0x9c, 0x95, 0xc5, 0x62, 0x7e, 0xd3, 0x86, 0x47, 0x26, 0xd0, 0x79, 0x98, 0x2e, 0x7e, - 0xb8, 0x9b, 0xaf, 0x6c, 0x3a, 0x8c, 0x93, 0xbc, 0xea, 0x43, 0xe5, 0x4b, 0x8c, 0xb9, 0xee, 0x8c, - 0xfa, 0x1a, 0x86, 0x06, 0xe8, 0xbf, 0x89, 0xc3, 0x3c, 0x41, 0xf3, 0x1c, 0xec, 0xd0, 0xc9, 0x2f, - 0xab, 0x90, 0x21, 0xf8, 0x83, 0xe4, 0xaf, 0x00, 0x67, 0x08, 0x7d, 0xdf, 0xa9, 0x03, 0x1d, 0xe4, - 0x3d, 0xee, 0x41, 0xde, 0x4b, 0xfe, 0xaa, 0xf8, 0x06, 0x8b, 0x51, 0xfb, 0x56, 0x8b, 0x6a, 0xb4, - 0x1e, 0x06, 0x94, 0x6d, 0xb7, 0xa2, 0xa5, 0x45, 0x1d, 0x69, 0x67, 0xe9, 0xaa, 0xce, 0x98, 0x99, - 0xee, 0xc3, 0x82, 0x5f, 0x5f, 0x9a, 0x24, 0x6e, 0xf6, 0x21, 0xc9, 0x6e, 0xaa, 0x74, 0x79, 0x5d, - 0x0e, 0xe1, 0x1f, 0x1c, 0x4c, 0x38, 0x64, 0xeb, 0xb8, 0x31, 0x94, 0x1f, 0x61, 0x06, 0xb9, 0x9a, - 0xb4, 0x28, 0x2e, 0x10, 0xe6, 0xc5, 0x80, 0xe3, 0x7e, 0x0c, 0x38, 0xf0, 0x3d, 0x27, 0x02, 0xdf, - 0xf3, 0x7b, 0x30, 0x5d, 0xb7, 0xd4, 0x57, 0x34, 0x55, 0x32, 0x95, 0xb6, 0x03, 0x4c, 0xf5, 0xdf, - 0xd9, 0xd4, 0x9c, 0xbb, 0x61, 0x71, 0xca, 0x99, 0x60, 0x91, 0xd0, 0x0a, 0x4c, 0xd9, 0x77, 0x38, - 0x92, 0xa9, 0x49, 0x5d, 0x03, 0x67, 0x53, 0x76, 0x9b, 0x0e, 0x36, 0xad, 0xa6, 0xed, 0x19, 0x58, - 0xf8, 0x0b, 0x07, 0xf3, 0x04, 0x7d, 0xf0, 0xbb, 0xe3, 0x20, 0x2c, 0xdb, 0xeb, 0x71, 0xbe, 0x13, - 0x2c, 0x50, 0xe0, 0x8b, 0x6a, 0xbe, 0xb2, 0xb0, 0xe0, 0x5f, 0x8f, 0x76, 0x5c, 0xbf, 0xe7, 0x60, - 0xce, 0x2a, 0x1f, 0x9c, 0x81, 0xe7, 0x5d, 0xcd, 0x8c, 0xf0, 0x26, 0x7d, 0xc6, 0x4c, 0xfa, 0x8d, - 0x29, 0xfc, 0x91, 0x83, 0x79, 0x9f, 0xae, 0xd4, 0x53, 0xdf, 0xf1, 0x97, 0x46, 0x57, 0xbd, 0xa5, - 0x51, 0x1f, 0xff, 0x88, 0xc5, 0xd1, 0x1d, 0xa7, 0x38, 0x1a, 0x2d, 0x20, 0x7e, 0x1e, 0x87, 0xe5, - 0x5e, 0x6a, 0xb4, 0x2f, 0x49, 0x1b, 0x23, 0xf4, 0xf6, 0x67, 0xbb, 0x26, 0x7c, 0xe4, 0x4f, 0x75, - 0xb7, 0xfb, 0xb3, 0x75, 0x80, 0x4a, 0x2f, 0xca, 0x01, 0x7f, 0xec, 0x85, 0xe9, 0xd8, 0x75, 0xe9, - 0x2b, 0x1c, 0x12, 0xef, 0x7e, 0x0b, 0x2e, 0xd8, 0x88, 0x87, 0x7b, 0xd5, 0xef, 0xdc, 0xe6, 0x91, - 0x2c, 0x32, 0x21, 0xce, 0x5b, 0xc3, 0xee, 0x8d, 0x34, 0xc5, 0x78, 0x1b, 0xc2, 0xb7, 0x49, 0x58, - 0xa8, 0x68, 0x0d, 0x5c, 0x35, 0xe5, 0xe6, 0x28, 0xe8, 0xe7, 0xf7, 0xfb, 0xc1, 0xa4, 0x38, 0x6b, - 0xcf, 0x60, 0xa9, 0xc3, 0x60, 0x48, 0x28, 0x07, 0xb3, 0x86, 0x29, 0x37, 0xed, 0x08, 0x92, 0xf5, - 0x26, 0x36, 0xa5, 0x8e, 0x6c, 0x1e, 0xd1, 0xf0, 0x38, 0x4f, 0x87, 0x6a, 0xf6, 0xc8, 0xae, 0x6c, - 0x1e, 0x05, 0x83, 0x92, 0xc9, 0x91, 0x41, 0xc9, 0x0f, 0xfc, 0xb8, 0xc0, 0xab, 0x03, 0xf6, 0x12, - 0x71, 0x0e, 0x7e, 0x18, 0x02, 0x38, 0xbe, 0x3e, 0x40, 0xe4, 0x60, 0xa0, 0xf1, 0xec, 0x00, 0xdb, - 0x77, 0x8c, 0x55, 0x5e, 0x84, 0x0b, 0x7d, 0x9b, 0xa7, 0x59, 0xb7, 0x09, 0x59, 0x6b, 0x68, 0x4f, - 0x35, 0x46, 0x74, 0xc7, 0x10, 0x8f, 0x89, 0x87, 0x78, 0x8c, 0xb0, 0x08, 0x17, 0x03, 0x16, 0xa2, - 0x5a, 0xfc, 0x29, 0x45, 0xd4, 0x18, 0x1d, 0x36, 0xff, 0x28, 0x2c, 0x2a, 0xde, 0xf4, 0xbe, 0xf6, - 0x40, 0x84, 0xf9, 0x45, 0xc4, 0xc5, 0x65, 0x48, 0x7b, 0xf9, 0xe8, 0xc9, 0x61, 0x0e, 0x08, 0x9c, - 0xd4, 0x99, 0xd0, 0xfc, 0x31, 0x1f, 0x9a, 0x5f, 0xee, 0x05, 0xd5, 0x38, 0x5b, 0x0d, 0x86, 0x9a, - 0x22, 0x22, 0xac, 0x9e, 0xf6, 0x85, 0xd5, 0x04, 0x7b, 0x45, 0x10, 0x2a, 0xf4, 0xff, 0x20, 0xb0, - 0xa8, 0x53, 0x07, 0x62, 0xf7, 0xc2, 0x53, 0xe0, 0x89, 0xc7, 0x8f, 0x8e, 0xa6, 0xfb, 0xdc, 0x28, - 0xee, 0x77, 0x23, 0x61, 0x19, 0x16, 0x03, 0x65, 0xd3, 0xa5, 0x9f, 0x10, 0xbd, 0xb6, 0x30, 0x05, - 0x63, 0xaa, 0xa6, 0x6c, 0x1a, 0xc3, 0xae, 0x4c, 0x07, 0xbd, 0x2b, 0x13, 0x92, 0xbd, 0xf2, 0x16, - 0xd9, 0x95, 0x5f, 0x34, 0x3d, 0x3b, 0x5f, 0x81, 0x54, 0xd7, 0xc6, 0x15, 0x49, 0xf1, 0x33, 0xcb, - 0xba, 0xf4, 0x9e, 0x35, 0x24, 0x12, 0x0e, 0xe1, 0x4b, 0x0e, 0xd2, 0x1e, 0x32, 0x5a, 0x82, 0x49, - 0x17, 0x66, 0x70, 0xea, 0x74, 0x97, 0x60, 0xbd, 0x03, 0x53, 0x33, 0xe5, 0x16, 0xbd, 0xaa, 0x26, - 0x0f, 0x56, 0x6b, 0xd5, 0x35, 0x30, 0x29, 0xe3, 0x12, 0xa2, 0xfd, 0x1b, 0xdd, 0x84, 0x64, 0x57, - 0x55, 0x4c, 0x3b, 0xf6, 0x66, 0xfc, 0x41, 0x65, 0x2f, 0x95, 0xdb, 0x53, 0x15, 0x53, 0xb4, 0xb9, - 0x84, 0x1b, 0x90, 0xb4, 0x9e, 0xd8, 0xa6, 0x79, 0x12, 0x52, 0x1b, 0x4f, 0x6a, 0xc5, 0x6a, 0x86, - 0x43, 0x00, 0x63, 0xa5, 0xca, 0xce, 0x66, 0xb1, 0x9a, 0x89, 0x0b, 0x4b, 0xee, 0xd6, 0x83, 0xd0, - 0x8e, 0x8f, 0xc9, 0x2b, 0x09, 0xc3, 0x39, 0xf2, 0x81, 0x38, 0xc7, 0x32, 0x73, 0x38, 0x0d, 0x40, - 0x38, 0xbe, 0x4c, 0xc0, 0x7c, 0x20, 0x1f, 0xba, 0xe3, 0xc5, 0x36, 0xae, 0x44, 0xca, 0xf4, 0xa2, - 0x1a, 0x8f, 0x82, 0x51, 0x8d, 0x1b, 0xd1, 0x02, 0x22, 0xf1, 0x8c, 0xdf, 0x70, 0x04, 0xcf, 0x58, - 0x67, 0x1a, 0xf4, 0xeb, 0x03, 0x55, 0xf2, 0x76, 0xe4, 0xfb, 0x21, 0x40, 0x46, 0xb5, 0x96, 0xdf, - 0x2a, 0x4a, 0x7b, 0x15, 0xf2, 0xd7, 0x05, 0x32, 0xe6, 0x20, 0xb3, 0x55, 0x74, 0x90, 0x0a, 0xa9, - 0x5a, 0xcb, 0xd7, 0xaa, 0x99, 0x78, 0x3f, 0x88, 0x90, 0xe0, 0x8f, 0x7c, 0x20, 0x42, 0x81, 0xd1, - 0x71, 0x6d, 0xf8, 0x5d, 0x0f, 0x0d, 0x1f, 0xcc, 0x01, 0xa2, 0x3e, 0xe1, 0xfd, 0xa6, 0xf7, 0x33, - 0x0e, 0x66, 0x19, 0x32, 0x75, 0x11, 0xcf, 0x1d, 0x1a, 0xc7, 0xdc, 0xa1, 0xad, 0xc1, 0x9c, 0xd5, - 0x01, 0x91, 0x28, 0x34, 0xa4, 0x0e, 0xd6, 0x25, 0x6b, 0x84, 0xc6, 0xc2, 0xf9, 0xb6, 0x7c, 0x42, - 0x31, 0xd7, 0x5d, 0xac, 0x5b, 0x82, 0x9f, 0x03, 0xca, 0x28, 0xfc, 0x92, 0x23, 0x45, 0xc3, 0xc8, - 0xdd, 0xc2, 0xa0, 0x0c, 0x12, 0xd0, 0x4e, 0x24, 0x86, 0x6f, 0x27, 0x84, 0x3c, 0xa9, 0x14, 0xce, - 0x50, 0xb9, 0xdf, 0xfe, 0x2f, 0x07, 0x13, 0xa5, 0x06, 0x56, 0x4d, 0x2b, 0x74, 0x2a, 0x30, 0xcd, - 0x7c, 0xf3, 0x8c, 0x96, 0x42, 0x3e, 0x85, 0xb6, 0xb7, 0xce, 0x2f, 0x47, 0x7e, 0x28, 0x2d, 0xc4, - 0xd0, 0xa1, 0xe7, 0x7b, 0x6d, 0x06, 0x45, 0x7e, 0xa9, 0x6f, 0x66, 0x40, 0x16, 0xe1, 0xaf, 0x0d, - 0xe0, 0x72, 0xd7, 0x79, 0x0b, 0x52, 0xf6, 0xa7, 0xa2, 0x68, 0xce, 0xfd, 0x24, 0xd5, 0xf3, 0x25, - 0x29, 0x3f, 0xef, 0xa3, 0x3a, 0xf3, 0x6e, 0xff, 0x6b, 0x02, 0xa0, 0xd7, 0x00, 0xa1, 0x07, 0x30, - 0xe5, 0xfd, 0x5a, 0x0d, 0x2d, 0x46, 0x7c, 0x2b, 0xc9, 0x2f, 0x05, 0x0f, 0xba, 0x3a, 0x3d, 0x80, - 0x29, 0xef, 0xb7, 0x11, 0x3d, 0x61, 0x01, 0xdf, 0x67, 0xf4, 0x84, 0x05, 0x7e, 0x4e, 0x11, 0x43, - 0x2d, 0xb8, 0x10, 0x72, 0x3b, 0x8e, 0xae, 0x0f, 0xf7, 0x0d, 0x01, 0xff, 0xf2, 0x90, 0xd7, 0xec, - 0x42, 0x0c, 0xe9, 0x70, 0x31, 0xf4, 0x52, 0x18, 0xad, 0x0e, 0x7b, 0x65, 0xcd, 0xbf, 0x32, 0x04, - 0xa7, 0xbb, 0x66, 0x17, 0xf8, 0xf0, 0x9b, 0x28, 0xf4, 0xca, 0xd0, 0x57, 0xa4, 0xfc, 0x8d, 0xe1, - 0x2f, 0xb6, 0x84, 0x18, 0xda, 0x86, 0xb4, 0xe7, 0x9a, 0x06, 0xf1, 0x81, 0x77, 0x37, 0x44, 0xf0, - 0x62, 0xc4, 0xbd, 0x0e, 0x91, 0xe4, 0xb9, 0x4a, 0xe8, 0x49, 0xea, 0xbf, 0x13, 0xe9, 0x49, 0x0a, - 0xb8, 0x7b, 0xf0, 0x9b, 0xdf, 0x77, 0x84, 0x06, 0x99, 0x3f, 0xf8, 0x0c, 0x0e, 0x32, 0x7f, 0xc8, - 0x79, 0x2c, 0xc4, 0xd0, 0x23, 0x98, 0x61, 0xe1, 0x46, 0xb4, 0x1c, 0x09, 0x9b, 0xf2, 0x97, 0xc2, - 0x86, 0xbd, 0x22, 0x59, 0x74, 0xab, 0x27, 0x32, 0x10, 0x65, 0xeb, 0x89, 0x0c, 0x01, 0xc5, 0x62, - 0x56, 0x7e, 0x62, 0x90, 0xa3, 0x5e, 0x7e, 0x0a, 0x02, 0xcb, 0x7a, 0xf9, 0x29, 0x10, 0x6e, 0x12, - 0x62, 0x48, 0x81, 0x85, 0x60, 0xfc, 0x03, 0x5d, 0x1b, 0x0a, 0x97, 0xe1, 0xaf, 0x0f, 0x62, 0x73, - 0x53, 0xcd, 0x57, 0x29, 0x48, 0xda, 0xc7, 0x51, 0x0d, 0xce, 0xf9, 0xfa, 0x4f, 0x74, 0x29, 0xba, - 0x2b, 0xe7, 0x2f, 0x87, 0x8e, 0xbb, 0x3b, 0x79, 0x0a, 0xe7, 0xfb, 0x3a, 0x4a, 0xb4, 0xe2, 0x9d, - 0x17, 0xd4, 0xd5, 0xf2, 0x57, 0x22, 0x38, 0xfc, 0xb2, 0xd9, 0xb4, 0xb3, 0x32, 0xa8, 0xe5, 0x61, - 0x65, 0x87, 0xa5, 0x9a, 0x8f, 0xc9, 0xe9, 0xef, 0x4f, 0x32, 0x02, 0xab, 0x57, 0x60, 0x7a, 0xb9, - 0x1a, 0xc9, 0xe3, 0xae, 0xf0, 0x91, 0x5b, 0x76, 0x78, 0x6a, 0x74, 0xc4, 0x28, 0x17, 0xd8, 0x1a, - 0xf0, 0x42, 0x14, 0x8b, 0x2b, 0xfe, 0x31, 0x64, 0xfc, 0x47, 0x30, 0x62, 0xde, 0x57, 0x90, 0xdb, - 0xac, 0x84, 0x33, 0xf8, 0x2d, 0xe3, 0x8f, 0x7f, 0xbf, 0x56, 0x41, 0x91, 0x7f, 0x35, 0x92, 0xc7, - 0x9b, 0xb1, 0x3c, 0x95, 0x57, 0x2f, 0x63, 0xf5, 0x57, 0x69, 0xbd, 0x8c, 0x15, 0x50, 0xaa, 0x09, - 0xb1, 0xf5, 0x7b, 0x00, 0xa4, 0x76, 0xc6, 0x6a, 0xb7, 0x8d, 0x96, 0xfa, 0x40, 0xfe, 0xa2, 0xda, - 0x6d, 0xef, 0x74, 0x4c, 0x45, 0x53, 0x8d, 0xec, 0xe7, 0x13, 0x76, 0x8b, 0x3e, 0x69, 0x4f, 0xb0, - 0x06, 0xd6, 0xcb, 0x90, 0xe9, 0xcd, 0x96, 0xec, 0x86, 0x12, 0x5d, 0x09, 0x94, 0x61, 0xff, 0x73, - 0x87, 0x4f, 0xd0, 0x8c, 0x2b, 0xc8, 0x1e, 0x5d, 0x7f, 0x07, 0xa0, 0x6e, 0x28, 0x12, 0x69, 0xd9, - 0xd1, 0x72, 0x9f, 0x9c, 0xfb, 0x0a, 0x6e, 0x35, 0x1c, 0x19, 0xbf, 0xa3, 0xca, 0xd4, 0x0d, 0x85, - 0x74, 0xce, 0xeb, 0xef, 0x41, 0x9a, 0xb6, 0x01, 0x16, 0xdf, 0xa0, 0xf9, 0x54, 0x07, 0xb2, 0x7b, - 0x7b, 0x64, 0xbd, 0xe8, 0xf4, 0x11, 0xf4, 0x33, 0x12, 0x74, 0xb9, 0x4f, 0xc4, 0x43, 0x32, 0xe2, - 0x13, 0x42, 0x7a, 0x07, 0x3a, 0xb6, 0xbe, 0x01, 0x53, 0x8e, 0x18, 0xf3, 0x48, 0x6b, 0xa0, 0x4b, - 0x01, 0x52, 0xac, 0x01, 0x9f, 0x90, 0x34, 0x15, 0x62, 0x0d, 0xf5, 0x54, 0x71, 0xfe, 0x27, 0xab, - 0x5f, 0x15, 0x5a, 0xdb, 0x07, 0xaa, 0x42, 0xc7, 0x36, 0x52, 0x4f, 0x13, 0x75, 0x43, 0x39, 0x18, - 0xb3, 0x27, 0xbd, 0xf1, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xfa, 0x13, 0x27, 0x52, 0x40, 0x38, - 0x00, 0x00, + proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_58ea024178a9e64e) +} + +var fileDescriptor_csi_58ea024178a9e64e = []byte{ + // 3782 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0xcd, 0x73, 0x1b, 0x47, + 0x76, 0xc7, 0xe0, 0x8b, 0xe0, 0x23, 0x09, 0x41, 0xcd, 0x0f, 0x41, 0x43, 0x52, 0xa4, 0x46, 0x96, + 0x96, 0x96, 0x25, 0x70, 0xad, 0x5d, 0xb9, 0x62, 0x4a, 0xde, 0x5d, 0x00, 0x04, 0x49, 0x58, 0x10, + 0x40, 0x0d, 0x40, 0xca, 0x52, 0xe2, 0x1a, 0x0f, 0x81, 0x26, 0x38, 0x65, 0x60, 0x06, 0x3b, 0x33, + 0xa0, 0xc5, 0x5c, 0x52, 0x9b, 0x9c, 0x52, 0x39, 0xa7, 0x92, 0x9c, 0xb2, 0xe5, 0xf8, 0x92, 0x54, + 0x5c, 0xae, 0x1c, 0x52, 0x39, 0x26, 0x95, 0x63, 0xfe, 0x80, 0x24, 0xe5, 0x8b, 0x2f, 0xa9, 0x1c, + 0x5c, 0x49, 0x95, 0xcf, 0x39, 0xa5, 0x66, 0xba, 0x67, 0x30, 0x3d, 0x18, 0x0c, 0x00, 0x51, 0x2a, + 0x1f, 0xf6, 0x44, 0xcc, 0xeb, 0xd7, 0xaf, 0x5f, 0x77, 0xbf, 0xf7, 0xfa, 0xbd, 0x5f, 0x37, 0xe1, + 0x61, 0x5b, 0x31, 0xcf, 0xfa, 0x27, 0xb9, 0xa6, 0xd6, 0xdd, 0x6e, 0x6a, 0xaa, 0x29, 0x2b, 0x2a, + 0xd6, 0xef, 0x1b, 0xa6, 0xa6, 0xcb, 0x6d, 0x7c, 0x5f, 0x51, 0x4d, 0xac, 0x9f, 0xca, 0x4d, 0xbc, + 0x6d, 0xf4, 0x70, 0x73, 0xbb, 0x69, 0x28, 0xb9, 0x9e, 0xae, 0x99, 0x1a, 0x4a, 0x5a, 0x3f, 0xcf, + 0xdf, 0xe7, 0x37, 0xdb, 0x9a, 0xd6, 0xee, 0xe0, 0x6d, 0x9b, 0x7a, 0xd2, 0x3f, 0xdd, 0x6e, 0x61, + 0xa3, 0xa9, 0x2b, 0x3d, 0x53, 0xd3, 0x09, 0x27, 0xbf, 0xe1, 0xe7, 0x30, 0x95, 0x2e, 0x36, 0x4c, + 0xb9, 0xdb, 0xa3, 0x0c, 0x37, 0xfc, 0x0c, 0x5f, 0xe8, 0x72, 0xaf, 0x87, 0x75, 0x83, 0xb4, 0x0b, + 0x2b, 0xb0, 0xb4, 0x8f, 0xcd, 0xc3, 0x4e, 0xbf, 0xad, 0xa8, 0x65, 0xf5, 0x54, 0x13, 0xf1, 0xaf, + 0xfb, 0xd8, 0x30, 0x85, 0xff, 0xe4, 0x60, 0xd9, 0xd7, 0x60, 0xf4, 0x34, 0xd5, 0xc0, 0x08, 0x41, + 0x5c, 0x95, 0xbb, 0x38, 0xcb, 0x6d, 0x72, 0x5b, 0xb3, 0xa2, 0xfd, 0x1b, 0xdd, 0x86, 0xf4, 0x39, + 0x56, 0x5b, 0x9a, 0x2e, 0x9d, 0x63, 0xdd, 0x50, 0x34, 0x35, 0x1b, 0xb5, 0x5b, 0x17, 0x08, 0xf5, + 0x98, 0x10, 0xd1, 0x3e, 0xa4, 0xba, 0xb2, 0xaa, 0x9c, 0x62, 0xc3, 0xcc, 0xc6, 0x36, 0x63, 0x5b, + 0x73, 0x0f, 0xde, 0xcb, 0x91, 0xa9, 0xe6, 0x02, 0xc7, 0xca, 0x3d, 0xa5, 0xdc, 0x25, 0xd5, 0xd4, + 0x2f, 0x44, 0xb7, 0x33, 0xff, 0x08, 0x16, 0x98, 0x26, 0x94, 0x81, 0xd8, 0xe7, 0xf8, 0x82, 0xea, + 0x64, 0xfd, 0x44, 0x4b, 0x90, 0x38, 0x97, 0x3b, 0x7d, 0x4c, 0x35, 0x21, 0x1f, 0x3b, 0xd1, 0xdf, + 0xe3, 0x84, 0x1b, 0xb0, 0xe6, 0x8e, 0x56, 0x94, 0x7b, 0xf2, 0x89, 0xd2, 0x51, 0x4c, 0x05, 0x1b, + 0xce, 0xd4, 0x3f, 0x85, 0xf5, 0x11, 0xed, 0x74, 0x05, 0x1e, 0xc3, 0x7c, 0xd3, 0x43, 0xcf, 0x72, + 0xf6, 0x54, 0xb2, 0xce, 0x54, 0x7c, 0x3d, 0x2f, 0x44, 0x86, 0x5b, 0xf8, 0x4d, 0x02, 0x32, 0x7e, + 0x16, 0xf4, 0x18, 0x66, 0x0c, 0xac, 0x9f, 0x2b, 0x4d, 0xb2, 0xae, 0x73, 0x0f, 0x36, 0x47, 0x49, + 0xcb, 0xd5, 0x09, 0xdf, 0x41, 0x44, 0x74, 0xba, 0xa0, 0x23, 0xc8, 0x9c, 0x6b, 0x9d, 0x7e, 0x17, + 0x4b, 0xf8, 0x55, 0x4f, 0x56, 0xdd, 0x0d, 0x98, 0x7b, 0xb0, 0x35, 0x52, 0xcc, 0xb1, 0xdd, 0xa1, + 0xe4, 0xf0, 0x1f, 0x44, 0xc4, 0x2b, 0xe7, 0x2c, 0x09, 0x55, 0x60, 0x41, 0xee, 0xf4, 0xce, 0x64, + 0xe9, 0x14, 0xcb, 0x66, 0x5f, 0xc7, 0xd9, 0x98, 0x2d, 0xf3, 0xf6, 0x48, 0x99, 0x79, 0x8b, 0x7b, + 0x8f, 0x30, 0x1f, 0x44, 0xc4, 0x79, 0xd9, 0xf3, 0xcd, 0xff, 0x05, 0x07, 0x33, 0x54, 0x77, 0xf4, + 0x21, 0xc4, 0xcd, 0x8b, 0x1e, 0x99, 0x6b, 0x3a, 0x44, 0x20, 0xe5, 0xcf, 0x35, 0x2e, 0x7a, 0x58, + 0xb4, 0xbb, 0x08, 0xcf, 0x20, 0x6e, 0x7d, 0xa1, 0x39, 0x98, 0x39, 0xaa, 0x3e, 0xa9, 0xd6, 0x9e, + 0x57, 0x33, 0x11, 0xb4, 0x02, 0xa8, 0x58, 0xab, 0x36, 0xc4, 0x5a, 0xa5, 0x52, 0x12, 0xa5, 0x7a, + 0x49, 0x3c, 0x2e, 0x17, 0x4b, 0x19, 0x0e, 0xbd, 0x03, 0x9b, 0xc7, 0xb5, 0xca, 0xd1, 0xd3, 0x92, + 0x94, 0x2f, 0x16, 0x4b, 0xf5, 0x7a, 0xb9, 0x50, 0xae, 0x94, 0x1b, 0x2f, 0xa4, 0x62, 0xad, 0x5a, + 0x6f, 0x88, 0xf9, 0x72, 0xb5, 0x51, 0xcf, 0x44, 0xf9, 0x3f, 0xe6, 0xe0, 0x8a, 0x6f, 0x39, 0x50, + 0x9e, 0xd1, 0xf0, 0xfe, 0xa4, 0xcb, 0xe8, 0xd5, 0xf4, 0x5e, 0x90, 0xa6, 0x00, 0xc9, 0x5a, 0xb5, + 0x52, 0xae, 0x5a, 0xda, 0xcd, 0xc1, 0x4c, 0x6d, 0x6f, 0xcf, 0xfe, 0x88, 0xf2, 0x4d, 0x98, 0xf7, + 0x2e, 0x1f, 0xfa, 0x05, 0xa3, 0xc0, 0xdd, 0x89, 0xd6, 0xdc, 0x3b, 0xfa, 0x62, 0xc0, 0xe8, 0x85, + 0x24, 0x11, 0x2a, 0xa4, 0x61, 0xfe, 0x50, 0xd7, 0x4e, 0xb0, 0x63, 0xf2, 0x79, 0x58, 0xa0, 0xdf, + 0xd4, 0xc4, 0x7f, 0x0a, 0x09, 0x1d, 0xcb, 0xad, 0x0b, 0x6a, 0x8d, 0x7c, 0x8e, 0x84, 0x91, 0x9c, + 0x13, 0x46, 0x72, 0x05, 0x4d, 0xeb, 0x1c, 0x5b, 0x2e, 0x25, 0x12, 0x46, 0xe1, 0x87, 0x38, 0x2c, + 0x16, 0x75, 0x2c, 0x9b, 0x98, 0x2c, 0x09, 0x15, 0x1d, 0x18, 0x2e, 0x1e, 0x43, 0xda, 0x72, 0x89, + 0xa6, 0x62, 0x5e, 0x48, 0xba, 0xac, 0xb6, 0x31, 0xb5, 0xd6, 0x65, 0x67, 0x96, 0x45, 0xda, 0x2a, + 0x5a, 0x8d, 0xe2, 0x42, 0xd3, 0xfb, 0x89, 0xca, 0xb0, 0x48, 0xad, 0x9d, 0xf1, 0xc2, 0x18, 0xeb, + 0x85, 0x44, 0x0b, 0x8f, 0x17, 0xa2, 0x73, 0x96, 0xa2, 0x60, 0x03, 0x3d, 0x01, 0xe8, 0xc9, 0xba, + 0xdc, 0xc5, 0x26, 0xd6, 0x8d, 0x6c, 0x9c, 0x0d, 0x49, 0x01, 0xb3, 0xc9, 0x1d, 0xba, 0xdc, 0x24, + 0x24, 0x79, 0xba, 0xa3, 0x7d, 0xcb, 0x87, 0x9b, 0x3a, 0x36, 0x8d, 0x6c, 0xc2, 0x96, 0xb4, 0x15, + 0x26, 0xa9, 0x4e, 0x58, 0x6d, 0x31, 0x85, 0xd8, 0x5f, 0x16, 0x38, 0xd1, 0xe9, 0x8d, 0x6a, 0xb0, + 0xec, 0x4c, 0x50, 0x53, 0x4d, 0xac, 0x9a, 0x92, 0xa1, 0xf5, 0xf5, 0x26, 0xce, 0x26, 0xed, 0x55, + 0x5a, 0xf5, 0x4d, 0x91, 0xf0, 0xd4, 0x6d, 0x16, 0x91, 0x2e, 0x0d, 0x43, 0x44, 0x2f, 0x81, 0x97, + 0x9b, 0x4d, 0x6c, 0x18, 0x0a, 0x59, 0x0b, 0x49, 0xc7, 0xbf, 0xee, 0x2b, 0x3a, 0xee, 0x62, 0xd5, + 0x34, 0xb2, 0x33, 0xac, 0xd4, 0x86, 0xd6, 0xd3, 0x3a, 0x5a, 0xfb, 0x42, 0x1c, 0xf0, 0x88, 0xd7, + 0x99, 0xee, 0x9e, 0x16, 0x83, 0xff, 0x08, 0xae, 0xf8, 0x16, 0x65, 0x9a, 0x60, 0xcc, 0xef, 0xc0, + 0xbc, 0x77, 0x25, 0xa6, 0x0a, 0xe4, 0x7f, 0x16, 0x85, 0xc5, 0x80, 0x35, 0x40, 0x07, 0x90, 0x32, + 0x54, 0xb9, 0x67, 0x9c, 0x69, 0x26, 0xb5, 0xdf, 0xbb, 0x21, 0x4b, 0x96, 0xab, 0x53, 0x5e, 0xf2, + 0x79, 0x10, 0x11, 0xdd, 0xde, 0xa8, 0x00, 0x49, 0xb2, 0x9e, 0xfe, 0x70, 0x1a, 0x24, 0x87, 0xd0, + 0x5c, 0x29, 0xb4, 0x27, 0xff, 0x3e, 0xa4, 0xd9, 0x11, 0xd0, 0x06, 0xcc, 0x39, 0x23, 0x48, 0x4a, + 0x8b, 0xce, 0x15, 0x1c, 0x52, 0xb9, 0xc5, 0xbf, 0x07, 0xf3, 0x5e, 0x61, 0x68, 0x15, 0x66, 0xa9, + 0x41, 0xb8, 0xec, 0x29, 0x42, 0x28, 0xb7, 0x5c, 0x9f, 0xfe, 0x05, 0x2c, 0xb1, 0x76, 0x46, 0x5d, + 0xf9, 0x8e, 0x3b, 0x07, 0xb2, 0x16, 0x69, 0x76, 0x0e, 0x8e, 0x9e, 0xc2, 0xdf, 0xc5, 0x21, 0xe3, + 0x77, 0x1a, 0xf4, 0x18, 0x12, 0x27, 0x1d, 0xad, 0xf9, 0x39, 0xed, 0xfb, 0xce, 0x28, 0xef, 0xca, + 0x15, 0x2c, 0x2e, 0x42, 0x3d, 0x88, 0x88, 0xa4, 0x93, 0xd5, 0xbb, 0xab, 0xf5, 0x55, 0x93, 0xae, + 0xde, 0xe8, 0xde, 0x4f, 0x2d, 0xae, 0x41, 0x6f, 0xbb, 0x13, 0xda, 0x85, 0x39, 0x62, 0x76, 0x52, + 0x57, 0x6b, 0x39, 0x87, 0xcf, 0xad, 0x91, 0x32, 0xf2, 0x36, 0xef, 0x53, 0xad, 0x85, 0x45, 0x90, + 0xdd, 0xdf, 0xfc, 0x02, 0xcc, 0x79, 0x74, 0xe3, 0xf7, 0x61, 0xce, 0x33, 0x18, 0xba, 0x06, 0x33, + 0xa7, 0x86, 0xe4, 0x06, 0xda, 0x59, 0x31, 0x79, 0x6a, 0xd8, 0x61, 0x73, 0x03, 0xe6, 0x6c, 0x2d, + 0xa4, 0xd3, 0x8e, 0xdc, 0x36, 0xb2, 0xd1, 0xcd, 0x98, 0xb5, 0x47, 0x36, 0x69, 0xcf, 0xa2, 0xf0, + 0xff, 0xc3, 0x01, 0x0c, 0x86, 0x44, 0x8f, 0x21, 0x6e, 0x6b, 0x49, 0xc2, 0xf5, 0xd6, 0x04, 0x5a, + 0xe6, 0x6c, 0x55, 0xed, 0x5e, 0xc2, 0x5f, 0x73, 0x10, 0xb7, 0xc5, 0xf8, 0x4f, 0xb5, 0x7a, 0xb9, + 0xba, 0x5f, 0x29, 0x49, 0xd5, 0xda, 0x6e, 0x49, 0x7a, 0x2e, 0x96, 0x1b, 0x25, 0x31, 0xc3, 0xa1, + 0x55, 0xb8, 0xe6, 0xa5, 0x8b, 0xa5, 0xfc, 0x6e, 0x49, 0x94, 0x6a, 0xd5, 0xca, 0x8b, 0x4c, 0x14, + 0xf1, 0xb0, 0xf2, 0xf4, 0xa8, 0xd2, 0x28, 0x0f, 0xb7, 0xc5, 0xd0, 0x1a, 0x64, 0x3d, 0x6d, 0x54, + 0x06, 0x15, 0x1b, 0xb7, 0xc4, 0x7a, 0x5a, 0xc9, 0x4f, 0xda, 0x98, 0x28, 0x2c, 0xb8, 0x9b, 0x61, + 0x1b, 0xdb, 0x73, 0x58, 0x60, 0x62, 0xb4, 0x95, 0x01, 0xd2, 0xa0, 0xd2, 0x92, 0x4e, 0x2e, 0x4c, + 0x3b, 0x2b, 0xe2, 0xb6, 0x62, 0xe2, 0x82, 0x43, 0x2d, 0x58, 0x44, 0x6b, 0x59, 0x3b, 0x4a, 0x57, + 0x31, 0x29, 0x4f, 0xd4, 0xe6, 0x01, 0x9b, 0x64, 0x33, 0x08, 0xdf, 0x45, 0x21, 0x49, 0xf7, 0xe6, + 0xb6, 0xe7, 0x94, 0x60, 0x44, 0x3a, 0x54, 0x22, 0x92, 0x71, 0x8e, 0x28, 0xeb, 0x1c, 0xe8, 0x00, + 0xd2, 0xde, 0x50, 0xfa, 0xca, 0xc9, 0x3b, 0x6f, 0xb2, 0x1b, 0xe4, 0xf5, 0xe7, 0x57, 0x34, 0xdb, + 0x5c, 0x38, 0xf7, 0xd2, 0x50, 0x01, 0xd2, 0xbe, 0x68, 0x1c, 0x1f, 0x1f, 0x8d, 0x17, 0x9a, 0x4c, + 0x60, 0xca, 0xc3, 0xa2, 0x13, 0x48, 0x3b, 0x58, 0x32, 0x69, 0xa0, 0xa5, 0xa7, 0x45, 0x66, 0x28, + 0x00, 0xa3, 0x01, 0xb3, 0x43, 0xe3, 0x7f, 0x05, 0x68, 0x58, 0xd7, 0xa9, 0xa2, 0x66, 0x1f, 0x16, + 0x03, 0x42, 0x3c, 0xca, 0xc1, 0xac, 0xbd, 0x55, 0x86, 0x62, 0x62, 0x9a, 0xd1, 0x0e, 0x6b, 0x34, + 0x60, 0xb1, 0xf8, 0x7b, 0x3a, 0x3e, 0xc5, 0xba, 0x8e, 0x5b, 0xb6, 0x7b, 0x04, 0xf2, 0xbb, 0x2c, + 0xc2, 0x9f, 0x70, 0x90, 0x72, 0xe8, 0x68, 0x07, 0x52, 0x06, 0x6e, 0x93, 0xe3, 0x87, 0x8c, 0x75, + 0xc3, 0xdf, 0x37, 0x57, 0xa7, 0x0c, 0x34, 0xf7, 0x77, 0xf8, 0xad, 0xdc, 0x9f, 0x69, 0x9a, 0x6a, + 0xf2, 0xff, 0xc4, 0xc1, 0xe2, 0x2e, 0xee, 0x60, 0x7f, 0x96, 0x12, 0x16, 0x61, 0xbd, 0x07, 0x7b, + 0x94, 0x3d, 0xd8, 0x03, 0x44, 0x85, 0x1c, 0xec, 0x97, 0x3a, 0xec, 0x56, 0x60, 0x89, 0x1d, 0x8d, + 0x84, 0x77, 0xe1, 0x7f, 0x63, 0x70, 0xc3, 0xb2, 0x05, 0x5d, 0xeb, 0x74, 0xb0, 0x7e, 0xd8, 0x3f, + 0xe9, 0x28, 0xc6, 0xd9, 0x14, 0x93, 0xbb, 0x06, 0x33, 0xaa, 0xd6, 0xf2, 0x38, 0x4f, 0xd2, 0xfa, + 0x2c, 0xb7, 0x50, 0x09, 0xae, 0xfa, 0xd3, 0xac, 0x0b, 0x1a, 0x84, 0x47, 0x27, 0x59, 0x99, 0x73, + 0xff, 0x09, 0xc2, 0x43, 0xca, 0x4a, 0x10, 0x35, 0xb5, 0x73, 0x61, 0x7b, 0x4c, 0x4a, 0x74, 0xbf, + 0x91, 0xe8, 0xcf, 0x98, 0x7e, 0xe6, 0x66, 0x4c, 0xa1, 0x33, 0x0a, 0x4b, 0x9e, 0x3e, 0x1b, 0xf2, + 0xf8, 0xa4, 0x2d, 0xfa, 0xc3, 0x09, 0x45, 0x8f, 0x8d, 0x04, 0x97, 0xd9, 0xc5, 0x37, 0xe0, 0xbe, + 0xff, 0xc6, 0xc1, 0xc6, 0xc8, 0x29, 0xd0, 0x23, 0xbf, 0x05, 0x57, 0x7a, 0xa4, 0xc1, 0x5d, 0x04, + 0xe2, 0x65, 0x8f, 0xc6, 0x2e, 0x02, 0x2d, 0xbc, 0x29, 0x95, 0x59, 0x86, 0x74, 0x8f, 0x21, 0xf2, + 0x79, 0x58, 0x0c, 0x60, 0x9b, 0x6a, 0x32, 0xdf, 0x73, 0xb0, 0x39, 0x50, 0xe5, 0x48, 0xed, 0xbd, + 0x39, 0xf3, 0x6d, 0x0c, 0x6c, 0x8b, 0x84, 0xfc, 0x87, 0xc3, 0x73, 0x0f, 0x1e, 0xf0, 0x6d, 0x79, + 0xf0, 0x2d, 0xb8, 0x19, 0x32, 0x34, 0x75, 0xe7, 0xef, 0xe2, 0x70, 0xf3, 0x58, 0xee, 0x28, 0x2d, + 0x37, 0x91, 0x0b, 0x80, 0x28, 0xc2, 0x97, 0xa4, 0x39, 0xe4, 0x01, 0x24, 0x6a, 0x3d, 0x76, 0xbd, + 0x76, 0x9c, 0xfc, 0x09, 0x8e, 0xc3, 0x37, 0x58, 0x84, 0xbd, 0x08, 0x28, 0xc2, 0x3e, 0x9c, 0x5c, + 0xd7, 0xb0, 0x92, 0xec, 0xc8, 0x1f, 0x60, 0x3e, 0x98, 0x5c, 0x6e, 0x88, 0x15, 0x5c, 0xda, 0x8b, + 0x7f, 0xcc, 0xaa, 0xe9, 0x5f, 0xe3, 0x20, 0x84, 0xcd, 0x9e, 0xc6, 0x10, 0x11, 0x66, 0x9b, 0x9a, + 0x7a, 0xaa, 0xe8, 0x5d, 0xdc, 0xa2, 0xd9, 0xff, 0xcf, 0x27, 0x59, 0x3c, 0x1a, 0x40, 0x8a, 0x4e, + 0x5f, 0x71, 0x20, 0x06, 0x65, 0x61, 0xa6, 0x8b, 0x0d, 0x43, 0x6e, 0x3b, 0x6a, 0x39, 0x9f, 0xfc, + 0xd7, 0x31, 0x98, 0x75, 0xbb, 0x20, 0x75, 0xc8, 0x82, 0x49, 0xf8, 0xda, 0x7f, 0x1d, 0x05, 0x5e, + 0xdf, 0x98, 0xa3, 0xaf, 0x61, 0xcc, 0x2d, 0xc6, 0x98, 0x89, 0x3b, 0xec, 0xbe, 0x96, 0xda, 0x21, + 0x76, 0xfd, 0xa3, 0x1b, 0xa0, 0xf0, 0x07, 0x80, 0x2a, 0x8a, 0x41, 0xab, 0x28, 0x37, 0x2c, 0x59, + 0x45, 0x93, 0xfc, 0x4a, 0xc2, 0xaa, 0xa9, 0x2b, 0x34, 0x5d, 0x4f, 0x88, 0xd0, 0x95, 0x5f, 0x95, + 0x08, 0xc5, 0x4a, 0xe9, 0x0d, 0x53, 0xd6, 0x4d, 0x45, 0x6d, 0x4b, 0xa6, 0xf6, 0x39, 0x76, 0x71, + 0x62, 0x87, 0xda, 0xb0, 0x88, 0xc2, 0x97, 0x1c, 0x2c, 0x32, 0xe2, 0xa9, 0x4d, 0x3e, 0x82, 0x99, + 0x81, 0x6c, 0x26, 0x8d, 0x0f, 0xe0, 0xce, 0x91, 0x65, 0x73, 0x7a, 0xa0, 0x75, 0x00, 0x15, 0xbf, + 0x32, 0x99, 0x71, 0x67, 0x2d, 0x8a, 0x3d, 0x26, 0xbf, 0x0d, 0x09, 0xb2, 0x0c, 0x93, 0xd6, 0xcb, + 0x5f, 0x47, 0x01, 0xed, 0x63, 0xd3, 0x2d, 0x83, 0xe8, 0x1a, 0x8c, 0xb0, 0x25, 0xee, 0x35, 0x6c, + 0xe9, 0x63, 0xc6, 0x96, 0x88, 0x35, 0xde, 0xf5, 0x00, 0xe6, 0xbe, 0xa1, 0x43, 0x23, 0xe1, 0x88, + 0xd2, 0x83, 0xe4, 0x73, 0x93, 0x95, 0x1e, 0x97, 0x34, 0x99, 0x5d, 0x58, 0x64, 0x74, 0xa6, 0x7b, + 0x7a, 0x1f, 0x90, 0x7c, 0x2e, 0x2b, 0x1d, 0xd9, 0xd2, 0xcb, 0xa9, 0xec, 0x68, 0xa5, 0x77, 0xd5, + 0x6d, 0x71, 0xba, 0x09, 0x82, 0x37, 0x61, 0xa0, 0xf2, 0xfc, 0x00, 0x7e, 0xc7, 0x7b, 0xd0, 0x0e, + 0xf1, 0xd0, 0x71, 0xf7, 0x03, 0x41, 0xfc, 0x5b, 0xc3, 0x49, 0x02, 0xc5, 0xa0, 0x47, 0xe2, 0xf9, + 0xff, 0x1d, 0x87, 0xd5, 0x10, 0x6e, 0xf4, 0x08, 0x62, 0x7a, 0xaf, 0x49, 0x8d, 0xe9, 0x27, 0x13, + 0xc8, 0xcf, 0x89, 0x87, 0xc5, 0x83, 0x88, 0x68, 0xf5, 0x42, 0xcf, 0xfd, 0x10, 0x3c, 0x41, 0x52, + 0x7e, 0x3a, 0x89, 0x98, 0x50, 0x34, 0xfe, 0xab, 0x28, 0xc4, 0xc4, 0xc3, 0x22, 0xfa, 0x15, 0x03, + 0x33, 0xdf, 0x9b, 0x50, 0x3d, 0x2f, 0xd0, 0xfc, 0x2d, 0x17, 0x84, 0x73, 0x67, 0x61, 0xa9, 0x28, + 0x96, 0xf2, 0x8d, 0x92, 0xb4, 0x5b, 0xaa, 0x94, 0x1a, 0x25, 0x89, 0xe0, 0xf0, 0x19, 0x0e, 0xad, + 0x41, 0xf6, 0xf0, 0xa8, 0x50, 0x29, 0xd7, 0x0f, 0xa4, 0xa3, 0xaa, 0xf3, 0x8b, 0xb6, 0x46, 0x51, + 0x06, 0xe6, 0x2b, 0xe5, 0x7a, 0x83, 0x12, 0xea, 0x99, 0x98, 0x45, 0xd9, 0x2f, 0x35, 0xa4, 0x62, + 0xfe, 0x30, 0x5f, 0x2c, 0x37, 0x5e, 0x64, 0xe2, 0x88, 0x87, 0x15, 0x56, 0x76, 0xbd, 0x9a, 0x3f, + 0xac, 0x1f, 0xd4, 0x1a, 0x99, 0x04, 0x42, 0x90, 0xb6, 0xfb, 0x3b, 0xa4, 0x7a, 0x26, 0x69, 0x49, + 0x28, 0x56, 0x6a, 0x55, 0x57, 0x87, 0x19, 0xb4, 0x04, 0x19, 0x67, 0x64, 0xb1, 0x94, 0xdf, 0xb5, + 0xe1, 0x91, 0x14, 0xba, 0x0a, 0x0b, 0xa5, 0x4f, 0x0e, 0xf3, 0xd5, 0x5d, 0x87, 0x71, 0x96, 0xff, + 0x0d, 0xe7, 0x83, 0xe5, 0xcb, 0xcc, 0x7a, 0x3d, 0x9c, 0x76, 0x1f, 0xbc, 0x0b, 0x77, 0x27, 0x68, + 0xdd, 0xae, 0xc2, 0x42, 0x23, 0x7f, 0x58, 0x92, 0xc4, 0x5a, 0x23, 0xdf, 0x28, 0xd7, 0xaa, 0x19, + 0xce, 0x05, 0xf8, 0xbe, 0x8f, 0xc2, 0x32, 0x41, 0xf8, 0x1c, 0x3c, 0xd1, 0x89, 0x39, 0x5b, 0x90, + 0x21, 0x98, 0x84, 0xe4, 0xcf, 0x0a, 0xd3, 0x84, 0x7e, 0xec, 0xe4, 0x86, 0x0e, 0x1a, 0x1f, 0xf5, + 0xa0, 0xf1, 0x65, 0x7f, 0xa6, 0x7c, 0x97, 0xc5, 0xad, 0x7d, 0xa3, 0x85, 0x15, 0x5f, 0x4f, 0x03, + 0x52, 0xb9, 0xfb, 0xe1, 0xd2, 0xc2, 0x8e, 0xb9, 0xcb, 0x54, 0x5a, 0x97, 0x8c, 0x56, 0x7b, 0xb0, + 0xe2, 0xd7, 0x97, 0x06, 0x8e, 0x7b, 0x43, 0xe8, 0xb2, 0x1b, 0x3e, 0x5d, 0x5e, 0x97, 0x43, 0xf8, + 0x0f, 0x0e, 0x52, 0x0e, 0xd9, 0x3a, 0x82, 0x0c, 0xe5, 0x0f, 0x31, 0x83, 0x66, 0xcd, 0x5a, 0x14, + 0x17, 0x1c, 0xf3, 0xe2, 0xc2, 0x51, 0x3f, 0x2e, 0x1c, 0xb8, 0xcf, 0xb1, 0xc0, 0x7d, 0xfe, 0x25, + 0x2c, 0x34, 0x2d, 0xf5, 0x15, 0x4d, 0x95, 0x4c, 0xa5, 0xeb, 0x80, 0x55, 0xc3, 0xf7, 0x38, 0x0d, + 0xe7, 0xbe, 0x58, 0x9c, 0x77, 0x3a, 0x58, 0x24, 0xb4, 0x09, 0xf3, 0xf6, 0xbd, 0x8e, 0x64, 0x6a, + 0x52, 0xdf, 0xc0, 0xd9, 0x84, 0x5d, 0xba, 0x83, 0x4d, 0x6b, 0x68, 0x47, 0x06, 0x16, 0xfe, 0x99, + 0x83, 0x65, 0x82, 0x48, 0xf8, 0xcd, 0x71, 0x1c, 0xbe, 0xed, 0xb5, 0x38, 0xdf, 0xa9, 0x16, 0x28, + 0xf0, 0x6d, 0x15, 0x64, 0x59, 0x58, 0xf1, 0x8f, 0x47, 0xab, 0xb0, 0xbf, 0xe5, 0x60, 0xc9, 0x4a, + 0x29, 0x9c, 0x86, 0x37, 0x9d, 0xe1, 0x4c, 0xb1, 0x93, 0xbe, 0xc5, 0x8c, 0xfb, 0x17, 0x53, 0xf8, + 0x7b, 0x0e, 0x96, 0x7d, 0xba, 0x52, 0x4b, 0xfd, 0xc8, 0x9f, 0x2e, 0xdd, 0xf2, 0xa6, 0x4b, 0x43, + 0xfc, 0x53, 0x26, 0x4c, 0x0f, 0x9d, 0x84, 0x69, 0x3a, 0x87, 0xf8, 0xd3, 0x28, 0xac, 0x0f, 0xa2, + 0xa5, 0x7d, 0x71, 0xda, 0x9a, 0xa2, 0xde, 0xbf, 0xdc, 0xd5, 0xe1, 0x33, 0x7f, 0xa8, 0x7b, 0x30, + 0x1c, 0xc0, 0x03, 0x54, 0x7a, 0x5b, 0x06, 0xf8, 0x47, 0x5e, 0xe8, 0x8e, 0x1d, 0x97, 0x6e, 0xe1, + 0x84, 0x18, 0xf8, 0x07, 0x70, 0xcd, 0x46, 0x41, 0xdc, 0xeb, 0x7f, 0xe7, 0x86, 0x8f, 0x44, 0x91, + 0x94, 0xb8, 0x6c, 0x35, 0xbb, 0xb7, 0xd4, 0x14, 0xf7, 0x6d, 0x09, 0xff, 0xc5, 0x6c, 0x46, 0x43, + 0xee, 0x61, 0x51, 0x33, 0xed, 0x20, 0xe0, 0x6c, 0x86, 0x04, 0x57, 0xfa, 0x3d, 0xab, 0x66, 0x91, + 0x0c, 0x53, 0x97, 0x4d, 0xdc, 0xbe, 0xf0, 0x17, 0x83, 0xa1, 0xfd, 0x73, 0x47, 0x76, 0xe7, 0x3a, + 0xed, 0x7b, 0x10, 0x11, 0xd3, 0x7d, 0x86, 0x82, 0x36, 0x00, 0x74, 0xab, 0x0f, 0x96, 0x54, 0xed, + 0x0b, 0xa2, 0xed, 0x41, 0x44, 0x9c, 0x25, 0xb4, 0xaa, 0xf6, 0x05, 0xff, 0x0f, 0x1c, 0xa4, 0x59, + 0x29, 0xa8, 0x0e, 0x49, 0xa3, 0x79, 0x86, 0xbb, 0xce, 0x31, 0xfc, 0xe8, 0x75, 0x74, 0xc9, 0xd5, + 0x6d, 0x11, 0x22, 0x15, 0x25, 0x7c, 0x0c, 0x49, 0x42, 0x61, 0x0f, 0xe4, 0x14, 0xc4, 0xf7, 0xca, + 0x7b, 0xb5, 0x0c, 0x87, 0x66, 0x20, 0xb6, 0xbf, 0x57, 0xcf, 0x44, 0xd1, 0x3c, 0xa4, 0xea, 0xe5, + 0x4f, 0x24, 0xeb, 0x9c, 0xce, 0xc4, 0xac, 0x8c, 0xa3, 0x51, 0x7b, 0x5e, 0x12, 0xa5, 0xda, 0x9e, + 0x74, 0x90, 0xaf, 0xd6, 0xca, 0x99, 0xf8, 0x4e, 0xec, 0xb7, 0x05, 0xae, 0x90, 0x82, 0xa4, 0xdc, + 0xb4, 0xc6, 0x17, 0xfe, 0x25, 0xea, 0xdd, 0x68, 0x56, 0x35, 0xba, 0xd1, 0x55, 0x58, 0xee, 0xc8, + 0x86, 0x29, 0xe9, 0xb4, 0x41, 0x32, 0xfa, 0x76, 0x06, 0x3e, 0xf2, 0x02, 0x7e, 0x10, 0xb8, 0x17, + 0xad, 0x8e, 0x8e, 0xc0, 0x3a, 0xe9, 0x36, 0x2c, 0xef, 0x54, 0x56, 0x3a, 0x83, 0x04, 0x72, 0x62, + 0x79, 0x7b, 0xa4, 0x1b, 0xda, 0x86, 0x45, 0xaa, 0x91, 0x72, 0x8e, 0x1d, 0x61, 0x86, 0x1d, 0xb3, + 0x12, 0x22, 0x1a, 0x34, 0x51, 0x7e, 0x03, 0x1d, 0x00, 0xb2, 0xa3, 0x87, 0xab, 0xc0, 0x84, 0xc7, + 0x50, 0xc6, 0xea, 0xe5, 0x8c, 0x6e, 0x91, 0xed, 0xc5, 0x14, 0x7e, 0x88, 0xc3, 0x4a, 0x55, 0x6b, + 0xe1, 0xba, 0x29, 0xb7, 0xa7, 0xc1, 0xee, 0x7f, 0x7f, 0x18, 0x0a, 0x8d, 0xb2, 0x9e, 0x1f, 0x2c, + 0x75, 0x12, 0x04, 0x14, 0xe5, 0x60, 0xd1, 0x30, 0xe5, 0xb6, 0x1d, 0xeb, 0x65, 0xbd, 0x8d, 0x4d, + 0xa9, 0x27, 0x9b, 0x67, 0x34, 0x90, 0x5f, 0xa5, 0x4d, 0x0d, 0xbb, 0xe5, 0x50, 0x36, 0xcf, 0x82, + 0x21, 0xf5, 0xf8, 0xd4, 0x90, 0xfa, 0xc7, 0x7e, 0x54, 0xeb, 0xbd, 0x31, 0x73, 0x09, 0xc9, 0xd8, + 0x3e, 0x19, 0x01, 0x97, 0xbf, 0x3f, 0x46, 0xe4, 0x78, 0x98, 0xfc, 0xf2, 0xf0, 0xf0, 0x8f, 0x8c, + 0xb4, 0x5f, 0x87, 0x6b, 0x43, 0x93, 0xa7, 0xf9, 0x41, 0x1b, 0xb2, 0x56, 0xd3, 0x91, 0x6a, 0x4c, + 0x69, 0x8e, 0x23, 0x2c, 0x26, 0x3a, 0xc2, 0x62, 0x84, 0x55, 0xb8, 0x1e, 0x30, 0x10, 0xd5, 0xe2, + 0x1f, 0x13, 0x44, 0x8d, 0xe9, 0x2f, 0x7d, 0x3e, 0x1d, 0xe5, 0x15, 0x3f, 0xf7, 0x6e, 0x7b, 0xe0, + 0xfd, 0xc8, 0xdb, 0xf0, 0x8b, 0x0d, 0x98, 0xf3, 0xf2, 0xd1, 0x1c, 0xc7, 0x1c, 0xe3, 0x38, 0x89, + 0x4b, 0xdd, 0x45, 0x25, 0x7d, 0x77, 0x51, 0x95, 0x81, 0x53, 0xcd, 0xb0, 0x75, 0xcb, 0xc8, 0xa5, + 0x08, 0x71, 0xab, 0x97, 0x43, 0x6e, 0x95, 0x62, 0x2f, 0xb8, 0x46, 0x0a, 0xfd, 0x1d, 0x70, 0x2c, + 0x6a, 0xd4, 0x81, 0x37, 0x4f, 0xc2, 0x4b, 0xe0, 0x89, 0xc5, 0x4f, 0x7f, 0x17, 0xe4, 0x33, 0xa3, + 0xa8, 0xdf, 0x8c, 0x84, 0x75, 0x58, 0x0d, 0x94, 0x4d, 0x87, 0x7e, 0x41, 0xf4, 0xda, 0xc7, 0x14, + 0x4a, 0xac, 0x9b, 0xb2, 0x69, 0x4c, 0x3a, 0x32, 0x6d, 0xf4, 0x8e, 0x4c, 0x48, 0xf6, 0xc8, 0xfb, + 0x64, 0x56, 0x7e, 0xd1, 0xf4, 0xf0, 0x7f, 0x17, 0x12, 0x7d, 0x1b, 0x15, 0x27, 0x69, 0xfa, 0x22, + 0x6b, 0xd2, 0x47, 0x56, 0x93, 0x48, 0x38, 0x84, 0x6f, 0x38, 0x98, 0xf3, 0x90, 0xd1, 0x1a, 0xcc, + 0xba, 0x20, 0x99, 0x53, 0x51, 0xba, 0x04, 0x6b, 0x0f, 0x4c, 0xcd, 0x94, 0x3b, 0xf4, 0xa1, 0x05, + 0xf9, 0x40, 0x08, 0xe2, 0x7d, 0x03, 0x93, 0x82, 0x23, 0x26, 0xda, 0xbf, 0xd1, 0x3d, 0x88, 0xf7, + 0x55, 0xc5, 0xb4, 0x7d, 0x2f, 0xed, 0x77, 0x2a, 0x7b, 0xa8, 0xdc, 0x91, 0xaa, 0x98, 0xa2, 0xcd, + 0x25, 0xdc, 0x85, 0xb8, 0xf5, 0xc5, 0x66, 0x4a, 0xb3, 0x90, 0x28, 0xbc, 0x68, 0x94, 0xea, 0x19, + 0x0e, 0x01, 0x24, 0xcb, 0xd5, 0xda, 0x6e, 0xa9, 0x9e, 0x89, 0x0a, 0x6b, 0xee, 0xd4, 0x83, 0xb0, + 0xba, 0xcf, 0xc8, 0x96, 0x8c, 0x42, 0xe9, 0xf2, 0x81, 0x28, 0xdd, 0x3a, 0x73, 0x38, 0x8d, 0xc1, + 0xe7, 0xbe, 0x89, 0xc1, 0x72, 0x20, 0x1f, 0x7a, 0xe8, 0x45, 0xe6, 0x6e, 0x86, 0xca, 0xf4, 0x62, + 0x72, 0xcf, 0x82, 0x31, 0xb9, 0xbb, 0xe1, 0x02, 0x42, 0xd1, 0xb8, 0xbf, 0xe2, 0x08, 0x1a, 0xb7, + 0xc3, 0xa0, 0x4b, 0x77, 0xc6, 0xaa, 0xe4, 0x85, 0x93, 0x8e, 0x47, 0xc0, 0x70, 0xf5, 0x46, 0x7e, + 0xbf, 0x24, 0x1d, 0x55, 0xc9, 0x5f, 0x17, 0x86, 0x5b, 0x82, 0xcc, 0x7e, 0xc9, 0xc1, 0xd9, 0xa4, + 0x7a, 0x23, 0xdf, 0xb0, 0x52, 0xdb, 0x21, 0x08, 0x2c, 0xc6, 0x9f, 0xf9, 0x10, 0xb0, 0x22, 0xa3, + 0xe3, 0xf6, 0xe4, 0xb3, 0x9e, 0xf8, 0x75, 0xea, 0x12, 0x20, 0x6a, 0x13, 0xde, 0x17, 0xe9, 0x5f, + 0x72, 0xb0, 0xc8, 0x90, 0xa9, 0x89, 0x78, 0x6e, 0x80, 0x39, 0xe6, 0x06, 0x78, 0x1b, 0x96, 0xac, + 0x5a, 0x9d, 0x78, 0xa1, 0x21, 0xf5, 0xb0, 0x2e, 0x59, 0x2d, 0xd4, 0x17, 0xae, 0x76, 0xe5, 0x57, + 0xf4, 0xc6, 0xe0, 0x10, 0xeb, 0x96, 0xe0, 0x37, 0x80, 0x91, 0x0b, 0x7f, 0xce, 0x91, 0xa4, 0x61, + 0xea, 0xba, 0x76, 0x5c, 0x04, 0x09, 0x28, 0x7c, 0x63, 0x93, 0x17, 0xbe, 0x42, 0x9e, 0x64, 0x0a, + 0x97, 0xa8, 0x31, 0x1f, 0xfc, 0x1f, 0x07, 0xa9, 0x72, 0x0b, 0xab, 0xa6, 0xe5, 0x3a, 0x55, 0x58, + 0x60, 0x5e, 0xec, 0xa3, 0xb5, 0x11, 0x0f, 0xf9, 0xed, 0xa9, 0xf3, 0xeb, 0xa1, 0xcf, 0xfc, 0x85, + 0x08, 0x3a, 0xf5, 0xfc, 0xb7, 0x01, 0x73, 0x07, 0xf2, 0xce, 0x50, 0xcf, 0x80, 0x28, 0xc2, 0xdf, + 0x1e, 0xc3, 0xe5, 0x8e, 0xf3, 0x01, 0x24, 0xec, 0x87, 0xce, 0x68, 0xc9, 0x7d, 0x50, 0xed, 0x79, + 0x07, 0xcd, 0x2f, 0xfb, 0xa8, 0x4e, 0xbf, 0x07, 0xff, 0x3e, 0x0b, 0x30, 0xa8, 0xe0, 0xd0, 0x13, + 0x98, 0xf7, 0xbe, 0xb5, 0x44, 0xab, 0x21, 0x2f, 0x7d, 0xf9, 0xb5, 0xe0, 0x46, 0x57, 0xa7, 0x27, + 0x30, 0xef, 0x7d, 0xd9, 0x33, 0x10, 0x16, 0xf0, 0xba, 0x68, 0x20, 0x2c, 0xf0, 0x31, 0x50, 0x04, + 0x75, 0xe0, 0xda, 0x88, 0xb7, 0x1d, 0xe8, 0xce, 0x64, 0x2f, 0x60, 0xf8, 0x9f, 0x4c, 0xf8, 0x48, + 0x44, 0x88, 0x20, 0x1d, 0xae, 0x8f, 0x7c, 0xd2, 0x80, 0xb6, 0x26, 0x7d, 0x70, 0xc1, 0xbf, 0x3b, + 0x01, 0xa7, 0x3b, 0x66, 0x1f, 0xf8, 0xd1, 0xf7, 0xa8, 0xe8, 0xdd, 0x89, 0x2f, 0xf8, 0xf9, 0xbb, + 0x93, 0x5f, 0xcb, 0x0a, 0x11, 0x74, 0x00, 0x73, 0x9e, 0x4b, 0x46, 0xc4, 0x07, 0xde, 0x3c, 0x12, + 0xc1, 0xab, 0x21, 0xb7, 0x92, 0x44, 0x92, 0xe7, 0x22, 0x6c, 0x20, 0x69, 0xf8, 0x46, 0x6f, 0x20, + 0x29, 0xe0, 0xe6, 0xcc, 0xbf, 0xfc, 0xbe, 0x23, 0x34, 0x68, 0xf9, 0x83, 0xcf, 0xe0, 0xa0, 0xe5, + 0x1f, 0x71, 0x1e, 0x0b, 0x11, 0xf4, 0x0c, 0xd2, 0x2c, 0x30, 0x8e, 0xd6, 0x43, 0x01, 0x7e, 0xfe, + 0xc6, 0xa8, 0x66, 0xaf, 0x48, 0x16, 0x87, 0x1d, 0x88, 0x0c, 0xc4, 0x83, 0x07, 0x22, 0x47, 0xc0, + 0xb7, 0x11, 0x2b, 0x3e, 0x31, 0x18, 0xe7, 0x20, 0x3e, 0x05, 0xc1, 0xba, 0x83, 0xf8, 0x14, 0x08, + 0x8c, 0x0a, 0x11, 0xa4, 0xc0, 0x4a, 0x30, 0x52, 0x87, 0x6e, 0x4f, 0x84, 0x20, 0xf2, 0x77, 0xc6, + 0xb1, 0x79, 0x3c, 0x78, 0x25, 0x18, 0x2b, 0x0a, 0x1a, 0x2a, 0x00, 0xe6, 0x0a, 0x1a, 0x2a, 0x08, + 0x72, 0x12, 0x62, 0xbf, 0x2d, 0x70, 0x0f, 0xbe, 0x4d, 0x40, 0xdc, 0x3e, 0xfc, 0x1a, 0x70, 0xc5, + 0x57, 0xed, 0xa2, 0x1b, 0xe1, 0x18, 0x00, 0xbf, 0x31, 0xb2, 0xdd, 0x9d, 0xcc, 0x4b, 0xb8, 0x3a, + 0x54, 0xbf, 0xa2, 0x4d, 0x6f, 0xbf, 0xa0, 0x1a, 0x9a, 0xbf, 0x19, 0xc2, 0xe1, 0x97, 0xcd, 0x06, + 0xb9, 0xcd, 0x71, 0x05, 0x16, 0x2b, 0x7b, 0x54, 0x60, 0xfb, 0x8c, 0xe4, 0x1a, 0xfe, 0x90, 0x26, + 0xb0, 0x7a, 0x05, 0x06, 0xb3, 0x5b, 0xa1, 0x3c, 0xee, 0x08, 0x9f, 0xba, 0x49, 0x8e, 0xa7, 0x22, + 0x40, 0x8c, 0x72, 0x81, 0x85, 0x08, 0x2f, 0x84, 0xb1, 0xb8, 0xe2, 0x9f, 0x43, 0xc6, 0x7f, 0xe0, + 0x23, 0x66, 0xbf, 0x82, 0x8c, 0x74, 0x73, 0x34, 0x83, 0x7f, 0x65, 0xfc, 0xd1, 0xc6, 0xaf, 0x55, + 0x50, 0x9c, 0xb9, 0x15, 0xca, 0xe3, 0x8d, 0x8f, 0x9e, 0x3c, 0x6f, 0x10, 0x1f, 0x87, 0x73, 0xc2, + 0x41, 0x7c, 0x0c, 0x48, 0x0c, 0x85, 0xc8, 0xce, 0x63, 0x00, 0x92, 0xa9, 0x63, 0xb5, 0xdf, 0x45, + 0x6b, 0x43, 0xa8, 0x63, 0x49, 0xed, 0x77, 0x6b, 0x3d, 0xcb, 0x29, 0x8c, 0xec, 0x57, 0x29, 0x1b, + 0x10, 0x98, 0xb5, 0x3b, 0x58, 0x0d, 0x3b, 0x15, 0xc8, 0x0c, 0x7a, 0x4b, 0x76, 0xf9, 0x8a, 0x6e, + 0x06, 0xca, 0xb0, 0xff, 0x11, 0xca, 0x27, 0x28, 0xed, 0x0a, 0xb2, 0x5b, 0x77, 0x3e, 0x02, 0x68, + 0x1a, 0x8a, 0x44, 0x00, 0x02, 0xb4, 0x3e, 0x24, 0x67, 0x4f, 0xc1, 0x9d, 0x96, 0x23, 0xe3, 0x6f, + 0xa8, 0x32, 0x4d, 0x43, 0x21, 0x75, 0xfa, 0xce, 0x2f, 0x61, 0x8e, 0x16, 0x1d, 0x16, 0xdf, 0xb8, + 0xfe, 0x54, 0x07, 0x32, 0x7b, 0xbb, 0x65, 0xa7, 0xe4, 0x54, 0x2d, 0xf4, 0xc9, 0x15, 0xda, 0x18, + 0x12, 0xf1, 0x94, 0xb4, 0xf8, 0x84, 0x90, 0x4a, 0x85, 0xb6, 0xed, 0x14, 0x60, 0xde, 0x11, 0x63, + 0x9e, 0x69, 0x2d, 0x74, 0x23, 0x40, 0x8a, 0xd5, 0xe0, 0x13, 0x32, 0x47, 0x85, 0x58, 0x4d, 0x03, + 0x55, 0x9c, 0xff, 0x5f, 0x1c, 0x56, 0x85, 0x56, 0x12, 0x81, 0xaa, 0xd0, 0xb6, 0x42, 0xe2, 0x65, + 0xac, 0x69, 0x28, 0x27, 0x49, 0xbb, 0xd3, 0xcf, 0xfe, 0x3f, 0x00, 0x00, 0xff, 0xff, 0xba, 0x30, + 0x28, 0xf2, 0x6c, 0x3b, 0x00, 0x00, } diff --git a/spec.md b/spec.md index aa078f08..129533ba 100644 --- a/spec.md +++ b/spec.md @@ -376,6 +376,11 @@ service Controller { rpc ControllerExpandVolume (ControllerExpandVolumeRequest) returns (ControllerExpandVolumeResponse) {} + + rpc ControllerTapeRotation (ControllerTapeRotationRequest) + returns (ControllerTapeRotationResponse) { + option (alpha_method) = true; + } } service Node { @@ -1568,6 +1573,10 @@ message ControllerServiceCapability { message AlphaFeature { enum Type { UNKNOWN = 0; + + // Indicates that the controller service supports the + // ControllerTapeRotation API. + TAPE_ROTATION = 1; } Type type = 1; // REQUIRED @@ -1921,6 +1930,49 @@ ListSnapshots SHALL return with current information regarding the snapshots on t When processing is complete, the `ready_to_use` parameter of the snapshot from ListSnapshots SHALL become `true`. The downside of calling ListSnapshots is that ListSnapshots will not return a gRPC error code if an error occurs during the processing. So calling CreateSnapshot repeatedly is the preferred way to check if the processing is complete. +#### `ControllerTapeRotation` + +**EXPERIMENTAL FEATURE** + +A Controller Plugin MAY implement support for tape rotation schedules. +Controller implementations that support this feature MUST advertise the `TAPE_ROTATION` feature via `ControllerGetCapabilities`. + +```protobuf +message ControllerTapeRotationRequest { + option (alpha_message) = true; + + message UpdateStrategy { + // https://en.wikipedia.org/wiki/Backup_rotation_scheme#Schemes + enum Scheme { + UNKNOWN = 0; + FIFO = 1; + GFS = 2;// Grandfather-father-son + SIX_TAPE = 3; // 5 weekday differentials; 1 weekday full backup + TOWER_OF_HANOI = 4; // pretty complicated + } + + Scheme scheme = 1; // REQURIED + } + + // action is OPTIONAL; failure to specify an action is interpreted as + // a read-only request, and SHOULD generate a non-error response. + oneof action { + UpdateStrategy update_strategy = 1; + bool rotate_now = 2; + } +} + +// All response fields are OPTIONAL. +message ControllerTapeRotationResponse { + option (alpha_message) = true; + + .google.protobuf.Timestamp last_rotation_success = 1; + .google.protobuf.Timestamp last_rotation_failure = 2; + int32 successive_failures = 3; // failures since last success + .google.protobuf.Timestamp next_rotation_time = 4; +} +``` + ### Node Service RPC #### `NodeStageVolume` From 0dfced8055092fae0424b863005aff6b4d9806c9 Mon Sep 17 00:00:00 2001 From: James DeFelice Date: Thu, 4 Apr 2019 15:59:35 +0000 Subject: [PATCH 5/7] spec: experimental enum value: QUARKS. Mock up of an experimental API to advertise volume usage in units of quarks. Note the addition of the `alpha_enum_value` marker option to the newly added enum value. --- csi.proto | 7 + lib/go/csi/csi.pb.go | 667 ++++++++++++++++++++++--------------------- spec.md | 12 + 3 files changed, 358 insertions(+), 328 deletions(-) diff --git a/csi.proto b/csi.proto index c81f6425..bcc302db 100644 --- a/csi.proto +++ b/csi.proto @@ -1295,6 +1295,9 @@ message VolumeUsage { UNKNOWN = 0; BYTES = 1; INODES = 2; + + // All "up" quarks are considered "used". + QUARKS = 3 [(alpha_enum_value) = true]; } // The available capacity in specified Unit. This field is OPTIONAL. // The value of this field MUST NOT be negative. @@ -1341,6 +1344,10 @@ message NodeServiceCapability { message AlphaFeature { enum Type { UNKNOWN = 0; + + // Indicates that volume usage may be specified in units of quark. + // See https://en.wikipedia.org/wiki/Quark + VOLUME_USAGE_UNIT_QUARKS = 1; } Type type = 1; // REQUIRED diff --git a/lib/go/csi/csi.pb.go b/lib/go/csi/csi.pb.go index cb126bec..5c25c4c3 100644 --- a/lib/go/csi/csi.pb.go +++ b/lib/go/csi/csi.pb.go @@ -63,7 +63,7 @@ func (x PluginCapability_Service_Type) String() string { return proto.EnumName(PluginCapability_Service_Type_name, int32(x)) } func (PluginCapability_Service_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{4, 0, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 0, 0} } type PluginCapability_VolumeExpansion_Type int32 @@ -124,7 +124,7 @@ func (x PluginCapability_VolumeExpansion_Type) String() string { return proto.EnumName(PluginCapability_VolumeExpansion_Type_name, int32(x)) } func (PluginCapability_VolumeExpansion_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{4, 1, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 1, 0} } type PluginCapability_AlphaFeature_Type int32 @@ -144,7 +144,7 @@ func (x PluginCapability_AlphaFeature_Type) String() string { return proto.EnumName(PluginCapability_AlphaFeature_Type_name, int32(x)) } func (PluginCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{4, 2, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 2, 0} } type VolumeCapability_AccessMode_Mode int32 @@ -188,7 +188,7 @@ func (x VolumeCapability_AccessMode_Mode) String() string { return proto.EnumName(VolumeCapability_AccessMode_Mode_name, int32(x)) } func (VolumeCapability_AccessMode_Mode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{10, 2, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{10, 2, 0} } type ControllerServiceCapability_RPC_Type int32 @@ -246,7 +246,7 @@ func (x ControllerServiceCapability_RPC_Type) String() string { return proto.EnumName(ControllerServiceCapability_RPC_Type_name, int32(x)) } func (ControllerServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{29, 0, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{29, 0, 0} } type ControllerServiceCapability_AlphaFeature_Type int32 @@ -271,7 +271,7 @@ func (x ControllerServiceCapability_AlphaFeature_Type) String() string { return proto.EnumName(ControllerServiceCapability_AlphaFeature_Type_name, int32(x)) } func (ControllerServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{29, 1, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{29, 1, 0} } // https://en.wikipedia.org/wiki/Backup_rotation_scheme#Schemes @@ -304,7 +304,7 @@ func (x ControllerTapeRotationRequest_UpdateStrategy_Scheme) String() string { return proto.EnumName(ControllerTapeRotationRequest_UpdateStrategy_Scheme_name, int32(x)) } func (ControllerTapeRotationRequest_UpdateStrategy_Scheme) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{39, 0, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{39, 0, 0} } type VolumeUsage_Unit int32 @@ -313,24 +313,28 @@ const ( VolumeUsage_UNKNOWN VolumeUsage_Unit = 0 VolumeUsage_BYTES VolumeUsage_Unit = 1 VolumeUsage_INODES VolumeUsage_Unit = 2 + // All "up" quarks are considered "used". + VolumeUsage_QUARKS VolumeUsage_Unit = 3 ) var VolumeUsage_Unit_name = map[int32]string{ 0: "UNKNOWN", 1: "BYTES", 2: "INODES", + 3: "QUARKS", } var VolumeUsage_Unit_value = map[string]int32{ "UNKNOWN": 0, "BYTES": 1, "INODES": 2, + "QUARKS": 3, } func (x VolumeUsage_Unit) String() string { return proto.EnumName(VolumeUsage_Unit_name, int32(x)) } func (VolumeUsage_Unit) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{51, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{51, 0} } type NodeServiceCapability_RPC_Type int32 @@ -363,27 +367,32 @@ func (x NodeServiceCapability_RPC_Type) String() string { return proto.EnumName(NodeServiceCapability_RPC_Type_name, int32(x)) } func (NodeServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{54, 0, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{54, 0, 0} } type NodeServiceCapability_AlphaFeature_Type int32 const ( NodeServiceCapability_AlphaFeature_UNKNOWN NodeServiceCapability_AlphaFeature_Type = 0 + // Indicates that volume usage may be specified in units of quark. + // See https://en.wikipedia.org/wiki/Quark + NodeServiceCapability_AlphaFeature_VOLUME_USAGE_UNIT_QUARKS NodeServiceCapability_AlphaFeature_Type = 1 ) var NodeServiceCapability_AlphaFeature_Type_name = map[int32]string{ 0: "UNKNOWN", + 1: "VOLUME_USAGE_UNIT_QUARKS", } var NodeServiceCapability_AlphaFeature_Type_value = map[string]int32{ - "UNKNOWN": 0, + "UNKNOWN": 0, + "VOLUME_USAGE_UNIT_QUARKS": 1, } func (x NodeServiceCapability_AlphaFeature_Type) String() string { return proto.EnumName(NodeServiceCapability_AlphaFeature_Type_name, int32(x)) } func (NodeServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{54, 1, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{54, 1, 0} } type GetPluginInfoRequest struct { @@ -396,7 +405,7 @@ func (m *GetPluginInfoRequest) Reset() { *m = GetPluginInfoRequest{} } func (m *GetPluginInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoRequest) ProtoMessage() {} func (*GetPluginInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{0} } func (m *GetPluginInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoRequest.Unmarshal(m, b) @@ -438,7 +447,7 @@ func (m *GetPluginInfoResponse) Reset() { *m = GetPluginInfoResponse{} } func (m *GetPluginInfoResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoResponse) ProtoMessage() {} func (*GetPluginInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{1} + return fileDescriptor_csi_2e5460258ec4aed1, []int{1} } func (m *GetPluginInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoResponse.Unmarshal(m, b) @@ -489,7 +498,7 @@ func (m *GetPluginCapabilitiesRequest) Reset() { *m = GetPluginCapabilit func (m *GetPluginCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesRequest) ProtoMessage() {} func (*GetPluginCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{2} + return fileDescriptor_csi_2e5460258ec4aed1, []int{2} } func (m *GetPluginCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesRequest.Unmarshal(m, b) @@ -522,7 +531,7 @@ func (m *GetPluginCapabilitiesResponse) Reset() { *m = GetPluginCapabili func (m *GetPluginCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesResponse) ProtoMessage() {} func (*GetPluginCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{3} + return fileDescriptor_csi_2e5460258ec4aed1, []int{3} } func (m *GetPluginCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesResponse.Unmarshal(m, b) @@ -565,7 +574,7 @@ func (m *PluginCapability) Reset() { *m = PluginCapability{} } func (m *PluginCapability) String() string { return proto.CompactTextString(m) } func (*PluginCapability) ProtoMessage() {} func (*PluginCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{4} + return fileDescriptor_csi_2e5460258ec4aed1, []int{4} } func (m *PluginCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability.Unmarshal(m, b) @@ -739,7 +748,7 @@ func (m *PluginCapability_Service) Reset() { *m = PluginCapability_Servi func (m *PluginCapability_Service) String() string { return proto.CompactTextString(m) } func (*PluginCapability_Service) ProtoMessage() {} func (*PluginCapability_Service) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{4, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 0} } func (m *PluginCapability_Service) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_Service.Unmarshal(m, b) @@ -777,7 +786,7 @@ func (m *PluginCapability_VolumeExpansion) Reset() { *m = PluginCapabili func (m *PluginCapability_VolumeExpansion) String() string { return proto.CompactTextString(m) } func (*PluginCapability_VolumeExpansion) ProtoMessage() {} func (*PluginCapability_VolumeExpansion) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{4, 1} + return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 1} } func (m *PluginCapability_VolumeExpansion) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_VolumeExpansion.Unmarshal(m, b) @@ -815,7 +824,7 @@ func (m *PluginCapability_AlphaFeature) Reset() { *m = PluginCapability_ func (m *PluginCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*PluginCapability_AlphaFeature) ProtoMessage() {} func (*PluginCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{4, 2} + return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 2} } func (m *PluginCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_AlphaFeature.Unmarshal(m, b) @@ -852,7 +861,7 @@ func (m *ProbeRequest) Reset() { *m = ProbeRequest{} } func (m *ProbeRequest) String() string { return proto.CompactTextString(m) } func (*ProbeRequest) ProtoMessage() {} func (*ProbeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{5} + return fileDescriptor_csi_2e5460258ec4aed1, []int{5} } func (m *ProbeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeRequest.Unmarshal(m, b) @@ -903,7 +912,7 @@ func (m *ProbeResponse) Reset() { *m = ProbeResponse{} } func (m *ProbeResponse) String() string { return proto.CompactTextString(m) } func (*ProbeResponse) ProtoMessage() {} func (*ProbeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{6} + return fileDescriptor_csi_2e5460258ec4aed1, []int{6} } func (m *ProbeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeResponse.Unmarshal(m, b) @@ -1012,7 +1021,7 @@ func (m *CreateVolumeRequest) Reset() { *m = CreateVolumeRequest{} } func (m *CreateVolumeRequest) String() string { return proto.CompactTextString(m) } func (*CreateVolumeRequest) ProtoMessage() {} func (*CreateVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{7} + return fileDescriptor_csi_2e5460258ec4aed1, []int{7} } func (m *CreateVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeRequest.Unmarshal(m, b) @@ -1097,7 +1106,7 @@ func (m *VolumeContentSource) Reset() { *m = VolumeContentSource{} } func (m *VolumeContentSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource) ProtoMessage() {} func (*VolumeContentSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{8} + return fileDescriptor_csi_2e5460258ec4aed1, []int{8} } func (m *VolumeContentSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource.Unmarshal(m, b) @@ -1243,7 +1252,7 @@ func (m *VolumeContentSource_SnapshotSource) Reset() { *m = VolumeConten func (m *VolumeContentSource_SnapshotSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_SnapshotSource) ProtoMessage() {} func (*VolumeContentSource_SnapshotSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{8, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{8, 0} } func (m *VolumeContentSource_SnapshotSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_SnapshotSource.Unmarshal(m, b) @@ -1284,7 +1293,7 @@ func (m *VolumeContentSource_VolumeSource) Reset() { *m = VolumeContentS func (m *VolumeContentSource_VolumeSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_VolumeSource) ProtoMessage() {} func (*VolumeContentSource_VolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{8, 1} + return fileDescriptor_csi_2e5460258ec4aed1, []int{8, 1} } func (m *VolumeContentSource_VolumeSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_VolumeSource.Unmarshal(m, b) @@ -1325,7 +1334,7 @@ func (m *CreateVolumeResponse) Reset() { *m = CreateVolumeResponse{} } func (m *CreateVolumeResponse) String() string { return proto.CompactTextString(m) } func (*CreateVolumeResponse) ProtoMessage() {} func (*CreateVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{9} + return fileDescriptor_csi_2e5460258ec4aed1, []int{9} } func (m *CreateVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeResponse.Unmarshal(m, b) @@ -1372,7 +1381,7 @@ func (m *VolumeCapability) Reset() { *m = VolumeCapability{} } func (m *VolumeCapability) String() string { return proto.CompactTextString(m) } func (*VolumeCapability) ProtoMessage() {} func (*VolumeCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{10} + return fileDescriptor_csi_2e5460258ec4aed1, []int{10} } func (m *VolumeCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability.Unmarshal(m, b) @@ -1521,7 +1530,7 @@ func (m *VolumeCapability_BlockVolume) Reset() { *m = VolumeCapability_B func (m *VolumeCapability_BlockVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_BlockVolume) ProtoMessage() {} func (*VolumeCapability_BlockVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{10, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{10, 0} } func (m *VolumeCapability_BlockVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_BlockVolume.Unmarshal(m, b) @@ -1561,7 +1570,7 @@ func (m *VolumeCapability_MountVolume) Reset() { *m = VolumeCapability_M func (m *VolumeCapability_MountVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_MountVolume) ProtoMessage() {} func (*VolumeCapability_MountVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{10, 1} + return fileDescriptor_csi_2e5460258ec4aed1, []int{10, 1} } func (m *VolumeCapability_MountVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_MountVolume.Unmarshal(m, b) @@ -1608,7 +1617,7 @@ func (m *VolumeCapability_AccessMode) Reset() { *m = VolumeCapability_Ac func (m *VolumeCapability_AccessMode) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_AccessMode) ProtoMessage() {} func (*VolumeCapability_AccessMode) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{10, 2} + return fileDescriptor_csi_2e5460258ec4aed1, []int{10, 2} } func (m *VolumeCapability_AccessMode) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_AccessMode.Unmarshal(m, b) @@ -1656,7 +1665,7 @@ func (m *CapacityRange) Reset() { *m = CapacityRange{} } func (m *CapacityRange) String() string { return proto.CompactTextString(m) } func (*CapacityRange) ProtoMessage() {} func (*CapacityRange) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{11} + return fileDescriptor_csi_2e5460258ec4aed1, []int{11} } func (m *CapacityRange) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CapacityRange.Unmarshal(m, b) @@ -1761,7 +1770,7 @@ func (m *Volume) Reset() { *m = Volume{} } func (m *Volume) String() string { return proto.CompactTextString(m) } func (*Volume) ProtoMessage() {} func (*Volume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{12} + return fileDescriptor_csi_2e5460258ec4aed1, []int{12} } func (m *Volume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Volume.Unmarshal(m, b) @@ -1953,7 +1962,7 @@ func (m *TopologyRequirement) Reset() { *m = TopologyRequirement{} } func (m *TopologyRequirement) String() string { return proto.CompactTextString(m) } func (*TopologyRequirement) ProtoMessage() {} func (*TopologyRequirement) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{13} + return fileDescriptor_csi_2e5460258ec4aed1, []int{13} } func (m *TopologyRequirement) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TopologyRequirement.Unmarshal(m, b) @@ -2027,7 +2036,7 @@ func (m *Topology) Reset() { *m = Topology{} } func (m *Topology) String() string { return proto.CompactTextString(m) } func (*Topology) ProtoMessage() {} func (*Topology) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{14} + return fileDescriptor_csi_2e5460258ec4aed1, []int{14} } func (m *Topology) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Topology.Unmarshal(m, b) @@ -2071,7 +2080,7 @@ func (m *DeleteVolumeRequest) Reset() { *m = DeleteVolumeRequest{} } func (m *DeleteVolumeRequest) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeRequest) ProtoMessage() {} func (*DeleteVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{15} + return fileDescriptor_csi_2e5460258ec4aed1, []int{15} } func (m *DeleteVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeRequest.Unmarshal(m, b) @@ -2115,7 +2124,7 @@ func (m *DeleteVolumeResponse) Reset() { *m = DeleteVolumeResponse{} } func (m *DeleteVolumeResponse) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeResponse) ProtoMessage() {} func (*DeleteVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{16} + return fileDescriptor_csi_2e5460258ec4aed1, []int{16} } func (m *DeleteVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeResponse.Unmarshal(m, b) @@ -2169,7 +2178,7 @@ func (m *ControllerPublishVolumeRequest) Reset() { *m = ControllerPublis func (m *ControllerPublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeRequest) ProtoMessage() {} func (*ControllerPublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{17} + return fileDescriptor_csi_2e5460258ec4aed1, []int{17} } func (m *ControllerPublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeRequest.Unmarshal(m, b) @@ -2255,7 +2264,7 @@ func (m *ControllerPublishVolumeResponse) Reset() { *m = ControllerPubli func (m *ControllerPublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeResponse) ProtoMessage() {} func (*ControllerPublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{18} + return fileDescriptor_csi_2e5460258ec4aed1, []int{18} } func (m *ControllerPublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeResponse.Unmarshal(m, b) @@ -2306,7 +2315,7 @@ func (m *ControllerUnpublishVolumeRequest) Reset() { *m = ControllerUnpu func (m *ControllerUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeRequest) ProtoMessage() {} func (*ControllerUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{19} + return fileDescriptor_csi_2e5460258ec4aed1, []int{19} } func (m *ControllerUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeRequest.Unmarshal(m, b) @@ -2357,7 +2366,7 @@ func (m *ControllerUnpublishVolumeResponse) Reset() { *m = ControllerUnp func (m *ControllerUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeResponse) ProtoMessage() {} func (*ControllerUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{20} + return fileDescriptor_csi_2e5460258ec4aed1, []int{20} } func (m *ControllerUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeResponse.Unmarshal(m, b) @@ -2404,7 +2413,7 @@ func (m *ValidateVolumeCapabilitiesRequest) Reset() { *m = ValidateVolum func (m *ValidateVolumeCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesRequest) ProtoMessage() {} func (*ValidateVolumeCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{21} + return fileDescriptor_csi_2e5460258ec4aed1, []int{21} } func (m *ValidateVolumeCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesRequest.Unmarshal(m, b) @@ -2482,7 +2491,7 @@ func (m *ValidateVolumeCapabilitiesResponse) Reset() { *m = ValidateVolu func (m *ValidateVolumeCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesResponse) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{22} + return fileDescriptor_csi_2e5460258ec4aed1, []int{22} } func (m *ValidateVolumeCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse.Unmarshal(m, b) @@ -2539,7 +2548,7 @@ func (m *ValidateVolumeCapabilitiesResponse_Confirmed) String() string { } func (*ValidateVolumeCapabilitiesResponse_Confirmed) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse_Confirmed) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{22, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{22, 0} } func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse_Confirmed.Unmarshal(m, b) @@ -2604,7 +2613,7 @@ func (m *ListVolumesRequest) Reset() { *m = ListVolumesRequest{} } func (m *ListVolumesRequest) String() string { return proto.CompactTextString(m) } func (*ListVolumesRequest) ProtoMessage() {} func (*ListVolumesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{23} + return fileDescriptor_csi_2e5460258ec4aed1, []int{23} } func (m *ListVolumesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesRequest.Unmarshal(m, b) @@ -2656,7 +2665,7 @@ func (m *ListVolumesResponse) Reset() { *m = ListVolumesResponse{} } func (m *ListVolumesResponse) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse) ProtoMessage() {} func (*ListVolumesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{24} + return fileDescriptor_csi_2e5460258ec4aed1, []int{24} } func (m *ListVolumesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse.Unmarshal(m, b) @@ -2701,7 +2710,7 @@ func (m *ListVolumesResponse_Entry) Reset() { *m = ListVolumesResponse_E func (m *ListVolumesResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse_Entry) ProtoMessage() {} func (*ListVolumesResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{24, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{24, 0} } func (m *ListVolumesResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse_Entry.Unmarshal(m, b) @@ -2756,7 +2765,7 @@ func (m *GetCapacityRequest) Reset() { *m = GetCapacityRequest{} } func (m *GetCapacityRequest) String() string { return proto.CompactTextString(m) } func (*GetCapacityRequest) ProtoMessage() {} func (*GetCapacityRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{25} + return fileDescriptor_csi_2e5460258ec4aed1, []int{25} } func (m *GetCapacityRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityRequest.Unmarshal(m, b) @@ -2814,7 +2823,7 @@ func (m *GetCapacityResponse) Reset() { *m = GetCapacityResponse{} } func (m *GetCapacityResponse) String() string { return proto.CompactTextString(m) } func (*GetCapacityResponse) ProtoMessage() {} func (*GetCapacityResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{26} + return fileDescriptor_csi_2e5460258ec4aed1, []int{26} } func (m *GetCapacityResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityResponse.Unmarshal(m, b) @@ -2851,7 +2860,7 @@ func (m *ControllerGetCapabilitiesRequest) Reset() { *m = ControllerGetC func (m *ControllerGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesRequest) ProtoMessage() {} func (*ControllerGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{27} + return fileDescriptor_csi_2e5460258ec4aed1, []int{27} } func (m *ControllerGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesRequest.Unmarshal(m, b) @@ -2884,7 +2893,7 @@ func (m *ControllerGetCapabilitiesResponse) Reset() { *m = ControllerGet func (m *ControllerGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesResponse) ProtoMessage() {} func (*ControllerGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{28} + return fileDescriptor_csi_2e5460258ec4aed1, []int{28} } func (m *ControllerGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesResponse.Unmarshal(m, b) @@ -2926,7 +2935,7 @@ func (m *ControllerServiceCapability) Reset() { *m = ControllerServiceCa func (m *ControllerServiceCapability) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability) ProtoMessage() {} func (*ControllerServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{29} + return fileDescriptor_csi_2e5460258ec4aed1, []int{29} } func (m *ControllerServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability.Unmarshal(m, b) @@ -3068,7 +3077,7 @@ func (m *ControllerServiceCapability_RPC) Reset() { *m = ControllerServi func (m *ControllerServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_RPC) ProtoMessage() {} func (*ControllerServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{29, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{29, 0} } func (m *ControllerServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_RPC.Unmarshal(m, b) @@ -3108,7 +3117,7 @@ func (m *ControllerServiceCapability_AlphaFeature) Reset() { func (m *ControllerServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_AlphaFeature) ProtoMessage() {} func (*ControllerServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{29, 1} + return fileDescriptor_csi_2e5460258ec4aed1, []int{29, 1} } func (m *ControllerServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_AlphaFeature.Unmarshal(m, b) @@ -3170,7 +3179,7 @@ func (m *CreateSnapshotRequest) Reset() { *m = CreateSnapshotRequest{} } func (m *CreateSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotRequest) ProtoMessage() {} func (*CreateSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{30} + return fileDescriptor_csi_2e5460258ec4aed1, []int{30} } func (m *CreateSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotRequest.Unmarshal(m, b) @@ -3232,7 +3241,7 @@ func (m *CreateSnapshotResponse) Reset() { *m = CreateSnapshotResponse{} func (m *CreateSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotResponse) ProtoMessage() {} func (*CreateSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{31} + return fileDescriptor_csi_2e5460258ec4aed1, []int{31} } func (m *CreateSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotResponse.Unmarshal(m, b) @@ -3299,7 +3308,7 @@ func (m *Snapshot) Reset() { *m = Snapshot{} } func (m *Snapshot) String() string { return proto.CompactTextString(m) } func (*Snapshot) ProtoMessage() {} func (*Snapshot) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{32} + return fileDescriptor_csi_2e5460258ec4aed1, []int{32} } func (m *Snapshot) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Snapshot.Unmarshal(m, b) @@ -3371,7 +3380,7 @@ func (m *DeleteSnapshotRequest) Reset() { *m = DeleteSnapshotRequest{} } func (m *DeleteSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotRequest) ProtoMessage() {} func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{33} + return fileDescriptor_csi_2e5460258ec4aed1, []int{33} } func (m *DeleteSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotRequest.Unmarshal(m, b) @@ -3415,7 +3424,7 @@ func (m *DeleteSnapshotResponse) Reset() { *m = DeleteSnapshotResponse{} func (m *DeleteSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotResponse) ProtoMessage() {} func (*DeleteSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{34} + return fileDescriptor_csi_2e5460258ec4aed1, []int{34} } func (m *DeleteSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotResponse.Unmarshal(m, b) @@ -3470,7 +3479,7 @@ func (m *ListSnapshotsRequest) Reset() { *m = ListSnapshotsRequest{} } func (m *ListSnapshotsRequest) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsRequest) ProtoMessage() {} func (*ListSnapshotsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{35} + return fileDescriptor_csi_2e5460258ec4aed1, []int{35} } func (m *ListSnapshotsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsRequest.Unmarshal(m, b) @@ -3536,7 +3545,7 @@ func (m *ListSnapshotsResponse) Reset() { *m = ListSnapshotsResponse{} } func (m *ListSnapshotsResponse) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse) ProtoMessage() {} func (*ListSnapshotsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{36} + return fileDescriptor_csi_2e5460258ec4aed1, []int{36} } func (m *ListSnapshotsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse.Unmarshal(m, b) @@ -3581,7 +3590,7 @@ func (m *ListSnapshotsResponse_Entry) Reset() { *m = ListSnapshotsRespon func (m *ListSnapshotsResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse_Entry) ProtoMessage() {} func (*ListSnapshotsResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{36, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{36, 0} } func (m *ListSnapshotsResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse_Entry.Unmarshal(m, b) @@ -3626,7 +3635,7 @@ func (m *ControllerExpandVolumeRequest) Reset() { *m = ControllerExpandV func (m *ControllerExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeRequest) ProtoMessage() {} func (*ControllerExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{37} + return fileDescriptor_csi_2e5460258ec4aed1, []int{37} } func (m *ControllerExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeRequest.Unmarshal(m, b) @@ -3683,7 +3692,7 @@ func (m *ControllerExpandVolumeResponse) Reset() { *m = ControllerExpand func (m *ControllerExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeResponse) ProtoMessage() {} func (*ControllerExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{38} + return fileDescriptor_csi_2e5460258ec4aed1, []int{38} } func (m *ControllerExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeResponse.Unmarshal(m, b) @@ -3734,7 +3743,7 @@ func (m *ControllerTapeRotationRequest) Reset() { *m = ControllerTapeRot func (m *ControllerTapeRotationRequest) String() string { return proto.CompactTextString(m) } func (*ControllerTapeRotationRequest) ProtoMessage() {} func (*ControllerTapeRotationRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{39} + return fileDescriptor_csi_2e5460258ec4aed1, []int{39} } func (m *ControllerTapeRotationRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerTapeRotationRequest.Unmarshal(m, b) @@ -3879,7 +3888,7 @@ func (m *ControllerTapeRotationRequest_UpdateStrategy) String() string { } func (*ControllerTapeRotationRequest_UpdateStrategy) ProtoMessage() {} func (*ControllerTapeRotationRequest_UpdateStrategy) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{39, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{39, 0} } func (m *ControllerTapeRotationRequest_UpdateStrategy) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerTapeRotationRequest_UpdateStrategy.Unmarshal(m, b) @@ -3921,7 +3930,7 @@ func (m *ControllerTapeRotationResponse) Reset() { *m = ControllerTapeRo func (m *ControllerTapeRotationResponse) String() string { return proto.CompactTextString(m) } func (*ControllerTapeRotationResponse) ProtoMessage() {} func (*ControllerTapeRotationResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{40} + return fileDescriptor_csi_2e5460258ec4aed1, []int{40} } func (m *ControllerTapeRotationResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerTapeRotationResponse.Unmarshal(m, b) @@ -4010,7 +4019,7 @@ func (m *NodeStageVolumeRequest) Reset() { *m = NodeStageVolumeRequest{} func (m *NodeStageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeRequest) ProtoMessage() {} func (*NodeStageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{41} + return fileDescriptor_csi_2e5460258ec4aed1, []int{41} } func (m *NodeStageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeRequest.Unmarshal(m, b) @@ -4082,7 +4091,7 @@ func (m *NodeStageVolumeResponse) Reset() { *m = NodeStageVolumeResponse func (m *NodeStageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeResponse) ProtoMessage() {} func (*NodeStageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{42} + return fileDescriptor_csi_2e5460258ec4aed1, []int{42} } func (m *NodeStageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeResponse.Unmarshal(m, b) @@ -4118,7 +4127,7 @@ func (m *NodeUnstageVolumeRequest) Reset() { *m = NodeUnstageVolumeReque func (m *NodeUnstageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeRequest) ProtoMessage() {} func (*NodeUnstageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{43} + return fileDescriptor_csi_2e5460258ec4aed1, []int{43} } func (m *NodeUnstageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeRequest.Unmarshal(m, b) @@ -4162,7 +4171,7 @@ func (m *NodeUnstageVolumeResponse) Reset() { *m = NodeUnstageVolumeResp func (m *NodeUnstageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeResponse) ProtoMessage() {} func (*NodeUnstageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{44} + return fileDescriptor_csi_2e5460258ec4aed1, []int{44} } func (m *NodeUnstageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeResponse.Unmarshal(m, b) @@ -4236,7 +4245,7 @@ func (m *NodePublishVolumeRequest) Reset() { *m = NodePublishVolumeReque func (m *NodePublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeRequest) ProtoMessage() {} func (*NodePublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{45} + return fileDescriptor_csi_2e5460258ec4aed1, []int{45} } func (m *NodePublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeRequest.Unmarshal(m, b) @@ -4322,7 +4331,7 @@ func (m *NodePublishVolumeResponse) Reset() { *m = NodePublishVolumeResp func (m *NodePublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeResponse) ProtoMessage() {} func (*NodePublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{46} + return fileDescriptor_csi_2e5460258ec4aed1, []int{46} } func (m *NodePublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeResponse.Unmarshal(m, b) @@ -4359,7 +4368,7 @@ func (m *NodeUnpublishVolumeRequest) Reset() { *m = NodeUnpublishVolumeR func (m *NodeUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeRequest) ProtoMessage() {} func (*NodeUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{47} + return fileDescriptor_csi_2e5460258ec4aed1, []int{47} } func (m *NodeUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeRequest.Unmarshal(m, b) @@ -4403,7 +4412,7 @@ func (m *NodeUnpublishVolumeResponse) Reset() { *m = NodeUnpublishVolume func (m *NodeUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeResponse) ProtoMessage() {} func (*NodeUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{48} + return fileDescriptor_csi_2e5460258ec4aed1, []int{48} } func (m *NodeUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeResponse.Unmarshal(m, b) @@ -4441,7 +4450,7 @@ func (m *NodeGetVolumeStatsRequest) Reset() { *m = NodeGetVolumeStatsReq func (m *NodeGetVolumeStatsRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsRequest) ProtoMessage() {} func (*NodeGetVolumeStatsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{49} + return fileDescriptor_csi_2e5460258ec4aed1, []int{49} } func (m *NodeGetVolumeStatsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsRequest.Unmarshal(m, b) @@ -4487,7 +4496,7 @@ func (m *NodeGetVolumeStatsResponse) Reset() { *m = NodeGetVolumeStatsRe func (m *NodeGetVolumeStatsResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsResponse) ProtoMessage() {} func (*NodeGetVolumeStatsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{50} + return fileDescriptor_csi_2e5460258ec4aed1, []int{50} } func (m *NodeGetVolumeStatsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsResponse.Unmarshal(m, b) @@ -4535,7 +4544,7 @@ func (m *VolumeUsage) Reset() { *m = VolumeUsage{} } func (m *VolumeUsage) String() string { return proto.CompactTextString(m) } func (*VolumeUsage) ProtoMessage() {} func (*VolumeUsage) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{51} + return fileDescriptor_csi_2e5460258ec4aed1, []int{51} } func (m *VolumeUsage) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeUsage.Unmarshal(m, b) @@ -4593,7 +4602,7 @@ func (m *NodeGetCapabilitiesRequest) Reset() { *m = NodeGetCapabilitiesR func (m *NodeGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesRequest) ProtoMessage() {} func (*NodeGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{52} + return fileDescriptor_csi_2e5460258ec4aed1, []int{52} } func (m *NodeGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesRequest.Unmarshal(m, b) @@ -4626,7 +4635,7 @@ func (m *NodeGetCapabilitiesResponse) Reset() { *m = NodeGetCapabilities func (m *NodeGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesResponse) ProtoMessage() {} func (*NodeGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{53} + return fileDescriptor_csi_2e5460258ec4aed1, []int{53} } func (m *NodeGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesResponse.Unmarshal(m, b) @@ -4668,7 +4677,7 @@ func (m *NodeServiceCapability) Reset() { *m = NodeServiceCapability{} } func (m *NodeServiceCapability) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability) ProtoMessage() {} func (*NodeServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{54} + return fileDescriptor_csi_2e5460258ec4aed1, []int{54} } func (m *NodeServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability.Unmarshal(m, b) @@ -4810,7 +4819,7 @@ func (m *NodeServiceCapability_RPC) Reset() { *m = NodeServiceCapability func (m *NodeServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_RPC) ProtoMessage() {} func (*NodeServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{54, 0} + return fileDescriptor_csi_2e5460258ec4aed1, []int{54, 0} } func (m *NodeServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_RPC.Unmarshal(m, b) @@ -4848,7 +4857,7 @@ func (m *NodeServiceCapability_AlphaFeature) Reset() { *m = NodeServiceC func (m *NodeServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_AlphaFeature) ProtoMessage() {} func (*NodeServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{54, 1} + return fileDescriptor_csi_2e5460258ec4aed1, []int{54, 1} } func (m *NodeServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_AlphaFeature.Unmarshal(m, b) @@ -4885,7 +4894,7 @@ func (m *NodeGetInfoRequest) Reset() { *m = NodeGetInfoRequest{} } func (m *NodeGetInfoRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoRequest) ProtoMessage() {} func (*NodeGetInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{55} + return fileDescriptor_csi_2e5460258ec4aed1, []int{55} } func (m *NodeGetInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoRequest.Unmarshal(m, b) @@ -4948,7 +4957,7 @@ func (m *NodeGetInfoResponse) Reset() { *m = NodeGetInfoResponse{} } func (m *NodeGetInfoResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoResponse) ProtoMessage() {} func (*NodeGetInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{56} + return fileDescriptor_csi_2e5460258ec4aed1, []int{56} } func (m *NodeGetInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoResponse.Unmarshal(m, b) @@ -5010,7 +5019,7 @@ func (m *NodeExpandVolumeRequest) Reset() { *m = NodeExpandVolumeRequest func (m *NodeExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeRequest) ProtoMessage() {} func (*NodeExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{57} + return fileDescriptor_csi_2e5460258ec4aed1, []int{57} } func (m *NodeExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeRequest.Unmarshal(m, b) @@ -5063,7 +5072,7 @@ func (m *NodeExpandVolumeResponse) Reset() { *m = NodeExpandVolumeRespon func (m *NodeExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeResponse) ProtoMessage() {} func (*NodeExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_58ea024178a9e64e, []int{58} + return fileDescriptor_csi_2e5460258ec4aed1, []int{58} } func (m *NodeExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeResponse.Unmarshal(m, b) @@ -6168,246 +6177,248 @@ var _Node_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_58ea024178a9e64e) -} - -var fileDescriptor_csi_58ea024178a9e64e = []byte{ - // 3782 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0xcd, 0x73, 0x1b, 0x47, - 0x76, 0xc7, 0xe0, 0x8b, 0xe0, 0x23, 0x09, 0x41, 0xcd, 0x0f, 0x41, 0x43, 0x52, 0xa4, 0x46, 0x96, - 0x96, 0x96, 0x25, 0x70, 0xad, 0x5d, 0xb9, 0x62, 0x4a, 0xde, 0x5d, 0x00, 0x04, 0x49, 0x58, 0x10, - 0x40, 0x0d, 0x40, 0xca, 0x52, 0xe2, 0x1a, 0x0f, 0x81, 0x26, 0x38, 0x65, 0x60, 0x06, 0x3b, 0x33, - 0xa0, 0xc5, 0x5c, 0x52, 0x9b, 0x9c, 0x52, 0x39, 0xa7, 0x92, 0x9c, 0xb2, 0xe5, 0xf8, 0x92, 0x54, - 0x5c, 0xae, 0x1c, 0x52, 0x39, 0x26, 0x95, 0x63, 0xfe, 0x80, 0x24, 0xe5, 0x8b, 0x2f, 0xa9, 0x1c, - 0x5c, 0x49, 0x95, 0xcf, 0x39, 0xa5, 0x66, 0xba, 0x67, 0x30, 0x3d, 0x18, 0x0c, 0x00, 0x51, 0x2a, - 0x1f, 0xf6, 0x44, 0xcc, 0xeb, 0xd7, 0xaf, 0x5f, 0x77, 0xbf, 0xf7, 0xfa, 0xbd, 0x5f, 0x37, 0xe1, - 0x61, 0x5b, 0x31, 0xcf, 0xfa, 0x27, 0xb9, 0xa6, 0xd6, 0xdd, 0x6e, 0x6a, 0xaa, 0x29, 0x2b, 0x2a, - 0xd6, 0xef, 0x1b, 0xa6, 0xa6, 0xcb, 0x6d, 0x7c, 0x5f, 0x51, 0x4d, 0xac, 0x9f, 0xca, 0x4d, 0xbc, - 0x6d, 0xf4, 0x70, 0x73, 0xbb, 0x69, 0x28, 0xb9, 0x9e, 0xae, 0x99, 0x1a, 0x4a, 0x5a, 0x3f, 0xcf, - 0xdf, 0xe7, 0x37, 0xdb, 0x9a, 0xd6, 0xee, 0xe0, 0x6d, 0x9b, 0x7a, 0xd2, 0x3f, 0xdd, 0x6e, 0x61, - 0xa3, 0xa9, 0x2b, 0x3d, 0x53, 0xd3, 0x09, 0x27, 0xbf, 0xe1, 0xe7, 0x30, 0x95, 0x2e, 0x36, 0x4c, - 0xb9, 0xdb, 0xa3, 0x0c, 0x37, 0xfc, 0x0c, 0x5f, 0xe8, 0x72, 0xaf, 0x87, 0x75, 0x83, 0xb4, 0x0b, - 0x2b, 0xb0, 0xb4, 0x8f, 0xcd, 0xc3, 0x4e, 0xbf, 0xad, 0xa8, 0x65, 0xf5, 0x54, 0x13, 0xf1, 0xaf, - 0xfb, 0xd8, 0x30, 0x85, 0xff, 0xe4, 0x60, 0xd9, 0xd7, 0x60, 0xf4, 0x34, 0xd5, 0xc0, 0x08, 0x41, - 0x5c, 0x95, 0xbb, 0x38, 0xcb, 0x6d, 0x72, 0x5b, 0xb3, 0xa2, 0xfd, 0x1b, 0xdd, 0x86, 0xf4, 0x39, - 0x56, 0x5b, 0x9a, 0x2e, 0x9d, 0x63, 0xdd, 0x50, 0x34, 0x35, 0x1b, 0xb5, 0x5b, 0x17, 0x08, 0xf5, - 0x98, 0x10, 0xd1, 0x3e, 0xa4, 0xba, 0xb2, 0xaa, 0x9c, 0x62, 0xc3, 0xcc, 0xc6, 0x36, 0x63, 0x5b, - 0x73, 0x0f, 0xde, 0xcb, 0x91, 0xa9, 0xe6, 0x02, 0xc7, 0xca, 0x3d, 0xa5, 0xdc, 0x25, 0xd5, 0xd4, - 0x2f, 0x44, 0xb7, 0x33, 0xff, 0x08, 0x16, 0x98, 0x26, 0x94, 0x81, 0xd8, 0xe7, 0xf8, 0x82, 0xea, - 0x64, 0xfd, 0x44, 0x4b, 0x90, 0x38, 0x97, 0x3b, 0x7d, 0x4c, 0x35, 0x21, 0x1f, 0x3b, 0xd1, 0xdf, - 0xe3, 0x84, 0x1b, 0xb0, 0xe6, 0x8e, 0x56, 0x94, 0x7b, 0xf2, 0x89, 0xd2, 0x51, 0x4c, 0x05, 0x1b, - 0xce, 0xd4, 0x3f, 0x85, 0xf5, 0x11, 0xed, 0x74, 0x05, 0x1e, 0xc3, 0x7c, 0xd3, 0x43, 0xcf, 0x72, - 0xf6, 0x54, 0xb2, 0xce, 0x54, 0x7c, 0x3d, 0x2f, 0x44, 0x86, 0x5b, 0xf8, 0x4d, 0x02, 0x32, 0x7e, - 0x16, 0xf4, 0x18, 0x66, 0x0c, 0xac, 0x9f, 0x2b, 0x4d, 0xb2, 0xae, 0x73, 0x0f, 0x36, 0x47, 0x49, - 0xcb, 0xd5, 0x09, 0xdf, 0x41, 0x44, 0x74, 0xba, 0xa0, 0x23, 0xc8, 0x9c, 0x6b, 0x9d, 0x7e, 0x17, - 0x4b, 0xf8, 0x55, 0x4f, 0x56, 0xdd, 0x0d, 0x98, 0x7b, 0xb0, 0x35, 0x52, 0xcc, 0xb1, 0xdd, 0xa1, - 0xe4, 0xf0, 0x1f, 0x44, 0xc4, 0x2b, 0xe7, 0x2c, 0x09, 0x55, 0x60, 0x41, 0xee, 0xf4, 0xce, 0x64, - 0xe9, 0x14, 0xcb, 0x66, 0x5f, 0xc7, 0xd9, 0x98, 0x2d, 0xf3, 0xf6, 0x48, 0x99, 0x79, 0x8b, 0x7b, - 0x8f, 0x30, 0x1f, 0x44, 0xc4, 0x79, 0xd9, 0xf3, 0xcd, 0xff, 0x05, 0x07, 0x33, 0x54, 0x77, 0xf4, - 0x21, 0xc4, 0xcd, 0x8b, 0x1e, 0x99, 0x6b, 0x3a, 0x44, 0x20, 0xe5, 0xcf, 0x35, 0x2e, 0x7a, 0x58, - 0xb4, 0xbb, 0x08, 0xcf, 0x20, 0x6e, 0x7d, 0xa1, 0x39, 0x98, 0x39, 0xaa, 0x3e, 0xa9, 0xd6, 0x9e, - 0x57, 0x33, 0x11, 0xb4, 0x02, 0xa8, 0x58, 0xab, 0x36, 0xc4, 0x5a, 0xa5, 0x52, 0x12, 0xa5, 0x7a, - 0x49, 0x3c, 0x2e, 0x17, 0x4b, 0x19, 0x0e, 0xbd, 0x03, 0x9b, 0xc7, 0xb5, 0xca, 0xd1, 0xd3, 0x92, - 0x94, 0x2f, 0x16, 0x4b, 0xf5, 0x7a, 0xb9, 0x50, 0xae, 0x94, 0x1b, 0x2f, 0xa4, 0x62, 0xad, 0x5a, - 0x6f, 0x88, 0xf9, 0x72, 0xb5, 0x51, 0xcf, 0x44, 0xf9, 0x3f, 0xe6, 0xe0, 0x8a, 0x6f, 0x39, 0x50, - 0x9e, 0xd1, 0xf0, 0xfe, 0xa4, 0xcb, 0xe8, 0xd5, 0xf4, 0x5e, 0x90, 0xa6, 0x00, 0xc9, 0x5a, 0xb5, - 0x52, 0xae, 0x5a, 0xda, 0xcd, 0xc1, 0x4c, 0x6d, 0x6f, 0xcf, 0xfe, 0x88, 0xf2, 0x4d, 0x98, 0xf7, - 0x2e, 0x1f, 0xfa, 0x05, 0xa3, 0xc0, 0xdd, 0x89, 0xd6, 0xdc, 0x3b, 0xfa, 0x62, 0xc0, 0xe8, 0x85, - 0x24, 0x11, 0x2a, 0xa4, 0x61, 0xfe, 0x50, 0xd7, 0x4e, 0xb0, 0x63, 0xf2, 0x79, 0x58, 0xa0, 0xdf, - 0xd4, 0xc4, 0x7f, 0x0a, 0x09, 0x1d, 0xcb, 0xad, 0x0b, 0x6a, 0x8d, 0x7c, 0x8e, 0x84, 0x91, 0x9c, - 0x13, 0x46, 0x72, 0x05, 0x4d, 0xeb, 0x1c, 0x5b, 0x2e, 0x25, 0x12, 0x46, 0xe1, 0x87, 0x38, 0x2c, - 0x16, 0x75, 0x2c, 0x9b, 0x98, 0x2c, 0x09, 0x15, 0x1d, 0x18, 0x2e, 0x1e, 0x43, 0xda, 0x72, 0x89, - 0xa6, 0x62, 0x5e, 0x48, 0xba, 0xac, 0xb6, 0x31, 0xb5, 0xd6, 0x65, 0x67, 0x96, 0x45, 0xda, 0x2a, - 0x5a, 0x8d, 0xe2, 0x42, 0xd3, 0xfb, 0x89, 0xca, 0xb0, 0x48, 0xad, 0x9d, 0xf1, 0xc2, 0x18, 0xeb, - 0x85, 0x44, 0x0b, 0x8f, 0x17, 0xa2, 0x73, 0x96, 0xa2, 0x60, 0x03, 0x3d, 0x01, 0xe8, 0xc9, 0xba, - 0xdc, 0xc5, 0x26, 0xd6, 0x8d, 0x6c, 0x9c, 0x0d, 0x49, 0x01, 0xb3, 0xc9, 0x1d, 0xba, 0xdc, 0x24, - 0x24, 0x79, 0xba, 0xa3, 0x7d, 0xcb, 0x87, 0x9b, 0x3a, 0x36, 0x8d, 0x6c, 0xc2, 0x96, 0xb4, 0x15, - 0x26, 0xa9, 0x4e, 0x58, 0x6d, 0x31, 0x85, 0xd8, 0x5f, 0x16, 0x38, 0xd1, 0xe9, 0x8d, 0x6a, 0xb0, - 0xec, 0x4c, 0x50, 0x53, 0x4d, 0xac, 0x9a, 0x92, 0xa1, 0xf5, 0xf5, 0x26, 0xce, 0x26, 0xed, 0x55, - 0x5a, 0xf5, 0x4d, 0x91, 0xf0, 0xd4, 0x6d, 0x16, 0x91, 0x2e, 0x0d, 0x43, 0x44, 0x2f, 0x81, 0x97, - 0x9b, 0x4d, 0x6c, 0x18, 0x0a, 0x59, 0x0b, 0x49, 0xc7, 0xbf, 0xee, 0x2b, 0x3a, 0xee, 0x62, 0xd5, - 0x34, 0xb2, 0x33, 0xac, 0xd4, 0x86, 0xd6, 0xd3, 0x3a, 0x5a, 0xfb, 0x42, 0x1c, 0xf0, 0x88, 0xd7, - 0x99, 0xee, 0x9e, 0x16, 0x83, 0xff, 0x08, 0xae, 0xf8, 0x16, 0x65, 0x9a, 0x60, 0xcc, 0xef, 0xc0, - 0xbc, 0x77, 0x25, 0xa6, 0x0a, 0xe4, 0x7f, 0x16, 0x85, 0xc5, 0x80, 0x35, 0x40, 0x07, 0x90, 0x32, - 0x54, 0xb9, 0x67, 0x9c, 0x69, 0x26, 0xb5, 0xdf, 0xbb, 0x21, 0x4b, 0x96, 0xab, 0x53, 0x5e, 0xf2, - 0x79, 0x10, 0x11, 0xdd, 0xde, 0xa8, 0x00, 0x49, 0xb2, 0x9e, 0xfe, 0x70, 0x1a, 0x24, 0x87, 0xd0, - 0x5c, 0x29, 0xb4, 0x27, 0xff, 0x3e, 0xa4, 0xd9, 0x11, 0xd0, 0x06, 0xcc, 0x39, 0x23, 0x48, 0x4a, - 0x8b, 0xce, 0x15, 0x1c, 0x52, 0xb9, 0xc5, 0xbf, 0x07, 0xf3, 0x5e, 0x61, 0x68, 0x15, 0x66, 0xa9, - 0x41, 0xb8, 0xec, 0x29, 0x42, 0x28, 0xb7, 0x5c, 0x9f, 0xfe, 0x05, 0x2c, 0xb1, 0x76, 0x46, 0x5d, - 0xf9, 0x8e, 0x3b, 0x07, 0xb2, 0x16, 0x69, 0x76, 0x0e, 0x8e, 0x9e, 0xc2, 0xdf, 0xc5, 0x21, 0xe3, - 0x77, 0x1a, 0xf4, 0x18, 0x12, 0x27, 0x1d, 0xad, 0xf9, 0x39, 0xed, 0xfb, 0xce, 0x28, 0xef, 0xca, - 0x15, 0x2c, 0x2e, 0x42, 0x3d, 0x88, 0x88, 0xa4, 0x93, 0xd5, 0xbb, 0xab, 0xf5, 0x55, 0x93, 0xae, - 0xde, 0xe8, 0xde, 0x4f, 0x2d, 0xae, 0x41, 0x6f, 0xbb, 0x13, 0xda, 0x85, 0x39, 0x62, 0x76, 0x52, - 0x57, 0x6b, 0x39, 0x87, 0xcf, 0xad, 0x91, 0x32, 0xf2, 0x36, 0xef, 0x53, 0xad, 0x85, 0x45, 0x90, - 0xdd, 0xdf, 0xfc, 0x02, 0xcc, 0x79, 0x74, 0xe3, 0xf7, 0x61, 0xce, 0x33, 0x18, 0xba, 0x06, 0x33, - 0xa7, 0x86, 0xe4, 0x06, 0xda, 0x59, 0x31, 0x79, 0x6a, 0xd8, 0x61, 0x73, 0x03, 0xe6, 0x6c, 0x2d, - 0xa4, 0xd3, 0x8e, 0xdc, 0x36, 0xb2, 0xd1, 0xcd, 0x98, 0xb5, 0x47, 0x36, 0x69, 0xcf, 0xa2, 0xf0, - 0xff, 0xc3, 0x01, 0x0c, 0x86, 0x44, 0x8f, 0x21, 0x6e, 0x6b, 0x49, 0xc2, 0xf5, 0xd6, 0x04, 0x5a, - 0xe6, 0x6c, 0x55, 0xed, 0x5e, 0xc2, 0x5f, 0x73, 0x10, 0xb7, 0xc5, 0xf8, 0x4f, 0xb5, 0x7a, 0xb9, - 0xba, 0x5f, 0x29, 0x49, 0xd5, 0xda, 0x6e, 0x49, 0x7a, 0x2e, 0x96, 0x1b, 0x25, 0x31, 0xc3, 0xa1, - 0x55, 0xb8, 0xe6, 0xa5, 0x8b, 0xa5, 0xfc, 0x6e, 0x49, 0x94, 0x6a, 0xd5, 0xca, 0x8b, 0x4c, 0x14, - 0xf1, 0xb0, 0xf2, 0xf4, 0xa8, 0xd2, 0x28, 0x0f, 0xb7, 0xc5, 0xd0, 0x1a, 0x64, 0x3d, 0x6d, 0x54, - 0x06, 0x15, 0x1b, 0xb7, 0xc4, 0x7a, 0x5a, 0xc9, 0x4f, 0xda, 0x98, 0x28, 0x2c, 0xb8, 0x9b, 0x61, - 0x1b, 0xdb, 0x73, 0x58, 0x60, 0x62, 0xb4, 0x95, 0x01, 0xd2, 0xa0, 0xd2, 0x92, 0x4e, 0x2e, 0x4c, - 0x3b, 0x2b, 0xe2, 0xb6, 0x62, 0xe2, 0x82, 0x43, 0x2d, 0x58, 0x44, 0x6b, 0x59, 0x3b, 0x4a, 0x57, - 0x31, 0x29, 0x4f, 0xd4, 0xe6, 0x01, 0x9b, 0x64, 0x33, 0x08, 0xdf, 0x45, 0x21, 0x49, 0xf7, 0xe6, - 0xb6, 0xe7, 0x94, 0x60, 0x44, 0x3a, 0x54, 0x22, 0x92, 0x71, 0x8e, 0x28, 0xeb, 0x1c, 0xe8, 0x00, - 0xd2, 0xde, 0x50, 0xfa, 0xca, 0xc9, 0x3b, 0x6f, 0xb2, 0x1b, 0xe4, 0xf5, 0xe7, 0x57, 0x34, 0xdb, - 0x5c, 0x38, 0xf7, 0xd2, 0x50, 0x01, 0xd2, 0xbe, 0x68, 0x1c, 0x1f, 0x1f, 0x8d, 0x17, 0x9a, 0x4c, - 0x60, 0xca, 0xc3, 0xa2, 0x13, 0x48, 0x3b, 0x58, 0x32, 0x69, 0xa0, 0xa5, 0xa7, 0x45, 0x66, 0x28, - 0x00, 0xa3, 0x01, 0xb3, 0x43, 0xe3, 0x7f, 0x05, 0x68, 0x58, 0xd7, 0xa9, 0xa2, 0x66, 0x1f, 0x16, - 0x03, 0x42, 0x3c, 0xca, 0xc1, 0xac, 0xbd, 0x55, 0x86, 0x62, 0x62, 0x9a, 0xd1, 0x0e, 0x6b, 0x34, - 0x60, 0xb1, 0xf8, 0x7b, 0x3a, 0x3e, 0xc5, 0xba, 0x8e, 0x5b, 0xb6, 0x7b, 0x04, 0xf2, 0xbb, 0x2c, - 0xc2, 0x9f, 0x70, 0x90, 0x72, 0xe8, 0x68, 0x07, 0x52, 0x06, 0x6e, 0x93, 0xe3, 0x87, 0x8c, 0x75, - 0xc3, 0xdf, 0x37, 0x57, 0xa7, 0x0c, 0x34, 0xf7, 0x77, 0xf8, 0xad, 0xdc, 0x9f, 0x69, 0x9a, 0x6a, - 0xf2, 0xff, 0xc4, 0xc1, 0xe2, 0x2e, 0xee, 0x60, 0x7f, 0x96, 0x12, 0x16, 0x61, 0xbd, 0x07, 0x7b, - 0x94, 0x3d, 0xd8, 0x03, 0x44, 0x85, 0x1c, 0xec, 0x97, 0x3a, 0xec, 0x56, 0x60, 0x89, 0x1d, 0x8d, - 0x84, 0x77, 0xe1, 0x7f, 0x63, 0x70, 0xc3, 0xb2, 0x05, 0x5d, 0xeb, 0x74, 0xb0, 0x7e, 0xd8, 0x3f, - 0xe9, 0x28, 0xc6, 0xd9, 0x14, 0x93, 0xbb, 0x06, 0x33, 0xaa, 0xd6, 0xf2, 0x38, 0x4f, 0xd2, 0xfa, - 0x2c, 0xb7, 0x50, 0x09, 0xae, 0xfa, 0xd3, 0xac, 0x0b, 0x1a, 0x84, 0x47, 0x27, 0x59, 0x99, 0x73, - 0xff, 0x09, 0xc2, 0x43, 0xca, 0x4a, 0x10, 0x35, 0xb5, 0x73, 0x61, 0x7b, 0x4c, 0x4a, 0x74, 0xbf, - 0x91, 0xe8, 0xcf, 0x98, 0x7e, 0xe6, 0x66, 0x4c, 0xa1, 0x33, 0x0a, 0x4b, 0x9e, 0x3e, 0x1b, 0xf2, - 0xf8, 0xa4, 0x2d, 0xfa, 0xc3, 0x09, 0x45, 0x8f, 0x8d, 0x04, 0x97, 0xd9, 0xc5, 0x37, 0xe0, 0xbe, - 0xff, 0xc6, 0xc1, 0xc6, 0xc8, 0x29, 0xd0, 0x23, 0xbf, 0x05, 0x57, 0x7a, 0xa4, 0xc1, 0x5d, 0x04, - 0xe2, 0x65, 0x8f, 0xc6, 0x2e, 0x02, 0x2d, 0xbc, 0x29, 0x95, 0x59, 0x86, 0x74, 0x8f, 0x21, 0xf2, - 0x79, 0x58, 0x0c, 0x60, 0x9b, 0x6a, 0x32, 0xdf, 0x73, 0xb0, 0x39, 0x50, 0xe5, 0x48, 0xed, 0xbd, - 0x39, 0xf3, 0x6d, 0x0c, 0x6c, 0x8b, 0x84, 0xfc, 0x87, 0xc3, 0x73, 0x0f, 0x1e, 0xf0, 0x6d, 0x79, - 0xf0, 0x2d, 0xb8, 0x19, 0x32, 0x34, 0x75, 0xe7, 0xef, 0xe2, 0x70, 0xf3, 0x58, 0xee, 0x28, 0x2d, - 0x37, 0x91, 0x0b, 0x80, 0x28, 0xc2, 0x97, 0xa4, 0x39, 0xe4, 0x01, 0x24, 0x6a, 0x3d, 0x76, 0xbd, - 0x76, 0x9c, 0xfc, 0x09, 0x8e, 0xc3, 0x37, 0x58, 0x84, 0xbd, 0x08, 0x28, 0xc2, 0x3e, 0x9c, 0x5c, - 0xd7, 0xb0, 0x92, 0xec, 0xc8, 0x1f, 0x60, 0x3e, 0x98, 0x5c, 0x6e, 0x88, 0x15, 0x5c, 0xda, 0x8b, - 0x7f, 0xcc, 0xaa, 0xe9, 0x5f, 0xe3, 0x20, 0x84, 0xcd, 0x9e, 0xc6, 0x10, 0x11, 0x66, 0x9b, 0x9a, - 0x7a, 0xaa, 0xe8, 0x5d, 0xdc, 0xa2, 0xd9, 0xff, 0xcf, 0x27, 0x59, 0x3c, 0x1a, 0x40, 0x8a, 0x4e, - 0x5f, 0x71, 0x20, 0x06, 0x65, 0x61, 0xa6, 0x8b, 0x0d, 0x43, 0x6e, 0x3b, 0x6a, 0x39, 0x9f, 0xfc, - 0xd7, 0x31, 0x98, 0x75, 0xbb, 0x20, 0x75, 0xc8, 0x82, 0x49, 0xf8, 0xda, 0x7f, 0x1d, 0x05, 0x5e, - 0xdf, 0x98, 0xa3, 0xaf, 0x61, 0xcc, 0x2d, 0xc6, 0x98, 0x89, 0x3b, 0xec, 0xbe, 0x96, 0xda, 0x21, - 0x76, 0xfd, 0xa3, 0x1b, 0xa0, 0xf0, 0x07, 0x80, 0x2a, 0x8a, 0x41, 0xab, 0x28, 0x37, 0x2c, 0x59, - 0x45, 0x93, 0xfc, 0x4a, 0xc2, 0xaa, 0xa9, 0x2b, 0x34, 0x5d, 0x4f, 0x88, 0xd0, 0x95, 0x5f, 0x95, - 0x08, 0xc5, 0x4a, 0xe9, 0x0d, 0x53, 0xd6, 0x4d, 0x45, 0x6d, 0x4b, 0xa6, 0xf6, 0x39, 0x76, 0x71, - 0x62, 0x87, 0xda, 0xb0, 0x88, 0xc2, 0x97, 0x1c, 0x2c, 0x32, 0xe2, 0xa9, 0x4d, 0x3e, 0x82, 0x99, - 0x81, 0x6c, 0x26, 0x8d, 0x0f, 0xe0, 0xce, 0x91, 0x65, 0x73, 0x7a, 0xa0, 0x75, 0x00, 0x15, 0xbf, - 0x32, 0x99, 0x71, 0x67, 0x2d, 0x8a, 0x3d, 0x26, 0xbf, 0x0d, 0x09, 0xb2, 0x0c, 0x93, 0xd6, 0xcb, - 0x5f, 0x47, 0x01, 0xed, 0x63, 0xd3, 0x2d, 0x83, 0xe8, 0x1a, 0x8c, 0xb0, 0x25, 0xee, 0x35, 0x6c, - 0xe9, 0x63, 0xc6, 0x96, 0x88, 0x35, 0xde, 0xf5, 0x00, 0xe6, 0xbe, 0xa1, 0x43, 0x23, 0xe1, 0x88, - 0xd2, 0x83, 0xe4, 0x73, 0x93, 0x95, 0x1e, 0x97, 0x34, 0x99, 0x5d, 0x58, 0x64, 0x74, 0xa6, 0x7b, - 0x7a, 0x1f, 0x90, 0x7c, 0x2e, 0x2b, 0x1d, 0xd9, 0xd2, 0xcb, 0xa9, 0xec, 0x68, 0xa5, 0x77, 0xd5, - 0x6d, 0x71, 0xba, 0x09, 0x82, 0x37, 0x61, 0xa0, 0xf2, 0xfc, 0x00, 0x7e, 0xc7, 0x7b, 0xd0, 0x0e, - 0xf1, 0xd0, 0x71, 0xf7, 0x03, 0x41, 0xfc, 0x5b, 0xc3, 0x49, 0x02, 0xc5, 0xa0, 0x47, 0xe2, 0xf9, - 0xff, 0x1d, 0x87, 0xd5, 0x10, 0x6e, 0xf4, 0x08, 0x62, 0x7a, 0xaf, 0x49, 0x8d, 0xe9, 0x27, 0x13, - 0xc8, 0xcf, 0x89, 0x87, 0xc5, 0x83, 0x88, 0x68, 0xf5, 0x42, 0xcf, 0xfd, 0x10, 0x3c, 0x41, 0x52, - 0x7e, 0x3a, 0x89, 0x98, 0x50, 0x34, 0xfe, 0xab, 0x28, 0xc4, 0xc4, 0xc3, 0x22, 0xfa, 0x15, 0x03, - 0x33, 0xdf, 0x9b, 0x50, 0x3d, 0x2f, 0xd0, 0xfc, 0x2d, 0x17, 0x84, 0x73, 0x67, 0x61, 0xa9, 0x28, - 0x96, 0xf2, 0x8d, 0x92, 0xb4, 0x5b, 0xaa, 0x94, 0x1a, 0x25, 0x89, 0xe0, 0xf0, 0x19, 0x0e, 0xad, - 0x41, 0xf6, 0xf0, 0xa8, 0x50, 0x29, 0xd7, 0x0f, 0xa4, 0xa3, 0xaa, 0xf3, 0x8b, 0xb6, 0x46, 0x51, - 0x06, 0xe6, 0x2b, 0xe5, 0x7a, 0x83, 0x12, 0xea, 0x99, 0x98, 0x45, 0xd9, 0x2f, 0x35, 0xa4, 0x62, - 0xfe, 0x30, 0x5f, 0x2c, 0x37, 0x5e, 0x64, 0xe2, 0x88, 0x87, 0x15, 0x56, 0x76, 0xbd, 0x9a, 0x3f, - 0xac, 0x1f, 0xd4, 0x1a, 0x99, 0x04, 0x42, 0x90, 0xb6, 0xfb, 0x3b, 0xa4, 0x7a, 0x26, 0x69, 0x49, - 0x28, 0x56, 0x6a, 0x55, 0x57, 0x87, 0x19, 0xb4, 0x04, 0x19, 0x67, 0x64, 0xb1, 0x94, 0xdf, 0xb5, - 0xe1, 0x91, 0x14, 0xba, 0x0a, 0x0b, 0xa5, 0x4f, 0x0e, 0xf3, 0xd5, 0x5d, 0x87, 0x71, 0x96, 0xff, - 0x0d, 0xe7, 0x83, 0xe5, 0xcb, 0xcc, 0x7a, 0x3d, 0x9c, 0x76, 0x1f, 0xbc, 0x0b, 0x77, 0x27, 0x68, - 0xdd, 0xae, 0xc2, 0x42, 0x23, 0x7f, 0x58, 0x92, 0xc4, 0x5a, 0x23, 0xdf, 0x28, 0xd7, 0xaa, 0x19, - 0xce, 0x05, 0xf8, 0xbe, 0x8f, 0xc2, 0x32, 0x41, 0xf8, 0x1c, 0x3c, 0xd1, 0x89, 0x39, 0x5b, 0x90, - 0x21, 0x98, 0x84, 0xe4, 0xcf, 0x0a, 0xd3, 0x84, 0x7e, 0xec, 0xe4, 0x86, 0x0e, 0x1a, 0x1f, 0xf5, - 0xa0, 0xf1, 0x65, 0x7f, 0xa6, 0x7c, 0x97, 0xc5, 0xad, 0x7d, 0xa3, 0x85, 0x15, 0x5f, 0x4f, 0x03, - 0x52, 0xb9, 0xfb, 0xe1, 0xd2, 0xc2, 0x8e, 0xb9, 0xcb, 0x54, 0x5a, 0x97, 0x8c, 0x56, 0x7b, 0xb0, - 0xe2, 0xd7, 0x97, 0x06, 0x8e, 0x7b, 0x43, 0xe8, 0xb2, 0x1b, 0x3e, 0x5d, 0x5e, 0x97, 0x43, 0xf8, - 0x0f, 0x0e, 0x52, 0x0e, 0xd9, 0x3a, 0x82, 0x0c, 0xe5, 0x0f, 0x31, 0x83, 0x66, 0xcd, 0x5a, 0x14, - 0x17, 0x1c, 0xf3, 0xe2, 0xc2, 0x51, 0x3f, 0x2e, 0x1c, 0xb8, 0xcf, 0xb1, 0xc0, 0x7d, 0xfe, 0x25, - 0x2c, 0x34, 0x2d, 0xf5, 0x15, 0x4d, 0x95, 0x4c, 0xa5, 0xeb, 0x80, 0x55, 0xc3, 0xf7, 0x38, 0x0d, - 0xe7, 0xbe, 0x58, 0x9c, 0x77, 0x3a, 0x58, 0x24, 0xb4, 0x09, 0xf3, 0xf6, 0xbd, 0x8e, 0x64, 0x6a, - 0x52, 0xdf, 0xc0, 0xd9, 0x84, 0x5d, 0xba, 0x83, 0x4d, 0x6b, 0x68, 0x47, 0x06, 0x16, 0xfe, 0x99, - 0x83, 0x65, 0x82, 0x48, 0xf8, 0xcd, 0x71, 0x1c, 0xbe, 0xed, 0xb5, 0x38, 0xdf, 0xa9, 0x16, 0x28, - 0xf0, 0x6d, 0x15, 0x64, 0x59, 0x58, 0xf1, 0x8f, 0x47, 0xab, 0xb0, 0xbf, 0xe5, 0x60, 0xc9, 0x4a, - 0x29, 0x9c, 0x86, 0x37, 0x9d, 0xe1, 0x4c, 0xb1, 0x93, 0xbe, 0xc5, 0x8c, 0xfb, 0x17, 0x53, 0xf8, - 0x7b, 0x0e, 0x96, 0x7d, 0xba, 0x52, 0x4b, 0xfd, 0xc8, 0x9f, 0x2e, 0xdd, 0xf2, 0xa6, 0x4b, 0x43, - 0xfc, 0x53, 0x26, 0x4c, 0x0f, 0x9d, 0x84, 0x69, 0x3a, 0x87, 0xf8, 0xd3, 0x28, 0xac, 0x0f, 0xa2, - 0xa5, 0x7d, 0x71, 0xda, 0x9a, 0xa2, 0xde, 0xbf, 0xdc, 0xd5, 0xe1, 0x33, 0x7f, 0xa8, 0x7b, 0x30, - 0x1c, 0xc0, 0x03, 0x54, 0x7a, 0x5b, 0x06, 0xf8, 0x47, 0x5e, 0xe8, 0x8e, 0x1d, 0x97, 0x6e, 0xe1, - 0x84, 0x18, 0xf8, 0x07, 0x70, 0xcd, 0x46, 0x41, 0xdc, 0xeb, 0x7f, 0xe7, 0x86, 0x8f, 0x44, 0x91, - 0x94, 0xb8, 0x6c, 0x35, 0xbb, 0xb7, 0xd4, 0x14, 0xf7, 0x6d, 0x09, 0xff, 0xc5, 0x6c, 0x46, 0x43, - 0xee, 0x61, 0x51, 0x33, 0xed, 0x20, 0xe0, 0x6c, 0x86, 0x04, 0x57, 0xfa, 0x3d, 0xab, 0x66, 0x91, - 0x0c, 0x53, 0x97, 0x4d, 0xdc, 0xbe, 0xf0, 0x17, 0x83, 0xa1, 0xfd, 0x73, 0x47, 0x76, 0xe7, 0x3a, - 0xed, 0x7b, 0x10, 0x11, 0xd3, 0x7d, 0x86, 0x82, 0x36, 0x00, 0x74, 0xab, 0x0f, 0x96, 0x54, 0xed, - 0x0b, 0xa2, 0xed, 0x41, 0x44, 0x9c, 0x25, 0xb4, 0xaa, 0xf6, 0x05, 0xff, 0x0f, 0x1c, 0xa4, 0x59, - 0x29, 0xa8, 0x0e, 0x49, 0xa3, 0x79, 0x86, 0xbb, 0xce, 0x31, 0xfc, 0xe8, 0x75, 0x74, 0xc9, 0xd5, - 0x6d, 0x11, 0x22, 0x15, 0x25, 0x7c, 0x0c, 0x49, 0x42, 0x61, 0x0f, 0xe4, 0x14, 0xc4, 0xf7, 0xca, - 0x7b, 0xb5, 0x0c, 0x87, 0x66, 0x20, 0xb6, 0xbf, 0x57, 0xcf, 0x44, 0xd1, 0x3c, 0xa4, 0xea, 0xe5, - 0x4f, 0x24, 0xeb, 0x9c, 0xce, 0xc4, 0xac, 0x8c, 0xa3, 0x51, 0x7b, 0x5e, 0x12, 0xa5, 0xda, 0x9e, - 0x74, 0x90, 0xaf, 0xd6, 0xca, 0x99, 0xf8, 0x4e, 0xec, 0xb7, 0x05, 0xae, 0x90, 0x82, 0xa4, 0xdc, - 0xb4, 0xc6, 0x17, 0xfe, 0x25, 0xea, 0xdd, 0x68, 0x56, 0x35, 0xba, 0xd1, 0x55, 0x58, 0xee, 0xc8, - 0x86, 0x29, 0xe9, 0xb4, 0x41, 0x32, 0xfa, 0x76, 0x06, 0x3e, 0xf2, 0x02, 0x7e, 0x10, 0xb8, 0x17, - 0xad, 0x8e, 0x8e, 0xc0, 0x3a, 0xe9, 0x36, 0x2c, 0xef, 0x54, 0x56, 0x3a, 0x83, 0x04, 0x72, 0x62, - 0x79, 0x7b, 0xa4, 0x1b, 0xda, 0x86, 0x45, 0xaa, 0x91, 0x72, 0x8e, 0x1d, 0x61, 0x86, 0x1d, 0xb3, - 0x12, 0x22, 0x1a, 0x34, 0x51, 0x7e, 0x03, 0x1d, 0x00, 0xb2, 0xa3, 0x87, 0xab, 0xc0, 0x84, 0xc7, - 0x50, 0xc6, 0xea, 0xe5, 0x8c, 0x6e, 0x91, 0xed, 0xc5, 0x14, 0x7e, 0x88, 0xc3, 0x4a, 0x55, 0x6b, - 0xe1, 0xba, 0x29, 0xb7, 0xa7, 0xc1, 0xee, 0x7f, 0x7f, 0x18, 0x0a, 0x8d, 0xb2, 0x9e, 0x1f, 0x2c, - 0x75, 0x12, 0x04, 0x14, 0xe5, 0x60, 0xd1, 0x30, 0xe5, 0xb6, 0x1d, 0xeb, 0x65, 0xbd, 0x8d, 0x4d, - 0xa9, 0x27, 0x9b, 0x67, 0x34, 0x90, 0x5f, 0xa5, 0x4d, 0x0d, 0xbb, 0xe5, 0x50, 0x36, 0xcf, 0x82, - 0x21, 0xf5, 0xf8, 0xd4, 0x90, 0xfa, 0xc7, 0x7e, 0x54, 0xeb, 0xbd, 0x31, 0x73, 0x09, 0xc9, 0xd8, - 0x3e, 0x19, 0x01, 0x97, 0xbf, 0x3f, 0x46, 0xe4, 0x78, 0x98, 0xfc, 0xf2, 0xf0, 0xf0, 0x8f, 0x8c, - 0xb4, 0x5f, 0x87, 0x6b, 0x43, 0x93, 0xa7, 0xf9, 0x41, 0x1b, 0xb2, 0x56, 0xd3, 0x91, 0x6a, 0x4c, - 0x69, 0x8e, 0x23, 0x2c, 0x26, 0x3a, 0xc2, 0x62, 0x84, 0x55, 0xb8, 0x1e, 0x30, 0x10, 0xd5, 0xe2, - 0x1f, 0x13, 0x44, 0x8d, 0xe9, 0x2f, 0x7d, 0x3e, 0x1d, 0xe5, 0x15, 0x3f, 0xf7, 0x6e, 0x7b, 0xe0, - 0xfd, 0xc8, 0xdb, 0xf0, 0x8b, 0x0d, 0x98, 0xf3, 0xf2, 0xd1, 0x1c, 0xc7, 0x1c, 0xe3, 0x38, 0x89, - 0x4b, 0xdd, 0x45, 0x25, 0x7d, 0x77, 0x51, 0x95, 0x81, 0x53, 0xcd, 0xb0, 0x75, 0xcb, 0xc8, 0xa5, - 0x08, 0x71, 0xab, 0x97, 0x43, 0x6e, 0x95, 0x62, 0x2f, 0xb8, 0x46, 0x0a, 0xfd, 0x1d, 0x70, 0x2c, - 0x6a, 0xd4, 0x81, 0x37, 0x4f, 0xc2, 0x4b, 0xe0, 0x89, 0xc5, 0x4f, 0x7f, 0x17, 0xe4, 0x33, 0xa3, - 0xa8, 0xdf, 0x8c, 0x84, 0x75, 0x58, 0x0d, 0x94, 0x4d, 0x87, 0x7e, 0x41, 0xf4, 0xda, 0xc7, 0x14, - 0x4a, 0xac, 0x9b, 0xb2, 0x69, 0x4c, 0x3a, 0x32, 0x6d, 0xf4, 0x8e, 0x4c, 0x48, 0xf6, 0xc8, 0xfb, - 0x64, 0x56, 0x7e, 0xd1, 0xf4, 0xf0, 0x7f, 0x17, 0x12, 0x7d, 0x1b, 0x15, 0x27, 0x69, 0xfa, 0x22, - 0x6b, 0xd2, 0x47, 0x56, 0x93, 0x48, 0x38, 0x84, 0x6f, 0x38, 0x98, 0xf3, 0x90, 0xd1, 0x1a, 0xcc, - 0xba, 0x20, 0x99, 0x53, 0x51, 0xba, 0x04, 0x6b, 0x0f, 0x4c, 0xcd, 0x94, 0x3b, 0xf4, 0xa1, 0x05, - 0xf9, 0x40, 0x08, 0xe2, 0x7d, 0x03, 0x93, 0x82, 0x23, 0x26, 0xda, 0xbf, 0xd1, 0x3d, 0x88, 0xf7, - 0x55, 0xc5, 0xb4, 0x7d, 0x2f, 0xed, 0x77, 0x2a, 0x7b, 0xa8, 0xdc, 0x91, 0xaa, 0x98, 0xa2, 0xcd, - 0x25, 0xdc, 0x85, 0xb8, 0xf5, 0xc5, 0x66, 0x4a, 0xb3, 0x90, 0x28, 0xbc, 0x68, 0x94, 0xea, 0x19, - 0x0e, 0x01, 0x24, 0xcb, 0xd5, 0xda, 0x6e, 0xa9, 0x9e, 0x89, 0x0a, 0x6b, 0xee, 0xd4, 0x83, 0xb0, - 0xba, 0xcf, 0xc8, 0x96, 0x8c, 0x42, 0xe9, 0xf2, 0x81, 0x28, 0xdd, 0x3a, 0x73, 0x38, 0x8d, 0xc1, - 0xe7, 0xbe, 0x89, 0xc1, 0x72, 0x20, 0x1f, 0x7a, 0xe8, 0x45, 0xe6, 0x6e, 0x86, 0xca, 0xf4, 0x62, - 0x72, 0xcf, 0x82, 0x31, 0xb9, 0xbb, 0xe1, 0x02, 0x42, 0xd1, 0xb8, 0xbf, 0xe2, 0x08, 0x1a, 0xb7, - 0xc3, 0xa0, 0x4b, 0x77, 0xc6, 0xaa, 0xe4, 0x85, 0x93, 0x8e, 0x47, 0xc0, 0x70, 0xf5, 0x46, 0x7e, - 0xbf, 0x24, 0x1d, 0x55, 0xc9, 0x5f, 0x17, 0x86, 0x5b, 0x82, 0xcc, 0x7e, 0xc9, 0xc1, 0xd9, 0xa4, - 0x7a, 0x23, 0xdf, 0xb0, 0x52, 0xdb, 0x21, 0x08, 0x2c, 0xc6, 0x9f, 0xf9, 0x10, 0xb0, 0x22, 0xa3, - 0xe3, 0xf6, 0xe4, 0xb3, 0x9e, 0xf8, 0x75, 0xea, 0x12, 0x20, 0x6a, 0x13, 0xde, 0x17, 0xe9, 0x5f, - 0x72, 0xb0, 0xc8, 0x90, 0xa9, 0x89, 0x78, 0x6e, 0x80, 0x39, 0xe6, 0x06, 0x78, 0x1b, 0x96, 0xac, - 0x5a, 0x9d, 0x78, 0xa1, 0x21, 0xf5, 0xb0, 0x2e, 0x59, 0x2d, 0xd4, 0x17, 0xae, 0x76, 0xe5, 0x57, - 0xf4, 0xc6, 0xe0, 0x10, 0xeb, 0x96, 0xe0, 0x37, 0x80, 0x91, 0x0b, 0x7f, 0xce, 0x91, 0xa4, 0x61, - 0xea, 0xba, 0x76, 0x5c, 0x04, 0x09, 0x28, 0x7c, 0x63, 0x93, 0x17, 0xbe, 0x42, 0x9e, 0x64, 0x0a, - 0x97, 0xa8, 0x31, 0x1f, 0xfc, 0x1f, 0x07, 0xa9, 0x72, 0x0b, 0xab, 0xa6, 0xe5, 0x3a, 0x55, 0x58, - 0x60, 0x5e, 0xec, 0xa3, 0xb5, 0x11, 0x0f, 0xf9, 0xed, 0xa9, 0xf3, 0xeb, 0xa1, 0xcf, 0xfc, 0x85, - 0x08, 0x3a, 0xf5, 0xfc, 0xb7, 0x01, 0x73, 0x07, 0xf2, 0xce, 0x50, 0xcf, 0x80, 0x28, 0xc2, 0xdf, - 0x1e, 0xc3, 0xe5, 0x8e, 0xf3, 0x01, 0x24, 0xec, 0x87, 0xce, 0x68, 0xc9, 0x7d, 0x50, 0xed, 0x79, - 0x07, 0xcd, 0x2f, 0xfb, 0xa8, 0x4e, 0xbf, 0x07, 0xff, 0x3e, 0x0b, 0x30, 0xa8, 0xe0, 0xd0, 0x13, - 0x98, 0xf7, 0xbe, 0xb5, 0x44, 0xab, 0x21, 0x2f, 0x7d, 0xf9, 0xb5, 0xe0, 0x46, 0x57, 0xa7, 0x27, - 0x30, 0xef, 0x7d, 0xd9, 0x33, 0x10, 0x16, 0xf0, 0xba, 0x68, 0x20, 0x2c, 0xf0, 0x31, 0x50, 0x04, - 0x75, 0xe0, 0xda, 0x88, 0xb7, 0x1d, 0xe8, 0xce, 0x64, 0x2f, 0x60, 0xf8, 0x9f, 0x4c, 0xf8, 0x48, - 0x44, 0x88, 0x20, 0x1d, 0xae, 0x8f, 0x7c, 0xd2, 0x80, 0xb6, 0x26, 0x7d, 0x70, 0xc1, 0xbf, 0x3b, - 0x01, 0xa7, 0x3b, 0x66, 0x1f, 0xf8, 0xd1, 0xf7, 0xa8, 0xe8, 0xdd, 0x89, 0x2f, 0xf8, 0xf9, 0xbb, - 0x93, 0x5f, 0xcb, 0x0a, 0x11, 0x74, 0x00, 0x73, 0x9e, 0x4b, 0x46, 0xc4, 0x07, 0xde, 0x3c, 0x12, - 0xc1, 0xab, 0x21, 0xb7, 0x92, 0x44, 0x92, 0xe7, 0x22, 0x6c, 0x20, 0x69, 0xf8, 0x46, 0x6f, 0x20, - 0x29, 0xe0, 0xe6, 0xcc, 0xbf, 0xfc, 0xbe, 0x23, 0x34, 0x68, 0xf9, 0x83, 0xcf, 0xe0, 0xa0, 0xe5, - 0x1f, 0x71, 0x1e, 0x0b, 0x11, 0xf4, 0x0c, 0xd2, 0x2c, 0x30, 0x8e, 0xd6, 0x43, 0x01, 0x7e, 0xfe, - 0xc6, 0xa8, 0x66, 0xaf, 0x48, 0x16, 0x87, 0x1d, 0x88, 0x0c, 0xc4, 0x83, 0x07, 0x22, 0x47, 0xc0, - 0xb7, 0x11, 0x2b, 0x3e, 0x31, 0x18, 0xe7, 0x20, 0x3e, 0x05, 0xc1, 0xba, 0x83, 0xf8, 0x14, 0x08, - 0x8c, 0x0a, 0x11, 0xa4, 0xc0, 0x4a, 0x30, 0x52, 0x87, 0x6e, 0x4f, 0x84, 0x20, 0xf2, 0x77, 0xc6, - 0xb1, 0x79, 0x3c, 0x78, 0x25, 0x18, 0x2b, 0x0a, 0x1a, 0x2a, 0x00, 0xe6, 0x0a, 0x1a, 0x2a, 0x08, - 0x72, 0x12, 0x62, 0xbf, 0x2d, 0x70, 0x0f, 0xbe, 0x4d, 0x40, 0xdc, 0x3e, 0xfc, 0x1a, 0x70, 0xc5, - 0x57, 0xed, 0xa2, 0x1b, 0xe1, 0x18, 0x00, 0xbf, 0x31, 0xb2, 0xdd, 0x9d, 0xcc, 0x4b, 0xb8, 0x3a, - 0x54, 0xbf, 0xa2, 0x4d, 0x6f, 0xbf, 0xa0, 0x1a, 0x9a, 0xbf, 0x19, 0xc2, 0xe1, 0x97, 0xcd, 0x06, - 0xb9, 0xcd, 0x71, 0x05, 0x16, 0x2b, 0x7b, 0x54, 0x60, 0xfb, 0x8c, 0xe4, 0x1a, 0xfe, 0x90, 0x26, - 0xb0, 0x7a, 0x05, 0x06, 0xb3, 0x5b, 0xa1, 0x3c, 0xee, 0x08, 0x9f, 0xba, 0x49, 0x8e, 0xa7, 0x22, - 0x40, 0x8c, 0x72, 0x81, 0x85, 0x08, 0x2f, 0x84, 0xb1, 0xb8, 0xe2, 0x9f, 0x43, 0xc6, 0x7f, 0xe0, - 0x23, 0x66, 0xbf, 0x82, 0x8c, 0x74, 0x73, 0x34, 0x83, 0x7f, 0x65, 0xfc, 0xd1, 0xc6, 0xaf, 0x55, - 0x50, 0x9c, 0xb9, 0x15, 0xca, 0xe3, 0x8d, 0x8f, 0x9e, 0x3c, 0x6f, 0x10, 0x1f, 0x87, 0x73, 0xc2, - 0x41, 0x7c, 0x0c, 0x48, 0x0c, 0x85, 0xc8, 0xce, 0x63, 0x00, 0x92, 0xa9, 0x63, 0xb5, 0xdf, 0x45, - 0x6b, 0x43, 0xa8, 0x63, 0x49, 0xed, 0x77, 0x6b, 0x3d, 0xcb, 0x29, 0x8c, 0xec, 0x57, 0x29, 0x1b, - 0x10, 0x98, 0xb5, 0x3b, 0x58, 0x0d, 0x3b, 0x15, 0xc8, 0x0c, 0x7a, 0x4b, 0x76, 0xf9, 0x8a, 0x6e, - 0x06, 0xca, 0xb0, 0xff, 0x11, 0xca, 0x27, 0x28, 0xed, 0x0a, 0xb2, 0x5b, 0x77, 0x3e, 0x02, 0x68, - 0x1a, 0x8a, 0x44, 0x00, 0x02, 0xb4, 0x3e, 0x24, 0x67, 0x4f, 0xc1, 0x9d, 0x96, 0x23, 0xe3, 0x6f, - 0xa8, 0x32, 0x4d, 0x43, 0x21, 0x75, 0xfa, 0xce, 0x2f, 0x61, 0x8e, 0x16, 0x1d, 0x16, 0xdf, 0xb8, - 0xfe, 0x54, 0x07, 0x32, 0x7b, 0xbb, 0x65, 0xa7, 0xe4, 0x54, 0x2d, 0xf4, 0xc9, 0x15, 0xda, 0x18, - 0x12, 0xf1, 0x94, 0xb4, 0xf8, 0x84, 0x90, 0x4a, 0x85, 0xb6, 0xed, 0x14, 0x60, 0xde, 0x11, 0x63, - 0x9e, 0x69, 0x2d, 0x74, 0x23, 0x40, 0x8a, 0xd5, 0xe0, 0x13, 0x32, 0x47, 0x85, 0x58, 0x4d, 0x03, - 0x55, 0x9c, 0xff, 0x5f, 0x1c, 0x56, 0x85, 0x56, 0x12, 0x81, 0xaa, 0xd0, 0xb6, 0x42, 0xe2, 0x65, - 0xac, 0x69, 0x28, 0x27, 0x49, 0xbb, 0xd3, 0xcf, 0xfe, 0x3f, 0x00, 0x00, 0xff, 0xff, 0xba, 0x30, - 0x28, 0xf2, 0x6c, 0x3b, 0x00, 0x00, + proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_2e5460258ec4aed1) +} + +var fileDescriptor_csi_2e5460258ec4aed1 = []byte{ + // 3813 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x4d, 0x70, 0xdb, 0x48, + 0x76, 0x26, 0xf8, 0x27, 0xea, 0x49, 0xa2, 0xe9, 0xd6, 0x8f, 0x39, 0x90, 0x64, 0xc9, 0xf0, 0xd8, + 0xab, 0xf1, 0xd8, 0xd4, 0xda, 0xbb, 0x9e, 0xca, 0xc8, 0x9e, 0xdd, 0x25, 0x29, 0x4a, 0xe2, 0x98, + 0x26, 0x65, 0x90, 0x94, 0xc7, 0x4e, 0xa6, 0x30, 0x10, 0xd9, 0xa2, 0x50, 0x43, 0x02, 0x5c, 0x00, + 0xd4, 0x58, 0xb9, 0xa4, 0x36, 0xa9, 0x4a, 0x55, 0x2a, 0xe7, 0x54, 0x92, 0x53, 0x52, 0x9b, 0xbd, + 0x24, 0x95, 0x3d, 0xe4, 0x90, 0xca, 0x31, 0x5b, 0x39, 0xe6, 0x90, 0x63, 0x92, 0xda, 0xcb, 0x5e, + 0x52, 0x39, 0x6c, 0x25, 0x55, 0x7b, 0xce, 0x29, 0x85, 0xee, 0x06, 0x08, 0x80, 0x20, 0x48, 0x5a, + 0x76, 0xcd, 0x61, 0x4f, 0x22, 0x5e, 0xbf, 0x7e, 0xfd, 0xba, 0xfb, 0xbd, 0xd7, 0xef, 0x7d, 0xdd, + 0x82, 0xc7, 0x1d, 0xc5, 0x3c, 0x1f, 0x9c, 0xe6, 0x5a, 0x5a, 0x6f, 0xb7, 0xa5, 0xa9, 0xa6, 0xac, + 0xa8, 0x58, 0x7f, 0x60, 0x98, 0x9a, 0x2e, 0x77, 0xf0, 0x03, 0x45, 0x35, 0xb1, 0x7e, 0x26, 0xb7, + 0xf0, 0xae, 0xd1, 0xc7, 0xad, 0xdd, 0x96, 0xa1, 0xe4, 0xfa, 0xba, 0x66, 0x6a, 0x28, 0x69, 0xfd, + 0xbc, 0x78, 0xc8, 0x6f, 0x77, 0x34, 0xad, 0xd3, 0xc5, 0xbb, 0x84, 0x7a, 0x3a, 0x38, 0xdb, 0x6d, + 0x63, 0xa3, 0xa5, 0x2b, 0x7d, 0x53, 0xd3, 0x29, 0x27, 0xbf, 0xe5, 0xe7, 0x30, 0x95, 0x1e, 0x36, + 0x4c, 0xb9, 0xd7, 0x67, 0x0c, 0x37, 0xfd, 0x0c, 0xdf, 0xe8, 0x72, 0xbf, 0x8f, 0x75, 0x83, 0xb6, + 0x0b, 0x6b, 0xb0, 0x72, 0x88, 0xcd, 0xe3, 0xee, 0xa0, 0xa3, 0xa8, 0x65, 0xf5, 0x4c, 0x13, 0xf1, + 0x8f, 0x07, 0xd8, 0x30, 0x85, 0xff, 0xe4, 0x60, 0xd5, 0xd7, 0x60, 0xf4, 0x35, 0xd5, 0xc0, 0x08, + 0x41, 0x5c, 0x95, 0x7b, 0x38, 0xcb, 0x6d, 0x73, 0x3b, 0xf3, 0x22, 0xf9, 0x8d, 0xee, 0x40, 0xfa, + 0x02, 0xab, 0x6d, 0x4d, 0x97, 0x2e, 0xb0, 0x6e, 0x28, 0x9a, 0x9a, 0x8d, 0x92, 0xd6, 0x25, 0x4a, + 0x3d, 0xa1, 0x44, 0x74, 0x08, 0xa9, 0x9e, 0xac, 0x2a, 0x67, 0xd8, 0x30, 0xb3, 0xb1, 0xed, 0xd8, + 0xce, 0xc2, 0xa3, 0x8f, 0x73, 0x74, 0xaa, 0xb9, 0xc0, 0xb1, 0x72, 0xcf, 0x19, 0x77, 0x49, 0x35, + 0xf5, 0x4b, 0xd1, 0xe9, 0xcc, 0x3f, 0x81, 0x25, 0x4f, 0x13, 0xca, 0x40, 0xec, 0x6b, 0x7c, 0xc9, + 0x74, 0xb2, 0x7e, 0xa2, 0x15, 0x48, 0x5c, 0xc8, 0xdd, 0x01, 0x66, 0x9a, 0xd0, 0x8f, 0xbd, 0xe8, + 0xef, 0x70, 0xc2, 0x4d, 0xd8, 0x70, 0x46, 0x2b, 0xca, 0x7d, 0xf9, 0x54, 0xe9, 0x2a, 0xa6, 0x82, + 0x0d, 0x7b, 0xea, 0x5f, 0xc2, 0xe6, 0x98, 0x76, 0xb6, 0x02, 0x4f, 0x61, 0xb1, 0xe5, 0xa2, 0x67, + 0x39, 0x32, 0x95, 0xac, 0x3d, 0x15, 0x5f, 0xcf, 0x4b, 0xd1, 0xc3, 0x2d, 0xfc, 0x24, 0x01, 0x19, + 0x3f, 0x0b, 0x7a, 0x0a, 0x73, 0x06, 0xd6, 0x2f, 0x94, 0x16, 0x5d, 0xd7, 0x85, 0x47, 0xdb, 0xe3, + 0xa4, 0xe5, 0xea, 0x94, 0xef, 0x28, 0x22, 0xda, 0x5d, 0x50, 0x13, 0x32, 0x17, 0x5a, 0x77, 0xd0, + 0xc3, 0x12, 0x7e, 0xd3, 0x97, 0x55, 0x67, 0x03, 0x16, 0x1e, 0xed, 0x8c, 0x15, 0x73, 0x42, 0x3a, + 0x94, 0x6c, 0xfe, 0xa3, 0x88, 0x78, 0xed, 0xc2, 0x4b, 0x42, 0x15, 0x58, 0x92, 0xbb, 0xfd, 0x73, + 0x59, 0x3a, 0xc3, 0xb2, 0x39, 0xd0, 0x71, 0x36, 0x46, 0x64, 0xde, 0x19, 0x2b, 0x33, 0x6f, 0x71, + 0x1f, 0x50, 0xe6, 0xa3, 0x88, 0xb8, 0x28, 0xbb, 0xbe, 0xf9, 0x3f, 0xe7, 0x60, 0x8e, 0xe9, 0x8e, + 0x3e, 0x85, 0xb8, 0x79, 0xd9, 0xa7, 0x73, 0x4d, 0x87, 0x08, 0x64, 0xfc, 0xb9, 0xc6, 0x65, 0x1f, + 0x8b, 0xa4, 0x8b, 0xf0, 0x02, 0xe2, 0xd6, 0x17, 0x5a, 0x80, 0xb9, 0x66, 0xf5, 0x59, 0xb5, 0xf6, + 0xb2, 0x9a, 0x89, 0xa0, 0x35, 0x40, 0xc5, 0x5a, 0xb5, 0x21, 0xd6, 0x2a, 0x95, 0x92, 0x28, 0xd5, + 0x4b, 0xe2, 0x49, 0xb9, 0x58, 0xca, 0x70, 0xe8, 0x43, 0xd8, 0x3e, 0xa9, 0x55, 0x9a, 0xcf, 0x4b, + 0x52, 0xbe, 0x58, 0x2c, 0xd5, 0xeb, 0xe5, 0x42, 0xb9, 0x52, 0x6e, 0xbc, 0x92, 0x8a, 0xb5, 0x6a, + 0xbd, 0x21, 0xe6, 0xcb, 0xd5, 0x46, 0x3d, 0x13, 0xe5, 0xff, 0x90, 0x83, 0x6b, 0xbe, 0xe5, 0x40, + 0x79, 0x8f, 0x86, 0x0f, 0xa6, 0x5d, 0x46, 0xb7, 0xa6, 0xf7, 0x83, 0x34, 0x05, 0x48, 0xd6, 0xaa, + 0x95, 0x72, 0xd5, 0xd2, 0x6e, 0x01, 0xe6, 0x6a, 0x07, 0x07, 0xe4, 0x23, 0xca, 0xb7, 0x60, 0xd1, + 0xbd, 0x7c, 0xe8, 0x07, 0x1e, 0x05, 0xee, 0x4d, 0xb5, 0xe6, 0xee, 0xd1, 0x97, 0x03, 0x46, 0x2f, + 0x24, 0xa9, 0x50, 0x21, 0x0d, 0x8b, 0xc7, 0xba, 0x76, 0x8a, 0x6d, 0x93, 0xcf, 0xc3, 0x12, 0xfb, + 0x66, 0x26, 0xfe, 0x5d, 0x48, 0xe8, 0x58, 0x6e, 0x5f, 0x32, 0x6b, 0xe4, 0x73, 0x34, 0x8c, 0xe4, + 0xec, 0x30, 0x92, 0x2b, 0x68, 0x5a, 0xf7, 0xc4, 0x72, 0x29, 0x91, 0x32, 0x0a, 0xbf, 0x89, 0xc3, + 0x72, 0x51, 0xc7, 0xb2, 0x89, 0xe9, 0x92, 0x30, 0xd1, 0x81, 0xe1, 0xe2, 0x29, 0xa4, 0x2d, 0x97, + 0x68, 0x29, 0xe6, 0xa5, 0xa4, 0xcb, 0x6a, 0x07, 0x33, 0x6b, 0x5d, 0xb5, 0x67, 0x59, 0x64, 0xad, + 0xa2, 0xd5, 0x28, 0x2e, 0xb5, 0xdc, 0x9f, 0xa8, 0x0c, 0xcb, 0xcc, 0xda, 0x3d, 0x5e, 0x18, 0xf3, + 0x7a, 0x21, 0xd5, 0xc2, 0xe5, 0x85, 0xe8, 0xc2, 0x4b, 0x51, 0xb0, 0x81, 0x9e, 0x01, 0xf4, 0x65, + 0x5d, 0xee, 0x61, 0x13, 0xeb, 0x46, 0x36, 0xee, 0x0d, 0x49, 0x01, 0xb3, 0xc9, 0x1d, 0x3b, 0xdc, + 0x34, 0x24, 0xb9, 0xba, 0xa3, 0x43, 0xcb, 0x87, 0x5b, 0x3a, 0x36, 0x8d, 0x6c, 0x82, 0x48, 0xda, + 0x09, 0x93, 0x54, 0xa7, 0xac, 0x44, 0x4c, 0x21, 0xf6, 0x17, 0x05, 0x4e, 0xb4, 0x7b, 0xa3, 0x1a, + 0xac, 0xda, 0x13, 0xd4, 0x54, 0x13, 0xab, 0xa6, 0x64, 0x68, 0x03, 0xbd, 0x85, 0xb3, 0x49, 0xb2, + 0x4a, 0xeb, 0xbe, 0x29, 0x52, 0x9e, 0x3a, 0x61, 0x11, 0xd9, 0xd2, 0x78, 0x88, 0xe8, 0x35, 0xf0, + 0x72, 0xab, 0x85, 0x0d, 0x43, 0xa1, 0x6b, 0x21, 0xe9, 0xf8, 0xc7, 0x03, 0x45, 0xc7, 0x3d, 0xac, + 0x9a, 0x46, 0x76, 0xce, 0x2b, 0xb5, 0xa1, 0xf5, 0xb5, 0xae, 0xd6, 0xb9, 0x14, 0x87, 0x3c, 0xe2, + 0x07, 0x9e, 0xee, 0xae, 0x16, 0x83, 0xff, 0x0c, 0xae, 0xf9, 0x16, 0x65, 0x96, 0x60, 0xcc, 0xef, + 0xc1, 0xa2, 0x7b, 0x25, 0x66, 0x0a, 0xe4, 0x7f, 0x1a, 0x85, 0xe5, 0x80, 0x35, 0x40, 0x47, 0x90, + 0x32, 0x54, 0xb9, 0x6f, 0x9c, 0x6b, 0x26, 0xb3, 0xdf, 0x7b, 0x21, 0x4b, 0x96, 0xab, 0x33, 0x5e, + 0xfa, 0x79, 0x14, 0x11, 0x9d, 0xde, 0xa8, 0x00, 0x49, 0xba, 0x9e, 0xfe, 0x70, 0x1a, 0x24, 0x87, + 0xd2, 0x1c, 0x29, 0xac, 0x27, 0xff, 0x10, 0xd2, 0xde, 0x11, 0xd0, 0x16, 0x2c, 0xd8, 0x23, 0x48, + 0x4a, 0x9b, 0xcd, 0x15, 0x6c, 0x52, 0xb9, 0xcd, 0x7f, 0x0c, 0x8b, 0x6e, 0x61, 0x68, 0x1d, 0xe6, + 0x99, 0x41, 0x38, 0xec, 0x29, 0x4a, 0x28, 0xb7, 0x1d, 0x9f, 0xfe, 0x01, 0xac, 0x78, 0xed, 0x8c, + 0xb9, 0xf2, 0x5d, 0x67, 0x0e, 0x74, 0x2d, 0xd2, 0xde, 0x39, 0xd8, 0x7a, 0x0a, 0x7f, 0x17, 0x87, + 0x8c, 0xdf, 0x69, 0xd0, 0x53, 0x48, 0x9c, 0x76, 0xb5, 0xd6, 0xd7, 0xac, 0xef, 0x87, 0xe3, 0xbc, + 0x2b, 0x57, 0xb0, 0xb8, 0x28, 0xf5, 0x28, 0x22, 0xd2, 0x4e, 0x56, 0xef, 0x9e, 0x36, 0x50, 0x4d, + 0xb6, 0x7a, 0xe3, 0x7b, 0x3f, 0xb7, 0xb8, 0x86, 0xbd, 0x49, 0x27, 0xb4, 0x0f, 0x0b, 0xd4, 0xec, + 0xa4, 0x9e, 0xd6, 0xb6, 0x0f, 0x9f, 0xdb, 0x63, 0x65, 0xe4, 0x09, 0xef, 0x73, 0xad, 0x8d, 0x45, + 0x90, 0x9d, 0xdf, 0xfc, 0x12, 0x2c, 0xb8, 0x74, 0xe3, 0x0f, 0x61, 0xc1, 0x35, 0x18, 0xba, 0x01, + 0x73, 0x67, 0x86, 0xe4, 0x04, 0xda, 0x79, 0x31, 0x79, 0x66, 0x90, 0xb0, 0xb9, 0x05, 0x0b, 0x44, + 0x0b, 0xe9, 0xac, 0x2b, 0x77, 0x8c, 0x6c, 0x74, 0x3b, 0x66, 0xed, 0x11, 0x21, 0x1d, 0x58, 0x14, + 0xfe, 0x7f, 0x38, 0x80, 0xe1, 0x90, 0xe8, 0x29, 0xc4, 0x89, 0x96, 0x34, 0x5c, 0xef, 0x4c, 0xa1, + 0x65, 0x8e, 0xa8, 0x4a, 0x7a, 0x09, 0x7f, 0xc5, 0x41, 0x9c, 0x88, 0xf1, 0x9f, 0x6a, 0xf5, 0x72, + 0xf5, 0xb0, 0x52, 0x92, 0xaa, 0xb5, 0xfd, 0x92, 0xf4, 0x52, 0x2c, 0x37, 0x4a, 0x62, 0x86, 0x43, + 0xeb, 0x70, 0xc3, 0x4d, 0x17, 0x4b, 0xf9, 0xfd, 0x92, 0x28, 0xd5, 0xaa, 0x95, 0x57, 0x99, 0x28, + 0xe2, 0x61, 0xed, 0x79, 0xb3, 0xd2, 0x28, 0x8f, 0xb6, 0xc5, 0xd0, 0x06, 0x64, 0x5d, 0x6d, 0x4c, + 0x06, 0x13, 0x1b, 0xb7, 0xc4, 0xba, 0x5a, 0xe9, 0x4f, 0xd6, 0x98, 0x28, 0x2c, 0x39, 0x9b, 0x41, + 0x8c, 0xed, 0x25, 0x2c, 0x79, 0x62, 0xb4, 0x95, 0x01, 0xb2, 0xa0, 0xd2, 0x96, 0x4e, 0x2f, 0x4d, + 0x92, 0x15, 0x71, 0x3b, 0x31, 0x71, 0xc9, 0xa6, 0x16, 0x2c, 0xa2, 0xb5, 0xac, 0x5d, 0xa5, 0xa7, + 0x98, 0x8c, 0x27, 0x4a, 0x78, 0x80, 0x90, 0x08, 0x83, 0xf0, 0xab, 0x28, 0x24, 0xd9, 0xde, 0xdc, + 0x71, 0x9d, 0x12, 0x1e, 0x91, 0x36, 0x95, 0x8a, 0xf4, 0x38, 0x47, 0xd4, 0xeb, 0x1c, 0xe8, 0x08, + 0xd2, 0xee, 0x50, 0xfa, 0xc6, 0xce, 0x3b, 0x6f, 0x79, 0x37, 0xc8, 0xed, 0xcf, 0x6f, 0x58, 0xb6, + 0xb9, 0x74, 0xe1, 0xa6, 0xa1, 0x02, 0xa4, 0x7d, 0xd1, 0x38, 0x3e, 0x39, 0x1a, 0x2f, 0xb5, 0x3c, + 0x81, 0x29, 0x0f, 0xcb, 0x76, 0x20, 0xed, 0x62, 0xc9, 0x64, 0x81, 0x96, 0x9d, 0x16, 0x99, 0x91, + 0x00, 0x8c, 0x86, 0xcc, 0x36, 0x8d, 0xff, 0x11, 0xa0, 0x51, 0x5d, 0x67, 0x8a, 0x9a, 0x03, 0x58, + 0x0e, 0x08, 0xf1, 0x28, 0x07, 0xf3, 0x64, 0xab, 0x0c, 0xc5, 0xc4, 0x2c, 0xa3, 0x1d, 0xd5, 0x68, + 0xc8, 0x62, 0xf1, 0xf7, 0x75, 0x7c, 0x86, 0x75, 0x1d, 0xb7, 0x89, 0x7b, 0x04, 0xf2, 0x3b, 0x2c, + 0xc2, 0x1f, 0x71, 0x90, 0xb2, 0xe9, 0x68, 0x0f, 0x52, 0x06, 0xee, 0xd0, 0xe3, 0x87, 0x8e, 0x75, + 0xd3, 0xdf, 0x37, 0x57, 0x67, 0x0c, 0x2c, 0xf7, 0xb7, 0xf9, 0xad, 0xdc, 0xdf, 0xd3, 0x34, 0xd3, + 0xe4, 0xff, 0x89, 0x83, 0xe5, 0x7d, 0xdc, 0xc5, 0xfe, 0x2c, 0x25, 0x2c, 0xc2, 0xba, 0x0f, 0xf6, + 0xa8, 0xf7, 0x60, 0x0f, 0x10, 0x15, 0x72, 0xb0, 0x5f, 0xe9, 0xb0, 0x5b, 0x83, 0x15, 0xef, 0x68, + 0x34, 0xbc, 0x0b, 0xff, 0x1b, 0x83, 0x9b, 0x96, 0x2d, 0xe8, 0x5a, 0xb7, 0x8b, 0xf5, 0xe3, 0xc1, + 0x69, 0x57, 0x31, 0xce, 0x67, 0x98, 0xdc, 0x0d, 0x98, 0x53, 0xb5, 0xb6, 0xcb, 0x79, 0x92, 0xd6, + 0x67, 0xb9, 0x8d, 0x4a, 0x70, 0xdd, 0x9f, 0x66, 0x5d, 0xb2, 0x20, 0x3c, 0x3e, 0xc9, 0xca, 0x5c, + 0xf8, 0x4f, 0x10, 0x1e, 0x52, 0x56, 0x82, 0xa8, 0xa9, 0xdd, 0x4b, 0xe2, 0x31, 0x29, 0xd1, 0xf9, + 0x46, 0xa2, 0x3f, 0x63, 0xfa, 0x9e, 0x93, 0x31, 0x85, 0xce, 0x28, 0x2c, 0x79, 0xfa, 0x6a, 0xc4, + 0xe3, 0x93, 0x44, 0xf4, 0xa7, 0x53, 0x8a, 0x9e, 0x18, 0x09, 0xae, 0xb2, 0x8b, 0xef, 0xc0, 0x7d, + 0xff, 0x95, 0x83, 0xad, 0xb1, 0x53, 0x60, 0x47, 0x7e, 0x1b, 0xae, 0xf5, 0x69, 0x83, 0xb3, 0x08, + 0xd4, 0xcb, 0x9e, 0x4c, 0x5c, 0x04, 0x56, 0x78, 0x33, 0xaa, 0x67, 0x19, 0xd2, 0x7d, 0x0f, 0x91, + 0xcf, 0xc3, 0x72, 0x00, 0xdb, 0x4c, 0x93, 0xf9, 0x35, 0x07, 0xdb, 0x43, 0x55, 0x9a, 0x6a, 0xff, + 0xdd, 0x99, 0x6f, 0x63, 0x68, 0x5b, 0x34, 0xe4, 0x3f, 0x1e, 0x9d, 0x7b, 0xf0, 0x80, 0xef, 0xcb, + 0x83, 0x6f, 0xc3, 0xad, 0x90, 0xa1, 0x99, 0x3b, 0xff, 0x2a, 0x0e, 0xb7, 0x4e, 0xe4, 0xae, 0xd2, + 0x76, 0x12, 0xb9, 0x00, 0x88, 0x22, 0x7c, 0x49, 0x5a, 0x23, 0x1e, 0x40, 0xa3, 0xd6, 0x53, 0xc7, + 0x6b, 0x27, 0xc9, 0x9f, 0xe2, 0x38, 0x7c, 0x87, 0x45, 0xd8, 0xab, 0x80, 0x22, 0xec, 0xd3, 0xe9, + 0x75, 0x0d, 0x2b, 0xc9, 0x9a, 0xfe, 0x00, 0xf3, 0xc9, 0xf4, 0x72, 0x43, 0xac, 0xe0, 0xca, 0x5e, + 0xfc, 0x6d, 0x56, 0x4d, 0xff, 0x12, 0x07, 0x21, 0x6c, 0xf6, 0x2c, 0x86, 0x88, 0x30, 0xdf, 0xd2, + 0xd4, 0x33, 0x45, 0xef, 0xe1, 0x36, 0xcb, 0xfe, 0xbf, 0x3f, 0xcd, 0xe2, 0xb1, 0x00, 0x52, 0xb4, + 0xfb, 0x8a, 0x43, 0x31, 0x28, 0x0b, 0x73, 0x3d, 0x6c, 0x18, 0x72, 0xc7, 0x56, 0xcb, 0xfe, 0xe4, + 0x7f, 0x1e, 0x83, 0x79, 0xa7, 0x0b, 0x52, 0x47, 0x2c, 0x98, 0x86, 0xaf, 0xc3, 0xb7, 0x51, 0xe0, + 0xed, 0x8d, 0x39, 0xfa, 0x16, 0xc6, 0xdc, 0xf6, 0x18, 0x33, 0x75, 0x87, 0xfd, 0xb7, 0x52, 0x3b, + 0xc4, 0xae, 0xbf, 0x75, 0x03, 0x14, 0x7e, 0x0f, 0x50, 0x45, 0x31, 0x58, 0x15, 0xe5, 0x84, 0x25, + 0xab, 0x68, 0x92, 0xdf, 0x48, 0x58, 0x35, 0x75, 0x85, 0xa5, 0xeb, 0x09, 0x11, 0x7a, 0xf2, 0x9b, + 0x12, 0xa5, 0x58, 0x29, 0xbd, 0x61, 0xca, 0xba, 0xa9, 0xa8, 0x1d, 0xc9, 0xd4, 0xbe, 0xc6, 0x0e, + 0x4e, 0x6c, 0x53, 0x1b, 0x16, 0x51, 0xf8, 0x29, 0x07, 0xcb, 0x1e, 0xf1, 0xcc, 0x26, 0x9f, 0xc0, + 0xdc, 0x50, 0xb6, 0x27, 0x8d, 0x0f, 0xe0, 0xce, 0xd1, 0x65, 0xb3, 0x7b, 0xa0, 0x4d, 0x00, 0x15, + 0xbf, 0x31, 0x3d, 0xe3, 0xce, 0x5b, 0x14, 0x32, 0x26, 0xbf, 0x0b, 0x09, 0xba, 0x0c, 0xd3, 0xd6, + 0xcb, 0x3f, 0x8f, 0x02, 0x3a, 0xc4, 0xa6, 0x53, 0x06, 0xb1, 0x35, 0x18, 0x63, 0x4b, 0xdc, 0x5b, + 0xd8, 0xd2, 0xe7, 0x1e, 0x5b, 0xa2, 0xd6, 0x78, 0xcf, 0x05, 0x98, 0xfb, 0x86, 0x0e, 0x8d, 0x84, + 0x63, 0x4a, 0x0f, 0x9a, 0xcf, 0x4d, 0x57, 0x7a, 0x5c, 0xd1, 0x64, 0xf6, 0x61, 0xd9, 0xa3, 0x33, + 0xdb, 0xd3, 0x07, 0x80, 0xe4, 0x0b, 0x59, 0xe9, 0xca, 0x96, 0x5e, 0x76, 0x65, 0xc7, 0x2a, 0xbd, + 0xeb, 0x4e, 0x8b, 0xdd, 0x4d, 0x10, 0xdc, 0x09, 0x03, 0x93, 0xe7, 0x07, 0xf0, 0xbb, 0xee, 0x83, + 0x76, 0x84, 0x87, 0x8d, 0x7b, 0x18, 0x08, 0xe2, 0xdf, 0x1e, 0x4d, 0x12, 0x18, 0x06, 0x3d, 0x16, + 0xcf, 0xff, 0xef, 0x38, 0xac, 0x87, 0x70, 0xa3, 0x27, 0x10, 0xd3, 0xfb, 0x2d, 0x66, 0x4c, 0xdf, + 0x99, 0x42, 0x7e, 0x4e, 0x3c, 0x2e, 0x1e, 0x45, 0x44, 0xab, 0x17, 0x7a, 0xe9, 0x87, 0xe0, 0x29, + 0x92, 0xf2, 0xdd, 0x69, 0xc4, 0x84, 0xa2, 0xf1, 0x3f, 0x8b, 0x42, 0x4c, 0x3c, 0x2e, 0xa2, 0x1f, + 0x79, 0x60, 0xe6, 0xfb, 0x53, 0xaa, 0xe7, 0x06, 0x9a, 0x7f, 0xc9, 0x05, 0xe1, 0xdc, 0x59, 0x58, + 0x29, 0x8a, 0xa5, 0x7c, 0xa3, 0x24, 0xed, 0x97, 0x2a, 0xa5, 0x46, 0x49, 0xa2, 0x38, 0x7c, 0x86, + 0x43, 0x1b, 0x90, 0x3d, 0x6e, 0x16, 0x2a, 0xe5, 0xfa, 0x91, 0xd4, 0xac, 0xda, 0xbf, 0x58, 0x6b, + 0x14, 0x65, 0x60, 0xb1, 0x52, 0xae, 0x37, 0x18, 0xa1, 0x9e, 0x89, 0x59, 0x94, 0xc3, 0x52, 0x43, + 0x2a, 0xe6, 0x8f, 0xf3, 0xc5, 0x72, 0xe3, 0x55, 0x26, 0x8e, 0x78, 0x58, 0xf3, 0xca, 0xae, 0x57, + 0xf3, 0xc7, 0xf5, 0xa3, 0x5a, 0x23, 0x93, 0x40, 0x08, 0xd2, 0xa4, 0xbf, 0x4d, 0xaa, 0x67, 0x92, + 0x96, 0x84, 0x62, 0xa5, 0x56, 0x75, 0x74, 0x98, 0x43, 0x2b, 0x90, 0xb1, 0x47, 0x16, 0x4b, 0xf9, + 0x7d, 0x02, 0x8f, 0xa4, 0xd0, 0x75, 0x58, 0x2a, 0x7d, 0x71, 0x9c, 0xaf, 0xee, 0xdb, 0x8c, 0xf3, + 0xfc, 0x4f, 0x38, 0x1f, 0x2c, 0x5f, 0xf6, 0xac, 0xd7, 0xe3, 0x59, 0xf7, 0xc1, 0xbd, 0x70, 0x77, + 0x83, 0xd6, 0xed, 0x3a, 0x2c, 0x35, 0xf2, 0xc7, 0x25, 0x49, 0xac, 0x35, 0xf2, 0x8d, 0x72, 0xad, + 0x9a, 0xe1, 0x1c, 0x80, 0xef, 0xd7, 0x51, 0x58, 0xa5, 0x08, 0x9f, 0x8d, 0x27, 0xda, 0x31, 0x67, + 0x07, 0x32, 0x14, 0x93, 0x90, 0xfc, 0x59, 0x61, 0x9a, 0xd2, 0x4f, 0xec, 0xdc, 0xd0, 0x46, 0xe3, + 0xa3, 0x2e, 0x34, 0xbe, 0xec, 0xcf, 0x94, 0xef, 0x79, 0x71, 0x6b, 0xdf, 0x68, 0x61, 0xc5, 0xd7, + 0xf3, 0x80, 0x54, 0xee, 0x41, 0xb8, 0xb4, 0xb0, 0x63, 0xee, 0x2a, 0x95, 0xd6, 0x15, 0xa3, 0xd5, + 0x01, 0xac, 0xf9, 0xf5, 0x65, 0x81, 0xe3, 0xfe, 0x08, 0xba, 0xec, 0x84, 0x4f, 0x87, 0xd7, 0xe1, + 0x10, 0xfe, 0x83, 0x83, 0x94, 0x4d, 0xb6, 0x8e, 0x20, 0x43, 0xf9, 0x7d, 0xec, 0x41, 0xb3, 0xe6, + 0x2d, 0x8a, 0x03, 0x8e, 0xb9, 0x71, 0xe1, 0xa8, 0x1f, 0x17, 0x0e, 0xdc, 0xe7, 0x58, 0xe0, 0x3e, + 0xff, 0x10, 0x96, 0x5a, 0x96, 0xfa, 0x8a, 0xa6, 0x4a, 0xa6, 0xd2, 0xb3, 0xc1, 0xaa, 0xd1, 0x7b, + 0x9c, 0x86, 0x7d, 0x5f, 0x2c, 0x2e, 0xda, 0x1d, 0x2c, 0x12, 0xda, 0x86, 0x45, 0x72, 0xaf, 0x23, + 0x99, 0x9a, 0x34, 0x30, 0x70, 0x36, 0x41, 0x4a, 0x77, 0x20, 0xb4, 0x86, 0xd6, 0x34, 0xb0, 0xf0, + 0xcf, 0x1c, 0xac, 0x52, 0x44, 0xc2, 0x6f, 0x8e, 0x93, 0xf0, 0x6d, 0xb7, 0xc5, 0xf9, 0x4e, 0xb5, + 0x40, 0x81, 0xef, 0xab, 0x20, 0xcb, 0xc2, 0x9a, 0x7f, 0x3c, 0x56, 0x85, 0xfd, 0x2d, 0x07, 0x2b, + 0x56, 0x4a, 0x61, 0x37, 0xbc, 0xeb, 0x0c, 0x67, 0x86, 0x9d, 0xf4, 0x2d, 0x66, 0xdc, 0xbf, 0x98, + 0xc2, 0xdf, 0x73, 0xb0, 0xea, 0xd3, 0x95, 0x59, 0xea, 0x67, 0xfe, 0x74, 0xe9, 0xb6, 0x3b, 0x5d, + 0x1a, 0xe1, 0x9f, 0x31, 0x61, 0x7a, 0x6c, 0x27, 0x4c, 0xb3, 0x39, 0xc4, 0x9f, 0x44, 0x61, 0x73, + 0x18, 0x2d, 0xc9, 0xc5, 0x69, 0x7b, 0x86, 0x7a, 0xff, 0x6a, 0x57, 0x87, 0x2f, 0xfc, 0xa1, 0xee, + 0xd1, 0x68, 0x00, 0x0f, 0x50, 0xe9, 0x7d, 0x19, 0xe0, 0x1f, 0xb8, 0xa1, 0x3b, 0xef, 0xb8, 0x6c, + 0x0b, 0xa7, 0xc4, 0xc0, 0x3f, 0x81, 0x1b, 0x04, 0x05, 0x71, 0xae, 0xff, 0xed, 0x1b, 0x3e, 0x1a, + 0x45, 0x52, 0xe2, 0xaa, 0xd5, 0xec, 0xdc, 0x52, 0x33, 0xdc, 0xb7, 0x2d, 0xfc, 0x97, 0x67, 0x33, + 0x1a, 0x72, 0x1f, 0x8b, 0x9a, 0x49, 0x82, 0x80, 0xbd, 0x19, 0x12, 0x5c, 0x1b, 0xf4, 0xad, 0x9a, + 0x45, 0x32, 0x4c, 0x5d, 0x36, 0x71, 0xe7, 0xd2, 0x5f, 0x0c, 0x86, 0xf6, 0xcf, 0x35, 0x49, 0xe7, + 0x3a, 0xeb, 0x7b, 0x14, 0x11, 0xd3, 0x03, 0x0f, 0x05, 0x6d, 0x01, 0xe8, 0x56, 0x1f, 0x2c, 0xa9, + 0xda, 0x37, 0x54, 0xdb, 0xa3, 0x88, 0x38, 0x4f, 0x69, 0x55, 0xed, 0x1b, 0xfe, 0x1f, 0x38, 0x48, + 0x7b, 0xa5, 0xa0, 0x3a, 0x24, 0x8d, 0xd6, 0x39, 0xee, 0xd9, 0xc7, 0xf0, 0x93, 0xb7, 0xd1, 0x25, + 0x57, 0x27, 0x22, 0x44, 0x26, 0x4a, 0xf8, 0x1c, 0x92, 0x94, 0xe2, 0x3d, 0x90, 0x53, 0x10, 0x3f, + 0x28, 0x1f, 0xd4, 0x32, 0x1c, 0x9a, 0x83, 0xd8, 0xe1, 0x41, 0x3d, 0x13, 0x45, 0x8b, 0x90, 0xaa, + 0x97, 0xbf, 0x90, 0xac, 0x73, 0x3a, 0x13, 0xb3, 0x32, 0x8e, 0x46, 0xed, 0x65, 0x49, 0x94, 0x6a, + 0x07, 0xd2, 0x51, 0xbe, 0x5a, 0x2b, 0x67, 0xe2, 0x7b, 0xb1, 0xbf, 0x2e, 0x70, 0x85, 0x14, 0x24, + 0xe5, 0x96, 0x35, 0xbe, 0xf0, 0x8b, 0xa8, 0x7b, 0xa3, 0xbd, 0xaa, 0xb1, 0x8d, 0xae, 0xc2, 0x6a, + 0x57, 0x36, 0x4c, 0x49, 0x67, 0x0d, 0x92, 0x31, 0x20, 0x19, 0xf8, 0xd8, 0x0b, 0xf8, 0x61, 0xe0, + 0x5e, 0xb6, 0x3a, 0xda, 0x02, 0xeb, 0xb4, 0xdb, 0xa8, 0xbc, 0x33, 0x59, 0xe9, 0x0e, 0x13, 0xc8, + 0xa9, 0xe5, 0x1d, 0xd0, 0x6e, 0x68, 0x17, 0x96, 0x99, 0x46, 0xca, 0x05, 0xb6, 0x85, 0x19, 0x24, + 0x66, 0x25, 0x44, 0x34, 0x6c, 0x62, 0xfc, 0x06, 0x3a, 0x02, 0x44, 0xa2, 0x87, 0xa3, 0xc0, 0x94, + 0xc7, 0x50, 0xc6, 0xea, 0x65, 0x8f, 0x6e, 0x91, 0xc9, 0x62, 0x0a, 0xbf, 0x89, 0xc3, 0x5a, 0x55, + 0x6b, 0xe3, 0xba, 0x29, 0x77, 0x66, 0xc1, 0xee, 0x7f, 0x77, 0x14, 0x0a, 0x8d, 0x7a, 0x3d, 0x3f, + 0x58, 0xea, 0x34, 0x08, 0x28, 0xca, 0xc1, 0xb2, 0x61, 0xca, 0x1d, 0x12, 0xeb, 0x65, 0xbd, 0x83, + 0x4d, 0xa9, 0x2f, 0x9b, 0xe7, 0x2c, 0x90, 0x5f, 0x67, 0x4d, 0x0d, 0xd2, 0x72, 0x2c, 0x9b, 0xe7, + 0xc1, 0x90, 0x7a, 0x7c, 0x66, 0x48, 0xfd, 0x73, 0x3f, 0xaa, 0xf5, 0xf1, 0x84, 0xb9, 0x84, 0x64, + 0x6c, 0x5f, 0x8c, 0x81, 0xcb, 0x1f, 0x4e, 0x10, 0x39, 0x19, 0x26, 0xbf, 0x3a, 0x3c, 0xfc, 0x2d, + 0x23, 0xed, 0x1f, 0xc0, 0x8d, 0x91, 0xc9, 0xb3, 0xfc, 0xa0, 0x03, 0x59, 0xab, 0xa9, 0xa9, 0x1a, + 0x33, 0x9a, 0xe3, 0x18, 0x8b, 0x89, 0x8e, 0xb1, 0x18, 0x61, 0x1d, 0x3e, 0x08, 0x18, 0x88, 0x69, + 0xf1, 0x8f, 0x09, 0xaa, 0xc6, 0xec, 0x97, 0x3e, 0x5f, 0x8e, 0xf3, 0x8a, 0xef, 0xbb, 0xb7, 0x3d, + 0xf0, 0x7e, 0xe4, 0x7d, 0xf8, 0xc5, 0x16, 0x2c, 0xb8, 0xf9, 0x58, 0x8e, 0x63, 0x4e, 0x70, 0x9c, + 0xc4, 0x95, 0xee, 0xa2, 0x92, 0xbe, 0xbb, 0xa8, 0xca, 0xd0, 0xa9, 0xe6, 0xbc, 0x75, 0xcb, 0xd8, + 0xa5, 0x08, 0x71, 0xab, 0xd7, 0x23, 0x6e, 0x95, 0xf2, 0x5e, 0x70, 0x8d, 0x15, 0xfa, 0x5b, 0xe0, + 0x58, 0xcc, 0xa8, 0x03, 0x6f, 0x9e, 0x84, 0xd7, 0xc0, 0x53, 0x8b, 0x9f, 0xfd, 0x2e, 0xc8, 0x67, + 0x46, 0x51, 0xbf, 0x19, 0x09, 0x9b, 0xb0, 0x1e, 0x28, 0x9b, 0x0d, 0xfd, 0x8a, 0xea, 0x75, 0x88, + 0x19, 0x94, 0x58, 0x37, 0x65, 0xd3, 0x98, 0x76, 0x64, 0xd6, 0xe8, 0x1e, 0x99, 0x92, 0xc8, 0xc8, + 0x87, 0x74, 0x56, 0x7e, 0xd1, 0xec, 0xf0, 0xff, 0x08, 0x12, 0x03, 0x82, 0x8a, 0xd3, 0x34, 0x7d, + 0xd9, 0x6b, 0xd2, 0x4d, 0xab, 0x49, 0xa4, 0x1c, 0xc2, 0x2f, 0x38, 0x58, 0x70, 0x91, 0xd1, 0x06, + 0xcc, 0x3b, 0x20, 0x99, 0x5d, 0x51, 0x3a, 0x04, 0x6b, 0x0f, 0x4c, 0xcd, 0x94, 0xbb, 0xec, 0xa1, + 0x05, 0xfd, 0x40, 0x08, 0xe2, 0x03, 0x03, 0xd3, 0x82, 0x23, 0x26, 0x92, 0xdf, 0xe8, 0x3e, 0xc4, + 0x07, 0xaa, 0x62, 0x12, 0xdf, 0x4b, 0xfb, 0x9d, 0x8a, 0x0c, 0x95, 0x6b, 0xaa, 0x8a, 0x29, 0x12, + 0x2e, 0xe1, 0x09, 0xc4, 0xad, 0x2f, 0x6f, 0xa6, 0x34, 0x0f, 0x89, 0xc2, 0xab, 0x46, 0xa9, 0x9e, + 0xe1, 0x10, 0x40, 0xb2, 0x5c, 0xad, 0xed, 0x97, 0xac, 0x6c, 0xe9, 0x1a, 0x24, 0x5f, 0x34, 0xf3, + 0xe2, 0xb3, 0x7a, 0x26, 0xc6, 0x93, 0xa3, 0x7c, 0xc3, 0x59, 0x8b, 0x20, 0xf0, 0xee, 0x2b, 0xba, + 0x47, 0xe3, 0x60, 0xbb, 0x7c, 0x20, 0x6c, 0xb7, 0xe9, 0x39, 0xad, 0x26, 0x00, 0x76, 0xff, 0x16, + 0x83, 0xd5, 0x40, 0x3e, 0xf4, 0xd8, 0x0d, 0xd5, 0xdd, 0x0a, 0x95, 0xe9, 0x06, 0xe9, 0x5e, 0x04, + 0x83, 0x74, 0xf7, 0xc2, 0x05, 0x84, 0xc2, 0x73, 0x7f, 0xc9, 0x51, 0x78, 0x6e, 0xcf, 0x03, 0x37, + 0xdd, 0x9d, 0xa8, 0x92, 0x1b, 0x5f, 0x3a, 0x19, 0x83, 0xcb, 0xd5, 0x1b, 0xf9, 0xc3, 0x92, 0xd4, + 0xac, 0xd2, 0xbf, 0x0e, 0x2e, 0xb7, 0x02, 0x99, 0xc3, 0x92, 0x0d, 0xbc, 0x49, 0xf5, 0x46, 0xbe, + 0x61, 0xed, 0xde, 0x08, 0x26, 0x16, 0xe3, 0xff, 0xd8, 0x8f, 0x89, 0x15, 0x3d, 0x4a, 0xee, 0x4e, + 0x3f, 0x6d, 0xb7, 0xb6, 0x0f, 0x83, 0xb4, 0xdd, 0x80, 0x2c, 0xd3, 0xa7, 0x59, 0xa7, 0x4a, 0x97, + 0x1b, 0x12, 0xb3, 0xa6, 0x21, 0x30, 0xb6, 0x02, 0x88, 0x99, 0x8c, 0xfb, 0x05, 0xfb, 0x4f, 0x39, + 0x58, 0xf6, 0x90, 0x99, 0x05, 0xb9, 0x6e, 0x8c, 0x39, 0xcf, 0x8d, 0xf1, 0x2e, 0xac, 0x58, 0xb5, + 0x3d, 0xf5, 0x5a, 0x43, 0xea, 0x63, 0x5d, 0xb2, 0x5a, 0x98, 0xef, 0x5c, 0xef, 0xc9, 0x6f, 0xd8, + 0x0d, 0xc3, 0x31, 0xd6, 0x2d, 0xc1, 0xef, 0x00, 0x53, 0x17, 0xfe, 0x8c, 0xa3, 0x49, 0xc6, 0xcc, + 0x75, 0xf0, 0xa4, 0x88, 0x13, 0x50, 0x28, 0xc7, 0xa6, 0x2f, 0x94, 0x85, 0x3c, 0xcd, 0x2c, 0xae, + 0x50, 0x93, 0x3e, 0xfa, 0x3f, 0x0e, 0x52, 0xe5, 0x36, 0x56, 0x4d, 0xcb, 0xb3, 0xaa, 0xb0, 0xe4, + 0x79, 0xe1, 0x8f, 0x36, 0xc6, 0x3c, 0xfc, 0x27, 0x53, 0xe7, 0x37, 0x43, 0xff, 0x2d, 0x40, 0x88, + 0xa0, 0x33, 0xd7, 0x7f, 0x27, 0x78, 0xee, 0x4c, 0x3e, 0x1c, 0xe9, 0x19, 0x10, 0x64, 0xf8, 0x3b, + 0x13, 0xb8, 0x9c, 0x71, 0x3e, 0x81, 0x04, 0x79, 0x18, 0x8d, 0x56, 0x9c, 0x07, 0xd8, 0xae, 0x77, + 0xd3, 0xfc, 0xaa, 0x8f, 0x6a, 0xf7, 0x7b, 0xf4, 0xef, 0xf3, 0x00, 0xc3, 0x8a, 0x0f, 0x3d, 0x83, + 0x45, 0xf7, 0xdb, 0x4c, 0xb4, 0x1e, 0xf2, 0x32, 0x98, 0xdf, 0x08, 0x6e, 0x74, 0x74, 0x7a, 0x06, + 0x8b, 0xee, 0x97, 0x40, 0x43, 0x61, 0x01, 0xaf, 0x91, 0x86, 0xc2, 0x02, 0x1f, 0x0f, 0x45, 0x50, + 0x17, 0x6e, 0x8c, 0x79, 0x0b, 0x82, 0xee, 0x4e, 0xf7, 0x62, 0x86, 0xff, 0xce, 0x94, 0x8f, 0x4a, + 0x84, 0x08, 0xd2, 0xe1, 0x83, 0xb1, 0x4f, 0x20, 0xd0, 0xce, 0xb4, 0x0f, 0x34, 0xf8, 0x8f, 0xa6, + 0xe0, 0x74, 0xc6, 0x1c, 0x00, 0x3f, 0xfe, 0xde, 0x15, 0x7d, 0x34, 0xf5, 0x83, 0x00, 0xfe, 0xde, + 0xf4, 0xd7, 0xb8, 0x42, 0x04, 0x1d, 0xc1, 0x82, 0xeb, 0x52, 0x12, 0xf1, 0x81, 0x37, 0x95, 0x54, + 0xf0, 0x7a, 0xc8, 0x2d, 0x26, 0x95, 0xe4, 0xba, 0x38, 0x1b, 0x4a, 0x1a, 0xbd, 0x01, 0x1c, 0x4a, + 0x0a, 0xb8, 0x69, 0xf3, 0x2f, 0xbf, 0xef, 0x84, 0x0d, 0x5a, 0xfe, 0xe0, 0x23, 0x3a, 0x68, 0xf9, + 0xc7, 0x1c, 0xd7, 0x42, 0x04, 0xbd, 0x80, 0xb4, 0x17, 0x48, 0x47, 0x9b, 0xa1, 0x17, 0x02, 0xfc, + 0xcd, 0x71, 0xcd, 0x6e, 0x91, 0x5e, 0xdc, 0x76, 0x28, 0x32, 0x10, 0x3f, 0x1e, 0x8a, 0x1c, 0x03, + 0xf7, 0x46, 0xac, 0xf8, 0xe4, 0xc1, 0x44, 0x87, 0xf1, 0x29, 0x08, 0x06, 0x1e, 0xc6, 0xa7, 0x40, + 0x20, 0x55, 0x88, 0x20, 0x05, 0xd6, 0x82, 0x91, 0x3d, 0x74, 0x67, 0x2a, 0xc4, 0x91, 0xbf, 0x3b, + 0x89, 0xcd, 0xe5, 0xc1, 0x6b, 0xc1, 0xd8, 0x52, 0xd0, 0x50, 0x01, 0xb0, 0x58, 0xd0, 0x50, 0x41, + 0x10, 0x95, 0x60, 0x25, 0x6f, 0x8f, 0x7e, 0x99, 0x80, 0x38, 0x39, 0xfc, 0x1a, 0x70, 0xcd, 0x57, + 0x1d, 0xa3, 0x9b, 0xe1, 0x98, 0x01, 0xbf, 0x35, 0xb6, 0xdd, 0x99, 0xcc, 0x6b, 0xb8, 0x3e, 0x52, + 0xef, 0xa2, 0x6d, 0x77, 0xbf, 0xa0, 0x9a, 0x9b, 0xbf, 0x15, 0xc2, 0xe1, 0x97, 0xed, 0x0d, 0x72, + 0xdb, 0x93, 0x0a, 0x32, 0xaf, 0xec, 0x71, 0x81, 0xed, 0x2b, 0x9a, 0x6b, 0xf8, 0x43, 0x9a, 0xe0, + 0xd5, 0x2b, 0x30, 0x98, 0xdd, 0x0e, 0xe5, 0x71, 0x46, 0xf8, 0xd2, 0x49, 0x72, 0x5c, 0x15, 0x04, + 0xf2, 0x28, 0x17, 0x58, 0xb8, 0xf0, 0x42, 0x18, 0x8b, 0x23, 0xfe, 0x25, 0x64, 0xfc, 0x07, 0x3e, + 0xf2, 0xec, 0x57, 0x90, 0x91, 0x6e, 0x8f, 0x67, 0xf0, 0xaf, 0x8c, 0x3f, 0xda, 0xf8, 0xb5, 0x0a, + 0x8a, 0x33, 0xb7, 0x43, 0x79, 0xdc, 0xf1, 0xd1, 0x95, 0xe7, 0x0d, 0xe3, 0xe3, 0x68, 0x4e, 0x38, + 0x8c, 0x8f, 0x01, 0x89, 0xa1, 0x10, 0xd9, 0x7b, 0x0a, 0x40, 0x13, 0x79, 0xac, 0x0e, 0x7a, 0x68, + 0x63, 0x04, 0xa5, 0x2c, 0xa9, 0x83, 0x5e, 0xad, 0x6f, 0x39, 0x85, 0x91, 0xfd, 0x59, 0x8a, 0x00, + 0x08, 0xf3, 0xa4, 0x83, 0xd5, 0xb0, 0x57, 0x81, 0xcc, 0xb0, 0xb7, 0x44, 0xca, 0x5d, 0x74, 0x2b, + 0x50, 0x06, 0xf9, 0xc7, 0x29, 0x9f, 0xa0, 0xb4, 0x23, 0x88, 0xb4, 0xee, 0x7d, 0x06, 0xd0, 0x32, + 0x14, 0x89, 0x02, 0x0a, 0x68, 0x73, 0x44, 0xce, 0x81, 0x82, 0xbb, 0x6d, 0x5b, 0xc6, 0xdf, 0x30, + 0x65, 0x5a, 0x86, 0x42, 0xeb, 0xfa, 0xbd, 0x1f, 0xc2, 0x02, 0xab, 0x49, 0x2c, 0xbe, 0x49, 0xfd, + 0x99, 0x0e, 0x74, 0xf6, 0xa4, 0x65, 0xaf, 0x64, 0x17, 0x35, 0xec, 0x89, 0x16, 0xda, 0x1a, 0x11, + 0xf1, 0x9c, 0xb6, 0xf8, 0x84, 0xd0, 0x42, 0x86, 0xb5, 0xed, 0x15, 0x60, 0xd1, 0x16, 0x63, 0x9e, + 0x6b, 0x6d, 0x74, 0x33, 0x40, 0x8a, 0xd5, 0xe0, 0x13, 0xb2, 0xc0, 0x84, 0x58, 0x4d, 0x43, 0x55, + 0xec, 0xff, 0x77, 0x1c, 0x55, 0x85, 0xd5, 0x19, 0x81, 0xaa, 0xb0, 0xb6, 0x42, 0xe2, 0x75, 0xac, + 0x65, 0x28, 0xa7, 0x49, 0xd2, 0xe9, 0x7b, 0xff, 0x1f, 0x00, 0x00, 0xff, 0xff, 0x06, 0x9e, 0x87, + 0xe6, 0x9c, 0x3b, 0x00, 0x00, } diff --git a/spec.md b/spec.md index 129533ba..ce546739 100644 --- a/spec.md +++ b/spec.md @@ -1937,6 +1937,7 @@ The downside of calling ListSnapshots is that ListSnapshots will not return a gR A Controller Plugin MAY implement support for tape rotation schedules. Controller implementations that support this feature MUST advertise the `TAPE_ROTATION` feature via `ControllerGetCapabilities`. + ```protobuf message ControllerTapeRotationRequest { option (alpha_message) = true; @@ -2249,6 +2250,10 @@ A Node plugin MUST implement this RPC call if it has GET_VOLUME_STATS node capab If the volume is being used in `BlockVolume` mode then `used` and `available` MAY be omitted from `usage` field of `NodeGetVolumeStatsResponse`. Similarly, inode information MAY be omitted from `NodeGetVolumeStatsResponse` when unavailable. +** EXPERIMENTAL FEATURE** + +* `QUARKS` is an experimental usage unit and may be removed in a future release. + ```protobuf message NodeGetVolumeStatsRequest { @@ -2273,6 +2278,9 @@ message VolumeUsage { UNKNOWN = 0; BYTES = 1; INODES = 2; + + // All "up" quarks are considered "used". + QUARKS = 3 [(alpha_enum_value) = true]; } // The available capacity in specified Unit. This field is OPTIONAL. // The value of this field MUST NOT be negative. @@ -2338,6 +2346,10 @@ message NodeServiceCapability { message AlphaFeature { enum Type { UNKNOWN = 0; + + // Indicates that volume usage may be specified in units of quark. + // See https://en.wikipedia.org/wiki/Quark + VOLUME_USAGE_UNIT_QUARKS = 1; } Type type = 1; // REQUIRED From cc6c138689e0f32238a03acdd2c5a31de1c07255 Mon Sep 17 00:00:00 2001 From: James DeFelice Date: Thu, 4 Apr 2019 16:30:53 +0000 Subject: [PATCH 6/7] spec: experimental field: Volume.lineage. Mock up of an experimental API to communicate the data lineage of a volume. Note that the newly added field has the `alpha_field` marker option set, as well as that the newly added message has a similar alpha marker. See https://en.wikipedia.org/wiki/Data_lineage --- csi.proto | 30 ++ lib/go/csi/csi.pb.go | 822 +++++++++++++++++++++++++------------------ spec.md | 30 ++ 3 files changed, 548 insertions(+), 334 deletions(-) diff --git a/csi.proto b/csi.proto index bcc302db..7b32f0da 100644 --- a/csi.proto +++ b/csi.proto @@ -232,6 +232,10 @@ message PluginCapability { message AlphaFeature { enum Type { UNKNOWN = 0; + + // Indicates that the plugin supports data lineage reporting for + // volumes. + VOLUME_LINEAGE = 1; } Type type = 1; // REQUIRED @@ -528,6 +532,32 @@ message Volume { // Indicates a volume accessible from both "zone" "Z2" and "zone" "Z3" // in the "region" "R1". repeated Topology accessible_topology = 5; + + // Lineage represent the entities and or processes that have + // influenced the data of this volume. + // Plugins that report volumes with this field set MUST also report a + // VOLUME_LINEAGE plugin capability. + // This is an OPTIONAL field. + repeated Provenance lineage = 6 [(alpha_field) = true]; +} + +// Provenance represents the origin of some storage object. +message Provenance { + option (alpha_message) = true; + + message Identity { + enum Type { + UNKNOWN = 0; + X509 = 1; + } + + Type type = 1; // REQUIRED + bytes value = 2; // REQUIRED + } + + repeated Identity identity = 1; // REQUIRED + .google.protobuf.Timestamp data_changed_at = 2; // OPTIONAL + .google.protobuf.Timestamp metadata_changed_at = 3; // OPTIONAL } message TopologyRequirement { diff --git a/lib/go/csi/csi.pb.go b/lib/go/csi/csi.pb.go index 5c25c4c3..81603006 100644 --- a/lib/go/csi/csi.pb.go +++ b/lib/go/csi/csi.pb.go @@ -63,7 +63,7 @@ func (x PluginCapability_Service_Type) String() string { return proto.EnumName(PluginCapability_Service_Type_name, int32(x)) } func (PluginCapability_Service_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 0, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{4, 0, 0} } type PluginCapability_VolumeExpansion_Type int32 @@ -124,27 +124,32 @@ func (x PluginCapability_VolumeExpansion_Type) String() string { return proto.EnumName(PluginCapability_VolumeExpansion_Type_name, int32(x)) } func (PluginCapability_VolumeExpansion_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 1, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{4, 1, 0} } type PluginCapability_AlphaFeature_Type int32 const ( PluginCapability_AlphaFeature_UNKNOWN PluginCapability_AlphaFeature_Type = 0 + // Indicates that the plugin supports data lineage reporting for + // volumes. + PluginCapability_AlphaFeature_VOLUME_LINEAGE PluginCapability_AlphaFeature_Type = 1 ) var PluginCapability_AlphaFeature_Type_name = map[int32]string{ 0: "UNKNOWN", + 1: "VOLUME_LINEAGE", } var PluginCapability_AlphaFeature_Type_value = map[string]int32{ - "UNKNOWN": 0, + "UNKNOWN": 0, + "VOLUME_LINEAGE": 1, } func (x PluginCapability_AlphaFeature_Type) String() string { return proto.EnumName(PluginCapability_AlphaFeature_Type_name, int32(x)) } func (PluginCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 2, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{4, 2, 0} } type VolumeCapability_AccessMode_Mode int32 @@ -188,7 +193,30 @@ func (x VolumeCapability_AccessMode_Mode) String() string { return proto.EnumName(VolumeCapability_AccessMode_Mode_name, int32(x)) } func (VolumeCapability_AccessMode_Mode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{10, 2, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{10, 2, 0} +} + +type Provenance_Identity_Type int32 + +const ( + Provenance_Identity_UNKNOWN Provenance_Identity_Type = 0 + Provenance_Identity_X509 Provenance_Identity_Type = 1 +) + +var Provenance_Identity_Type_name = map[int32]string{ + 0: "UNKNOWN", + 1: "X509", +} +var Provenance_Identity_Type_value = map[string]int32{ + "UNKNOWN": 0, + "X509": 1, +} + +func (x Provenance_Identity_Type) String() string { + return proto.EnumName(Provenance_Identity_Type_name, int32(x)) +} +func (Provenance_Identity_Type) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_csi_90473d66bc568efe, []int{13, 0, 0} } type ControllerServiceCapability_RPC_Type int32 @@ -246,7 +274,7 @@ func (x ControllerServiceCapability_RPC_Type) String() string { return proto.EnumName(ControllerServiceCapability_RPC_Type_name, int32(x)) } func (ControllerServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{29, 0, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{30, 0, 0} } type ControllerServiceCapability_AlphaFeature_Type int32 @@ -271,7 +299,7 @@ func (x ControllerServiceCapability_AlphaFeature_Type) String() string { return proto.EnumName(ControllerServiceCapability_AlphaFeature_Type_name, int32(x)) } func (ControllerServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{29, 1, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{30, 1, 0} } // https://en.wikipedia.org/wiki/Backup_rotation_scheme#Schemes @@ -304,7 +332,7 @@ func (x ControllerTapeRotationRequest_UpdateStrategy_Scheme) String() string { return proto.EnumName(ControllerTapeRotationRequest_UpdateStrategy_Scheme_name, int32(x)) } func (ControllerTapeRotationRequest_UpdateStrategy_Scheme) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{39, 0, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{40, 0, 0} } type VolumeUsage_Unit int32 @@ -334,7 +362,7 @@ func (x VolumeUsage_Unit) String() string { return proto.EnumName(VolumeUsage_Unit_name, int32(x)) } func (VolumeUsage_Unit) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{51, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{52, 0} } type NodeServiceCapability_RPC_Type int32 @@ -367,7 +395,7 @@ func (x NodeServiceCapability_RPC_Type) String() string { return proto.EnumName(NodeServiceCapability_RPC_Type_name, int32(x)) } func (NodeServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{54, 0, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{55, 0, 0} } type NodeServiceCapability_AlphaFeature_Type int32 @@ -392,7 +420,7 @@ func (x NodeServiceCapability_AlphaFeature_Type) String() string { return proto.EnumName(NodeServiceCapability_AlphaFeature_Type_name, int32(x)) } func (NodeServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{54, 1, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{55, 1, 0} } type GetPluginInfoRequest struct { @@ -405,7 +433,7 @@ func (m *GetPluginInfoRequest) Reset() { *m = GetPluginInfoRequest{} } func (m *GetPluginInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoRequest) ProtoMessage() {} func (*GetPluginInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{0} + return fileDescriptor_csi_90473d66bc568efe, []int{0} } func (m *GetPluginInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoRequest.Unmarshal(m, b) @@ -447,7 +475,7 @@ func (m *GetPluginInfoResponse) Reset() { *m = GetPluginInfoResponse{} } func (m *GetPluginInfoResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoResponse) ProtoMessage() {} func (*GetPluginInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{1} + return fileDescriptor_csi_90473d66bc568efe, []int{1} } func (m *GetPluginInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoResponse.Unmarshal(m, b) @@ -498,7 +526,7 @@ func (m *GetPluginCapabilitiesRequest) Reset() { *m = GetPluginCapabilit func (m *GetPluginCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesRequest) ProtoMessage() {} func (*GetPluginCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{2} + return fileDescriptor_csi_90473d66bc568efe, []int{2} } func (m *GetPluginCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesRequest.Unmarshal(m, b) @@ -531,7 +559,7 @@ func (m *GetPluginCapabilitiesResponse) Reset() { *m = GetPluginCapabili func (m *GetPluginCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesResponse) ProtoMessage() {} func (*GetPluginCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{3} + return fileDescriptor_csi_90473d66bc568efe, []int{3} } func (m *GetPluginCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesResponse.Unmarshal(m, b) @@ -574,7 +602,7 @@ func (m *PluginCapability) Reset() { *m = PluginCapability{} } func (m *PluginCapability) String() string { return proto.CompactTextString(m) } func (*PluginCapability) ProtoMessage() {} func (*PluginCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{4} + return fileDescriptor_csi_90473d66bc568efe, []int{4} } func (m *PluginCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability.Unmarshal(m, b) @@ -748,7 +776,7 @@ func (m *PluginCapability_Service) Reset() { *m = PluginCapability_Servi func (m *PluginCapability_Service) String() string { return proto.CompactTextString(m) } func (*PluginCapability_Service) ProtoMessage() {} func (*PluginCapability_Service) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{4, 0} } func (m *PluginCapability_Service) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_Service.Unmarshal(m, b) @@ -786,7 +814,7 @@ func (m *PluginCapability_VolumeExpansion) Reset() { *m = PluginCapabili func (m *PluginCapability_VolumeExpansion) String() string { return proto.CompactTextString(m) } func (*PluginCapability_VolumeExpansion) ProtoMessage() {} func (*PluginCapability_VolumeExpansion) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 1} + return fileDescriptor_csi_90473d66bc568efe, []int{4, 1} } func (m *PluginCapability_VolumeExpansion) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_VolumeExpansion.Unmarshal(m, b) @@ -824,7 +852,7 @@ func (m *PluginCapability_AlphaFeature) Reset() { *m = PluginCapability_ func (m *PluginCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*PluginCapability_AlphaFeature) ProtoMessage() {} func (*PluginCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{4, 2} + return fileDescriptor_csi_90473d66bc568efe, []int{4, 2} } func (m *PluginCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_AlphaFeature.Unmarshal(m, b) @@ -861,7 +889,7 @@ func (m *ProbeRequest) Reset() { *m = ProbeRequest{} } func (m *ProbeRequest) String() string { return proto.CompactTextString(m) } func (*ProbeRequest) ProtoMessage() {} func (*ProbeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{5} + return fileDescriptor_csi_90473d66bc568efe, []int{5} } func (m *ProbeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeRequest.Unmarshal(m, b) @@ -912,7 +940,7 @@ func (m *ProbeResponse) Reset() { *m = ProbeResponse{} } func (m *ProbeResponse) String() string { return proto.CompactTextString(m) } func (*ProbeResponse) ProtoMessage() {} func (*ProbeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{6} + return fileDescriptor_csi_90473d66bc568efe, []int{6} } func (m *ProbeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeResponse.Unmarshal(m, b) @@ -1021,7 +1049,7 @@ func (m *CreateVolumeRequest) Reset() { *m = CreateVolumeRequest{} } func (m *CreateVolumeRequest) String() string { return proto.CompactTextString(m) } func (*CreateVolumeRequest) ProtoMessage() {} func (*CreateVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{7} + return fileDescriptor_csi_90473d66bc568efe, []int{7} } func (m *CreateVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeRequest.Unmarshal(m, b) @@ -1106,7 +1134,7 @@ func (m *VolumeContentSource) Reset() { *m = VolumeContentSource{} } func (m *VolumeContentSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource) ProtoMessage() {} func (*VolumeContentSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{8} + return fileDescriptor_csi_90473d66bc568efe, []int{8} } func (m *VolumeContentSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource.Unmarshal(m, b) @@ -1252,7 +1280,7 @@ func (m *VolumeContentSource_SnapshotSource) Reset() { *m = VolumeConten func (m *VolumeContentSource_SnapshotSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_SnapshotSource) ProtoMessage() {} func (*VolumeContentSource_SnapshotSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{8, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{8, 0} } func (m *VolumeContentSource_SnapshotSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_SnapshotSource.Unmarshal(m, b) @@ -1293,7 +1321,7 @@ func (m *VolumeContentSource_VolumeSource) Reset() { *m = VolumeContentS func (m *VolumeContentSource_VolumeSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_VolumeSource) ProtoMessage() {} func (*VolumeContentSource_VolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{8, 1} + return fileDescriptor_csi_90473d66bc568efe, []int{8, 1} } func (m *VolumeContentSource_VolumeSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_VolumeSource.Unmarshal(m, b) @@ -1334,7 +1362,7 @@ func (m *CreateVolumeResponse) Reset() { *m = CreateVolumeResponse{} } func (m *CreateVolumeResponse) String() string { return proto.CompactTextString(m) } func (*CreateVolumeResponse) ProtoMessage() {} func (*CreateVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{9} + return fileDescriptor_csi_90473d66bc568efe, []int{9} } func (m *CreateVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeResponse.Unmarshal(m, b) @@ -1381,7 +1409,7 @@ func (m *VolumeCapability) Reset() { *m = VolumeCapability{} } func (m *VolumeCapability) String() string { return proto.CompactTextString(m) } func (*VolumeCapability) ProtoMessage() {} func (*VolumeCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{10} + return fileDescriptor_csi_90473d66bc568efe, []int{10} } func (m *VolumeCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability.Unmarshal(m, b) @@ -1530,7 +1558,7 @@ func (m *VolumeCapability_BlockVolume) Reset() { *m = VolumeCapability_B func (m *VolumeCapability_BlockVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_BlockVolume) ProtoMessage() {} func (*VolumeCapability_BlockVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{10, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{10, 0} } func (m *VolumeCapability_BlockVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_BlockVolume.Unmarshal(m, b) @@ -1570,7 +1598,7 @@ func (m *VolumeCapability_MountVolume) Reset() { *m = VolumeCapability_M func (m *VolumeCapability_MountVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_MountVolume) ProtoMessage() {} func (*VolumeCapability_MountVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{10, 1} + return fileDescriptor_csi_90473d66bc568efe, []int{10, 1} } func (m *VolumeCapability_MountVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_MountVolume.Unmarshal(m, b) @@ -1617,7 +1645,7 @@ func (m *VolumeCapability_AccessMode) Reset() { *m = VolumeCapability_Ac func (m *VolumeCapability_AccessMode) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_AccessMode) ProtoMessage() {} func (*VolumeCapability_AccessMode) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{10, 2} + return fileDescriptor_csi_90473d66bc568efe, []int{10, 2} } func (m *VolumeCapability_AccessMode) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_AccessMode.Unmarshal(m, b) @@ -1665,7 +1693,7 @@ func (m *CapacityRange) Reset() { *m = CapacityRange{} } func (m *CapacityRange) String() string { return proto.CompactTextString(m) } func (*CapacityRange) ProtoMessage() {} func (*CapacityRange) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{11} + return fileDescriptor_csi_90473d66bc568efe, []int{11} } func (m *CapacityRange) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CapacityRange.Unmarshal(m, b) @@ -1760,17 +1788,23 @@ type Volume struct { // {"region": "R1", "zone": "Z3"} // Indicates a volume accessible from both "zone" "Z2" and "zone" "Z3" // in the "region" "R1". - AccessibleTopology []*Topology `protobuf:"bytes,5,rep,name=accessible_topology,json=accessibleTopology,proto3" json:"accessible_topology,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + AccessibleTopology []*Topology `protobuf:"bytes,5,rep,name=accessible_topology,json=accessibleTopology,proto3" json:"accessible_topology,omitempty"` + // Lineage represent the entities and or processes that have + // influenced the data of this volume. + // Plugins that report volumes with this field set MUST also report a + // VOLUME_LINEAGE plugin capability. + // This is an OPTIONAL field. + Lineage []*Provenance `protobuf:"bytes,6,rep,name=lineage,proto3" json:"lineage,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *Volume) Reset() { *m = Volume{} } func (m *Volume) String() string { return proto.CompactTextString(m) } func (*Volume) ProtoMessage() {} func (*Volume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{12} + return fileDescriptor_csi_90473d66bc568efe, []int{12} } func (m *Volume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Volume.Unmarshal(m, b) @@ -1825,6 +1859,114 @@ func (m *Volume) GetAccessibleTopology() []*Topology { return nil } +func (m *Volume) GetLineage() []*Provenance { + if m != nil { + return m.Lineage + } + return nil +} + +// Provenance represents the origin of some storage object. +type Provenance struct { + Identity []*Provenance_Identity `protobuf:"bytes,1,rep,name=identity,proto3" json:"identity,omitempty"` + DataChangedAt *timestamp.Timestamp `protobuf:"bytes,2,opt,name=data_changed_at,json=dataChangedAt,proto3" json:"data_changed_at,omitempty"` + MetadataChangedAt *timestamp.Timestamp `protobuf:"bytes,3,opt,name=metadata_changed_at,json=metadataChangedAt,proto3" json:"metadata_changed_at,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Provenance) Reset() { *m = Provenance{} } +func (m *Provenance) String() string { return proto.CompactTextString(m) } +func (*Provenance) ProtoMessage() {} +func (*Provenance) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_90473d66bc568efe, []int{13} +} +func (m *Provenance) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Provenance.Unmarshal(m, b) +} +func (m *Provenance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Provenance.Marshal(b, m, deterministic) +} +func (dst *Provenance) XXX_Merge(src proto.Message) { + xxx_messageInfo_Provenance.Merge(dst, src) +} +func (m *Provenance) XXX_Size() int { + return xxx_messageInfo_Provenance.Size(m) +} +func (m *Provenance) XXX_DiscardUnknown() { + xxx_messageInfo_Provenance.DiscardUnknown(m) +} + +var xxx_messageInfo_Provenance proto.InternalMessageInfo + +func (m *Provenance) GetIdentity() []*Provenance_Identity { + if m != nil { + return m.Identity + } + return nil +} + +func (m *Provenance) GetDataChangedAt() *timestamp.Timestamp { + if m != nil { + return m.DataChangedAt + } + return nil +} + +func (m *Provenance) GetMetadataChangedAt() *timestamp.Timestamp { + if m != nil { + return m.MetadataChangedAt + } + return nil +} + +type Provenance_Identity struct { + Type Provenance_Identity_Type `protobuf:"varint,1,opt,name=type,proto3,enum=csi.v1.Provenance_Identity_Type" json:"type,omitempty"` + Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Provenance_Identity) Reset() { *m = Provenance_Identity{} } +func (m *Provenance_Identity) String() string { return proto.CompactTextString(m) } +func (*Provenance_Identity) ProtoMessage() {} +func (*Provenance_Identity) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_90473d66bc568efe, []int{13, 0} +} +func (m *Provenance_Identity) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Provenance_Identity.Unmarshal(m, b) +} +func (m *Provenance_Identity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Provenance_Identity.Marshal(b, m, deterministic) +} +func (dst *Provenance_Identity) XXX_Merge(src proto.Message) { + xxx_messageInfo_Provenance_Identity.Merge(dst, src) +} +func (m *Provenance_Identity) XXX_Size() int { + return xxx_messageInfo_Provenance_Identity.Size(m) +} +func (m *Provenance_Identity) XXX_DiscardUnknown() { + xxx_messageInfo_Provenance_Identity.DiscardUnknown(m) +} + +var xxx_messageInfo_Provenance_Identity proto.InternalMessageInfo + +func (m *Provenance_Identity) GetType() Provenance_Identity_Type { + if m != nil { + return m.Type + } + return Provenance_Identity_UNKNOWN +} + +func (m *Provenance_Identity) GetValue() []byte { + if m != nil { + return m.Value + } + return nil +} + type TopologyRequirement struct { // Specifies the list of topologies the provisioned volume MUST be // accessible from. @@ -1962,7 +2104,7 @@ func (m *TopologyRequirement) Reset() { *m = TopologyRequirement{} } func (m *TopologyRequirement) String() string { return proto.CompactTextString(m) } func (*TopologyRequirement) ProtoMessage() {} func (*TopologyRequirement) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{13} + return fileDescriptor_csi_90473d66bc568efe, []int{14} } func (m *TopologyRequirement) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TopologyRequirement.Unmarshal(m, b) @@ -2036,7 +2178,7 @@ func (m *Topology) Reset() { *m = Topology{} } func (m *Topology) String() string { return proto.CompactTextString(m) } func (*Topology) ProtoMessage() {} func (*Topology) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{14} + return fileDescriptor_csi_90473d66bc568efe, []int{15} } func (m *Topology) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Topology.Unmarshal(m, b) @@ -2080,7 +2222,7 @@ func (m *DeleteVolumeRequest) Reset() { *m = DeleteVolumeRequest{} } func (m *DeleteVolumeRequest) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeRequest) ProtoMessage() {} func (*DeleteVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{15} + return fileDescriptor_csi_90473d66bc568efe, []int{16} } func (m *DeleteVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeRequest.Unmarshal(m, b) @@ -2124,7 +2266,7 @@ func (m *DeleteVolumeResponse) Reset() { *m = DeleteVolumeResponse{} } func (m *DeleteVolumeResponse) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeResponse) ProtoMessage() {} func (*DeleteVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{16} + return fileDescriptor_csi_90473d66bc568efe, []int{17} } func (m *DeleteVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeResponse.Unmarshal(m, b) @@ -2178,7 +2320,7 @@ func (m *ControllerPublishVolumeRequest) Reset() { *m = ControllerPublis func (m *ControllerPublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeRequest) ProtoMessage() {} func (*ControllerPublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{17} + return fileDescriptor_csi_90473d66bc568efe, []int{18} } func (m *ControllerPublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeRequest.Unmarshal(m, b) @@ -2264,7 +2406,7 @@ func (m *ControllerPublishVolumeResponse) Reset() { *m = ControllerPubli func (m *ControllerPublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeResponse) ProtoMessage() {} func (*ControllerPublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{18} + return fileDescriptor_csi_90473d66bc568efe, []int{19} } func (m *ControllerPublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeResponse.Unmarshal(m, b) @@ -2315,7 +2457,7 @@ func (m *ControllerUnpublishVolumeRequest) Reset() { *m = ControllerUnpu func (m *ControllerUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeRequest) ProtoMessage() {} func (*ControllerUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{19} + return fileDescriptor_csi_90473d66bc568efe, []int{20} } func (m *ControllerUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeRequest.Unmarshal(m, b) @@ -2366,7 +2508,7 @@ func (m *ControllerUnpublishVolumeResponse) Reset() { *m = ControllerUnp func (m *ControllerUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeResponse) ProtoMessage() {} func (*ControllerUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{20} + return fileDescriptor_csi_90473d66bc568efe, []int{21} } func (m *ControllerUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeResponse.Unmarshal(m, b) @@ -2413,7 +2555,7 @@ func (m *ValidateVolumeCapabilitiesRequest) Reset() { *m = ValidateVolum func (m *ValidateVolumeCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesRequest) ProtoMessage() {} func (*ValidateVolumeCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{21} + return fileDescriptor_csi_90473d66bc568efe, []int{22} } func (m *ValidateVolumeCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesRequest.Unmarshal(m, b) @@ -2491,7 +2633,7 @@ func (m *ValidateVolumeCapabilitiesResponse) Reset() { *m = ValidateVolu func (m *ValidateVolumeCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesResponse) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{22} + return fileDescriptor_csi_90473d66bc568efe, []int{23} } func (m *ValidateVolumeCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse.Unmarshal(m, b) @@ -2548,7 +2690,7 @@ func (m *ValidateVolumeCapabilitiesResponse_Confirmed) String() string { } func (*ValidateVolumeCapabilitiesResponse_Confirmed) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse_Confirmed) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{22, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{23, 0} } func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse_Confirmed.Unmarshal(m, b) @@ -2613,7 +2755,7 @@ func (m *ListVolumesRequest) Reset() { *m = ListVolumesRequest{} } func (m *ListVolumesRequest) String() string { return proto.CompactTextString(m) } func (*ListVolumesRequest) ProtoMessage() {} func (*ListVolumesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{23} + return fileDescriptor_csi_90473d66bc568efe, []int{24} } func (m *ListVolumesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesRequest.Unmarshal(m, b) @@ -2665,7 +2807,7 @@ func (m *ListVolumesResponse) Reset() { *m = ListVolumesResponse{} } func (m *ListVolumesResponse) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse) ProtoMessage() {} func (*ListVolumesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{24} + return fileDescriptor_csi_90473d66bc568efe, []int{25} } func (m *ListVolumesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse.Unmarshal(m, b) @@ -2710,7 +2852,7 @@ func (m *ListVolumesResponse_Entry) Reset() { *m = ListVolumesResponse_E func (m *ListVolumesResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse_Entry) ProtoMessage() {} func (*ListVolumesResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{24, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{25, 0} } func (m *ListVolumesResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse_Entry.Unmarshal(m, b) @@ -2765,7 +2907,7 @@ func (m *GetCapacityRequest) Reset() { *m = GetCapacityRequest{} } func (m *GetCapacityRequest) String() string { return proto.CompactTextString(m) } func (*GetCapacityRequest) ProtoMessage() {} func (*GetCapacityRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{25} + return fileDescriptor_csi_90473d66bc568efe, []int{26} } func (m *GetCapacityRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityRequest.Unmarshal(m, b) @@ -2823,7 +2965,7 @@ func (m *GetCapacityResponse) Reset() { *m = GetCapacityResponse{} } func (m *GetCapacityResponse) String() string { return proto.CompactTextString(m) } func (*GetCapacityResponse) ProtoMessage() {} func (*GetCapacityResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{26} + return fileDescriptor_csi_90473d66bc568efe, []int{27} } func (m *GetCapacityResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityResponse.Unmarshal(m, b) @@ -2860,7 +3002,7 @@ func (m *ControllerGetCapabilitiesRequest) Reset() { *m = ControllerGetC func (m *ControllerGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesRequest) ProtoMessage() {} func (*ControllerGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{27} + return fileDescriptor_csi_90473d66bc568efe, []int{28} } func (m *ControllerGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesRequest.Unmarshal(m, b) @@ -2893,7 +3035,7 @@ func (m *ControllerGetCapabilitiesResponse) Reset() { *m = ControllerGet func (m *ControllerGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesResponse) ProtoMessage() {} func (*ControllerGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{28} + return fileDescriptor_csi_90473d66bc568efe, []int{29} } func (m *ControllerGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesResponse.Unmarshal(m, b) @@ -2935,7 +3077,7 @@ func (m *ControllerServiceCapability) Reset() { *m = ControllerServiceCa func (m *ControllerServiceCapability) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability) ProtoMessage() {} func (*ControllerServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{29} + return fileDescriptor_csi_90473d66bc568efe, []int{30} } func (m *ControllerServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability.Unmarshal(m, b) @@ -3077,7 +3219,7 @@ func (m *ControllerServiceCapability_RPC) Reset() { *m = ControllerServi func (m *ControllerServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_RPC) ProtoMessage() {} func (*ControllerServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{29, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{30, 0} } func (m *ControllerServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_RPC.Unmarshal(m, b) @@ -3117,7 +3259,7 @@ func (m *ControllerServiceCapability_AlphaFeature) Reset() { func (m *ControllerServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_AlphaFeature) ProtoMessage() {} func (*ControllerServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{29, 1} + return fileDescriptor_csi_90473d66bc568efe, []int{30, 1} } func (m *ControllerServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_AlphaFeature.Unmarshal(m, b) @@ -3179,7 +3321,7 @@ func (m *CreateSnapshotRequest) Reset() { *m = CreateSnapshotRequest{} } func (m *CreateSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotRequest) ProtoMessage() {} func (*CreateSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{30} + return fileDescriptor_csi_90473d66bc568efe, []int{31} } func (m *CreateSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotRequest.Unmarshal(m, b) @@ -3241,7 +3383,7 @@ func (m *CreateSnapshotResponse) Reset() { *m = CreateSnapshotResponse{} func (m *CreateSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotResponse) ProtoMessage() {} func (*CreateSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{31} + return fileDescriptor_csi_90473d66bc568efe, []int{32} } func (m *CreateSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotResponse.Unmarshal(m, b) @@ -3308,7 +3450,7 @@ func (m *Snapshot) Reset() { *m = Snapshot{} } func (m *Snapshot) String() string { return proto.CompactTextString(m) } func (*Snapshot) ProtoMessage() {} func (*Snapshot) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{32} + return fileDescriptor_csi_90473d66bc568efe, []int{33} } func (m *Snapshot) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Snapshot.Unmarshal(m, b) @@ -3380,7 +3522,7 @@ func (m *DeleteSnapshotRequest) Reset() { *m = DeleteSnapshotRequest{} } func (m *DeleteSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotRequest) ProtoMessage() {} func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{33} + return fileDescriptor_csi_90473d66bc568efe, []int{34} } func (m *DeleteSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotRequest.Unmarshal(m, b) @@ -3424,7 +3566,7 @@ func (m *DeleteSnapshotResponse) Reset() { *m = DeleteSnapshotResponse{} func (m *DeleteSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotResponse) ProtoMessage() {} func (*DeleteSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{34} + return fileDescriptor_csi_90473d66bc568efe, []int{35} } func (m *DeleteSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotResponse.Unmarshal(m, b) @@ -3479,7 +3621,7 @@ func (m *ListSnapshotsRequest) Reset() { *m = ListSnapshotsRequest{} } func (m *ListSnapshotsRequest) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsRequest) ProtoMessage() {} func (*ListSnapshotsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{35} + return fileDescriptor_csi_90473d66bc568efe, []int{36} } func (m *ListSnapshotsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsRequest.Unmarshal(m, b) @@ -3545,7 +3687,7 @@ func (m *ListSnapshotsResponse) Reset() { *m = ListSnapshotsResponse{} } func (m *ListSnapshotsResponse) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse) ProtoMessage() {} func (*ListSnapshotsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{36} + return fileDescriptor_csi_90473d66bc568efe, []int{37} } func (m *ListSnapshotsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse.Unmarshal(m, b) @@ -3590,7 +3732,7 @@ func (m *ListSnapshotsResponse_Entry) Reset() { *m = ListSnapshotsRespon func (m *ListSnapshotsResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse_Entry) ProtoMessage() {} func (*ListSnapshotsResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{36, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{37, 0} } func (m *ListSnapshotsResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse_Entry.Unmarshal(m, b) @@ -3635,7 +3777,7 @@ func (m *ControllerExpandVolumeRequest) Reset() { *m = ControllerExpandV func (m *ControllerExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeRequest) ProtoMessage() {} func (*ControllerExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{37} + return fileDescriptor_csi_90473d66bc568efe, []int{38} } func (m *ControllerExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeRequest.Unmarshal(m, b) @@ -3692,7 +3834,7 @@ func (m *ControllerExpandVolumeResponse) Reset() { *m = ControllerExpand func (m *ControllerExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeResponse) ProtoMessage() {} func (*ControllerExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{38} + return fileDescriptor_csi_90473d66bc568efe, []int{39} } func (m *ControllerExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeResponse.Unmarshal(m, b) @@ -3743,7 +3885,7 @@ func (m *ControllerTapeRotationRequest) Reset() { *m = ControllerTapeRot func (m *ControllerTapeRotationRequest) String() string { return proto.CompactTextString(m) } func (*ControllerTapeRotationRequest) ProtoMessage() {} func (*ControllerTapeRotationRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{39} + return fileDescriptor_csi_90473d66bc568efe, []int{40} } func (m *ControllerTapeRotationRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerTapeRotationRequest.Unmarshal(m, b) @@ -3888,7 +4030,7 @@ func (m *ControllerTapeRotationRequest_UpdateStrategy) String() string { } func (*ControllerTapeRotationRequest_UpdateStrategy) ProtoMessage() {} func (*ControllerTapeRotationRequest_UpdateStrategy) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{39, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{40, 0} } func (m *ControllerTapeRotationRequest_UpdateStrategy) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerTapeRotationRequest_UpdateStrategy.Unmarshal(m, b) @@ -3930,7 +4072,7 @@ func (m *ControllerTapeRotationResponse) Reset() { *m = ControllerTapeRo func (m *ControllerTapeRotationResponse) String() string { return proto.CompactTextString(m) } func (*ControllerTapeRotationResponse) ProtoMessage() {} func (*ControllerTapeRotationResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{40} + return fileDescriptor_csi_90473d66bc568efe, []int{41} } func (m *ControllerTapeRotationResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerTapeRotationResponse.Unmarshal(m, b) @@ -4019,7 +4161,7 @@ func (m *NodeStageVolumeRequest) Reset() { *m = NodeStageVolumeRequest{} func (m *NodeStageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeRequest) ProtoMessage() {} func (*NodeStageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{41} + return fileDescriptor_csi_90473d66bc568efe, []int{42} } func (m *NodeStageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeRequest.Unmarshal(m, b) @@ -4091,7 +4233,7 @@ func (m *NodeStageVolumeResponse) Reset() { *m = NodeStageVolumeResponse func (m *NodeStageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeResponse) ProtoMessage() {} func (*NodeStageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{42} + return fileDescriptor_csi_90473d66bc568efe, []int{43} } func (m *NodeStageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeResponse.Unmarshal(m, b) @@ -4127,7 +4269,7 @@ func (m *NodeUnstageVolumeRequest) Reset() { *m = NodeUnstageVolumeReque func (m *NodeUnstageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeRequest) ProtoMessage() {} func (*NodeUnstageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{43} + return fileDescriptor_csi_90473d66bc568efe, []int{44} } func (m *NodeUnstageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeRequest.Unmarshal(m, b) @@ -4171,7 +4313,7 @@ func (m *NodeUnstageVolumeResponse) Reset() { *m = NodeUnstageVolumeResp func (m *NodeUnstageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeResponse) ProtoMessage() {} func (*NodeUnstageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{44} + return fileDescriptor_csi_90473d66bc568efe, []int{45} } func (m *NodeUnstageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeResponse.Unmarshal(m, b) @@ -4245,7 +4387,7 @@ func (m *NodePublishVolumeRequest) Reset() { *m = NodePublishVolumeReque func (m *NodePublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeRequest) ProtoMessage() {} func (*NodePublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{45} + return fileDescriptor_csi_90473d66bc568efe, []int{46} } func (m *NodePublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeRequest.Unmarshal(m, b) @@ -4331,7 +4473,7 @@ func (m *NodePublishVolumeResponse) Reset() { *m = NodePublishVolumeResp func (m *NodePublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeResponse) ProtoMessage() {} func (*NodePublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{46} + return fileDescriptor_csi_90473d66bc568efe, []int{47} } func (m *NodePublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeResponse.Unmarshal(m, b) @@ -4368,7 +4510,7 @@ func (m *NodeUnpublishVolumeRequest) Reset() { *m = NodeUnpublishVolumeR func (m *NodeUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeRequest) ProtoMessage() {} func (*NodeUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{47} + return fileDescriptor_csi_90473d66bc568efe, []int{48} } func (m *NodeUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeRequest.Unmarshal(m, b) @@ -4412,7 +4554,7 @@ func (m *NodeUnpublishVolumeResponse) Reset() { *m = NodeUnpublishVolume func (m *NodeUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeResponse) ProtoMessage() {} func (*NodeUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{48} + return fileDescriptor_csi_90473d66bc568efe, []int{49} } func (m *NodeUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeResponse.Unmarshal(m, b) @@ -4450,7 +4592,7 @@ func (m *NodeGetVolumeStatsRequest) Reset() { *m = NodeGetVolumeStatsReq func (m *NodeGetVolumeStatsRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsRequest) ProtoMessage() {} func (*NodeGetVolumeStatsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{49} + return fileDescriptor_csi_90473d66bc568efe, []int{50} } func (m *NodeGetVolumeStatsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsRequest.Unmarshal(m, b) @@ -4496,7 +4638,7 @@ func (m *NodeGetVolumeStatsResponse) Reset() { *m = NodeGetVolumeStatsRe func (m *NodeGetVolumeStatsResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsResponse) ProtoMessage() {} func (*NodeGetVolumeStatsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{50} + return fileDescriptor_csi_90473d66bc568efe, []int{51} } func (m *NodeGetVolumeStatsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsResponse.Unmarshal(m, b) @@ -4544,7 +4686,7 @@ func (m *VolumeUsage) Reset() { *m = VolumeUsage{} } func (m *VolumeUsage) String() string { return proto.CompactTextString(m) } func (*VolumeUsage) ProtoMessage() {} func (*VolumeUsage) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{51} + return fileDescriptor_csi_90473d66bc568efe, []int{52} } func (m *VolumeUsage) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeUsage.Unmarshal(m, b) @@ -4602,7 +4744,7 @@ func (m *NodeGetCapabilitiesRequest) Reset() { *m = NodeGetCapabilitiesR func (m *NodeGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesRequest) ProtoMessage() {} func (*NodeGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{52} + return fileDescriptor_csi_90473d66bc568efe, []int{53} } func (m *NodeGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesRequest.Unmarshal(m, b) @@ -4635,7 +4777,7 @@ func (m *NodeGetCapabilitiesResponse) Reset() { *m = NodeGetCapabilities func (m *NodeGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesResponse) ProtoMessage() {} func (*NodeGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{53} + return fileDescriptor_csi_90473d66bc568efe, []int{54} } func (m *NodeGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesResponse.Unmarshal(m, b) @@ -4677,7 +4819,7 @@ func (m *NodeServiceCapability) Reset() { *m = NodeServiceCapability{} } func (m *NodeServiceCapability) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability) ProtoMessage() {} func (*NodeServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{54} + return fileDescriptor_csi_90473d66bc568efe, []int{55} } func (m *NodeServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability.Unmarshal(m, b) @@ -4819,7 +4961,7 @@ func (m *NodeServiceCapability_RPC) Reset() { *m = NodeServiceCapability func (m *NodeServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_RPC) ProtoMessage() {} func (*NodeServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{54, 0} + return fileDescriptor_csi_90473d66bc568efe, []int{55, 0} } func (m *NodeServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_RPC.Unmarshal(m, b) @@ -4857,7 +4999,7 @@ func (m *NodeServiceCapability_AlphaFeature) Reset() { *m = NodeServiceC func (m *NodeServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_AlphaFeature) ProtoMessage() {} func (*NodeServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{54, 1} + return fileDescriptor_csi_90473d66bc568efe, []int{55, 1} } func (m *NodeServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_AlphaFeature.Unmarshal(m, b) @@ -4894,7 +5036,7 @@ func (m *NodeGetInfoRequest) Reset() { *m = NodeGetInfoRequest{} } func (m *NodeGetInfoRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoRequest) ProtoMessage() {} func (*NodeGetInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{55} + return fileDescriptor_csi_90473d66bc568efe, []int{56} } func (m *NodeGetInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoRequest.Unmarshal(m, b) @@ -4957,7 +5099,7 @@ func (m *NodeGetInfoResponse) Reset() { *m = NodeGetInfoResponse{} } func (m *NodeGetInfoResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoResponse) ProtoMessage() {} func (*NodeGetInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{56} + return fileDescriptor_csi_90473d66bc568efe, []int{57} } func (m *NodeGetInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoResponse.Unmarshal(m, b) @@ -5019,7 +5161,7 @@ func (m *NodeExpandVolumeRequest) Reset() { *m = NodeExpandVolumeRequest func (m *NodeExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeRequest) ProtoMessage() {} func (*NodeExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{57} + return fileDescriptor_csi_90473d66bc568efe, []int{58} } func (m *NodeExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeRequest.Unmarshal(m, b) @@ -5072,7 +5214,7 @@ func (m *NodeExpandVolumeResponse) Reset() { *m = NodeExpandVolumeRespon func (m *NodeExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeResponse) ProtoMessage() {} func (*NodeExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_2e5460258ec4aed1, []int{58} + return fileDescriptor_csi_90473d66bc568efe, []int{59} } func (m *NodeExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeResponse.Unmarshal(m, b) @@ -5188,6 +5330,8 @@ func init() { proto.RegisterType((*CapacityRange)(nil), "csi.v1.CapacityRange") proto.RegisterType((*Volume)(nil), "csi.v1.Volume") proto.RegisterMapType((map[string]string)(nil), "csi.v1.Volume.VolumeContextEntry") + proto.RegisterType((*Provenance)(nil), "csi.v1.Provenance") + proto.RegisterType((*Provenance_Identity)(nil), "csi.v1.Provenance.Identity") proto.RegisterType((*TopologyRequirement)(nil), "csi.v1.TopologyRequirement") proto.RegisterType((*Topology)(nil), "csi.v1.Topology") proto.RegisterMapType((map[string]string)(nil), "csi.v1.Topology.SegmentsEntry") @@ -5268,6 +5412,7 @@ func init() { proto.RegisterEnum("csi.v1.PluginCapability_VolumeExpansion_Type", PluginCapability_VolumeExpansion_Type_name, PluginCapability_VolumeExpansion_Type_value) proto.RegisterEnum("csi.v1.PluginCapability_AlphaFeature_Type", PluginCapability_AlphaFeature_Type_name, PluginCapability_AlphaFeature_Type_value) proto.RegisterEnum("csi.v1.VolumeCapability_AccessMode_Mode", VolumeCapability_AccessMode_Mode_name, VolumeCapability_AccessMode_Mode_value) + proto.RegisterEnum("csi.v1.Provenance_Identity_Type", Provenance_Identity_Type_name, Provenance_Identity_Type_value) proto.RegisterEnum("csi.v1.ControllerServiceCapability_RPC_Type", ControllerServiceCapability_RPC_Type_name, ControllerServiceCapability_RPC_Type_value) proto.RegisterEnum("csi.v1.ControllerServiceCapability_AlphaFeature_Type", ControllerServiceCapability_AlphaFeature_Type_name, ControllerServiceCapability_AlphaFeature_Type_value) proto.RegisterEnum("csi.v1.ControllerTapeRotationRequest_UpdateStrategy_Scheme", ControllerTapeRotationRequest_UpdateStrategy_Scheme_name, ControllerTapeRotationRequest_UpdateStrategy_Scheme_value) @@ -6177,248 +6322,257 @@ var _Node_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_2e5460258ec4aed1) -} - -var fileDescriptor_csi_2e5460258ec4aed1 = []byte{ - // 3813 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x4d, 0x70, 0xdb, 0x48, - 0x76, 0x26, 0xf8, 0x27, 0xea, 0x49, 0xa2, 0xe9, 0xd6, 0x8f, 0x39, 0x90, 0x64, 0xc9, 0xf0, 0xd8, - 0xab, 0xf1, 0xd8, 0xd4, 0xda, 0xbb, 0x9e, 0xca, 0xc8, 0x9e, 0xdd, 0x25, 0x29, 0x4a, 0xe2, 0x98, - 0x26, 0x65, 0x90, 0x94, 0xc7, 0x4e, 0xa6, 0x30, 0x10, 0xd9, 0xa2, 0x50, 0x43, 0x02, 0x5c, 0x00, - 0xd4, 0x58, 0xb9, 0xa4, 0x36, 0xa9, 0x4a, 0x55, 0x2a, 0xe7, 0x54, 0x92, 0x53, 0x52, 0x9b, 0xbd, - 0x24, 0x95, 0x3d, 0xe4, 0x90, 0xca, 0x31, 0x5b, 0x39, 0xe6, 0x90, 0x63, 0x92, 0xda, 0xcb, 0x5e, - 0x52, 0x39, 0x6c, 0x25, 0x55, 0x7b, 0xce, 0x29, 0x85, 0xee, 0x06, 0x08, 0x80, 0x20, 0x48, 0x5a, - 0x76, 0xcd, 0x61, 0x4f, 0x22, 0x5e, 0xbf, 0x7e, 0xfd, 0xba, 0xfb, 0xbd, 0xd7, 0xef, 0x7d, 0xdd, - 0x82, 0xc7, 0x1d, 0xc5, 0x3c, 0x1f, 0x9c, 0xe6, 0x5a, 0x5a, 0x6f, 0xb7, 0xa5, 0xa9, 0xa6, 0xac, - 0xa8, 0x58, 0x7f, 0x60, 0x98, 0x9a, 0x2e, 0x77, 0xf0, 0x03, 0x45, 0x35, 0xb1, 0x7e, 0x26, 0xb7, - 0xf0, 0xae, 0xd1, 0xc7, 0xad, 0xdd, 0x96, 0xa1, 0xe4, 0xfa, 0xba, 0x66, 0x6a, 0x28, 0x69, 0xfd, - 0xbc, 0x78, 0xc8, 0x6f, 0x77, 0x34, 0xad, 0xd3, 0xc5, 0xbb, 0x84, 0x7a, 0x3a, 0x38, 0xdb, 0x6d, - 0x63, 0xa3, 0xa5, 0x2b, 0x7d, 0x53, 0xd3, 0x29, 0x27, 0xbf, 0xe5, 0xe7, 0x30, 0x95, 0x1e, 0x36, - 0x4c, 0xb9, 0xd7, 0x67, 0x0c, 0x37, 0xfd, 0x0c, 0xdf, 0xe8, 0x72, 0xbf, 0x8f, 0x75, 0x83, 0xb6, - 0x0b, 0x6b, 0xb0, 0x72, 0x88, 0xcd, 0xe3, 0xee, 0xa0, 0xa3, 0xa8, 0x65, 0xf5, 0x4c, 0x13, 0xf1, - 0x8f, 0x07, 0xd8, 0x30, 0x85, 0xff, 0xe4, 0x60, 0xd5, 0xd7, 0x60, 0xf4, 0x35, 0xd5, 0xc0, 0x08, - 0x41, 0x5c, 0x95, 0x7b, 0x38, 0xcb, 0x6d, 0x73, 0x3b, 0xf3, 0x22, 0xf9, 0x8d, 0xee, 0x40, 0xfa, - 0x02, 0xab, 0x6d, 0x4d, 0x97, 0x2e, 0xb0, 0x6e, 0x28, 0x9a, 0x9a, 0x8d, 0x92, 0xd6, 0x25, 0x4a, - 0x3d, 0xa1, 0x44, 0x74, 0x08, 0xa9, 0x9e, 0xac, 0x2a, 0x67, 0xd8, 0x30, 0xb3, 0xb1, 0xed, 0xd8, - 0xce, 0xc2, 0xa3, 0x8f, 0x73, 0x74, 0xaa, 0xb9, 0xc0, 0xb1, 0x72, 0xcf, 0x19, 0x77, 0x49, 0x35, - 0xf5, 0x4b, 0xd1, 0xe9, 0xcc, 0x3f, 0x81, 0x25, 0x4f, 0x13, 0xca, 0x40, 0xec, 0x6b, 0x7c, 0xc9, - 0x74, 0xb2, 0x7e, 0xa2, 0x15, 0x48, 0x5c, 0xc8, 0xdd, 0x01, 0x66, 0x9a, 0xd0, 0x8f, 0xbd, 0xe8, - 0xef, 0x70, 0xc2, 0x4d, 0xd8, 0x70, 0x46, 0x2b, 0xca, 0x7d, 0xf9, 0x54, 0xe9, 0x2a, 0xa6, 0x82, - 0x0d, 0x7b, 0xea, 0x5f, 0xc2, 0xe6, 0x98, 0x76, 0xb6, 0x02, 0x4f, 0x61, 0xb1, 0xe5, 0xa2, 0x67, - 0x39, 0x32, 0x95, 0xac, 0x3d, 0x15, 0x5f, 0xcf, 0x4b, 0xd1, 0xc3, 0x2d, 0xfc, 0x24, 0x01, 0x19, - 0x3f, 0x0b, 0x7a, 0x0a, 0x73, 0x06, 0xd6, 0x2f, 0x94, 0x16, 0x5d, 0xd7, 0x85, 0x47, 0xdb, 0xe3, - 0xa4, 0xe5, 0xea, 0x94, 0xef, 0x28, 0x22, 0xda, 0x5d, 0x50, 0x13, 0x32, 0x17, 0x5a, 0x77, 0xd0, - 0xc3, 0x12, 0x7e, 0xd3, 0x97, 0x55, 0x67, 0x03, 0x16, 0x1e, 0xed, 0x8c, 0x15, 0x73, 0x42, 0x3a, - 0x94, 0x6c, 0xfe, 0xa3, 0x88, 0x78, 0xed, 0xc2, 0x4b, 0x42, 0x15, 0x58, 0x92, 0xbb, 0xfd, 0x73, - 0x59, 0x3a, 0xc3, 0xb2, 0x39, 0xd0, 0x71, 0x36, 0x46, 0x64, 0xde, 0x19, 0x2b, 0x33, 0x6f, 0x71, - 0x1f, 0x50, 0xe6, 0xa3, 0x88, 0xb8, 0x28, 0xbb, 0xbe, 0xf9, 0x3f, 0xe7, 0x60, 0x8e, 0xe9, 0x8e, - 0x3e, 0x85, 0xb8, 0x79, 0xd9, 0xa7, 0x73, 0x4d, 0x87, 0x08, 0x64, 0xfc, 0xb9, 0xc6, 0x65, 0x1f, - 0x8b, 0xa4, 0x8b, 0xf0, 0x02, 0xe2, 0xd6, 0x17, 0x5a, 0x80, 0xb9, 0x66, 0xf5, 0x59, 0xb5, 0xf6, - 0xb2, 0x9a, 0x89, 0xa0, 0x35, 0x40, 0xc5, 0x5a, 0xb5, 0x21, 0xd6, 0x2a, 0x95, 0x92, 0x28, 0xd5, - 0x4b, 0xe2, 0x49, 0xb9, 0x58, 0xca, 0x70, 0xe8, 0x43, 0xd8, 0x3e, 0xa9, 0x55, 0x9a, 0xcf, 0x4b, - 0x52, 0xbe, 0x58, 0x2c, 0xd5, 0xeb, 0xe5, 0x42, 0xb9, 0x52, 0x6e, 0xbc, 0x92, 0x8a, 0xb5, 0x6a, - 0xbd, 0x21, 0xe6, 0xcb, 0xd5, 0x46, 0x3d, 0x13, 0xe5, 0xff, 0x90, 0x83, 0x6b, 0xbe, 0xe5, 0x40, - 0x79, 0x8f, 0x86, 0x0f, 0xa6, 0x5d, 0x46, 0xb7, 0xa6, 0xf7, 0x83, 0x34, 0x05, 0x48, 0xd6, 0xaa, - 0x95, 0x72, 0xd5, 0xd2, 0x6e, 0x01, 0xe6, 0x6a, 0x07, 0x07, 0xe4, 0x23, 0xca, 0xb7, 0x60, 0xd1, - 0xbd, 0x7c, 0xe8, 0x07, 0x1e, 0x05, 0xee, 0x4d, 0xb5, 0xe6, 0xee, 0xd1, 0x97, 0x03, 0x46, 0x2f, - 0x24, 0xa9, 0x50, 0x21, 0x0d, 0x8b, 0xc7, 0xba, 0x76, 0x8a, 0x6d, 0x93, 0xcf, 0xc3, 0x12, 0xfb, - 0x66, 0x26, 0xfe, 0x5d, 0x48, 0xe8, 0x58, 0x6e, 0x5f, 0x32, 0x6b, 0xe4, 0x73, 0x34, 0x8c, 0xe4, - 0xec, 0x30, 0x92, 0x2b, 0x68, 0x5a, 0xf7, 0xc4, 0x72, 0x29, 0x91, 0x32, 0x0a, 0xbf, 0x89, 0xc3, - 0x72, 0x51, 0xc7, 0xb2, 0x89, 0xe9, 0x92, 0x30, 0xd1, 0x81, 0xe1, 0xe2, 0x29, 0xa4, 0x2d, 0x97, - 0x68, 0x29, 0xe6, 0xa5, 0xa4, 0xcb, 0x6a, 0x07, 0x33, 0x6b, 0x5d, 0xb5, 0x67, 0x59, 0x64, 0xad, - 0xa2, 0xd5, 0x28, 0x2e, 0xb5, 0xdc, 0x9f, 0xa8, 0x0c, 0xcb, 0xcc, 0xda, 0x3d, 0x5e, 0x18, 0xf3, - 0x7a, 0x21, 0xd5, 0xc2, 0xe5, 0x85, 0xe8, 0xc2, 0x4b, 0x51, 0xb0, 0x81, 0x9e, 0x01, 0xf4, 0x65, - 0x5d, 0xee, 0x61, 0x13, 0xeb, 0x46, 0x36, 0xee, 0x0d, 0x49, 0x01, 0xb3, 0xc9, 0x1d, 0x3b, 0xdc, - 0x34, 0x24, 0xb9, 0xba, 0xa3, 0x43, 0xcb, 0x87, 0x5b, 0x3a, 0x36, 0x8d, 0x6c, 0x82, 0x48, 0xda, - 0x09, 0x93, 0x54, 0xa7, 0xac, 0x44, 0x4c, 0x21, 0xf6, 0x17, 0x05, 0x4e, 0xb4, 0x7b, 0xa3, 0x1a, - 0xac, 0xda, 0x13, 0xd4, 0x54, 0x13, 0xab, 0xa6, 0x64, 0x68, 0x03, 0xbd, 0x85, 0xb3, 0x49, 0xb2, - 0x4a, 0xeb, 0xbe, 0x29, 0x52, 0x9e, 0x3a, 0x61, 0x11, 0xd9, 0xd2, 0x78, 0x88, 0xe8, 0x35, 0xf0, - 0x72, 0xab, 0x85, 0x0d, 0x43, 0xa1, 0x6b, 0x21, 0xe9, 0xf8, 0xc7, 0x03, 0x45, 0xc7, 0x3d, 0xac, - 0x9a, 0x46, 0x76, 0xce, 0x2b, 0xb5, 0xa1, 0xf5, 0xb5, 0xae, 0xd6, 0xb9, 0x14, 0x87, 0x3c, 0xe2, - 0x07, 0x9e, 0xee, 0xae, 0x16, 0x83, 0xff, 0x0c, 0xae, 0xf9, 0x16, 0x65, 0x96, 0x60, 0xcc, 0xef, - 0xc1, 0xa2, 0x7b, 0x25, 0x66, 0x0a, 0xe4, 0x7f, 0x1a, 0x85, 0xe5, 0x80, 0x35, 0x40, 0x47, 0x90, - 0x32, 0x54, 0xb9, 0x6f, 0x9c, 0x6b, 0x26, 0xb3, 0xdf, 0x7b, 0x21, 0x4b, 0x96, 0xab, 0x33, 0x5e, - 0xfa, 0x79, 0x14, 0x11, 0x9d, 0xde, 0xa8, 0x00, 0x49, 0xba, 0x9e, 0xfe, 0x70, 0x1a, 0x24, 0x87, - 0xd2, 0x1c, 0x29, 0xac, 0x27, 0xff, 0x10, 0xd2, 0xde, 0x11, 0xd0, 0x16, 0x2c, 0xd8, 0x23, 0x48, - 0x4a, 0x9b, 0xcd, 0x15, 0x6c, 0x52, 0xb9, 0xcd, 0x7f, 0x0c, 0x8b, 0x6e, 0x61, 0x68, 0x1d, 0xe6, - 0x99, 0x41, 0x38, 0xec, 0x29, 0x4a, 0x28, 0xb7, 0x1d, 0x9f, 0xfe, 0x01, 0xac, 0x78, 0xed, 0x8c, - 0xb9, 0xf2, 0x5d, 0x67, 0x0e, 0x74, 0x2d, 0xd2, 0xde, 0x39, 0xd8, 0x7a, 0x0a, 0x7f, 0x17, 0x87, - 0x8c, 0xdf, 0x69, 0xd0, 0x53, 0x48, 0x9c, 0x76, 0xb5, 0xd6, 0xd7, 0xac, 0xef, 0x87, 0xe3, 0xbc, - 0x2b, 0x57, 0xb0, 0xb8, 0x28, 0xf5, 0x28, 0x22, 0xd2, 0x4e, 0x56, 0xef, 0x9e, 0x36, 0x50, 0x4d, - 0xb6, 0x7a, 0xe3, 0x7b, 0x3f, 0xb7, 0xb8, 0x86, 0xbd, 0x49, 0x27, 0xb4, 0x0f, 0x0b, 0xd4, 0xec, - 0xa4, 0x9e, 0xd6, 0xb6, 0x0f, 0x9f, 0xdb, 0x63, 0x65, 0xe4, 0x09, 0xef, 0x73, 0xad, 0x8d, 0x45, - 0x90, 0x9d, 0xdf, 0xfc, 0x12, 0x2c, 0xb8, 0x74, 0xe3, 0x0f, 0x61, 0xc1, 0x35, 0x18, 0xba, 0x01, - 0x73, 0x67, 0x86, 0xe4, 0x04, 0xda, 0x79, 0x31, 0x79, 0x66, 0x90, 0xb0, 0xb9, 0x05, 0x0b, 0x44, - 0x0b, 0xe9, 0xac, 0x2b, 0x77, 0x8c, 0x6c, 0x74, 0x3b, 0x66, 0xed, 0x11, 0x21, 0x1d, 0x58, 0x14, - 0xfe, 0x7f, 0x38, 0x80, 0xe1, 0x90, 0xe8, 0x29, 0xc4, 0x89, 0x96, 0x34, 0x5c, 0xef, 0x4c, 0xa1, - 0x65, 0x8e, 0xa8, 0x4a, 0x7a, 0x09, 0x7f, 0xc5, 0x41, 0x9c, 0x88, 0xf1, 0x9f, 0x6a, 0xf5, 0x72, - 0xf5, 0xb0, 0x52, 0x92, 0xaa, 0xb5, 0xfd, 0x92, 0xf4, 0x52, 0x2c, 0x37, 0x4a, 0x62, 0x86, 0x43, - 0xeb, 0x70, 0xc3, 0x4d, 0x17, 0x4b, 0xf9, 0xfd, 0x92, 0x28, 0xd5, 0xaa, 0x95, 0x57, 0x99, 0x28, - 0xe2, 0x61, 0xed, 0x79, 0xb3, 0xd2, 0x28, 0x8f, 0xb6, 0xc5, 0xd0, 0x06, 0x64, 0x5d, 0x6d, 0x4c, - 0x06, 0x13, 0x1b, 0xb7, 0xc4, 0xba, 0x5a, 0xe9, 0x4f, 0xd6, 0x98, 0x28, 0x2c, 0x39, 0x9b, 0x41, - 0x8c, 0xed, 0x25, 0x2c, 0x79, 0x62, 0xb4, 0x95, 0x01, 0xb2, 0xa0, 0xd2, 0x96, 0x4e, 0x2f, 0x4d, - 0x92, 0x15, 0x71, 0x3b, 0x31, 0x71, 0xc9, 0xa6, 0x16, 0x2c, 0xa2, 0xb5, 0xac, 0x5d, 0xa5, 0xa7, - 0x98, 0x8c, 0x27, 0x4a, 0x78, 0x80, 0x90, 0x08, 0x83, 0xf0, 0xab, 0x28, 0x24, 0xd9, 0xde, 0xdc, - 0x71, 0x9d, 0x12, 0x1e, 0x91, 0x36, 0x95, 0x8a, 0xf4, 0x38, 0x47, 0xd4, 0xeb, 0x1c, 0xe8, 0x08, - 0xd2, 0xee, 0x50, 0xfa, 0xc6, 0xce, 0x3b, 0x6f, 0x79, 0x37, 0xc8, 0xed, 0xcf, 0x6f, 0x58, 0xb6, - 0xb9, 0x74, 0xe1, 0xa6, 0xa1, 0x02, 0xa4, 0x7d, 0xd1, 0x38, 0x3e, 0x39, 0x1a, 0x2f, 0xb5, 0x3c, - 0x81, 0x29, 0x0f, 0xcb, 0x76, 0x20, 0xed, 0x62, 0xc9, 0x64, 0x81, 0x96, 0x9d, 0x16, 0x99, 0x91, - 0x00, 0x8c, 0x86, 0xcc, 0x36, 0x8d, 0xff, 0x11, 0xa0, 0x51, 0x5d, 0x67, 0x8a, 0x9a, 0x03, 0x58, - 0x0e, 0x08, 0xf1, 0x28, 0x07, 0xf3, 0x64, 0xab, 0x0c, 0xc5, 0xc4, 0x2c, 0xa3, 0x1d, 0xd5, 0x68, - 0xc8, 0x62, 0xf1, 0xf7, 0x75, 0x7c, 0x86, 0x75, 0x1d, 0xb7, 0x89, 0x7b, 0x04, 0xf2, 0x3b, 0x2c, - 0xc2, 0x1f, 0x71, 0x90, 0xb2, 0xe9, 0x68, 0x0f, 0x52, 0x06, 0xee, 0xd0, 0xe3, 0x87, 0x8e, 0x75, - 0xd3, 0xdf, 0x37, 0x57, 0x67, 0x0c, 0x2c, 0xf7, 0xb7, 0xf9, 0xad, 0xdc, 0xdf, 0xd3, 0x34, 0xd3, - 0xe4, 0xff, 0x89, 0x83, 0xe5, 0x7d, 0xdc, 0xc5, 0xfe, 0x2c, 0x25, 0x2c, 0xc2, 0xba, 0x0f, 0xf6, - 0xa8, 0xf7, 0x60, 0x0f, 0x10, 0x15, 0x72, 0xb0, 0x5f, 0xe9, 0xb0, 0x5b, 0x83, 0x15, 0xef, 0x68, - 0x34, 0xbc, 0x0b, 0xff, 0x1b, 0x83, 0x9b, 0x96, 0x2d, 0xe8, 0x5a, 0xb7, 0x8b, 0xf5, 0xe3, 0xc1, - 0x69, 0x57, 0x31, 0xce, 0x67, 0x98, 0xdc, 0x0d, 0x98, 0x53, 0xb5, 0xb6, 0xcb, 0x79, 0x92, 0xd6, - 0x67, 0xb9, 0x8d, 0x4a, 0x70, 0xdd, 0x9f, 0x66, 0x5d, 0xb2, 0x20, 0x3c, 0x3e, 0xc9, 0xca, 0x5c, - 0xf8, 0x4f, 0x10, 0x1e, 0x52, 0x56, 0x82, 0xa8, 0xa9, 0xdd, 0x4b, 0xe2, 0x31, 0x29, 0xd1, 0xf9, - 0x46, 0xa2, 0x3f, 0x63, 0xfa, 0x9e, 0x93, 0x31, 0x85, 0xce, 0x28, 0x2c, 0x79, 0xfa, 0x6a, 0xc4, - 0xe3, 0x93, 0x44, 0xf4, 0xa7, 0x53, 0x8a, 0x9e, 0x18, 0x09, 0xae, 0xb2, 0x8b, 0xef, 0xc0, 0x7d, - 0xff, 0x95, 0x83, 0xad, 0xb1, 0x53, 0x60, 0x47, 0x7e, 0x1b, 0xae, 0xf5, 0x69, 0x83, 0xb3, 0x08, - 0xd4, 0xcb, 0x9e, 0x4c, 0x5c, 0x04, 0x56, 0x78, 0x33, 0xaa, 0x67, 0x19, 0xd2, 0x7d, 0x0f, 0x91, - 0xcf, 0xc3, 0x72, 0x00, 0xdb, 0x4c, 0x93, 0xf9, 0x35, 0x07, 0xdb, 0x43, 0x55, 0x9a, 0x6a, 0xff, - 0xdd, 0x99, 0x6f, 0x63, 0x68, 0x5b, 0x34, 0xe4, 0x3f, 0x1e, 0x9d, 0x7b, 0xf0, 0x80, 0xef, 0xcb, - 0x83, 0x6f, 0xc3, 0xad, 0x90, 0xa1, 0x99, 0x3b, 0xff, 0x2a, 0x0e, 0xb7, 0x4e, 0xe4, 0xae, 0xd2, - 0x76, 0x12, 0xb9, 0x00, 0x88, 0x22, 0x7c, 0x49, 0x5a, 0x23, 0x1e, 0x40, 0xa3, 0xd6, 0x53, 0xc7, - 0x6b, 0x27, 0xc9, 0x9f, 0xe2, 0x38, 0x7c, 0x87, 0x45, 0xd8, 0xab, 0x80, 0x22, 0xec, 0xd3, 0xe9, - 0x75, 0x0d, 0x2b, 0xc9, 0x9a, 0xfe, 0x00, 0xf3, 0xc9, 0xf4, 0x72, 0x43, 0xac, 0xe0, 0xca, 0x5e, - 0xfc, 0x6d, 0x56, 0x4d, 0xff, 0x12, 0x07, 0x21, 0x6c, 0xf6, 0x2c, 0x86, 0x88, 0x30, 0xdf, 0xd2, - 0xd4, 0x33, 0x45, 0xef, 0xe1, 0x36, 0xcb, 0xfe, 0xbf, 0x3f, 0xcd, 0xe2, 0xb1, 0x00, 0x52, 0xb4, - 0xfb, 0x8a, 0x43, 0x31, 0x28, 0x0b, 0x73, 0x3d, 0x6c, 0x18, 0x72, 0xc7, 0x56, 0xcb, 0xfe, 0xe4, - 0x7f, 0x1e, 0x83, 0x79, 0xa7, 0x0b, 0x52, 0x47, 0x2c, 0x98, 0x86, 0xaf, 0xc3, 0xb7, 0x51, 0xe0, - 0xed, 0x8d, 0x39, 0xfa, 0x16, 0xc6, 0xdc, 0xf6, 0x18, 0x33, 0x75, 0x87, 0xfd, 0xb7, 0x52, 0x3b, - 0xc4, 0xae, 0xbf, 0x75, 0x03, 0x14, 0x7e, 0x0f, 0x50, 0x45, 0x31, 0x58, 0x15, 0xe5, 0x84, 0x25, - 0xab, 0x68, 0x92, 0xdf, 0x48, 0x58, 0x35, 0x75, 0x85, 0xa5, 0xeb, 0x09, 0x11, 0x7a, 0xf2, 0x9b, - 0x12, 0xa5, 0x58, 0x29, 0xbd, 0x61, 0xca, 0xba, 0xa9, 0xa8, 0x1d, 0xc9, 0xd4, 0xbe, 0xc6, 0x0e, - 0x4e, 0x6c, 0x53, 0x1b, 0x16, 0x51, 0xf8, 0x29, 0x07, 0xcb, 0x1e, 0xf1, 0xcc, 0x26, 0x9f, 0xc0, - 0xdc, 0x50, 0xb6, 0x27, 0x8d, 0x0f, 0xe0, 0xce, 0xd1, 0x65, 0xb3, 0x7b, 0xa0, 0x4d, 0x00, 0x15, - 0xbf, 0x31, 0x3d, 0xe3, 0xce, 0x5b, 0x14, 0x32, 0x26, 0xbf, 0x0b, 0x09, 0xba, 0x0c, 0xd3, 0xd6, - 0xcb, 0x3f, 0x8f, 0x02, 0x3a, 0xc4, 0xa6, 0x53, 0x06, 0xb1, 0x35, 0x18, 0x63, 0x4b, 0xdc, 0x5b, - 0xd8, 0xd2, 0xe7, 0x1e, 0x5b, 0xa2, 0xd6, 0x78, 0xcf, 0x05, 0x98, 0xfb, 0x86, 0x0e, 0x8d, 0x84, - 0x63, 0x4a, 0x0f, 0x9a, 0xcf, 0x4d, 0x57, 0x7a, 0x5c, 0xd1, 0x64, 0xf6, 0x61, 0xd9, 0xa3, 0x33, - 0xdb, 0xd3, 0x07, 0x80, 0xe4, 0x0b, 0x59, 0xe9, 0xca, 0x96, 0x5e, 0x76, 0x65, 0xc7, 0x2a, 0xbd, - 0xeb, 0x4e, 0x8b, 0xdd, 0x4d, 0x10, 0xdc, 0x09, 0x03, 0x93, 0xe7, 0x07, 0xf0, 0xbb, 0xee, 0x83, - 0x76, 0x84, 0x87, 0x8d, 0x7b, 0x18, 0x08, 0xe2, 0xdf, 0x1e, 0x4d, 0x12, 0x18, 0x06, 0x3d, 0x16, - 0xcf, 0xff, 0xef, 0x38, 0xac, 0x87, 0x70, 0xa3, 0x27, 0x10, 0xd3, 0xfb, 0x2d, 0x66, 0x4c, 0xdf, - 0x99, 0x42, 0x7e, 0x4e, 0x3c, 0x2e, 0x1e, 0x45, 0x44, 0xab, 0x17, 0x7a, 0xe9, 0x87, 0xe0, 0x29, - 0x92, 0xf2, 0xdd, 0x69, 0xc4, 0x84, 0xa2, 0xf1, 0x3f, 0x8b, 0x42, 0x4c, 0x3c, 0x2e, 0xa2, 0x1f, - 0x79, 0x60, 0xe6, 0xfb, 0x53, 0xaa, 0xe7, 0x06, 0x9a, 0x7f, 0xc9, 0x05, 0xe1, 0xdc, 0x59, 0x58, - 0x29, 0x8a, 0xa5, 0x7c, 0xa3, 0x24, 0xed, 0x97, 0x2a, 0xa5, 0x46, 0x49, 0xa2, 0x38, 0x7c, 0x86, - 0x43, 0x1b, 0x90, 0x3d, 0x6e, 0x16, 0x2a, 0xe5, 0xfa, 0x91, 0xd4, 0xac, 0xda, 0xbf, 0x58, 0x6b, - 0x14, 0x65, 0x60, 0xb1, 0x52, 0xae, 0x37, 0x18, 0xa1, 0x9e, 0x89, 0x59, 0x94, 0xc3, 0x52, 0x43, - 0x2a, 0xe6, 0x8f, 0xf3, 0xc5, 0x72, 0xe3, 0x55, 0x26, 0x8e, 0x78, 0x58, 0xf3, 0xca, 0xae, 0x57, - 0xf3, 0xc7, 0xf5, 0xa3, 0x5a, 0x23, 0x93, 0x40, 0x08, 0xd2, 0xa4, 0xbf, 0x4d, 0xaa, 0x67, 0x92, - 0x96, 0x84, 0x62, 0xa5, 0x56, 0x75, 0x74, 0x98, 0x43, 0x2b, 0x90, 0xb1, 0x47, 0x16, 0x4b, 0xf9, - 0x7d, 0x02, 0x8f, 0xa4, 0xd0, 0x75, 0x58, 0x2a, 0x7d, 0x71, 0x9c, 0xaf, 0xee, 0xdb, 0x8c, 0xf3, - 0xfc, 0x4f, 0x38, 0x1f, 0x2c, 0x5f, 0xf6, 0xac, 0xd7, 0xe3, 0x59, 0xf7, 0xc1, 0xbd, 0x70, 0x77, - 0x83, 0xd6, 0xed, 0x3a, 0x2c, 0x35, 0xf2, 0xc7, 0x25, 0x49, 0xac, 0x35, 0xf2, 0x8d, 0x72, 0xad, - 0x9a, 0xe1, 0x1c, 0x80, 0xef, 0xd7, 0x51, 0x58, 0xa5, 0x08, 0x9f, 0x8d, 0x27, 0xda, 0x31, 0x67, - 0x07, 0x32, 0x14, 0x93, 0x90, 0xfc, 0x59, 0x61, 0x9a, 0xd2, 0x4f, 0xec, 0xdc, 0xd0, 0x46, 0xe3, - 0xa3, 0x2e, 0x34, 0xbe, 0xec, 0xcf, 0x94, 0xef, 0x79, 0x71, 0x6b, 0xdf, 0x68, 0x61, 0xc5, 0xd7, - 0xf3, 0x80, 0x54, 0xee, 0x41, 0xb8, 0xb4, 0xb0, 0x63, 0xee, 0x2a, 0x95, 0xd6, 0x15, 0xa3, 0xd5, - 0x01, 0xac, 0xf9, 0xf5, 0x65, 0x81, 0xe3, 0xfe, 0x08, 0xba, 0xec, 0x84, 0x4f, 0x87, 0xd7, 0xe1, - 0x10, 0xfe, 0x83, 0x83, 0x94, 0x4d, 0xb6, 0x8e, 0x20, 0x43, 0xf9, 0x7d, 0xec, 0x41, 0xb3, 0xe6, - 0x2d, 0x8a, 0x03, 0x8e, 0xb9, 0x71, 0xe1, 0xa8, 0x1f, 0x17, 0x0e, 0xdc, 0xe7, 0x58, 0xe0, 0x3e, - 0xff, 0x10, 0x96, 0x5a, 0x96, 0xfa, 0x8a, 0xa6, 0x4a, 0xa6, 0xd2, 0xb3, 0xc1, 0xaa, 0xd1, 0x7b, - 0x9c, 0x86, 0x7d, 0x5f, 0x2c, 0x2e, 0xda, 0x1d, 0x2c, 0x12, 0xda, 0x86, 0x45, 0x72, 0xaf, 0x23, - 0x99, 0x9a, 0x34, 0x30, 0x70, 0x36, 0x41, 0x4a, 0x77, 0x20, 0xb4, 0x86, 0xd6, 0x34, 0xb0, 0xf0, - 0xcf, 0x1c, 0xac, 0x52, 0x44, 0xc2, 0x6f, 0x8e, 0x93, 0xf0, 0x6d, 0xb7, 0xc5, 0xf9, 0x4e, 0xb5, - 0x40, 0x81, 0xef, 0xab, 0x20, 0xcb, 0xc2, 0x9a, 0x7f, 0x3c, 0x56, 0x85, 0xfd, 0x2d, 0x07, 0x2b, - 0x56, 0x4a, 0x61, 0x37, 0xbc, 0xeb, 0x0c, 0x67, 0x86, 0x9d, 0xf4, 0x2d, 0x66, 0xdc, 0xbf, 0x98, - 0xc2, 0xdf, 0x73, 0xb0, 0xea, 0xd3, 0x95, 0x59, 0xea, 0x67, 0xfe, 0x74, 0xe9, 0xb6, 0x3b, 0x5d, - 0x1a, 0xe1, 0x9f, 0x31, 0x61, 0x7a, 0x6c, 0x27, 0x4c, 0xb3, 0x39, 0xc4, 0x9f, 0x44, 0x61, 0x73, - 0x18, 0x2d, 0xc9, 0xc5, 0x69, 0x7b, 0x86, 0x7a, 0xff, 0x6a, 0x57, 0x87, 0x2f, 0xfc, 0xa1, 0xee, - 0xd1, 0x68, 0x00, 0x0f, 0x50, 0xe9, 0x7d, 0x19, 0xe0, 0x1f, 0xb8, 0xa1, 0x3b, 0xef, 0xb8, 0x6c, - 0x0b, 0xa7, 0xc4, 0xc0, 0x3f, 0x81, 0x1b, 0x04, 0x05, 0x71, 0xae, 0xff, 0xed, 0x1b, 0x3e, 0x1a, - 0x45, 0x52, 0xe2, 0xaa, 0xd5, 0xec, 0xdc, 0x52, 0x33, 0xdc, 0xb7, 0x2d, 0xfc, 0x97, 0x67, 0x33, - 0x1a, 0x72, 0x1f, 0x8b, 0x9a, 0x49, 0x82, 0x80, 0xbd, 0x19, 0x12, 0x5c, 0x1b, 0xf4, 0xad, 0x9a, - 0x45, 0x32, 0x4c, 0x5d, 0x36, 0x71, 0xe7, 0xd2, 0x5f, 0x0c, 0x86, 0xf6, 0xcf, 0x35, 0x49, 0xe7, - 0x3a, 0xeb, 0x7b, 0x14, 0x11, 0xd3, 0x03, 0x0f, 0x05, 0x6d, 0x01, 0xe8, 0x56, 0x1f, 0x2c, 0xa9, - 0xda, 0x37, 0x54, 0xdb, 0xa3, 0x88, 0x38, 0x4f, 0x69, 0x55, 0xed, 0x1b, 0xfe, 0x1f, 0x38, 0x48, - 0x7b, 0xa5, 0xa0, 0x3a, 0x24, 0x8d, 0xd6, 0x39, 0xee, 0xd9, 0xc7, 0xf0, 0x93, 0xb7, 0xd1, 0x25, - 0x57, 0x27, 0x22, 0x44, 0x26, 0x4a, 0xf8, 0x1c, 0x92, 0x94, 0xe2, 0x3d, 0x90, 0x53, 0x10, 0x3f, - 0x28, 0x1f, 0xd4, 0x32, 0x1c, 0x9a, 0x83, 0xd8, 0xe1, 0x41, 0x3d, 0x13, 0x45, 0x8b, 0x90, 0xaa, - 0x97, 0xbf, 0x90, 0xac, 0x73, 0x3a, 0x13, 0xb3, 0x32, 0x8e, 0x46, 0xed, 0x65, 0x49, 0x94, 0x6a, - 0x07, 0xd2, 0x51, 0xbe, 0x5a, 0x2b, 0x67, 0xe2, 0x7b, 0xb1, 0xbf, 0x2e, 0x70, 0x85, 0x14, 0x24, - 0xe5, 0x96, 0x35, 0xbe, 0xf0, 0x8b, 0xa8, 0x7b, 0xa3, 0xbd, 0xaa, 0xb1, 0x8d, 0xae, 0xc2, 0x6a, - 0x57, 0x36, 0x4c, 0x49, 0x67, 0x0d, 0x92, 0x31, 0x20, 0x19, 0xf8, 0xd8, 0x0b, 0xf8, 0x61, 0xe0, - 0x5e, 0xb6, 0x3a, 0xda, 0x02, 0xeb, 0xb4, 0xdb, 0xa8, 0xbc, 0x33, 0x59, 0xe9, 0x0e, 0x13, 0xc8, - 0xa9, 0xe5, 0x1d, 0xd0, 0x6e, 0x68, 0x17, 0x96, 0x99, 0x46, 0xca, 0x05, 0xb6, 0x85, 0x19, 0x24, - 0x66, 0x25, 0x44, 0x34, 0x6c, 0x62, 0xfc, 0x06, 0x3a, 0x02, 0x44, 0xa2, 0x87, 0xa3, 0xc0, 0x94, - 0xc7, 0x50, 0xc6, 0xea, 0x65, 0x8f, 0x6e, 0x91, 0xc9, 0x62, 0x0a, 0xbf, 0x89, 0xc3, 0x5a, 0x55, - 0x6b, 0xe3, 0xba, 0x29, 0x77, 0x66, 0xc1, 0xee, 0x7f, 0x77, 0x14, 0x0a, 0x8d, 0x7a, 0x3d, 0x3f, - 0x58, 0xea, 0x34, 0x08, 0x28, 0xca, 0xc1, 0xb2, 0x61, 0xca, 0x1d, 0x12, 0xeb, 0x65, 0xbd, 0x83, - 0x4d, 0xa9, 0x2f, 0x9b, 0xe7, 0x2c, 0x90, 0x5f, 0x67, 0x4d, 0x0d, 0xd2, 0x72, 0x2c, 0x9b, 0xe7, - 0xc1, 0x90, 0x7a, 0x7c, 0x66, 0x48, 0xfd, 0x73, 0x3f, 0xaa, 0xf5, 0xf1, 0x84, 0xb9, 0x84, 0x64, - 0x6c, 0x5f, 0x8c, 0x81, 0xcb, 0x1f, 0x4e, 0x10, 0x39, 0x19, 0x26, 0xbf, 0x3a, 0x3c, 0xfc, 0x2d, - 0x23, 0xed, 0x1f, 0xc0, 0x8d, 0x91, 0xc9, 0xb3, 0xfc, 0xa0, 0x03, 0x59, 0xab, 0xa9, 0xa9, 0x1a, - 0x33, 0x9a, 0xe3, 0x18, 0x8b, 0x89, 0x8e, 0xb1, 0x18, 0x61, 0x1d, 0x3e, 0x08, 0x18, 0x88, 0x69, - 0xf1, 0x8f, 0x09, 0xaa, 0xc6, 0xec, 0x97, 0x3e, 0x5f, 0x8e, 0xf3, 0x8a, 0xef, 0xbb, 0xb7, 0x3d, - 0xf0, 0x7e, 0xe4, 0x7d, 0xf8, 0xc5, 0x16, 0x2c, 0xb8, 0xf9, 0x58, 0x8e, 0x63, 0x4e, 0x70, 0x9c, - 0xc4, 0x95, 0xee, 0xa2, 0x92, 0xbe, 0xbb, 0xa8, 0xca, 0xd0, 0xa9, 0xe6, 0xbc, 0x75, 0xcb, 0xd8, - 0xa5, 0x08, 0x71, 0xab, 0xd7, 0x23, 0x6e, 0x95, 0xf2, 0x5e, 0x70, 0x8d, 0x15, 0xfa, 0x5b, 0xe0, - 0x58, 0xcc, 0xa8, 0x03, 0x6f, 0x9e, 0x84, 0xd7, 0xc0, 0x53, 0x8b, 0x9f, 0xfd, 0x2e, 0xc8, 0x67, - 0x46, 0x51, 0xbf, 0x19, 0x09, 0x9b, 0xb0, 0x1e, 0x28, 0x9b, 0x0d, 0xfd, 0x8a, 0xea, 0x75, 0x88, - 0x19, 0x94, 0x58, 0x37, 0x65, 0xd3, 0x98, 0x76, 0x64, 0xd6, 0xe8, 0x1e, 0x99, 0x92, 0xc8, 0xc8, - 0x87, 0x74, 0x56, 0x7e, 0xd1, 0xec, 0xf0, 0xff, 0x08, 0x12, 0x03, 0x82, 0x8a, 0xd3, 0x34, 0x7d, - 0xd9, 0x6b, 0xd2, 0x4d, 0xab, 0x49, 0xa4, 0x1c, 0xc2, 0x2f, 0x38, 0x58, 0x70, 0x91, 0xd1, 0x06, - 0xcc, 0x3b, 0x20, 0x99, 0x5d, 0x51, 0x3a, 0x04, 0x6b, 0x0f, 0x4c, 0xcd, 0x94, 0xbb, 0xec, 0xa1, - 0x05, 0xfd, 0x40, 0x08, 0xe2, 0x03, 0x03, 0xd3, 0x82, 0x23, 0x26, 0x92, 0xdf, 0xe8, 0x3e, 0xc4, - 0x07, 0xaa, 0x62, 0x12, 0xdf, 0x4b, 0xfb, 0x9d, 0x8a, 0x0c, 0x95, 0x6b, 0xaa, 0x8a, 0x29, 0x12, - 0x2e, 0xe1, 0x09, 0xc4, 0xad, 0x2f, 0x6f, 0xa6, 0x34, 0x0f, 0x89, 0xc2, 0xab, 0x46, 0xa9, 0x9e, - 0xe1, 0x10, 0x40, 0xb2, 0x5c, 0xad, 0xed, 0x97, 0xac, 0x6c, 0xe9, 0x1a, 0x24, 0x5f, 0x34, 0xf3, - 0xe2, 0xb3, 0x7a, 0x26, 0xc6, 0x93, 0xa3, 0x7c, 0xc3, 0x59, 0x8b, 0x20, 0xf0, 0xee, 0x2b, 0xba, - 0x47, 0xe3, 0x60, 0xbb, 0x7c, 0x20, 0x6c, 0xb7, 0xe9, 0x39, 0xad, 0x26, 0x00, 0x76, 0xff, 0x16, - 0x83, 0xd5, 0x40, 0x3e, 0xf4, 0xd8, 0x0d, 0xd5, 0xdd, 0x0a, 0x95, 0xe9, 0x06, 0xe9, 0x5e, 0x04, - 0x83, 0x74, 0xf7, 0xc2, 0x05, 0x84, 0xc2, 0x73, 0x7f, 0xc9, 0x51, 0x78, 0x6e, 0xcf, 0x03, 0x37, - 0xdd, 0x9d, 0xa8, 0x92, 0x1b, 0x5f, 0x3a, 0x19, 0x83, 0xcb, 0xd5, 0x1b, 0xf9, 0xc3, 0x92, 0xd4, - 0xac, 0xd2, 0xbf, 0x0e, 0x2e, 0xb7, 0x02, 0x99, 0xc3, 0x92, 0x0d, 0xbc, 0x49, 0xf5, 0x46, 0xbe, - 0x61, 0xed, 0xde, 0x08, 0x26, 0x16, 0xe3, 0xff, 0xd8, 0x8f, 0x89, 0x15, 0x3d, 0x4a, 0xee, 0x4e, - 0x3f, 0x6d, 0xb7, 0xb6, 0x0f, 0x83, 0xb4, 0xdd, 0x80, 0x2c, 0xd3, 0xa7, 0x59, 0xa7, 0x4a, 0x97, - 0x1b, 0x12, 0xb3, 0xa6, 0x21, 0x30, 0xb6, 0x02, 0x88, 0x99, 0x8c, 0xfb, 0x05, 0xfb, 0x4f, 0x39, - 0x58, 0xf6, 0x90, 0x99, 0x05, 0xb9, 0x6e, 0x8c, 0x39, 0xcf, 0x8d, 0xf1, 0x2e, 0xac, 0x58, 0xb5, - 0x3d, 0xf5, 0x5a, 0x43, 0xea, 0x63, 0x5d, 0xb2, 0x5a, 0x98, 0xef, 0x5c, 0xef, 0xc9, 0x6f, 0xd8, - 0x0d, 0xc3, 0x31, 0xd6, 0x2d, 0xc1, 0xef, 0x00, 0x53, 0x17, 0xfe, 0x8c, 0xa3, 0x49, 0xc6, 0xcc, - 0x75, 0xf0, 0xa4, 0x88, 0x13, 0x50, 0x28, 0xc7, 0xa6, 0x2f, 0x94, 0x85, 0x3c, 0xcd, 0x2c, 0xae, - 0x50, 0x93, 0x3e, 0xfa, 0x3f, 0x0e, 0x52, 0xe5, 0x36, 0x56, 0x4d, 0xcb, 0xb3, 0xaa, 0xb0, 0xe4, - 0x79, 0xe1, 0x8f, 0x36, 0xc6, 0x3c, 0xfc, 0x27, 0x53, 0xe7, 0x37, 0x43, 0xff, 0x2d, 0x40, 0x88, - 0xa0, 0x33, 0xd7, 0x7f, 0x27, 0x78, 0xee, 0x4c, 0x3e, 0x1c, 0xe9, 0x19, 0x10, 0x64, 0xf8, 0x3b, - 0x13, 0xb8, 0x9c, 0x71, 0x3e, 0x81, 0x04, 0x79, 0x18, 0x8d, 0x56, 0x9c, 0x07, 0xd8, 0xae, 0x77, - 0xd3, 0xfc, 0xaa, 0x8f, 0x6a, 0xf7, 0x7b, 0xf4, 0xef, 0xf3, 0x00, 0xc3, 0x8a, 0x0f, 0x3d, 0x83, - 0x45, 0xf7, 0xdb, 0x4c, 0xb4, 0x1e, 0xf2, 0x32, 0x98, 0xdf, 0x08, 0x6e, 0x74, 0x74, 0x7a, 0x06, - 0x8b, 0xee, 0x97, 0x40, 0x43, 0x61, 0x01, 0xaf, 0x91, 0x86, 0xc2, 0x02, 0x1f, 0x0f, 0x45, 0x50, - 0x17, 0x6e, 0x8c, 0x79, 0x0b, 0x82, 0xee, 0x4e, 0xf7, 0x62, 0x86, 0xff, 0xce, 0x94, 0x8f, 0x4a, - 0x84, 0x08, 0xd2, 0xe1, 0x83, 0xb1, 0x4f, 0x20, 0xd0, 0xce, 0xb4, 0x0f, 0x34, 0xf8, 0x8f, 0xa6, - 0xe0, 0x74, 0xc6, 0x1c, 0x00, 0x3f, 0xfe, 0xde, 0x15, 0x7d, 0x34, 0xf5, 0x83, 0x00, 0xfe, 0xde, - 0xf4, 0xd7, 0xb8, 0x42, 0x04, 0x1d, 0xc1, 0x82, 0xeb, 0x52, 0x12, 0xf1, 0x81, 0x37, 0x95, 0x54, - 0xf0, 0x7a, 0xc8, 0x2d, 0x26, 0x95, 0xe4, 0xba, 0x38, 0x1b, 0x4a, 0x1a, 0xbd, 0x01, 0x1c, 0x4a, - 0x0a, 0xb8, 0x69, 0xf3, 0x2f, 0xbf, 0xef, 0x84, 0x0d, 0x5a, 0xfe, 0xe0, 0x23, 0x3a, 0x68, 0xf9, - 0xc7, 0x1c, 0xd7, 0x42, 0x04, 0xbd, 0x80, 0xb4, 0x17, 0x48, 0x47, 0x9b, 0xa1, 0x17, 0x02, 0xfc, - 0xcd, 0x71, 0xcd, 0x6e, 0x91, 0x5e, 0xdc, 0x76, 0x28, 0x32, 0x10, 0x3f, 0x1e, 0x8a, 0x1c, 0x03, - 0xf7, 0x46, 0xac, 0xf8, 0xe4, 0xc1, 0x44, 0x87, 0xf1, 0x29, 0x08, 0x06, 0x1e, 0xc6, 0xa7, 0x40, - 0x20, 0x55, 0x88, 0x20, 0x05, 0xd6, 0x82, 0x91, 0x3d, 0x74, 0x67, 0x2a, 0xc4, 0x91, 0xbf, 0x3b, - 0x89, 0xcd, 0xe5, 0xc1, 0x6b, 0xc1, 0xd8, 0x52, 0xd0, 0x50, 0x01, 0xb0, 0x58, 0xd0, 0x50, 0x41, - 0x10, 0x95, 0x60, 0x25, 0x6f, 0x8f, 0x7e, 0x99, 0x80, 0x38, 0x39, 0xfc, 0x1a, 0x70, 0xcd, 0x57, - 0x1d, 0xa3, 0x9b, 0xe1, 0x98, 0x01, 0xbf, 0x35, 0xb6, 0xdd, 0x99, 0xcc, 0x6b, 0xb8, 0x3e, 0x52, - 0xef, 0xa2, 0x6d, 0x77, 0xbf, 0xa0, 0x9a, 0x9b, 0xbf, 0x15, 0xc2, 0xe1, 0x97, 0xed, 0x0d, 0x72, - 0xdb, 0x93, 0x0a, 0x32, 0xaf, 0xec, 0x71, 0x81, 0xed, 0x2b, 0x9a, 0x6b, 0xf8, 0x43, 0x9a, 0xe0, - 0xd5, 0x2b, 0x30, 0x98, 0xdd, 0x0e, 0xe5, 0x71, 0x46, 0xf8, 0xd2, 0x49, 0x72, 0x5c, 0x15, 0x04, - 0xf2, 0x28, 0x17, 0x58, 0xb8, 0xf0, 0x42, 0x18, 0x8b, 0x23, 0xfe, 0x25, 0x64, 0xfc, 0x07, 0x3e, - 0xf2, 0xec, 0x57, 0x90, 0x91, 0x6e, 0x8f, 0x67, 0xf0, 0xaf, 0x8c, 0x3f, 0xda, 0xf8, 0xb5, 0x0a, - 0x8a, 0x33, 0xb7, 0x43, 0x79, 0xdc, 0xf1, 0xd1, 0x95, 0xe7, 0x0d, 0xe3, 0xe3, 0x68, 0x4e, 0x38, - 0x8c, 0x8f, 0x01, 0x89, 0xa1, 0x10, 0xd9, 0x7b, 0x0a, 0x40, 0x13, 0x79, 0xac, 0x0e, 0x7a, 0x68, - 0x63, 0x04, 0xa5, 0x2c, 0xa9, 0x83, 0x5e, 0xad, 0x6f, 0x39, 0x85, 0x91, 0xfd, 0x59, 0x8a, 0x00, - 0x08, 0xf3, 0xa4, 0x83, 0xd5, 0xb0, 0x57, 0x81, 0xcc, 0xb0, 0xb7, 0x44, 0xca, 0x5d, 0x74, 0x2b, - 0x50, 0x06, 0xf9, 0xc7, 0x29, 0x9f, 0xa0, 0xb4, 0x23, 0x88, 0xb4, 0xee, 0x7d, 0x06, 0xd0, 0x32, - 0x14, 0x89, 0x02, 0x0a, 0x68, 0x73, 0x44, 0xce, 0x81, 0x82, 0xbb, 0x6d, 0x5b, 0xc6, 0xdf, 0x30, - 0x65, 0x5a, 0x86, 0x42, 0xeb, 0xfa, 0xbd, 0x1f, 0xc2, 0x02, 0xab, 0x49, 0x2c, 0xbe, 0x49, 0xfd, - 0x99, 0x0e, 0x74, 0xf6, 0xa4, 0x65, 0xaf, 0x64, 0x17, 0x35, 0xec, 0x89, 0x16, 0xda, 0x1a, 0x11, - 0xf1, 0x9c, 0xb6, 0xf8, 0x84, 0xd0, 0x42, 0x86, 0xb5, 0xed, 0x15, 0x60, 0xd1, 0x16, 0x63, 0x9e, - 0x6b, 0x6d, 0x74, 0x33, 0x40, 0x8a, 0xd5, 0xe0, 0x13, 0xb2, 0xc0, 0x84, 0x58, 0x4d, 0x43, 0x55, - 0xec, 0xff, 0x77, 0x1c, 0x55, 0x85, 0xd5, 0x19, 0x81, 0xaa, 0xb0, 0xb6, 0x42, 0xe2, 0x75, 0xac, - 0x65, 0x28, 0xa7, 0x49, 0xd2, 0xe9, 0x7b, 0xff, 0x1f, 0x00, 0x00, 0xff, 0xff, 0x06, 0x9e, 0x87, - 0xe6, 0x9c, 0x3b, 0x00, 0x00, + proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_90473d66bc568efe) +} + +var fileDescriptor_csi_90473d66bc568efe = []byte{ + // 3955 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x3b, 0x4b, 0x6c, 0x1b, 0x49, + 0x76, 0x6c, 0x7e, 0x24, 0xea, 0x49, 0xa2, 0xe9, 0xd2, 0xc7, 0x9c, 0x96, 0x64, 0xcb, 0xed, 0xb1, + 0xc7, 0xe3, 0x19, 0x53, 0x63, 0xef, 0x78, 0x92, 0x91, 0x3d, 0xbb, 0x4b, 0x52, 0x94, 0xc4, 0xb1, + 0x4c, 0xca, 0x4d, 0xd2, 0x1e, 0x3b, 0x19, 0xf4, 0xb4, 0xc9, 0x12, 0xd5, 0x18, 0xb2, 0x9b, 0xdb, + 0xdd, 0xd4, 0x58, 0xb9, 0x04, 0x49, 0x80, 0x00, 0x41, 0x6e, 0x01, 0x16, 0x49, 0x4e, 0x09, 0x36, + 0x7b, 0x49, 0x90, 0x3d, 0xe4, 0x10, 0xe4, 0x98, 0x45, 0x8e, 0x39, 0x04, 0xc8, 0x25, 0x09, 0xf6, + 0x92, 0x4b, 0x90, 0xc3, 0x22, 0x01, 0xf6, 0x9c, 0x53, 0x50, 0x5d, 0xd5, 0xcd, 0xae, 0x66, 0xb3, + 0x49, 0x5a, 0x1e, 0xcc, 0x61, 0x4f, 0x52, 0xbf, 0x7a, 0xef, 0xd5, 0xab, 0x57, 0xaf, 0x5e, 0xbd, + 0x4f, 0x11, 0x1e, 0x74, 0x34, 0xfb, 0x74, 0xf0, 0x2a, 0xdf, 0x32, 0x7a, 0x3b, 0x2d, 0x43, 0xb7, + 0x55, 0x4d, 0xc7, 0xe6, 0x5d, 0xcb, 0x36, 0x4c, 0xb5, 0x83, 0xef, 0x6a, 0xba, 0x8d, 0xcd, 0x13, + 0xb5, 0x85, 0x77, 0xac, 0x3e, 0x6e, 0xed, 0xb4, 0x2c, 0x2d, 0xdf, 0x37, 0x0d, 0xdb, 0x40, 0x73, + 0xe4, 0xdf, 0xb3, 0x7b, 0xe2, 0x76, 0xc7, 0x30, 0x3a, 0x5d, 0xbc, 0xe3, 0x40, 0x5f, 0x0d, 0x4e, + 0x76, 0xda, 0xd8, 0x6a, 0x99, 0x5a, 0xdf, 0x36, 0x4c, 0x8a, 0x29, 0x5e, 0x0b, 0x62, 0xd8, 0x5a, + 0x0f, 0x5b, 0xb6, 0xda, 0xeb, 0x33, 0x84, 0xab, 0x41, 0x84, 0x6f, 0x4c, 0xb5, 0xdf, 0xc7, 0xa6, + 0x45, 0xc7, 0xa5, 0x75, 0x58, 0x3d, 0xc0, 0xf6, 0x71, 0x77, 0xd0, 0xd1, 0xf4, 0x8a, 0x7e, 0x62, + 0xc8, 0xf8, 0x47, 0x03, 0x6c, 0xd9, 0xd2, 0x7f, 0x08, 0xb0, 0x16, 0x18, 0xb0, 0xfa, 0x86, 0x6e, + 0x61, 0x84, 0x20, 0xa9, 0xab, 0x3d, 0x9c, 0x13, 0xb6, 0x85, 0xdb, 0x0b, 0xb2, 0xf3, 0x3f, 0xba, + 0x09, 0x99, 0x33, 0xac, 0xb7, 0x0d, 0x53, 0x39, 0xc3, 0xa6, 0xa5, 0x19, 0x7a, 0x2e, 0xee, 0x8c, + 0x2e, 0x53, 0xe8, 0x33, 0x0a, 0x44, 0x07, 0x90, 0xee, 0xa9, 0xba, 0x76, 0x82, 0x2d, 0x3b, 0x97, + 0xd8, 0x4e, 0xdc, 0x5e, 0xbc, 0xff, 0x41, 0x9e, 0x2e, 0x35, 0x1f, 0x3a, 0x57, 0xfe, 0x09, 0xc3, + 0x2e, 0xeb, 0xb6, 0x79, 0x2e, 0x7b, 0xc4, 0xe2, 0x43, 0x58, 0xe6, 0x86, 0x50, 0x16, 0x12, 0x5f, + 0xe3, 0x73, 0x26, 0x13, 0xf9, 0x17, 0xad, 0x42, 0xea, 0x4c, 0xed, 0x0e, 0x30, 0x93, 0x84, 0x7e, + 0xec, 0xc6, 0x7f, 0x53, 0x90, 0xae, 0xc2, 0xa6, 0x37, 0x5b, 0x49, 0xed, 0xab, 0xaf, 0xb4, 0xae, + 0x66, 0x6b, 0xd8, 0x72, 0x97, 0xfe, 0x25, 0x6c, 0x8d, 0x19, 0x67, 0x1a, 0x78, 0x04, 0x4b, 0x2d, + 0x1f, 0x3c, 0x27, 0x38, 0x4b, 0xc9, 0xb9, 0x4b, 0x09, 0x50, 0x9e, 0xcb, 0x1c, 0xb6, 0xf4, 0xe3, + 0x14, 0x64, 0x83, 0x28, 0xe8, 0x11, 0xcc, 0x5b, 0xd8, 0x3c, 0xd3, 0x5a, 0x54, 0xaf, 0x8b, 0xf7, + 0xb7, 0xc7, 0x71, 0xcb, 0xd7, 0x29, 0xde, 0x61, 0x4c, 0x76, 0x49, 0x50, 0x13, 0xb2, 0x67, 0x46, + 0x77, 0xd0, 0xc3, 0x0a, 0x7e, 0xdd, 0x57, 0x75, 0x6f, 0x03, 0x16, 0xef, 0xdf, 0x1e, 0xcb, 0xe6, + 0x99, 0x43, 0x50, 0x76, 0xf1, 0x0f, 0x63, 0xf2, 0xa5, 0x33, 0x1e, 0x84, 0x8e, 0x60, 0x59, 0xed, + 0xf6, 0x4f, 0x55, 0xe5, 0x04, 0xab, 0xf6, 0xc0, 0xc4, 0xb9, 0x84, 0xc3, 0xf3, 0xe6, 0x58, 0x9e, + 0x05, 0x82, 0xbd, 0x4f, 0x91, 0x0f, 0x63, 0xf2, 0x92, 0xea, 0xfb, 0x16, 0xff, 0x54, 0x80, 0x79, + 0x26, 0x3b, 0xfa, 0x14, 0x92, 0xf6, 0x79, 0x9f, 0xae, 0x35, 0x13, 0xc1, 0x90, 0xe1, 0xe7, 0x1b, + 0xe7, 0x7d, 0x2c, 0x3b, 0x24, 0xd2, 0x53, 0x48, 0x92, 0x2f, 0xb4, 0x08, 0xf3, 0xcd, 0xea, 0xe3, + 0x6a, 0xed, 0x79, 0x35, 0x1b, 0x43, 0xeb, 0x80, 0x4a, 0xb5, 0x6a, 0x43, 0xae, 0x1d, 0x1d, 0x95, + 0x65, 0xa5, 0x5e, 0x96, 0x9f, 0x55, 0x4a, 0xe5, 0xac, 0x80, 0xde, 0x85, 0xed, 0x67, 0xb5, 0xa3, + 0xe6, 0x93, 0xb2, 0x52, 0x28, 0x95, 0xca, 0xf5, 0x7a, 0xa5, 0x58, 0x39, 0xaa, 0x34, 0x5e, 0x28, + 0xa5, 0x5a, 0xb5, 0xde, 0x90, 0x0b, 0x95, 0x6a, 0xa3, 0x9e, 0x8d, 0x8b, 0xbf, 0x2f, 0xc0, 0xa5, + 0x80, 0x3a, 0x50, 0x81, 0x93, 0xf0, 0xee, 0xb4, 0x6a, 0xf4, 0x4b, 0xfa, 0x61, 0x98, 0xa4, 0x00, + 0x73, 0xb5, 0xea, 0x51, 0xa5, 0x4a, 0xa4, 0x5b, 0x84, 0xf9, 0xda, 0xfe, 0xbe, 0xf3, 0x11, 0x17, + 0xbf, 0x81, 0x25, 0xbf, 0xfa, 0xd0, 0xf7, 0x39, 0x01, 0xee, 0x4c, 0xa5, 0x73, 0xff, 0xec, 0xef, + 0x85, 0xcd, 0x8e, 0x20, 0xc3, 0xf4, 0x41, 0x66, 0x2d, 0x1c, 0x94, 0xb3, 0x42, 0x71, 0x8e, 0x4e, + 0x24, 0x65, 0x60, 0xe9, 0xd8, 0x34, 0x5e, 0x61, 0xf7, 0x18, 0x14, 0x60, 0x99, 0x7d, 0x33, 0xb3, + 0xff, 0x08, 0x52, 0x26, 0x56, 0xdb, 0xe7, 0xcc, 0x42, 0xc5, 0x3c, 0x75, 0x2d, 0x79, 0xd7, 0xb5, + 0xe4, 0x8b, 0x86, 0xd1, 0x7d, 0x46, 0x8e, 0x99, 0x4c, 0x11, 0xa5, 0x5f, 0x25, 0x61, 0xa5, 0x64, + 0x62, 0xd5, 0xc6, 0x54, 0x4d, 0x8c, 0x75, 0xa8, 0x0b, 0x79, 0x04, 0x19, 0x72, 0x4c, 0x5a, 0x9a, + 0x7d, 0xae, 0x98, 0xaa, 0xde, 0xc1, 0xcc, 0x82, 0xd7, 0xdc, 0x95, 0x97, 0xd8, 0xa8, 0x4c, 0x06, + 0xe5, 0xe5, 0x96, 0xff, 0x13, 0x55, 0x60, 0x85, 0x9d, 0x00, 0xee, 0x64, 0x26, 0xf8, 0x93, 0x49, + 0xa5, 0xf0, 0x9d, 0x4c, 0x74, 0xc6, 0x43, 0x34, 0x6c, 0xa1, 0xc7, 0x00, 0x7d, 0xd5, 0x54, 0x7b, + 0xd8, 0xc6, 0xa6, 0x95, 0x4b, 0xf2, 0x6e, 0x2a, 0x64, 0x35, 0xf9, 0x63, 0x0f, 0x9b, 0xba, 0x29, + 0x1f, 0x39, 0x3a, 0x20, 0xe7, 0xba, 0x65, 0x62, 0xdb, 0xca, 0xa5, 0x1c, 0x4e, 0xb7, 0xa3, 0x38, + 0xd5, 0x29, 0xaa, 0xc3, 0xa6, 0x98, 0xf8, 0xb3, 0xa2, 0x20, 0xbb, 0xd4, 0xa8, 0x06, 0x6b, 0xee, + 0x02, 0x0d, 0xdd, 0xc6, 0xba, 0xad, 0x58, 0xc6, 0xc0, 0x6c, 0xe1, 0xdc, 0x9c, 0xa3, 0xa5, 0x8d, + 0xc0, 0x12, 0x29, 0x4e, 0xdd, 0x41, 0x91, 0x99, 0x6a, 0x38, 0x20, 0x7a, 0x09, 0xa2, 0xda, 0x6a, + 0x61, 0xcb, 0xd2, 0xa8, 0x2e, 0x14, 0x13, 0xff, 0x68, 0xa0, 0x99, 0xb8, 0x87, 0x75, 0xdb, 0xca, + 0xcd, 0xf3, 0x5c, 0x1b, 0x46, 0xdf, 0xe8, 0x1a, 0x9d, 0x73, 0x79, 0x88, 0x23, 0xbf, 0xc3, 0x91, + 0xfb, 0x46, 0x2c, 0xf1, 0x33, 0xb8, 0x14, 0x50, 0xca, 0x2c, 0x0e, 0x5a, 0xdc, 0x85, 0x25, 0xbf, + 0x26, 0x66, 0x72, 0xee, 0x7f, 0x1c, 0x87, 0x95, 0x10, 0x1d, 0xa0, 0x43, 0x48, 0x5b, 0xba, 0xda, + 0xb7, 0x4e, 0x0d, 0x9b, 0xd9, 0xef, 0x9d, 0x08, 0x95, 0xe5, 0xeb, 0x0c, 0x97, 0x7e, 0x1e, 0xc6, + 0x64, 0x8f, 0x1a, 0x15, 0x61, 0x8e, 0xea, 0x33, 0xe8, 0x62, 0xc3, 0xf8, 0x50, 0x98, 0xc7, 0x85, + 0x51, 0x8a, 0xf7, 0x20, 0xc3, 0xcf, 0x80, 0xae, 0xc1, 0xa2, 0x3b, 0x83, 0xa2, 0xb5, 0xd9, 0x5a, + 0xc1, 0x05, 0x55, 0xda, 0xe2, 0x07, 0xb0, 0xe4, 0x67, 0x86, 0x36, 0x60, 0x81, 0x19, 0x84, 0x87, + 0x9e, 0xa6, 0x80, 0x4a, 0xdb, 0x3b, 0xd3, 0xdf, 0x87, 0x55, 0xde, 0xce, 0xd8, 0x51, 0xbe, 0xe5, + 0xad, 0x81, 0xea, 0x22, 0xc3, 0xaf, 0xc1, 0x95, 0x53, 0xfa, 0x9b, 0x24, 0x64, 0x83, 0x87, 0x06, + 0x3d, 0x82, 0xd4, 0xab, 0xae, 0xd1, 0xfa, 0x9a, 0xd1, 0xbe, 0x3b, 0xee, 0x74, 0xe5, 0x8b, 0x04, + 0x8b, 0x42, 0x0f, 0x63, 0x32, 0x25, 0x22, 0xd4, 0x3d, 0x63, 0xa0, 0xdb, 0x4c, 0x7b, 0xe3, 0xa9, + 0x9f, 0x10, 0xac, 0x21, 0xb5, 0x43, 0x84, 0xf6, 0x60, 0x91, 0x9a, 0x9d, 0xd2, 0x33, 0xda, 0xee, + 0x85, 0x74, 0x63, 0x2c, 0x8f, 0x82, 0x83, 0xfb, 0xc4, 0x68, 0x63, 0x19, 0x54, 0xef, 0x7f, 0x71, + 0x19, 0x16, 0x7d, 0xb2, 0x89, 0x07, 0xb0, 0xe8, 0x9b, 0x0c, 0x5d, 0x81, 0xf9, 0x13, 0x4b, 0xf1, + 0x9c, 0xef, 0x82, 0x3c, 0x77, 0x62, 0x39, 0xae, 0xf4, 0x1a, 0x2c, 0x3a, 0x52, 0x28, 0x27, 0x5d, + 0xb5, 0x63, 0xe5, 0xe2, 0xdb, 0x09, 0xb2, 0x47, 0x0e, 0x68, 0x9f, 0x40, 0xc4, 0xff, 0x11, 0x00, + 0x86, 0x53, 0xa2, 0x47, 0x90, 0x74, 0xa4, 0xa4, 0x2e, 0xfc, 0xf6, 0x14, 0x52, 0xe6, 0x1d, 0x51, + 0x1d, 0x2a, 0xe9, 0x2f, 0x04, 0x48, 0x3a, 0x6c, 0x82, 0x37, 0x5d, 0xbd, 0x52, 0x3d, 0x38, 0x2a, + 0x2b, 0xd5, 0xda, 0x5e, 0x59, 0x79, 0x2e, 0x57, 0x1a, 0x65, 0x39, 0x2b, 0xa0, 0x0d, 0xb8, 0xe2, + 0x87, 0xcb, 0xe5, 0xc2, 0x5e, 0x59, 0x56, 0x6a, 0xd5, 0xa3, 0x17, 0xd9, 0x38, 0x12, 0x61, 0xfd, + 0x49, 0xf3, 0xa8, 0x51, 0x19, 0x1d, 0x4b, 0xa0, 0x4d, 0xc8, 0xf9, 0xc6, 0x18, 0x0f, 0xc6, 0x36, + 0x49, 0xd8, 0xfa, 0x46, 0xe9, 0xbf, 0x6c, 0x30, 0x55, 0x5c, 0xf6, 0x36, 0xc3, 0x31, 0xb6, 0xe7, + 0xb0, 0xcc, 0xf9, 0x68, 0x12, 0x15, 0x32, 0xa7, 0xd2, 0x56, 0x5e, 0x9d, 0xdb, 0x4e, 0xa4, 0x24, + 0xdc, 0x4e, 0xc8, 0xcb, 0x2e, 0xb4, 0x48, 0x80, 0x44, 0xad, 0x5d, 0xad, 0xa7, 0xd9, 0x0c, 0x27, + 0xee, 0xe0, 0x80, 0x03, 0x72, 0x10, 0xa4, 0x3f, 0x49, 0xc0, 0x1c, 0xdb, 0x9b, 0x9b, 0xbe, 0x5b, + 0x82, 0x63, 0xe9, 0x42, 0x29, 0x4b, 0xee, 0x70, 0xc4, 0xf9, 0xc3, 0x81, 0x0e, 0x21, 0xe3, 0x77, + 0xa5, 0xaf, 0xdd, 0x58, 0xf4, 0x3a, 0xbf, 0x41, 0xfe, 0xf3, 0xfc, 0x9a, 0x45, 0xa0, 0xcb, 0x67, + 0x7e, 0x18, 0x2a, 0x42, 0x26, 0xe0, 0x8d, 0x93, 0x93, 0xbd, 0xf1, 0x72, 0x8b, 0x73, 0x4c, 0x05, + 0x58, 0x71, 0x1d, 0x69, 0x17, 0x2b, 0x36, 0x73, 0xb4, 0xec, 0xb6, 0xc8, 0x8e, 0x38, 0x60, 0x34, + 0x44, 0x76, 0x61, 0xe8, 0x1e, 0xcc, 0x77, 0x35, 0x1d, 0xab, 0x1d, 0x72, 0x1b, 0x10, 0x32, 0xe4, + 0x45, 0x0b, 0xa6, 0x71, 0x86, 0x75, 0x55, 0x6f, 0xe1, 0x62, 0xe2, 0x2f, 0xc9, 0x75, 0xc2, 0xf0, + 0xc4, 0x1f, 0x02, 0x1a, 0x5d, 0xde, 0x4c, 0x8e, 0xf6, 0x5f, 0xe3, 0x00, 0x43, 0xf6, 0xe8, 0x37, + 0x20, 0xad, 0xb5, 0xb1, 0x6e, 0x6b, 0xf6, 0x39, 0x8b, 0x87, 0x37, 0x46, 0x85, 0xc8, 0x57, 0x18, + 0x8a, 0xec, 0x21, 0xa3, 0x22, 0x5c, 0x6a, 0xab, 0xb6, 0xaa, 0xb4, 0x4e, 0x89, 0xcd, 0xb4, 0x15, + 0xd5, 0xf5, 0x0c, 0xa3, 0xf1, 0x45, 0xc3, 0xcd, 0x6d, 0xe4, 0x65, 0x42, 0x52, 0xa2, 0x14, 0x05, + 0x1b, 0x7d, 0x0e, 0x2b, 0x3d, 0x6c, 0xab, 0x41, 0x3e, 0x89, 0x89, 0x7c, 0x2e, 0xbb, 0x64, 0x1e, + 0x2f, 0x71, 0x00, 0x69, 0x57, 0x4a, 0xf4, 0x31, 0x17, 0x83, 0x6d, 0x47, 0x2c, 0xc8, 0x17, 0x79, + 0xf1, 0x3a, 0x5b, 0x62, 0x3a, 0x93, 0xb6, 0xc2, 0xe2, 0xb1, 0x34, 0x24, 0xbf, 0x78, 0xf0, 0xd1, + 0xa7, 0x59, 0x61, 0x97, 0x6c, 0x8f, 0x34, 0x80, 0x95, 0x90, 0x9b, 0x16, 0xe5, 0x61, 0xc1, 0x39, + 0x31, 0x96, 0x66, 0x63, 0xa6, 0xdc, 0x51, 0xc3, 0x18, 0xa2, 0x10, 0xfc, 0xbe, 0x89, 0x4f, 0xb0, + 0x69, 0xe2, 0xb6, 0xe3, 0xa5, 0x42, 0xf1, 0x3d, 0x14, 0xe9, 0x0f, 0x04, 0x48, 0x7b, 0xc6, 0xb4, + 0x0b, 0x69, 0x0b, 0x77, 0x68, 0x14, 0x40, 0xe7, 0xba, 0x1a, 0xa4, 0xcd, 0xd7, 0x19, 0x02, 0x4b, + 0xcb, 0x5c, 0x7c, 0x92, 0x96, 0x71, 0x43, 0x33, 0x19, 0xd4, 0x3f, 0x08, 0xb0, 0xb2, 0x87, 0xbb, + 0x38, 0x18, 0x2c, 0x46, 0x5d, 0x74, 0xfe, 0xf8, 0x2a, 0xce, 0xc7, 0x57, 0x21, 0xac, 0x22, 0xe2, + 0xab, 0x0b, 0xc5, 0x1c, 0xeb, 0xb0, 0xca, 0xcf, 0x46, 0x6f, 0x59, 0xe9, 0x7f, 0x13, 0x70, 0x95, + 0x9c, 0x2f, 0xd3, 0xe8, 0x76, 0xb1, 0x79, 0x3c, 0x78, 0xd5, 0xd5, 0xac, 0xd3, 0x19, 0x16, 0x77, + 0x05, 0xe6, 0x75, 0xa3, 0xed, 0xf3, 0x61, 0x73, 0xe4, 0xb3, 0xd2, 0x46, 0x65, 0xb8, 0x1c, 0x8c, + 0x76, 0xcf, 0x99, 0xb5, 0x8f, 0x8f, 0x75, 0xb3, 0x67, 0xc1, 0x8b, 0x5c, 0x84, 0x34, 0x89, 0xd3, + 0x0d, 0xbd, 0x7b, 0xee, 0x38, 0xae, 0xb4, 0xec, 0x7d, 0x23, 0x39, 0x18, 0xb8, 0x7e, 0xcf, 0x0b, + 0x5c, 0x23, 0x57, 0x14, 0x15, 0xc3, 0x7e, 0x35, 0xe2, 0x78, 0xa9, 0xbb, 0xfa, 0x74, 0x4a, 0xd6, + 0x13, 0x1d, 0xf2, 0x45, 0x76, 0xf1, 0x2d, 0xb8, 0xc4, 0x7f, 0x16, 0xe0, 0xda, 0xd8, 0x25, 0xb0, + 0xc8, 0xab, 0x0d, 0x97, 0xfa, 0x74, 0xc0, 0x53, 0x02, 0x3d, 0x65, 0x0f, 0x27, 0x2a, 0x81, 0xd5, + 0x44, 0x18, 0x94, 0x53, 0x43, 0xa6, 0xcf, 0x01, 0xc5, 0x02, 0xac, 0x84, 0xa0, 0xcd, 0xb4, 0x98, + 0x5f, 0x0a, 0xb0, 0x3d, 0x14, 0xa5, 0xa9, 0xf7, 0xdf, 0x9e, 0xf9, 0x36, 0x86, 0xb6, 0x45, 0x6f, + 0xde, 0x07, 0xa3, 0x6b, 0x0f, 0x9f, 0xf0, 0xdb, 0x3a, 0xc1, 0x37, 0xe0, 0x7a, 0xc4, 0xd4, 0xec, + 0x38, 0xff, 0x67, 0x12, 0xae, 0x3f, 0x53, 0xbb, 0x5a, 0xdb, 0x8b, 0xa7, 0x43, 0xaa, 0x47, 0xd1, + 0x2a, 0x69, 0x8d, 0x9c, 0x00, 0xea, 0xb5, 0x1e, 0x79, 0xa7, 0x76, 0x12, 0xff, 0x29, 0xa2, 0x92, + 0xb7, 0x98, 0x0b, 0xbf, 0x08, 0xc9, 0x85, 0x3f, 0x9d, 0x5e, 0xd6, 0xa8, 0xcc, 0xb8, 0x19, 0x74, + 0x30, 0x9f, 0x4c, 0xcf, 0x37, 0xc2, 0x0a, 0x2e, 0x7c, 0x8a, 0xbf, 0xcb, 0xe4, 0xf5, 0x9f, 0x92, + 0x20, 0x45, 0xad, 0x9e, 0xf9, 0x10, 0x19, 0x16, 0x5a, 0x86, 0x7e, 0xa2, 0x99, 0x3d, 0xdc, 0x66, + 0x49, 0xd8, 0xc7, 0xd3, 0x28, 0x8f, 0x39, 0x90, 0x92, 0x4b, 0x2b, 0x0f, 0xd9, 0xa0, 0x1c, 0xcc, + 0xf7, 0xb0, 0x65, 0xa9, 0x1d, 0x57, 0x2c, 0xf7, 0x53, 0xfc, 0x59, 0x02, 0x16, 0x3c, 0x12, 0xa4, + 0x8f, 0x58, 0x30, 0x75, 0x5f, 0x07, 0x6f, 0x22, 0xc0, 0x9b, 0x1b, 0x73, 0xfc, 0x0d, 0x8c, 0xb9, + 0xcd, 0x19, 0x33, 0x3d, 0x0e, 0x7b, 0x6f, 0x24, 0x76, 0x84, 0x5d, 0x7f, 0xe7, 0x06, 0x28, 0xfd, + 0x36, 0xa0, 0x23, 0xcd, 0x62, 0xc9, 0xac, 0xe7, 0x96, 0x48, 0xee, 0xaa, 0xbe, 0x56, 0xb0, 0x6e, + 0x9b, 0x1a, 0xcb, 0x9a, 0x52, 0x32, 0xf4, 0xd4, 0xd7, 0x65, 0x0a, 0x21, 0x99, 0x95, 0x65, 0xab, + 0xa6, 0xad, 0xe9, 0x1d, 0xc5, 0x36, 0xbe, 0xc6, 0x5e, 0x09, 0xdf, 0x85, 0x36, 0x08, 0x50, 0xfa, + 0x89, 0x00, 0x2b, 0x1c, 0x7b, 0x66, 0x93, 0x0f, 0x61, 0x7e, 0xc8, 0x9b, 0xcb, 0xa6, 0x42, 0xb0, + 0xf3, 0x54, 0x6d, 0x2e, 0x05, 0xda, 0x02, 0xd0, 0xf1, 0x6b, 0x9b, 0x9b, 0x77, 0x81, 0x40, 0x9c, + 0x39, 0xc5, 0x1d, 0x48, 0x51, 0x35, 0x4c, 0x5b, 0xb6, 0xf8, 0x59, 0x1c, 0xd0, 0x01, 0xb6, 0xbd, + 0x6c, 0x94, 0xe9, 0x60, 0x8c, 0x2d, 0x09, 0x6f, 0x60, 0x4b, 0x9f, 0x73, 0xb6, 0x44, 0xad, 0xf1, + 0x8e, 0xaf, 0x97, 0x11, 0x98, 0x3a, 0xd2, 0x13, 0x8e, 0xc9, 0x00, 0x69, 0x3c, 0x37, 0x55, 0x06, + 0x78, 0x51, 0x93, 0xd9, 0x83, 0x15, 0x4e, 0x66, 0xb6, 0xa7, 0x77, 0x01, 0xa9, 0x67, 0xaa, 0xd6, + 0x55, 0x89, 0x5c, 0x6e, 0x82, 0xcd, 0x12, 0xee, 0xcb, 0xde, 0x88, 0x4b, 0x26, 0x49, 0xfe, 0x80, + 0x81, 0xf1, 0x0b, 0xf6, 0x56, 0xba, 0xfe, 0x8b, 0x76, 0x04, 0x87, 0xcd, 0x7b, 0x10, 0xda, 0x5f, + 0xb9, 0x31, 0x1a, 0x24, 0xb0, 0xf6, 0xc0, 0xd8, 0x56, 0xcb, 0x7f, 0x27, 0x61, 0x23, 0x02, 0x1b, + 0x3d, 0x84, 0x84, 0xd9, 0x6f, 0x31, 0x63, 0x7a, 0x6f, 0x0a, 0xfe, 0x79, 0xf9, 0xb8, 0x74, 0x18, + 0x93, 0x09, 0x15, 0x7a, 0x1e, 0xec, 0x8e, 0xd0, 0xb4, 0xf5, 0xa3, 0x69, 0xd8, 0x44, 0x36, 0x4a, + 0x7e, 0x1a, 0x87, 0x84, 0x7c, 0x5c, 0x42, 0x3f, 0xe4, 0xb2, 0xcf, 0x0f, 0xa7, 0x14, 0xcf, 0xdf, + 0x03, 0xf8, 0x85, 0x10, 0x96, 0x74, 0xe6, 0x60, 0xb5, 0x24, 0x97, 0x0b, 0x8d, 0xb2, 0xb2, 0x57, + 0x3e, 0x2a, 0x37, 0xca, 0x0a, 0x6d, 0x09, 0x64, 0x05, 0xb4, 0x09, 0xb9, 0xe3, 0x66, 0xf1, 0xa8, + 0x52, 0x3f, 0x54, 0x9a, 0x55, 0xf7, 0x3f, 0x36, 0x1a, 0x47, 0x59, 0x58, 0x3a, 0xaa, 0xd4, 0x1b, + 0x0c, 0x50, 0xcf, 0x26, 0x08, 0xe4, 0xa0, 0xdc, 0x50, 0x4a, 0x85, 0xe3, 0x42, 0xa9, 0xd2, 0x78, + 0x91, 0x4d, 0x22, 0x11, 0xd6, 0x79, 0xde, 0xf5, 0x6a, 0xe1, 0xb8, 0x7e, 0x58, 0x6b, 0x64, 0x53, + 0x08, 0x41, 0xc6, 0xa1, 0x77, 0x41, 0xf5, 0xec, 0x1c, 0xe1, 0x50, 0x3a, 0xaa, 0x55, 0x3d, 0x19, + 0xe6, 0xd1, 0x2a, 0x64, 0xdd, 0x99, 0xe5, 0x72, 0x61, 0xcf, 0xa9, 0x52, 0xa5, 0xd1, 0x65, 0x58, + 0x2e, 0x7f, 0x71, 0x5c, 0xa8, 0xee, 0xb9, 0x88, 0x0b, 0xe2, 0xef, 0x09, 0x81, 0x8e, 0x49, 0x85, + 0xd3, 0xd7, 0x83, 0x59, 0xf7, 0xc1, 0xaf, 0xb8, 0x5b, 0x61, 0x7a, 0xbb, 0x0c, 0xcb, 0x8d, 0xc2, + 0x71, 0x59, 0x91, 0x6b, 0x8d, 0x42, 0xa3, 0x52, 0xab, 0xfa, 0x7a, 0x27, 0xbf, 0x8c, 0xc3, 0x1a, + 0x2d, 0xb4, 0xba, 0x65, 0x5d, 0xd7, 0xe7, 0xdc, 0x86, 0x2c, 0x2d, 0x0d, 0x29, 0xc1, 0xa8, 0x30, + 0x43, 0xe1, 0xcf, 0xdc, 0xd8, 0xd0, 0x6d, 0x8a, 0xc4, 0x7d, 0x4d, 0x91, 0x4a, 0x30, 0x52, 0xbe, + 0xc3, 0xb7, 0x0f, 0x02, 0xb3, 0x45, 0x25, 0x5f, 0x4f, 0x42, 0x42, 0xb9, 0xbb, 0xd1, 0xdc, 0xa2, + 0xae, 0xb9, 0x8b, 0x64, 0x5a, 0x17, 0xf4, 0x56, 0xfb, 0xb0, 0x1e, 0x94, 0x97, 0x39, 0x8e, 0x0f, + 0x47, 0x8a, 0xfc, 0x9e, 0xfb, 0xf4, 0x70, 0x3d, 0x0c, 0xe9, 0xdf, 0x05, 0x48, 0xbb, 0x60, 0x72, + 0x05, 0x59, 0xda, 0xef, 0x60, 0xae, 0xa8, 0xb8, 0x40, 0x20, 0x5e, 0x8d, 0xd2, 0x5f, 0x9e, 0x8f, + 0x07, 0xcb, 0xf3, 0xa1, 0xfb, 0x9c, 0x08, 0xdd, 0xe7, 0x1f, 0xc0, 0x72, 0x8b, 0x88, 0xaf, 0x19, + 0xba, 0x62, 0x6b, 0x3d, 0xb7, 0x66, 0x18, 0x55, 0xa6, 0x5a, 0x72, 0x09, 0x08, 0x08, 0x6d, 0xc3, + 0x92, 0xd3, 0x5e, 0x53, 0x6c, 0x43, 0x19, 0x58, 0x38, 0x97, 0x72, 0x52, 0x77, 0x70, 0x60, 0x0d, + 0xa3, 0x69, 0x61, 0xe9, 0x1f, 0x05, 0x58, 0xa3, 0x15, 0x89, 0xa0, 0x39, 0x4e, 0x6a, 0x33, 0xf8, + 0x2d, 0x2e, 0x70, 0xab, 0x85, 0x32, 0xfc, 0xb6, 0x12, 0xb2, 0x1c, 0xac, 0x07, 0xe7, 0x63, 0x59, + 0xd8, 0x5f, 0x0b, 0xb0, 0x4a, 0x42, 0x0a, 0x77, 0xe0, 0x6d, 0x47, 0x38, 0x33, 0xec, 0x64, 0x40, + 0x99, 0xc9, 0xa0, 0x32, 0xa5, 0xbf, 0x15, 0x60, 0x2d, 0x20, 0x2b, 0xb3, 0xd4, 0xcf, 0x82, 0xe1, + 0xd2, 0x0d, 0x7f, 0xb8, 0x34, 0x82, 0x3f, 0x63, 0xc0, 0xf4, 0xc0, 0x0d, 0x98, 0x66, 0x3b, 0x10, + 0x7f, 0x14, 0x87, 0xad, 0xa1, 0xb7, 0x74, 0x7a, 0xda, 0xed, 0x19, 0xf2, 0xfd, 0x8b, 0x75, 0x70, + 0x9f, 0x06, 0x5d, 0xdd, 0xfd, 0x51, 0x07, 0x1e, 0x22, 0xd2, 0xb7, 0x65, 0x80, 0xbf, 0xeb, 0x2f, + 0xdd, 0xf1, 0xf3, 0xb2, 0x2d, 0x9c, 0xb2, 0x15, 0xf1, 0x09, 0x5c, 0x71, 0xaa, 0x20, 0xde, 0xcb, + 0x0c, 0xb7, 0xd1, 0x4a, 0xbd, 0x48, 0x5a, 0x5e, 0x23, 0xc3, 0xde, 0x03, 0x02, 0x56, 0xf7, 0x6d, + 0x4b, 0xff, 0xc5, 0x6d, 0x46, 0x43, 0xed, 0x63, 0xd9, 0xb0, 0x1d, 0x27, 0xe0, 0x6e, 0x86, 0x02, + 0x97, 0x06, 0x7d, 0x92, 0xb3, 0x28, 0x96, 0x6d, 0xaa, 0x36, 0xee, 0x9c, 0x07, 0x93, 0xc1, 0x48, + 0xfa, 0x7c, 0xd3, 0x21, 0xae, 0x33, 0xda, 0xc3, 0x98, 0x9c, 0x19, 0x70, 0x10, 0x74, 0x0d, 0xc0, + 0x24, 0x34, 0x58, 0xd1, 0x8d, 0x6f, 0xa8, 0xb4, 0x87, 0x31, 0x79, 0x81, 0xc2, 0xaa, 0xc6, 0x37, + 0xe2, 0xdf, 0x09, 0x90, 0xe1, 0xb9, 0xa0, 0x3a, 0xcc, 0x59, 0xad, 0x53, 0xdc, 0x73, 0xaf, 0xe1, + 0x87, 0x6f, 0x22, 0x4b, 0xbe, 0xee, 0xb0, 0x90, 0x19, 0x2b, 0xe9, 0x73, 0x98, 0xa3, 0x90, 0x91, + 0xea, 0xf9, 0x7e, 0x65, 0xbf, 0x96, 0x15, 0xd0, 0x3c, 0x24, 0x0e, 0xf6, 0xeb, 0xd9, 0x38, 0x5a, + 0x82, 0x74, 0xbd, 0xf2, 0x85, 0x42, 0xee, 0xe9, 0x6c, 0x82, 0x44, 0x1c, 0x8d, 0xda, 0xf3, 0xb2, + 0xac, 0xd4, 0xf6, 0x95, 0xc3, 0x42, 0xb5, 0x56, 0xc9, 0x26, 0x9d, 0x42, 0x7b, 0x31, 0x0d, 0x73, + 0x6a, 0x8b, 0xcc, 0x2f, 0xfd, 0x3c, 0xee, 0xdf, 0x68, 0x5e, 0x34, 0xb6, 0xd1, 0x55, 0x58, 0xeb, + 0xaa, 0x96, 0xad, 0x98, 0x6c, 0x40, 0xb1, 0x06, 0x4e, 0x04, 0x3e, 0xf6, 0x1d, 0xc4, 0xd0, 0x71, + 0xaf, 0x10, 0x42, 0x97, 0x61, 0x9d, 0x92, 0x8d, 0xf2, 0x3b, 0x51, 0xb5, 0xee, 0x30, 0x80, 0x9c, + 0x9a, 0xdf, 0x3e, 0x25, 0x43, 0x3b, 0xb0, 0xc2, 0x24, 0xd2, 0xce, 0xb0, 0xcb, 0xcc, 0x72, 0x7c, + 0x56, 0x4a, 0x46, 0xc3, 0x21, 0x86, 0x6f, 0xa1, 0x43, 0x40, 0x8e, 0xf7, 0xf0, 0x04, 0x98, 0xf2, + 0x1a, 0xca, 0x12, 0x2a, 0x77, 0x76, 0x02, 0xa6, 0x5d, 0x8b, 0x5f, 0x25, 0x61, 0xbd, 0x6a, 0xb4, + 0x71, 0xdd, 0x56, 0x3b, 0xb3, 0xd4, 0xee, 0x7f, 0x6b, 0xb4, 0x14, 0x1a, 0xe7, 0x4f, 0x7e, 0x38, + 0xd7, 0x69, 0x2a, 0xa0, 0x28, 0x0f, 0x2b, 0x96, 0xad, 0x76, 0x1c, 0x5f, 0xaf, 0x9a, 0x1d, 0x6c, + 0x2b, 0x7d, 0xd5, 0x3e, 0x65, 0x8e, 0xfc, 0x32, 0x1b, 0x6a, 0x38, 0x23, 0xc7, 0xaa, 0x7d, 0x1a, + 0x5e, 0x52, 0x4f, 0xce, 0x5c, 0x52, 0xff, 0x3c, 0x58, 0xd5, 0xfa, 0x60, 0xc2, 0x5a, 0x22, 0x22, + 0xb6, 0x2f, 0xc6, 0x94, 0xcb, 0xef, 0x4d, 0x60, 0x39, 0xb9, 0x4c, 0x7e, 0xf1, 0xf2, 0xf0, 0x77, + 0x5c, 0x69, 0x7f, 0x07, 0xae, 0x8c, 0x2c, 0x9e, 0xc5, 0x07, 0x1d, 0xc8, 0x91, 0xa1, 0xa6, 0x6e, + 0xcd, 0x68, 0x8e, 0x63, 0x2c, 0x26, 0x3e, 0xc6, 0x62, 0xa4, 0x0d, 0x78, 0x27, 0x64, 0x22, 0x26, + 0xc5, 0xdf, 0xa7, 0xa8, 0x18, 0xb3, 0x37, 0x7d, 0xbe, 0x1c, 0x77, 0x2a, 0x3e, 0xf6, 0x6f, 0x7b, + 0x68, 0x7f, 0xe4, 0xdb, 0x38, 0x17, 0xd7, 0x60, 0xd1, 0x8f, 0xc7, 0x62, 0x1c, 0x7b, 0xc2, 0xc1, + 0x49, 0x5d, 0xa8, 0x17, 0x35, 0x17, 0xe8, 0x45, 0x1d, 0x0d, 0x0f, 0xd5, 0x3c, 0x9f, 0xb7, 0x8c, + 0x55, 0x45, 0xc4, 0xb1, 0x7a, 0x39, 0x72, 0xac, 0xd2, 0x7c, 0x83, 0x6b, 0x2c, 0xd3, 0x5f, 0x83, + 0x83, 0xc5, 0x8c, 0x3a, 0xb4, 0xf3, 0x24, 0xbd, 0x04, 0x91, 0x5a, 0xfc, 0xec, 0xbd, 0xa0, 0x80, + 0x19, 0xc5, 0x83, 0x66, 0x24, 0x6d, 0xc1, 0x46, 0x28, 0x6f, 0x36, 0xf5, 0x0b, 0x2a, 0xd7, 0x01, + 0x66, 0xa5, 0xc4, 0xba, 0xad, 0xda, 0xd6, 0xb4, 0x33, 0xb3, 0x41, 0xff, 0xcc, 0x14, 0xe4, 0xcc, + 0x7c, 0x40, 0x57, 0x15, 0x64, 0xcd, 0x2e, 0xff, 0xf7, 0x21, 0x35, 0x70, 0xaa, 0xe2, 0x34, 0x4c, + 0x5f, 0xe1, 0x4d, 0xba, 0x49, 0x86, 0x64, 0x8a, 0x21, 0xfd, 0x5c, 0x80, 0x45, 0x1f, 0x18, 0x6d, + 0xc2, 0x82, 0x57, 0x24, 0x73, 0x33, 0x4a, 0x0f, 0x40, 0xf6, 0xc0, 0x36, 0x6c, 0xb5, 0xcb, 0xde, + 0xbb, 0xd0, 0x0f, 0x84, 0x20, 0x39, 0xb0, 0x30, 0x4d, 0x38, 0x12, 0xb2, 0xf3, 0x3f, 0xfa, 0x10, + 0x92, 0x03, 0x5d, 0xb3, 0x9d, 0xb3, 0x97, 0x09, 0x1e, 0x2a, 0x67, 0xaa, 0x7c, 0x53, 0xd7, 0x6c, + 0xd9, 0xc1, 0x92, 0x1e, 0x42, 0x92, 0x7c, 0xf1, 0x91, 0xd2, 0x02, 0xa4, 0x8a, 0x2f, 0x1a, 0xe5, + 0x7a, 0x56, 0x40, 0x00, 0x73, 0x95, 0x6a, 0x6d, 0xaf, 0x4c, 0xa2, 0xa5, 0x4b, 0x30, 0xf7, 0xb4, + 0x59, 0x90, 0x1f, 0xd7, 0xb3, 0x09, 0xd1, 0xb9, 0xca, 0x37, 0x3d, 0x5d, 0x84, 0x15, 0xef, 0xbe, + 0xa2, 0x7b, 0x34, 0xae, 0x6c, 0x57, 0x08, 0x2d, 0xdb, 0x6d, 0x71, 0xb7, 0xd5, 0x84, 0x82, 0xdd, + 0xbf, 0x24, 0x60, 0x2d, 0x14, 0x0f, 0x3d, 0xf0, 0x97, 0xea, 0xae, 0x47, 0xf2, 0xf4, 0x17, 0xe9, + 0x9e, 0x86, 0x17, 0xe9, 0xee, 0x44, 0x33, 0x88, 0x2c, 0xcf, 0xfd, 0xb9, 0x40, 0xcb, 0x73, 0xbb, + 0x5c, 0xb9, 0xe9, 0xd6, 0x44, 0x91, 0xfc, 0xf5, 0xa5, 0x67, 0x63, 0xea, 0x72, 0xf5, 0x46, 0xe1, + 0xa0, 0xac, 0x34, 0xab, 0xf4, 0xaf, 0x57, 0x97, 0x5b, 0x85, 0xec, 0x41, 0xd9, 0x2d, 0xbc, 0x29, + 0xf5, 0x46, 0xa1, 0x41, 0x76, 0x6f, 0xa4, 0x26, 0x96, 0x10, 0xff, 0x30, 0x58, 0x13, 0x2b, 0x71, + 0x42, 0xee, 0x4c, 0xbf, 0x6c, 0xbf, 0xb4, 0xf7, 0xc2, 0xa4, 0xdd, 0x84, 0x1c, 0x93, 0xa7, 0x59, + 0xa7, 0x42, 0x57, 0x1a, 0x0a, 0xb3, 0xa6, 0x61, 0x61, 0x6c, 0x15, 0x10, 0x33, 0x19, 0xff, 0x8f, + 0x0b, 0x7e, 0x22, 0xc0, 0x0a, 0x07, 0x66, 0x16, 0xe4, 0xeb, 0x18, 0x0b, 0x5c, 0xc7, 0x78, 0x07, + 0x56, 0x49, 0x6e, 0x4f, 0x4f, 0xad, 0xa5, 0xf4, 0xb1, 0xa9, 0x90, 0x11, 0x76, 0x76, 0x2e, 0xf7, + 0xd4, 0xd7, 0xac, 0xc3, 0x70, 0x8c, 0x4d, 0xc2, 0xf8, 0x2d, 0xd4, 0xd4, 0xa5, 0x1f, 0x0b, 0x34, + 0xc8, 0x98, 0x39, 0x0f, 0x9e, 0xe4, 0x71, 0x42, 0x12, 0xe5, 0xc4, 0xf4, 0x89, 0xb2, 0x54, 0xa0, + 0x91, 0xc5, 0x05, 0x72, 0xd2, 0xfb, 0xff, 0x27, 0xf8, 0x1e, 0x39, 0x55, 0x61, 0x99, 0xfb, 0xf1, + 0x05, 0xda, 0x1c, 0xf3, 0x9b, 0x0c, 0x67, 0xe9, 0xe2, 0x56, 0xe4, 0x2f, 0x36, 0xa4, 0x18, 0x3a, + 0xf1, 0xfd, 0x70, 0x84, 0xeb, 0x99, 0xbc, 0x3b, 0x42, 0x19, 0xe2, 0x64, 0xc4, 0x9b, 0x13, 0xb0, + 0xbc, 0x79, 0x3e, 0x81, 0x94, 0xf3, 0x3e, 0x1d, 0xad, 0xfa, 0xde, 0x65, 0x79, 0xcf, 0xd7, 0xc5, + 0xb5, 0x00, 0xd4, 0xa5, 0xbb, 0xff, 0x6f, 0x0b, 0x00, 0xc3, 0x8c, 0x0f, 0x3d, 0x86, 0x25, 0xff, + 0x13, 0x59, 0xb4, 0x11, 0xf1, 0x40, 0x5b, 0xdc, 0x0c, 0x1f, 0xf4, 0x64, 0x7a, 0x0c, 0x4b, 0xfe, + 0x97, 0x40, 0x43, 0x66, 0x21, 0xaf, 0x91, 0x86, 0xcc, 0x42, 0x1f, 0x0f, 0xc5, 0x50, 0x17, 0xae, + 0x8c, 0x79, 0x0b, 0x82, 0x6e, 0x4d, 0xf7, 0x62, 0x46, 0x7c, 0x6f, 0xca, 0x47, 0x25, 0x52, 0x0c, + 0x99, 0xf0, 0xce, 0xd8, 0x27, 0x10, 0xe8, 0xf6, 0xb4, 0x0f, 0x34, 0xc4, 0xf7, 0xa7, 0xc0, 0xf4, + 0xe6, 0x1c, 0x80, 0x38, 0xbe, 0xef, 0x8a, 0xde, 0x9f, 0xfa, 0x41, 0x80, 0x78, 0x67, 0xfa, 0x36, + 0xae, 0x14, 0x43, 0x87, 0xb0, 0xe8, 0x6b, 0x4a, 0x22, 0x31, 0xb4, 0x53, 0x49, 0x19, 0x6f, 0x44, + 0x74, 0x31, 0x29, 0x27, 0x5f, 0xe3, 0x6c, 0xc8, 0x69, 0xb4, 0x03, 0x38, 0xe4, 0x14, 0xd2, 0x69, + 0x0b, 0xaa, 0x3f, 0x70, 0xc3, 0x86, 0xa9, 0x3f, 0xfc, 0x8a, 0x0e, 0x53, 0xff, 0x98, 0xeb, 0x5a, + 0x8a, 0xa1, 0xa7, 0x90, 0xe1, 0x0b, 0xe9, 0x68, 0x2b, 0xb2, 0x21, 0x20, 0x5e, 0x1d, 0x37, 0xec, + 0x67, 0xc9, 0xd7, 0x6d, 0x87, 0x2c, 0x43, 0xeb, 0xc7, 0x43, 0x96, 0x63, 0xca, 0xbd, 0x31, 0xe2, + 0x9f, 0xb8, 0x9a, 0xe8, 0xd0, 0x3f, 0x85, 0x95, 0x81, 0x87, 0xfe, 0x29, 0xb4, 0x90, 0x2a, 0xc5, + 0x90, 0x06, 0xeb, 0xe1, 0x95, 0x3d, 0x74, 0x73, 0xaa, 0x8a, 0xa3, 0x78, 0x6b, 0x12, 0x9a, 0xef, + 0x04, 0xaf, 0x87, 0xd7, 0x96, 0xc2, 0xa6, 0x0a, 0x29, 0x8b, 0x85, 0x4d, 0x15, 0x56, 0xa2, 0x92, + 0x48, 0xf0, 0x76, 0xff, 0x17, 0x29, 0x48, 0x3a, 0x97, 0x5f, 0x03, 0x2e, 0x05, 0xb2, 0x63, 0x74, + 0x35, 0xba, 0x66, 0x20, 0x5e, 0x1b, 0x3b, 0xee, 0x2d, 0xe6, 0x25, 0x5c, 0x1e, 0xc9, 0x77, 0xd1, + 0xb6, 0x9f, 0x2e, 0x2c, 0xe7, 0x16, 0xaf, 0x47, 0x60, 0x04, 0x79, 0xf3, 0x4e, 0x6e, 0x7b, 0x52, + 0x42, 0xc6, 0xf3, 0x1e, 0xe7, 0xd8, 0xbe, 0xa2, 0xb1, 0x46, 0xd0, 0xa5, 0x49, 0xbc, 0x5c, 0xa1, + 0xce, 0xec, 0x46, 0x24, 0x8e, 0x37, 0xc3, 0x97, 0x5e, 0x90, 0xe3, 0xcb, 0x20, 0x10, 0x27, 0x5c, + 0x68, 0xe2, 0x22, 0x4a, 0x51, 0x28, 0x1e, 0xfb, 0xe7, 0x90, 0x0d, 0x5e, 0xf8, 0x88, 0xdb, 0xaf, + 0x30, 0x23, 0xdd, 0x1e, 0x8f, 0x10, 0xd4, 0x4c, 0xd0, 0xdb, 0x04, 0xa5, 0x0a, 0xf3, 0x33, 0x37, + 0x22, 0x71, 0xfc, 0xfe, 0xd1, 0x17, 0xe7, 0x0d, 0xfd, 0xe3, 0x68, 0x4c, 0x38, 0xf4, 0x8f, 0x21, + 0x81, 0xa1, 0x14, 0xdb, 0x7d, 0x04, 0x40, 0x03, 0x79, 0xac, 0x0f, 0x7a, 0x68, 0x73, 0xa4, 0x4a, + 0x59, 0xd6, 0x07, 0xbd, 0x5a, 0x9f, 0x1c, 0x0a, 0x2b, 0xf7, 0xd3, 0xb4, 0x53, 0x40, 0x58, 0x70, + 0x08, 0xc8, 0xc0, 0xee, 0x11, 0x64, 0x87, 0xd4, 0x8a, 0x93, 0xee, 0xa2, 0xeb, 0xa1, 0x3c, 0x9c, + 0xdf, 0xaf, 0x05, 0x18, 0x65, 0x3c, 0x46, 0xce, 0xe8, 0xee, 0x67, 0x00, 0x2d, 0x4b, 0x53, 0x68, + 0x41, 0x01, 0x6d, 0x8d, 0xf0, 0xd9, 0xd7, 0x70, 0xb7, 0xed, 0xf2, 0xf8, 0x2b, 0x26, 0x4c, 0xcb, + 0xd2, 0x68, 0x5e, 0xbf, 0xfb, 0x03, 0x58, 0x64, 0x39, 0x09, 0xc1, 0x9b, 0x44, 0xcf, 0x64, 0xa0, + 0xab, 0x77, 0x46, 0x76, 0xcb, 0x6e, 0x52, 0xc3, 0x9e, 0x68, 0xa1, 0x6b, 0x23, 0x2c, 0x9e, 0xd0, + 0x91, 0x00, 0x13, 0x9a, 0xc8, 0xb0, 0xb1, 0xdd, 0x22, 0x2c, 0xb9, 0x6c, 0xec, 0x53, 0xa3, 0x8d, + 0xae, 0x86, 0x70, 0x21, 0x03, 0x01, 0x26, 0x8b, 0x8c, 0x09, 0x19, 0x1a, 0x8a, 0xe2, 0xfe, 0x14, + 0x75, 0x54, 0x14, 0x96, 0x67, 0x84, 0x8a, 0xc2, 0xc6, 0x8a, 0xa9, 0x97, 0x89, 0x96, 0xa5, 0xbd, + 0x9a, 0x73, 0x88, 0xbe, 0xf7, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x49, 0x85, 0xf2, 0xd3, 0x37, + 0x3d, 0x00, 0x00, } diff --git a/spec.md b/spec.md index ce546739..81e2eb33 100644 --- a/spec.md +++ b/spec.md @@ -642,6 +642,10 @@ message PluginCapability { message AlphaFeature { enum Type { UNKNOWN = 0; + + // Indicates that the plugin supports data lineage reporting for + // volumes. + VOLUME_LINEAGE = 1; } Type type = 1; // REQUIRED @@ -992,6 +996,32 @@ message Volume { // Indicates a volume accessible from both "zone" "Z2" and "zone" "Z3" // in the "region" "R1". repeated Topology accessible_topology = 5; + + // Lineage represent the entities and or processes that have + // influenced the data of this volume. + // Plugins that report volumes with this field set MUST also report a + // VOLUME_LINEAGE plugin capability. + // This is an OPTIONAL field. + repeated Provenance lineage = 6 [(alpha_field) = true]; +} + +// Provenance represents the origin of some storage object. +message Provenance { + option (alpha_message) = true; + + message Identity { + enum Type { + UNKNOWN = 0; + X509 = 1; + } + + Type type = 1; // REQUIRED + bytes value = 2; // REQUIRED + } + + repeated Identity identity = 1; // REQUIRED + .google.protobuf.Timestamp data_changed_at = 2; // OPTIONAL + .google.protobuf.Timestamp metadata_changed_at = 3; // OPTIONAL } message TopologyRequirement { From 61395aa24f110d2a71e21950611fa7fc2f9f21a1 Mon Sep 17 00:00:00 2001 From: James DeFelice Date: Thu, 4 Apr 2019 16:53:32 +0000 Subject: [PATCH 7/7] spec: experimental service: ObjectStore. Mock up of an experimental object storage API. Note the use of the `alpha_service` marker option for the new gRPC service, as well as the additional `alpha_xxx` markers for the new RPCs and top-level request/response messages. --- csi.proto | 64 ++ lib/go/csi/csi.pb.go | 1351 +++++++++++++++++++++++++++++++----------- spec.md | 85 +++ 3 files changed, 1162 insertions(+), 338 deletions(-) diff --git a/csi.proto b/csi.proto index 7b32f0da..83390cb7 100644 --- a/csi.proto +++ b/csi.proto @@ -127,6 +127,20 @@ service Node { rpc NodeGetInfo (NodeGetInfoRequest) returns (NodeGetInfoResponse) {} } + +service ObjectStore { + option (alpha_service) = true; + + rpc ObjectStoreRead(ObjectStoreReadRequest) + returns (ObjectStoreReadResponse) { + option (alpha_method) = true; + } + + rpc ObjectStoreWrite(ObjectStoreWriteRequest) + returns (ObjectStoreWriteResponse) { + option (alpha_method) = true; + } +} message GetPluginInfoRequest { // Intentionally empty. } @@ -236,6 +250,9 @@ message PluginCapability { // Indicates that the plugin supports data lineage reporting for // volumes. VOLUME_LINEAGE = 1; + + // Indicates that the plugin supports the object storage service. + OBJECT_STORE = 2; } Type type = 1; // REQUIRED @@ -1452,3 +1469,50 @@ message NodeExpandVolumeResponse { // The capacity of the volume in bytes. This field is OPTIONAL. int64 capacity_bytes = 1; } +message ObjectStoreReadRequest { + option (alpha_message) = true; + + message DataSelector { + message Range { + int64 offset = 1; + int64 length = 2; + } + + repeated Range range = 1; + } + + string location = 1; + map secrets = 2 [(csi_secret) = true]; + + oneof kind { + bool metadata_only = 3; + DataSelector selector = 4; + } +} + +message ObjectStoreReadResponse { + option (alpha_message) = true; + + message Segment { + int64 offset = 1; + bytes value = 2; + } + + repeated Segment segments = 1; +} +message ObjectStoreWriteRequest { + option (alpha_message) = true; + + string location = 1; + map secrets = 2 [(csi_secret) = true]; + + oneof action { + bytes data_append = 3; + bytes data_overwrite = 4; + bool remove = 5; + } +} + +message ObjectStoreWriteResponse { + option (alpha_message) = true; +} diff --git a/lib/go/csi/csi.pb.go b/lib/go/csi/csi.pb.go index 81603006..c5fce7bc 100644 --- a/lib/go/csi/csi.pb.go +++ b/lib/go/csi/csi.pb.go @@ -63,7 +63,7 @@ func (x PluginCapability_Service_Type) String() string { return proto.EnumName(PluginCapability_Service_Type_name, int32(x)) } func (PluginCapability_Service_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{4, 0, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{4, 0, 0} } type PluginCapability_VolumeExpansion_Type int32 @@ -124,7 +124,7 @@ func (x PluginCapability_VolumeExpansion_Type) String() string { return proto.EnumName(PluginCapability_VolumeExpansion_Type_name, int32(x)) } func (PluginCapability_VolumeExpansion_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{4, 1, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{4, 1, 0} } type PluginCapability_AlphaFeature_Type int32 @@ -134,22 +134,26 @@ const ( // Indicates that the plugin supports data lineage reporting for // volumes. PluginCapability_AlphaFeature_VOLUME_LINEAGE PluginCapability_AlphaFeature_Type = 1 + // Indicates that the plugin supports the object storage service. + PluginCapability_AlphaFeature_OBJECT_STORE PluginCapability_AlphaFeature_Type = 2 ) var PluginCapability_AlphaFeature_Type_name = map[int32]string{ 0: "UNKNOWN", 1: "VOLUME_LINEAGE", + 2: "OBJECT_STORE", } var PluginCapability_AlphaFeature_Type_value = map[string]int32{ "UNKNOWN": 0, "VOLUME_LINEAGE": 1, + "OBJECT_STORE": 2, } func (x PluginCapability_AlphaFeature_Type) String() string { return proto.EnumName(PluginCapability_AlphaFeature_Type_name, int32(x)) } func (PluginCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{4, 2, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{4, 2, 0} } type VolumeCapability_AccessMode_Mode int32 @@ -193,7 +197,7 @@ func (x VolumeCapability_AccessMode_Mode) String() string { return proto.EnumName(VolumeCapability_AccessMode_Mode_name, int32(x)) } func (VolumeCapability_AccessMode_Mode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{10, 2, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{10, 2, 0} } type Provenance_Identity_Type int32 @@ -216,7 +220,7 @@ func (x Provenance_Identity_Type) String() string { return proto.EnumName(Provenance_Identity_Type_name, int32(x)) } func (Provenance_Identity_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{13, 0, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{13, 0, 0} } type ControllerServiceCapability_RPC_Type int32 @@ -274,7 +278,7 @@ func (x ControllerServiceCapability_RPC_Type) String() string { return proto.EnumName(ControllerServiceCapability_RPC_Type_name, int32(x)) } func (ControllerServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{30, 0, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{30, 0, 0} } type ControllerServiceCapability_AlphaFeature_Type int32 @@ -299,7 +303,7 @@ func (x ControllerServiceCapability_AlphaFeature_Type) String() string { return proto.EnumName(ControllerServiceCapability_AlphaFeature_Type_name, int32(x)) } func (ControllerServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{30, 1, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{30, 1, 0} } // https://en.wikipedia.org/wiki/Backup_rotation_scheme#Schemes @@ -332,7 +336,7 @@ func (x ControllerTapeRotationRequest_UpdateStrategy_Scheme) String() string { return proto.EnumName(ControllerTapeRotationRequest_UpdateStrategy_Scheme_name, int32(x)) } func (ControllerTapeRotationRequest_UpdateStrategy_Scheme) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{40, 0, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{40, 0, 0} } type VolumeUsage_Unit int32 @@ -362,7 +366,7 @@ func (x VolumeUsage_Unit) String() string { return proto.EnumName(VolumeUsage_Unit_name, int32(x)) } func (VolumeUsage_Unit) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{52, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{52, 0} } type NodeServiceCapability_RPC_Type int32 @@ -395,7 +399,7 @@ func (x NodeServiceCapability_RPC_Type) String() string { return proto.EnumName(NodeServiceCapability_RPC_Type_name, int32(x)) } func (NodeServiceCapability_RPC_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{55, 0, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{55, 0, 0} } type NodeServiceCapability_AlphaFeature_Type int32 @@ -420,7 +424,7 @@ func (x NodeServiceCapability_AlphaFeature_Type) String() string { return proto.EnumName(NodeServiceCapability_AlphaFeature_Type_name, int32(x)) } func (NodeServiceCapability_AlphaFeature_Type) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{55, 1, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{55, 1, 0} } type GetPluginInfoRequest struct { @@ -433,7 +437,7 @@ func (m *GetPluginInfoRequest) Reset() { *m = GetPluginInfoRequest{} } func (m *GetPluginInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoRequest) ProtoMessage() {} func (*GetPluginInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{0} } func (m *GetPluginInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoRequest.Unmarshal(m, b) @@ -475,7 +479,7 @@ func (m *GetPluginInfoResponse) Reset() { *m = GetPluginInfoResponse{} } func (m *GetPluginInfoResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginInfoResponse) ProtoMessage() {} func (*GetPluginInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{1} + return fileDescriptor_csi_b969d4cef704dd7f, []int{1} } func (m *GetPluginInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginInfoResponse.Unmarshal(m, b) @@ -526,7 +530,7 @@ func (m *GetPluginCapabilitiesRequest) Reset() { *m = GetPluginCapabilit func (m *GetPluginCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesRequest) ProtoMessage() {} func (*GetPluginCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{2} + return fileDescriptor_csi_b969d4cef704dd7f, []int{2} } func (m *GetPluginCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesRequest.Unmarshal(m, b) @@ -559,7 +563,7 @@ func (m *GetPluginCapabilitiesResponse) Reset() { *m = GetPluginCapabili func (m *GetPluginCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*GetPluginCapabilitiesResponse) ProtoMessage() {} func (*GetPluginCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{3} + return fileDescriptor_csi_b969d4cef704dd7f, []int{3} } func (m *GetPluginCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetPluginCapabilitiesResponse.Unmarshal(m, b) @@ -602,7 +606,7 @@ func (m *PluginCapability) Reset() { *m = PluginCapability{} } func (m *PluginCapability) String() string { return proto.CompactTextString(m) } func (*PluginCapability) ProtoMessage() {} func (*PluginCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{4} + return fileDescriptor_csi_b969d4cef704dd7f, []int{4} } func (m *PluginCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability.Unmarshal(m, b) @@ -776,7 +780,7 @@ func (m *PluginCapability_Service) Reset() { *m = PluginCapability_Servi func (m *PluginCapability_Service) String() string { return proto.CompactTextString(m) } func (*PluginCapability_Service) ProtoMessage() {} func (*PluginCapability_Service) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{4, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{4, 0} } func (m *PluginCapability_Service) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_Service.Unmarshal(m, b) @@ -814,7 +818,7 @@ func (m *PluginCapability_VolumeExpansion) Reset() { *m = PluginCapabili func (m *PluginCapability_VolumeExpansion) String() string { return proto.CompactTextString(m) } func (*PluginCapability_VolumeExpansion) ProtoMessage() {} func (*PluginCapability_VolumeExpansion) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{4, 1} + return fileDescriptor_csi_b969d4cef704dd7f, []int{4, 1} } func (m *PluginCapability_VolumeExpansion) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_VolumeExpansion.Unmarshal(m, b) @@ -852,7 +856,7 @@ func (m *PluginCapability_AlphaFeature) Reset() { *m = PluginCapability_ func (m *PluginCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*PluginCapability_AlphaFeature) ProtoMessage() {} func (*PluginCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{4, 2} + return fileDescriptor_csi_b969d4cef704dd7f, []int{4, 2} } func (m *PluginCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PluginCapability_AlphaFeature.Unmarshal(m, b) @@ -889,7 +893,7 @@ func (m *ProbeRequest) Reset() { *m = ProbeRequest{} } func (m *ProbeRequest) String() string { return proto.CompactTextString(m) } func (*ProbeRequest) ProtoMessage() {} func (*ProbeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{5} + return fileDescriptor_csi_b969d4cef704dd7f, []int{5} } func (m *ProbeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeRequest.Unmarshal(m, b) @@ -940,7 +944,7 @@ func (m *ProbeResponse) Reset() { *m = ProbeResponse{} } func (m *ProbeResponse) String() string { return proto.CompactTextString(m) } func (*ProbeResponse) ProtoMessage() {} func (*ProbeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{6} + return fileDescriptor_csi_b969d4cef704dd7f, []int{6} } func (m *ProbeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ProbeResponse.Unmarshal(m, b) @@ -1049,7 +1053,7 @@ func (m *CreateVolumeRequest) Reset() { *m = CreateVolumeRequest{} } func (m *CreateVolumeRequest) String() string { return proto.CompactTextString(m) } func (*CreateVolumeRequest) ProtoMessage() {} func (*CreateVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{7} + return fileDescriptor_csi_b969d4cef704dd7f, []int{7} } func (m *CreateVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeRequest.Unmarshal(m, b) @@ -1134,7 +1138,7 @@ func (m *VolumeContentSource) Reset() { *m = VolumeContentSource{} } func (m *VolumeContentSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource) ProtoMessage() {} func (*VolumeContentSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{8} + return fileDescriptor_csi_b969d4cef704dd7f, []int{8} } func (m *VolumeContentSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource.Unmarshal(m, b) @@ -1280,7 +1284,7 @@ func (m *VolumeContentSource_SnapshotSource) Reset() { *m = VolumeConten func (m *VolumeContentSource_SnapshotSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_SnapshotSource) ProtoMessage() {} func (*VolumeContentSource_SnapshotSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{8, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{8, 0} } func (m *VolumeContentSource_SnapshotSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_SnapshotSource.Unmarshal(m, b) @@ -1321,7 +1325,7 @@ func (m *VolumeContentSource_VolumeSource) Reset() { *m = VolumeContentS func (m *VolumeContentSource_VolumeSource) String() string { return proto.CompactTextString(m) } func (*VolumeContentSource_VolumeSource) ProtoMessage() {} func (*VolumeContentSource_VolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{8, 1} + return fileDescriptor_csi_b969d4cef704dd7f, []int{8, 1} } func (m *VolumeContentSource_VolumeSource) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeContentSource_VolumeSource.Unmarshal(m, b) @@ -1362,7 +1366,7 @@ func (m *CreateVolumeResponse) Reset() { *m = CreateVolumeResponse{} } func (m *CreateVolumeResponse) String() string { return proto.CompactTextString(m) } func (*CreateVolumeResponse) ProtoMessage() {} func (*CreateVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{9} + return fileDescriptor_csi_b969d4cef704dd7f, []int{9} } func (m *CreateVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateVolumeResponse.Unmarshal(m, b) @@ -1409,7 +1413,7 @@ func (m *VolumeCapability) Reset() { *m = VolumeCapability{} } func (m *VolumeCapability) String() string { return proto.CompactTextString(m) } func (*VolumeCapability) ProtoMessage() {} func (*VolumeCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{10} + return fileDescriptor_csi_b969d4cef704dd7f, []int{10} } func (m *VolumeCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability.Unmarshal(m, b) @@ -1558,7 +1562,7 @@ func (m *VolumeCapability_BlockVolume) Reset() { *m = VolumeCapability_B func (m *VolumeCapability_BlockVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_BlockVolume) ProtoMessage() {} func (*VolumeCapability_BlockVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{10, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{10, 0} } func (m *VolumeCapability_BlockVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_BlockVolume.Unmarshal(m, b) @@ -1598,7 +1602,7 @@ func (m *VolumeCapability_MountVolume) Reset() { *m = VolumeCapability_M func (m *VolumeCapability_MountVolume) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_MountVolume) ProtoMessage() {} func (*VolumeCapability_MountVolume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{10, 1} + return fileDescriptor_csi_b969d4cef704dd7f, []int{10, 1} } func (m *VolumeCapability_MountVolume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_MountVolume.Unmarshal(m, b) @@ -1645,7 +1649,7 @@ func (m *VolumeCapability_AccessMode) Reset() { *m = VolumeCapability_Ac func (m *VolumeCapability_AccessMode) String() string { return proto.CompactTextString(m) } func (*VolumeCapability_AccessMode) ProtoMessage() {} func (*VolumeCapability_AccessMode) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{10, 2} + return fileDescriptor_csi_b969d4cef704dd7f, []int{10, 2} } func (m *VolumeCapability_AccessMode) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeCapability_AccessMode.Unmarshal(m, b) @@ -1693,7 +1697,7 @@ func (m *CapacityRange) Reset() { *m = CapacityRange{} } func (m *CapacityRange) String() string { return proto.CompactTextString(m) } func (*CapacityRange) ProtoMessage() {} func (*CapacityRange) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{11} + return fileDescriptor_csi_b969d4cef704dd7f, []int{11} } func (m *CapacityRange) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CapacityRange.Unmarshal(m, b) @@ -1804,7 +1808,7 @@ func (m *Volume) Reset() { *m = Volume{} } func (m *Volume) String() string { return proto.CompactTextString(m) } func (*Volume) ProtoMessage() {} func (*Volume) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{12} + return fileDescriptor_csi_b969d4cef704dd7f, []int{12} } func (m *Volume) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Volume.Unmarshal(m, b) @@ -1880,7 +1884,7 @@ func (m *Provenance) Reset() { *m = Provenance{} } func (m *Provenance) String() string { return proto.CompactTextString(m) } func (*Provenance) ProtoMessage() {} func (*Provenance) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{13} + return fileDescriptor_csi_b969d4cef704dd7f, []int{13} } func (m *Provenance) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Provenance.Unmarshal(m, b) @@ -1933,7 +1937,7 @@ func (m *Provenance_Identity) Reset() { *m = Provenance_Identity{} } func (m *Provenance_Identity) String() string { return proto.CompactTextString(m) } func (*Provenance_Identity) ProtoMessage() {} func (*Provenance_Identity) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{13, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{13, 0} } func (m *Provenance_Identity) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Provenance_Identity.Unmarshal(m, b) @@ -2104,7 +2108,7 @@ func (m *TopologyRequirement) Reset() { *m = TopologyRequirement{} } func (m *TopologyRequirement) String() string { return proto.CompactTextString(m) } func (*TopologyRequirement) ProtoMessage() {} func (*TopologyRequirement) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{14} + return fileDescriptor_csi_b969d4cef704dd7f, []int{14} } func (m *TopologyRequirement) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TopologyRequirement.Unmarshal(m, b) @@ -2178,7 +2182,7 @@ func (m *Topology) Reset() { *m = Topology{} } func (m *Topology) String() string { return proto.CompactTextString(m) } func (*Topology) ProtoMessage() {} func (*Topology) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{15} + return fileDescriptor_csi_b969d4cef704dd7f, []int{15} } func (m *Topology) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Topology.Unmarshal(m, b) @@ -2222,7 +2226,7 @@ func (m *DeleteVolumeRequest) Reset() { *m = DeleteVolumeRequest{} } func (m *DeleteVolumeRequest) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeRequest) ProtoMessage() {} func (*DeleteVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{16} + return fileDescriptor_csi_b969d4cef704dd7f, []int{16} } func (m *DeleteVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeRequest.Unmarshal(m, b) @@ -2266,7 +2270,7 @@ func (m *DeleteVolumeResponse) Reset() { *m = DeleteVolumeResponse{} } func (m *DeleteVolumeResponse) String() string { return proto.CompactTextString(m) } func (*DeleteVolumeResponse) ProtoMessage() {} func (*DeleteVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{17} + return fileDescriptor_csi_b969d4cef704dd7f, []int{17} } func (m *DeleteVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteVolumeResponse.Unmarshal(m, b) @@ -2320,7 +2324,7 @@ func (m *ControllerPublishVolumeRequest) Reset() { *m = ControllerPublis func (m *ControllerPublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeRequest) ProtoMessage() {} func (*ControllerPublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{18} + return fileDescriptor_csi_b969d4cef704dd7f, []int{18} } func (m *ControllerPublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeRequest.Unmarshal(m, b) @@ -2406,7 +2410,7 @@ func (m *ControllerPublishVolumeResponse) Reset() { *m = ControllerPubli func (m *ControllerPublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerPublishVolumeResponse) ProtoMessage() {} func (*ControllerPublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{19} + return fileDescriptor_csi_b969d4cef704dd7f, []int{19} } func (m *ControllerPublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerPublishVolumeResponse.Unmarshal(m, b) @@ -2457,7 +2461,7 @@ func (m *ControllerUnpublishVolumeRequest) Reset() { *m = ControllerUnpu func (m *ControllerUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeRequest) ProtoMessage() {} func (*ControllerUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{20} + return fileDescriptor_csi_b969d4cef704dd7f, []int{20} } func (m *ControllerUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeRequest.Unmarshal(m, b) @@ -2508,7 +2512,7 @@ func (m *ControllerUnpublishVolumeResponse) Reset() { *m = ControllerUnp func (m *ControllerUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerUnpublishVolumeResponse) ProtoMessage() {} func (*ControllerUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{21} + return fileDescriptor_csi_b969d4cef704dd7f, []int{21} } func (m *ControllerUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerUnpublishVolumeResponse.Unmarshal(m, b) @@ -2555,7 +2559,7 @@ func (m *ValidateVolumeCapabilitiesRequest) Reset() { *m = ValidateVolum func (m *ValidateVolumeCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesRequest) ProtoMessage() {} func (*ValidateVolumeCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{22} + return fileDescriptor_csi_b969d4cef704dd7f, []int{22} } func (m *ValidateVolumeCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesRequest.Unmarshal(m, b) @@ -2633,7 +2637,7 @@ func (m *ValidateVolumeCapabilitiesResponse) Reset() { *m = ValidateVolu func (m *ValidateVolumeCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ValidateVolumeCapabilitiesResponse) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{23} + return fileDescriptor_csi_b969d4cef704dd7f, []int{23} } func (m *ValidateVolumeCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse.Unmarshal(m, b) @@ -2690,7 +2694,7 @@ func (m *ValidateVolumeCapabilitiesResponse_Confirmed) String() string { } func (*ValidateVolumeCapabilitiesResponse_Confirmed) ProtoMessage() {} func (*ValidateVolumeCapabilitiesResponse_Confirmed) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{23, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{23, 0} } func (m *ValidateVolumeCapabilitiesResponse_Confirmed) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ValidateVolumeCapabilitiesResponse_Confirmed.Unmarshal(m, b) @@ -2755,7 +2759,7 @@ func (m *ListVolumesRequest) Reset() { *m = ListVolumesRequest{} } func (m *ListVolumesRequest) String() string { return proto.CompactTextString(m) } func (*ListVolumesRequest) ProtoMessage() {} func (*ListVolumesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{24} + return fileDescriptor_csi_b969d4cef704dd7f, []int{24} } func (m *ListVolumesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesRequest.Unmarshal(m, b) @@ -2807,7 +2811,7 @@ func (m *ListVolumesResponse) Reset() { *m = ListVolumesResponse{} } func (m *ListVolumesResponse) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse) ProtoMessage() {} func (*ListVolumesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{25} + return fileDescriptor_csi_b969d4cef704dd7f, []int{25} } func (m *ListVolumesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse.Unmarshal(m, b) @@ -2852,7 +2856,7 @@ func (m *ListVolumesResponse_Entry) Reset() { *m = ListVolumesResponse_E func (m *ListVolumesResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListVolumesResponse_Entry) ProtoMessage() {} func (*ListVolumesResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{25, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{25, 0} } func (m *ListVolumesResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListVolumesResponse_Entry.Unmarshal(m, b) @@ -2907,7 +2911,7 @@ func (m *GetCapacityRequest) Reset() { *m = GetCapacityRequest{} } func (m *GetCapacityRequest) String() string { return proto.CompactTextString(m) } func (*GetCapacityRequest) ProtoMessage() {} func (*GetCapacityRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{26} + return fileDescriptor_csi_b969d4cef704dd7f, []int{26} } func (m *GetCapacityRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityRequest.Unmarshal(m, b) @@ -2965,7 +2969,7 @@ func (m *GetCapacityResponse) Reset() { *m = GetCapacityResponse{} } func (m *GetCapacityResponse) String() string { return proto.CompactTextString(m) } func (*GetCapacityResponse) ProtoMessage() {} func (*GetCapacityResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{27} + return fileDescriptor_csi_b969d4cef704dd7f, []int{27} } func (m *GetCapacityResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCapacityResponse.Unmarshal(m, b) @@ -3002,7 +3006,7 @@ func (m *ControllerGetCapabilitiesRequest) Reset() { *m = ControllerGetC func (m *ControllerGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesRequest) ProtoMessage() {} func (*ControllerGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{28} + return fileDescriptor_csi_b969d4cef704dd7f, []int{28} } func (m *ControllerGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesRequest.Unmarshal(m, b) @@ -3035,7 +3039,7 @@ func (m *ControllerGetCapabilitiesResponse) Reset() { *m = ControllerGet func (m *ControllerGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*ControllerGetCapabilitiesResponse) ProtoMessage() {} func (*ControllerGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{29} + return fileDescriptor_csi_b969d4cef704dd7f, []int{29} } func (m *ControllerGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerGetCapabilitiesResponse.Unmarshal(m, b) @@ -3077,7 +3081,7 @@ func (m *ControllerServiceCapability) Reset() { *m = ControllerServiceCa func (m *ControllerServiceCapability) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability) ProtoMessage() {} func (*ControllerServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{30} + return fileDescriptor_csi_b969d4cef704dd7f, []int{30} } func (m *ControllerServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability.Unmarshal(m, b) @@ -3219,7 +3223,7 @@ func (m *ControllerServiceCapability_RPC) Reset() { *m = ControllerServi func (m *ControllerServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_RPC) ProtoMessage() {} func (*ControllerServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{30, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{30, 0} } func (m *ControllerServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_RPC.Unmarshal(m, b) @@ -3259,7 +3263,7 @@ func (m *ControllerServiceCapability_AlphaFeature) Reset() { func (m *ControllerServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*ControllerServiceCapability_AlphaFeature) ProtoMessage() {} func (*ControllerServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{30, 1} + return fileDescriptor_csi_b969d4cef704dd7f, []int{30, 1} } func (m *ControllerServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerServiceCapability_AlphaFeature.Unmarshal(m, b) @@ -3321,7 +3325,7 @@ func (m *CreateSnapshotRequest) Reset() { *m = CreateSnapshotRequest{} } func (m *CreateSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotRequest) ProtoMessage() {} func (*CreateSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{31} + return fileDescriptor_csi_b969d4cef704dd7f, []int{31} } func (m *CreateSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotRequest.Unmarshal(m, b) @@ -3383,7 +3387,7 @@ func (m *CreateSnapshotResponse) Reset() { *m = CreateSnapshotResponse{} func (m *CreateSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*CreateSnapshotResponse) ProtoMessage() {} func (*CreateSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{32} + return fileDescriptor_csi_b969d4cef704dd7f, []int{32} } func (m *CreateSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateSnapshotResponse.Unmarshal(m, b) @@ -3450,7 +3454,7 @@ func (m *Snapshot) Reset() { *m = Snapshot{} } func (m *Snapshot) String() string { return proto.CompactTextString(m) } func (*Snapshot) ProtoMessage() {} func (*Snapshot) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{33} + return fileDescriptor_csi_b969d4cef704dd7f, []int{33} } func (m *Snapshot) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Snapshot.Unmarshal(m, b) @@ -3522,7 +3526,7 @@ func (m *DeleteSnapshotRequest) Reset() { *m = DeleteSnapshotRequest{} } func (m *DeleteSnapshotRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotRequest) ProtoMessage() {} func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{34} + return fileDescriptor_csi_b969d4cef704dd7f, []int{34} } func (m *DeleteSnapshotRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotRequest.Unmarshal(m, b) @@ -3566,7 +3570,7 @@ func (m *DeleteSnapshotResponse) Reset() { *m = DeleteSnapshotResponse{} func (m *DeleteSnapshotResponse) String() string { return proto.CompactTextString(m) } func (*DeleteSnapshotResponse) ProtoMessage() {} func (*DeleteSnapshotResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{35} + return fileDescriptor_csi_b969d4cef704dd7f, []int{35} } func (m *DeleteSnapshotResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteSnapshotResponse.Unmarshal(m, b) @@ -3621,7 +3625,7 @@ func (m *ListSnapshotsRequest) Reset() { *m = ListSnapshotsRequest{} } func (m *ListSnapshotsRequest) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsRequest) ProtoMessage() {} func (*ListSnapshotsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{36} + return fileDescriptor_csi_b969d4cef704dd7f, []int{36} } func (m *ListSnapshotsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsRequest.Unmarshal(m, b) @@ -3687,7 +3691,7 @@ func (m *ListSnapshotsResponse) Reset() { *m = ListSnapshotsResponse{} } func (m *ListSnapshotsResponse) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse) ProtoMessage() {} func (*ListSnapshotsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{37} + return fileDescriptor_csi_b969d4cef704dd7f, []int{37} } func (m *ListSnapshotsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse.Unmarshal(m, b) @@ -3732,7 +3736,7 @@ func (m *ListSnapshotsResponse_Entry) Reset() { *m = ListSnapshotsRespon func (m *ListSnapshotsResponse_Entry) String() string { return proto.CompactTextString(m) } func (*ListSnapshotsResponse_Entry) ProtoMessage() {} func (*ListSnapshotsResponse_Entry) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{37, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{37, 0} } func (m *ListSnapshotsResponse_Entry) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListSnapshotsResponse_Entry.Unmarshal(m, b) @@ -3777,7 +3781,7 @@ func (m *ControllerExpandVolumeRequest) Reset() { *m = ControllerExpandV func (m *ControllerExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeRequest) ProtoMessage() {} func (*ControllerExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{38} + return fileDescriptor_csi_b969d4cef704dd7f, []int{38} } func (m *ControllerExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeRequest.Unmarshal(m, b) @@ -3834,7 +3838,7 @@ func (m *ControllerExpandVolumeResponse) Reset() { *m = ControllerExpand func (m *ControllerExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*ControllerExpandVolumeResponse) ProtoMessage() {} func (*ControllerExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{39} + return fileDescriptor_csi_b969d4cef704dd7f, []int{39} } func (m *ControllerExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerExpandVolumeResponse.Unmarshal(m, b) @@ -3885,7 +3889,7 @@ func (m *ControllerTapeRotationRequest) Reset() { *m = ControllerTapeRot func (m *ControllerTapeRotationRequest) String() string { return proto.CompactTextString(m) } func (*ControllerTapeRotationRequest) ProtoMessage() {} func (*ControllerTapeRotationRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{40} + return fileDescriptor_csi_b969d4cef704dd7f, []int{40} } func (m *ControllerTapeRotationRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerTapeRotationRequest.Unmarshal(m, b) @@ -4030,7 +4034,7 @@ func (m *ControllerTapeRotationRequest_UpdateStrategy) String() string { } func (*ControllerTapeRotationRequest_UpdateStrategy) ProtoMessage() {} func (*ControllerTapeRotationRequest_UpdateStrategy) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{40, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{40, 0} } func (m *ControllerTapeRotationRequest_UpdateStrategy) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerTapeRotationRequest_UpdateStrategy.Unmarshal(m, b) @@ -4072,7 +4076,7 @@ func (m *ControllerTapeRotationResponse) Reset() { *m = ControllerTapeRo func (m *ControllerTapeRotationResponse) String() string { return proto.CompactTextString(m) } func (*ControllerTapeRotationResponse) ProtoMessage() {} func (*ControllerTapeRotationResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{41} + return fileDescriptor_csi_b969d4cef704dd7f, []int{41} } func (m *ControllerTapeRotationResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ControllerTapeRotationResponse.Unmarshal(m, b) @@ -4161,7 +4165,7 @@ func (m *NodeStageVolumeRequest) Reset() { *m = NodeStageVolumeRequest{} func (m *NodeStageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeRequest) ProtoMessage() {} func (*NodeStageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{42} + return fileDescriptor_csi_b969d4cef704dd7f, []int{42} } func (m *NodeStageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeRequest.Unmarshal(m, b) @@ -4233,7 +4237,7 @@ func (m *NodeStageVolumeResponse) Reset() { *m = NodeStageVolumeResponse func (m *NodeStageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeStageVolumeResponse) ProtoMessage() {} func (*NodeStageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{43} + return fileDescriptor_csi_b969d4cef704dd7f, []int{43} } func (m *NodeStageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeStageVolumeResponse.Unmarshal(m, b) @@ -4269,7 +4273,7 @@ func (m *NodeUnstageVolumeRequest) Reset() { *m = NodeUnstageVolumeReque func (m *NodeUnstageVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeRequest) ProtoMessage() {} func (*NodeUnstageVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{44} + return fileDescriptor_csi_b969d4cef704dd7f, []int{44} } func (m *NodeUnstageVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeRequest.Unmarshal(m, b) @@ -4313,7 +4317,7 @@ func (m *NodeUnstageVolumeResponse) Reset() { *m = NodeUnstageVolumeResp func (m *NodeUnstageVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnstageVolumeResponse) ProtoMessage() {} func (*NodeUnstageVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{45} + return fileDescriptor_csi_b969d4cef704dd7f, []int{45} } func (m *NodeUnstageVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnstageVolumeResponse.Unmarshal(m, b) @@ -4387,7 +4391,7 @@ func (m *NodePublishVolumeRequest) Reset() { *m = NodePublishVolumeReque func (m *NodePublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeRequest) ProtoMessage() {} func (*NodePublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{46} + return fileDescriptor_csi_b969d4cef704dd7f, []int{46} } func (m *NodePublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeRequest.Unmarshal(m, b) @@ -4473,7 +4477,7 @@ func (m *NodePublishVolumeResponse) Reset() { *m = NodePublishVolumeResp func (m *NodePublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodePublishVolumeResponse) ProtoMessage() {} func (*NodePublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{47} + return fileDescriptor_csi_b969d4cef704dd7f, []int{47} } func (m *NodePublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodePublishVolumeResponse.Unmarshal(m, b) @@ -4510,7 +4514,7 @@ func (m *NodeUnpublishVolumeRequest) Reset() { *m = NodeUnpublishVolumeR func (m *NodeUnpublishVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeRequest) ProtoMessage() {} func (*NodeUnpublishVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{48} + return fileDescriptor_csi_b969d4cef704dd7f, []int{48} } func (m *NodeUnpublishVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeRequest.Unmarshal(m, b) @@ -4554,7 +4558,7 @@ func (m *NodeUnpublishVolumeResponse) Reset() { *m = NodeUnpublishVolume func (m *NodeUnpublishVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeUnpublishVolumeResponse) ProtoMessage() {} func (*NodeUnpublishVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{49} + return fileDescriptor_csi_b969d4cef704dd7f, []int{49} } func (m *NodeUnpublishVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeUnpublishVolumeResponse.Unmarshal(m, b) @@ -4592,7 +4596,7 @@ func (m *NodeGetVolumeStatsRequest) Reset() { *m = NodeGetVolumeStatsReq func (m *NodeGetVolumeStatsRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsRequest) ProtoMessage() {} func (*NodeGetVolumeStatsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{50} + return fileDescriptor_csi_b969d4cef704dd7f, []int{50} } func (m *NodeGetVolumeStatsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsRequest.Unmarshal(m, b) @@ -4638,7 +4642,7 @@ func (m *NodeGetVolumeStatsResponse) Reset() { *m = NodeGetVolumeStatsRe func (m *NodeGetVolumeStatsResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetVolumeStatsResponse) ProtoMessage() {} func (*NodeGetVolumeStatsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{51} + return fileDescriptor_csi_b969d4cef704dd7f, []int{51} } func (m *NodeGetVolumeStatsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetVolumeStatsResponse.Unmarshal(m, b) @@ -4686,7 +4690,7 @@ func (m *VolumeUsage) Reset() { *m = VolumeUsage{} } func (m *VolumeUsage) String() string { return proto.CompactTextString(m) } func (*VolumeUsage) ProtoMessage() {} func (*VolumeUsage) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{52} + return fileDescriptor_csi_b969d4cef704dd7f, []int{52} } func (m *VolumeUsage) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_VolumeUsage.Unmarshal(m, b) @@ -4744,7 +4748,7 @@ func (m *NodeGetCapabilitiesRequest) Reset() { *m = NodeGetCapabilitiesR func (m *NodeGetCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesRequest) ProtoMessage() {} func (*NodeGetCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{53} + return fileDescriptor_csi_b969d4cef704dd7f, []int{53} } func (m *NodeGetCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesRequest.Unmarshal(m, b) @@ -4777,7 +4781,7 @@ func (m *NodeGetCapabilitiesResponse) Reset() { *m = NodeGetCapabilities func (m *NodeGetCapabilitiesResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetCapabilitiesResponse) ProtoMessage() {} func (*NodeGetCapabilitiesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{54} + return fileDescriptor_csi_b969d4cef704dd7f, []int{54} } func (m *NodeGetCapabilitiesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetCapabilitiesResponse.Unmarshal(m, b) @@ -4819,7 +4823,7 @@ func (m *NodeServiceCapability) Reset() { *m = NodeServiceCapability{} } func (m *NodeServiceCapability) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability) ProtoMessage() {} func (*NodeServiceCapability) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{55} + return fileDescriptor_csi_b969d4cef704dd7f, []int{55} } func (m *NodeServiceCapability) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability.Unmarshal(m, b) @@ -4961,7 +4965,7 @@ func (m *NodeServiceCapability_RPC) Reset() { *m = NodeServiceCapability func (m *NodeServiceCapability_RPC) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_RPC) ProtoMessage() {} func (*NodeServiceCapability_RPC) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{55, 0} + return fileDescriptor_csi_b969d4cef704dd7f, []int{55, 0} } func (m *NodeServiceCapability_RPC) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_RPC.Unmarshal(m, b) @@ -4999,7 +5003,7 @@ func (m *NodeServiceCapability_AlphaFeature) Reset() { *m = NodeServiceC func (m *NodeServiceCapability_AlphaFeature) String() string { return proto.CompactTextString(m) } func (*NodeServiceCapability_AlphaFeature) ProtoMessage() {} func (*NodeServiceCapability_AlphaFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{55, 1} + return fileDescriptor_csi_b969d4cef704dd7f, []int{55, 1} } func (m *NodeServiceCapability_AlphaFeature) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeServiceCapability_AlphaFeature.Unmarshal(m, b) @@ -5036,7 +5040,7 @@ func (m *NodeGetInfoRequest) Reset() { *m = NodeGetInfoRequest{} } func (m *NodeGetInfoRequest) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoRequest) ProtoMessage() {} func (*NodeGetInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{56} + return fileDescriptor_csi_b969d4cef704dd7f, []int{56} } func (m *NodeGetInfoRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoRequest.Unmarshal(m, b) @@ -5099,7 +5103,7 @@ func (m *NodeGetInfoResponse) Reset() { *m = NodeGetInfoResponse{} } func (m *NodeGetInfoResponse) String() string { return proto.CompactTextString(m) } func (*NodeGetInfoResponse) ProtoMessage() {} func (*NodeGetInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{57} + return fileDescriptor_csi_b969d4cef704dd7f, []int{57} } func (m *NodeGetInfoResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeGetInfoResponse.Unmarshal(m, b) @@ -5161,7 +5165,7 @@ func (m *NodeExpandVolumeRequest) Reset() { *m = NodeExpandVolumeRequest func (m *NodeExpandVolumeRequest) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeRequest) ProtoMessage() {} func (*NodeExpandVolumeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{58} + return fileDescriptor_csi_b969d4cef704dd7f, []int{58} } func (m *NodeExpandVolumeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeRequest.Unmarshal(m, b) @@ -5214,7 +5218,7 @@ func (m *NodeExpandVolumeResponse) Reset() { *m = NodeExpandVolumeRespon func (m *NodeExpandVolumeResponse) String() string { return proto.CompactTextString(m) } func (*NodeExpandVolumeResponse) ProtoMessage() {} func (*NodeExpandVolumeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_csi_90473d66bc568efe, []int{59} + return fileDescriptor_csi_b969d4cef704dd7f, []int{59} } func (m *NodeExpandVolumeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_NodeExpandVolumeResponse.Unmarshal(m, b) @@ -5241,6 +5245,551 @@ func (m *NodeExpandVolumeResponse) GetCapacityBytes() int64 { return 0 } +type ObjectStoreReadRequest struct { + Location string `protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"` + Secrets map[string]string `protobuf:"bytes,2,rep,name=secrets,proto3" json:"secrets,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Types that are valid to be assigned to Kind: + // *ObjectStoreReadRequest_MetadataOnly + // *ObjectStoreReadRequest_Selector + Kind isObjectStoreReadRequest_Kind `protobuf_oneof:"kind"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ObjectStoreReadRequest) Reset() { *m = ObjectStoreReadRequest{} } +func (m *ObjectStoreReadRequest) String() string { return proto.CompactTextString(m) } +func (*ObjectStoreReadRequest) ProtoMessage() {} +func (*ObjectStoreReadRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_b969d4cef704dd7f, []int{60} +} +func (m *ObjectStoreReadRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ObjectStoreReadRequest.Unmarshal(m, b) +} +func (m *ObjectStoreReadRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ObjectStoreReadRequest.Marshal(b, m, deterministic) +} +func (dst *ObjectStoreReadRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectStoreReadRequest.Merge(dst, src) +} +func (m *ObjectStoreReadRequest) XXX_Size() int { + return xxx_messageInfo_ObjectStoreReadRequest.Size(m) +} +func (m *ObjectStoreReadRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectStoreReadRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectStoreReadRequest proto.InternalMessageInfo + +func (m *ObjectStoreReadRequest) GetLocation() string { + if m != nil { + return m.Location + } + return "" +} + +func (m *ObjectStoreReadRequest) GetSecrets() map[string]string { + if m != nil { + return m.Secrets + } + return nil +} + +type isObjectStoreReadRequest_Kind interface { + isObjectStoreReadRequest_Kind() +} + +type ObjectStoreReadRequest_MetadataOnly struct { + MetadataOnly bool `protobuf:"varint,3,opt,name=metadata_only,json=metadataOnly,proto3,oneof"` +} + +type ObjectStoreReadRequest_Selector struct { + Selector *ObjectStoreReadRequest_DataSelector `protobuf:"bytes,4,opt,name=selector,proto3,oneof"` +} + +func (*ObjectStoreReadRequest_MetadataOnly) isObjectStoreReadRequest_Kind() {} + +func (*ObjectStoreReadRequest_Selector) isObjectStoreReadRequest_Kind() {} + +func (m *ObjectStoreReadRequest) GetKind() isObjectStoreReadRequest_Kind { + if m != nil { + return m.Kind + } + return nil +} + +func (m *ObjectStoreReadRequest) GetMetadataOnly() bool { + if x, ok := m.GetKind().(*ObjectStoreReadRequest_MetadataOnly); ok { + return x.MetadataOnly + } + return false +} + +func (m *ObjectStoreReadRequest) GetSelector() *ObjectStoreReadRequest_DataSelector { + if x, ok := m.GetKind().(*ObjectStoreReadRequest_Selector); ok { + return x.Selector + } + return nil +} + +// XXX_OneofFuncs is for the internal use of the proto package. +func (*ObjectStoreReadRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _ObjectStoreReadRequest_OneofMarshaler, _ObjectStoreReadRequest_OneofUnmarshaler, _ObjectStoreReadRequest_OneofSizer, []interface{}{ + (*ObjectStoreReadRequest_MetadataOnly)(nil), + (*ObjectStoreReadRequest_Selector)(nil), + } +} + +func _ObjectStoreReadRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*ObjectStoreReadRequest) + // kind + switch x := m.Kind.(type) { + case *ObjectStoreReadRequest_MetadataOnly: + t := uint64(0) + if x.MetadataOnly { + t = 1 + } + b.EncodeVarint(3<<3 | proto.WireVarint) + b.EncodeVarint(t) + case *ObjectStoreReadRequest_Selector: + b.EncodeVarint(4<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Selector); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("ObjectStoreReadRequest.Kind has unexpected type %T", x) + } + return nil +} + +func _ObjectStoreReadRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*ObjectStoreReadRequest) + switch tag { + case 3: // kind.metadata_only + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.Kind = &ObjectStoreReadRequest_MetadataOnly{x != 0} + return true, err + case 4: // kind.selector + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(ObjectStoreReadRequest_DataSelector) + err := b.DecodeMessage(msg) + m.Kind = &ObjectStoreReadRequest_Selector{msg} + return true, err + default: + return false, nil + } +} + +func _ObjectStoreReadRequest_OneofSizer(msg proto.Message) (n int) { + m := msg.(*ObjectStoreReadRequest) + // kind + switch x := m.Kind.(type) { + case *ObjectStoreReadRequest_MetadataOnly: + n += 1 // tag and wire + n += 1 + case *ObjectStoreReadRequest_Selector: + s := proto.Size(x.Selector) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + return n +} + +type ObjectStoreReadRequest_DataSelector struct { + Range []*ObjectStoreReadRequest_DataSelector_Range `protobuf:"bytes,1,rep,name=range,proto3" json:"range,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ObjectStoreReadRequest_DataSelector) Reset() { *m = ObjectStoreReadRequest_DataSelector{} } +func (m *ObjectStoreReadRequest_DataSelector) String() string { return proto.CompactTextString(m) } +func (*ObjectStoreReadRequest_DataSelector) ProtoMessage() {} +func (*ObjectStoreReadRequest_DataSelector) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_b969d4cef704dd7f, []int{60, 0} +} +func (m *ObjectStoreReadRequest_DataSelector) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ObjectStoreReadRequest_DataSelector.Unmarshal(m, b) +} +func (m *ObjectStoreReadRequest_DataSelector) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ObjectStoreReadRequest_DataSelector.Marshal(b, m, deterministic) +} +func (dst *ObjectStoreReadRequest_DataSelector) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectStoreReadRequest_DataSelector.Merge(dst, src) +} +func (m *ObjectStoreReadRequest_DataSelector) XXX_Size() int { + return xxx_messageInfo_ObjectStoreReadRequest_DataSelector.Size(m) +} +func (m *ObjectStoreReadRequest_DataSelector) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectStoreReadRequest_DataSelector.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectStoreReadRequest_DataSelector proto.InternalMessageInfo + +func (m *ObjectStoreReadRequest_DataSelector) GetRange() []*ObjectStoreReadRequest_DataSelector_Range { + if m != nil { + return m.Range + } + return nil +} + +type ObjectStoreReadRequest_DataSelector_Range struct { + Offset int64 `protobuf:"varint,1,opt,name=offset,proto3" json:"offset,omitempty"` + Length int64 `protobuf:"varint,2,opt,name=length,proto3" json:"length,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ObjectStoreReadRequest_DataSelector_Range) Reset() { + *m = ObjectStoreReadRequest_DataSelector_Range{} +} +func (m *ObjectStoreReadRequest_DataSelector_Range) String() string { return proto.CompactTextString(m) } +func (*ObjectStoreReadRequest_DataSelector_Range) ProtoMessage() {} +func (*ObjectStoreReadRequest_DataSelector_Range) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_b969d4cef704dd7f, []int{60, 0, 0} +} +func (m *ObjectStoreReadRequest_DataSelector_Range) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ObjectStoreReadRequest_DataSelector_Range.Unmarshal(m, b) +} +func (m *ObjectStoreReadRequest_DataSelector_Range) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ObjectStoreReadRequest_DataSelector_Range.Marshal(b, m, deterministic) +} +func (dst *ObjectStoreReadRequest_DataSelector_Range) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectStoreReadRequest_DataSelector_Range.Merge(dst, src) +} +func (m *ObjectStoreReadRequest_DataSelector_Range) XXX_Size() int { + return xxx_messageInfo_ObjectStoreReadRequest_DataSelector_Range.Size(m) +} +func (m *ObjectStoreReadRequest_DataSelector_Range) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectStoreReadRequest_DataSelector_Range.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectStoreReadRequest_DataSelector_Range proto.InternalMessageInfo + +func (m *ObjectStoreReadRequest_DataSelector_Range) GetOffset() int64 { + if m != nil { + return m.Offset + } + return 0 +} + +func (m *ObjectStoreReadRequest_DataSelector_Range) GetLength() int64 { + if m != nil { + return m.Length + } + return 0 +} + +type ObjectStoreReadResponse struct { + Segments []*ObjectStoreReadResponse_Segment `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ObjectStoreReadResponse) Reset() { *m = ObjectStoreReadResponse{} } +func (m *ObjectStoreReadResponse) String() string { return proto.CompactTextString(m) } +func (*ObjectStoreReadResponse) ProtoMessage() {} +func (*ObjectStoreReadResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_b969d4cef704dd7f, []int{61} +} +func (m *ObjectStoreReadResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ObjectStoreReadResponse.Unmarshal(m, b) +} +func (m *ObjectStoreReadResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ObjectStoreReadResponse.Marshal(b, m, deterministic) +} +func (dst *ObjectStoreReadResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectStoreReadResponse.Merge(dst, src) +} +func (m *ObjectStoreReadResponse) XXX_Size() int { + return xxx_messageInfo_ObjectStoreReadResponse.Size(m) +} +func (m *ObjectStoreReadResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectStoreReadResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectStoreReadResponse proto.InternalMessageInfo + +func (m *ObjectStoreReadResponse) GetSegments() []*ObjectStoreReadResponse_Segment { + if m != nil { + return m.Segments + } + return nil +} + +type ObjectStoreReadResponse_Segment struct { + Offset int64 `protobuf:"varint,1,opt,name=offset,proto3" json:"offset,omitempty"` + Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ObjectStoreReadResponse_Segment) Reset() { *m = ObjectStoreReadResponse_Segment{} } +func (m *ObjectStoreReadResponse_Segment) String() string { return proto.CompactTextString(m) } +func (*ObjectStoreReadResponse_Segment) ProtoMessage() {} +func (*ObjectStoreReadResponse_Segment) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_b969d4cef704dd7f, []int{61, 0} +} +func (m *ObjectStoreReadResponse_Segment) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ObjectStoreReadResponse_Segment.Unmarshal(m, b) +} +func (m *ObjectStoreReadResponse_Segment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ObjectStoreReadResponse_Segment.Marshal(b, m, deterministic) +} +func (dst *ObjectStoreReadResponse_Segment) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectStoreReadResponse_Segment.Merge(dst, src) +} +func (m *ObjectStoreReadResponse_Segment) XXX_Size() int { + return xxx_messageInfo_ObjectStoreReadResponse_Segment.Size(m) +} +func (m *ObjectStoreReadResponse_Segment) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectStoreReadResponse_Segment.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectStoreReadResponse_Segment proto.InternalMessageInfo + +func (m *ObjectStoreReadResponse_Segment) GetOffset() int64 { + if m != nil { + return m.Offset + } + return 0 +} + +func (m *ObjectStoreReadResponse_Segment) GetValue() []byte { + if m != nil { + return m.Value + } + return nil +} + +type ObjectStoreWriteRequest struct { + Location string `protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"` + Secrets map[string]string `protobuf:"bytes,2,rep,name=secrets,proto3" json:"secrets,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Types that are valid to be assigned to Action: + // *ObjectStoreWriteRequest_DataAppend + // *ObjectStoreWriteRequest_DataOverwrite + // *ObjectStoreWriteRequest_Remove + Action isObjectStoreWriteRequest_Action `protobuf_oneof:"action"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ObjectStoreWriteRequest) Reset() { *m = ObjectStoreWriteRequest{} } +func (m *ObjectStoreWriteRequest) String() string { return proto.CompactTextString(m) } +func (*ObjectStoreWriteRequest) ProtoMessage() {} +func (*ObjectStoreWriteRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_b969d4cef704dd7f, []int{62} +} +func (m *ObjectStoreWriteRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ObjectStoreWriteRequest.Unmarshal(m, b) +} +func (m *ObjectStoreWriteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ObjectStoreWriteRequest.Marshal(b, m, deterministic) +} +func (dst *ObjectStoreWriteRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectStoreWriteRequest.Merge(dst, src) +} +func (m *ObjectStoreWriteRequest) XXX_Size() int { + return xxx_messageInfo_ObjectStoreWriteRequest.Size(m) +} +func (m *ObjectStoreWriteRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectStoreWriteRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectStoreWriteRequest proto.InternalMessageInfo + +func (m *ObjectStoreWriteRequest) GetLocation() string { + if m != nil { + return m.Location + } + return "" +} + +func (m *ObjectStoreWriteRequest) GetSecrets() map[string]string { + if m != nil { + return m.Secrets + } + return nil +} + +type isObjectStoreWriteRequest_Action interface { + isObjectStoreWriteRequest_Action() +} + +type ObjectStoreWriteRequest_DataAppend struct { + DataAppend []byte `protobuf:"bytes,3,opt,name=data_append,json=dataAppend,proto3,oneof"` +} + +type ObjectStoreWriteRequest_DataOverwrite struct { + DataOverwrite []byte `protobuf:"bytes,4,opt,name=data_overwrite,json=dataOverwrite,proto3,oneof"` +} + +type ObjectStoreWriteRequest_Remove struct { + Remove bool `protobuf:"varint,5,opt,name=remove,proto3,oneof"` +} + +func (*ObjectStoreWriteRequest_DataAppend) isObjectStoreWriteRequest_Action() {} + +func (*ObjectStoreWriteRequest_DataOverwrite) isObjectStoreWriteRequest_Action() {} + +func (*ObjectStoreWriteRequest_Remove) isObjectStoreWriteRequest_Action() {} + +func (m *ObjectStoreWriteRequest) GetAction() isObjectStoreWriteRequest_Action { + if m != nil { + return m.Action + } + return nil +} + +func (m *ObjectStoreWriteRequest) GetDataAppend() []byte { + if x, ok := m.GetAction().(*ObjectStoreWriteRequest_DataAppend); ok { + return x.DataAppend + } + return nil +} + +func (m *ObjectStoreWriteRequest) GetDataOverwrite() []byte { + if x, ok := m.GetAction().(*ObjectStoreWriteRequest_DataOverwrite); ok { + return x.DataOverwrite + } + return nil +} + +func (m *ObjectStoreWriteRequest) GetRemove() bool { + if x, ok := m.GetAction().(*ObjectStoreWriteRequest_Remove); ok { + return x.Remove + } + return false +} + +// XXX_OneofFuncs is for the internal use of the proto package. +func (*ObjectStoreWriteRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _ObjectStoreWriteRequest_OneofMarshaler, _ObjectStoreWriteRequest_OneofUnmarshaler, _ObjectStoreWriteRequest_OneofSizer, []interface{}{ + (*ObjectStoreWriteRequest_DataAppend)(nil), + (*ObjectStoreWriteRequest_DataOverwrite)(nil), + (*ObjectStoreWriteRequest_Remove)(nil), + } +} + +func _ObjectStoreWriteRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*ObjectStoreWriteRequest) + // action + switch x := m.Action.(type) { + case *ObjectStoreWriteRequest_DataAppend: + b.EncodeVarint(3<<3 | proto.WireBytes) + b.EncodeRawBytes(x.DataAppend) + case *ObjectStoreWriteRequest_DataOverwrite: + b.EncodeVarint(4<<3 | proto.WireBytes) + b.EncodeRawBytes(x.DataOverwrite) + case *ObjectStoreWriteRequest_Remove: + t := uint64(0) + if x.Remove { + t = 1 + } + b.EncodeVarint(5<<3 | proto.WireVarint) + b.EncodeVarint(t) + case nil: + default: + return fmt.Errorf("ObjectStoreWriteRequest.Action has unexpected type %T", x) + } + return nil +} + +func _ObjectStoreWriteRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*ObjectStoreWriteRequest) + switch tag { + case 3: // action.data_append + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeRawBytes(true) + m.Action = &ObjectStoreWriteRequest_DataAppend{x} + return true, err + case 4: // action.data_overwrite + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeRawBytes(true) + m.Action = &ObjectStoreWriteRequest_DataOverwrite{x} + return true, err + case 5: // action.remove + if wire != proto.WireVarint { + return true, proto.ErrInternalBadWireType + } + x, err := b.DecodeVarint() + m.Action = &ObjectStoreWriteRequest_Remove{x != 0} + return true, err + default: + return false, nil + } +} + +func _ObjectStoreWriteRequest_OneofSizer(msg proto.Message) (n int) { + m := msg.(*ObjectStoreWriteRequest) + // action + switch x := m.Action.(type) { + case *ObjectStoreWriteRequest_DataAppend: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(len(x.DataAppend))) + n += len(x.DataAppend) + case *ObjectStoreWriteRequest_DataOverwrite: + n += 1 // tag and wire + n += proto.SizeVarint(uint64(len(x.DataOverwrite))) + n += len(x.DataOverwrite) + case *ObjectStoreWriteRequest_Remove: + n += 1 // tag and wire + n += 1 + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + return n +} + +type ObjectStoreWriteResponse struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ObjectStoreWriteResponse) Reset() { *m = ObjectStoreWriteResponse{} } +func (m *ObjectStoreWriteResponse) String() string { return proto.CompactTextString(m) } +func (*ObjectStoreWriteResponse) ProtoMessage() {} +func (*ObjectStoreWriteResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_csi_b969d4cef704dd7f, []int{63} +} +func (m *ObjectStoreWriteResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ObjectStoreWriteResponse.Unmarshal(m, b) +} +func (m *ObjectStoreWriteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ObjectStoreWriteResponse.Marshal(b, m, deterministic) +} +func (dst *ObjectStoreWriteResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ObjectStoreWriteResponse.Merge(dst, src) +} +func (m *ObjectStoreWriteResponse) XXX_Size() int { + return xxx_messageInfo_ObjectStoreWriteResponse.Size(m) +} +func (m *ObjectStoreWriteResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ObjectStoreWriteResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ObjectStoreWriteResponse proto.InternalMessageInfo + var E_AlphaEnum = &proto.ExtensionDesc{ ExtendedType: (*descriptor.EnumOptions)(nil), ExtensionType: (*bool)(nil), @@ -5408,6 +5957,15 @@ func init() { proto.RegisterType((*NodeGetInfoResponse)(nil), "csi.v1.NodeGetInfoResponse") proto.RegisterType((*NodeExpandVolumeRequest)(nil), "csi.v1.NodeExpandVolumeRequest") proto.RegisterType((*NodeExpandVolumeResponse)(nil), "csi.v1.NodeExpandVolumeResponse") + proto.RegisterType((*ObjectStoreReadRequest)(nil), "csi.v1.ObjectStoreReadRequest") + proto.RegisterMapType((map[string]string)(nil), "csi.v1.ObjectStoreReadRequest.SecretsEntry") + proto.RegisterType((*ObjectStoreReadRequest_DataSelector)(nil), "csi.v1.ObjectStoreReadRequest.DataSelector") + proto.RegisterType((*ObjectStoreReadRequest_DataSelector_Range)(nil), "csi.v1.ObjectStoreReadRequest.DataSelector.Range") + proto.RegisterType((*ObjectStoreReadResponse)(nil), "csi.v1.ObjectStoreReadResponse") + proto.RegisterType((*ObjectStoreReadResponse_Segment)(nil), "csi.v1.ObjectStoreReadResponse.Segment") + proto.RegisterType((*ObjectStoreWriteRequest)(nil), "csi.v1.ObjectStoreWriteRequest") + proto.RegisterMapType((map[string]string)(nil), "csi.v1.ObjectStoreWriteRequest.SecretsEntry") + proto.RegisterType((*ObjectStoreWriteResponse)(nil), "csi.v1.ObjectStoreWriteResponse") proto.RegisterEnum("csi.v1.PluginCapability_Service_Type", PluginCapability_Service_Type_name, PluginCapability_Service_Type_value) proto.RegisterEnum("csi.v1.PluginCapability_VolumeExpansion_Type", PluginCapability_VolumeExpansion_Type_name, PluginCapability_VolumeExpansion_Type_value) proto.RegisterEnum("csi.v1.PluginCapability_AlphaFeature_Type", PluginCapability_AlphaFeature_Type_name, PluginCapability_AlphaFeature_Type_value) @@ -6321,258 +6879,375 @@ var _Node_serviceDesc = grpc.ServiceDesc{ Metadata: "github.com/container-storage-interface/spec/csi.proto", } +// ObjectStoreClient is the client API for ObjectStore service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type ObjectStoreClient interface { + ObjectStoreRead(ctx context.Context, in *ObjectStoreReadRequest, opts ...grpc.CallOption) (*ObjectStoreReadResponse, error) + ObjectStoreWrite(ctx context.Context, in *ObjectStoreWriteRequest, opts ...grpc.CallOption) (*ObjectStoreWriteResponse, error) +} + +type objectStoreClient struct { + cc *grpc.ClientConn +} + +func NewObjectStoreClient(cc *grpc.ClientConn) ObjectStoreClient { + return &objectStoreClient{cc} +} + +func (c *objectStoreClient) ObjectStoreRead(ctx context.Context, in *ObjectStoreReadRequest, opts ...grpc.CallOption) (*ObjectStoreReadResponse, error) { + out := new(ObjectStoreReadResponse) + err := c.cc.Invoke(ctx, "/csi.v1.ObjectStore/ObjectStoreRead", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *objectStoreClient) ObjectStoreWrite(ctx context.Context, in *ObjectStoreWriteRequest, opts ...grpc.CallOption) (*ObjectStoreWriteResponse, error) { + out := new(ObjectStoreWriteResponse) + err := c.cc.Invoke(ctx, "/csi.v1.ObjectStore/ObjectStoreWrite", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// ObjectStoreServer is the server API for ObjectStore service. +type ObjectStoreServer interface { + ObjectStoreRead(context.Context, *ObjectStoreReadRequest) (*ObjectStoreReadResponse, error) + ObjectStoreWrite(context.Context, *ObjectStoreWriteRequest) (*ObjectStoreWriteResponse, error) +} + +func RegisterObjectStoreServer(s *grpc.Server, srv ObjectStoreServer) { + s.RegisterService(&_ObjectStore_serviceDesc, srv) +} + +func _ObjectStore_ObjectStoreRead_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectStoreReadRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ObjectStoreServer).ObjectStoreRead(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/csi.v1.ObjectStore/ObjectStoreRead", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ObjectStoreServer).ObjectStoreRead(ctx, req.(*ObjectStoreReadRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ObjectStore_ObjectStoreWrite_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ObjectStoreWriteRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ObjectStoreServer).ObjectStoreWrite(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/csi.v1.ObjectStore/ObjectStoreWrite", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ObjectStoreServer).ObjectStoreWrite(ctx, req.(*ObjectStoreWriteRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _ObjectStore_serviceDesc = grpc.ServiceDesc{ + ServiceName: "csi.v1.ObjectStore", + HandlerType: (*ObjectStoreServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "ObjectStoreRead", + Handler: _ObjectStore_ObjectStoreRead_Handler, + }, + { + MethodName: "ObjectStoreWrite", + Handler: _ObjectStore_ObjectStoreWrite_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "github.com/container-storage-interface/spec/csi.proto", +} + func init() { - proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_90473d66bc568efe) + proto.RegisterFile("github.com/container-storage-interface/spec/csi.proto", fileDescriptor_csi_b969d4cef704dd7f) } -var fileDescriptor_csi_90473d66bc568efe = []byte{ - // 3955 bytes of a gzipped FileDescriptorProto +var fileDescriptor_csi_b969d4cef704dd7f = []byte{ + // 4288 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x3b, 0x4b, 0x6c, 0x1b, 0x49, - 0x76, 0x6c, 0x7e, 0x24, 0xea, 0x49, 0xa2, 0xe9, 0xd2, 0xc7, 0x9c, 0x96, 0x64, 0xcb, 0xed, 0xb1, - 0xc7, 0xe3, 0x19, 0x53, 0x63, 0xef, 0x78, 0x92, 0x91, 0x3d, 0xbb, 0x4b, 0x52, 0x94, 0xc4, 0xb1, - 0x4c, 0xca, 0x4d, 0xd2, 0x1e, 0x3b, 0x19, 0xf4, 0xb4, 0xc9, 0x12, 0xd5, 0x18, 0xb2, 0x9b, 0xdb, - 0xdd, 0xd4, 0x58, 0xb9, 0x04, 0x49, 0x80, 0x00, 0x41, 0x6e, 0x01, 0x16, 0x49, 0x4e, 0x09, 0x36, - 0x7b, 0x49, 0x90, 0x3d, 0xe4, 0x10, 0xe4, 0x98, 0x45, 0x8e, 0x39, 0x04, 0xc8, 0x25, 0x09, 0xf6, - 0x92, 0x4b, 0x90, 0xc3, 0x22, 0x01, 0xf6, 0x9c, 0x53, 0x50, 0x5d, 0xd5, 0xcd, 0xae, 0x66, 0xb3, - 0x49, 0x5a, 0x1e, 0xcc, 0x61, 0x4f, 0x52, 0xbf, 0x7a, 0xef, 0xd5, 0xab, 0x57, 0xaf, 0x5e, 0xbd, - 0x4f, 0x11, 0x1e, 0x74, 0x34, 0xfb, 0x74, 0xf0, 0x2a, 0xdf, 0x32, 0x7a, 0x3b, 0x2d, 0x43, 0xb7, - 0x55, 0x4d, 0xc7, 0xe6, 0x5d, 0xcb, 0x36, 0x4c, 0xb5, 0x83, 0xef, 0x6a, 0xba, 0x8d, 0xcd, 0x13, - 0xb5, 0x85, 0x77, 0xac, 0x3e, 0x6e, 0xed, 0xb4, 0x2c, 0x2d, 0xdf, 0x37, 0x0d, 0xdb, 0x40, 0x73, - 0xe4, 0xdf, 0xb3, 0x7b, 0xe2, 0x76, 0xc7, 0x30, 0x3a, 0x5d, 0xbc, 0xe3, 0x40, 0x5f, 0x0d, 0x4e, - 0x76, 0xda, 0xd8, 0x6a, 0x99, 0x5a, 0xdf, 0x36, 0x4c, 0x8a, 0x29, 0x5e, 0x0b, 0x62, 0xd8, 0x5a, - 0x0f, 0x5b, 0xb6, 0xda, 0xeb, 0x33, 0x84, 0xab, 0x41, 0x84, 0x6f, 0x4c, 0xb5, 0xdf, 0xc7, 0xa6, - 0x45, 0xc7, 0xa5, 0x75, 0x58, 0x3d, 0xc0, 0xf6, 0x71, 0x77, 0xd0, 0xd1, 0xf4, 0x8a, 0x7e, 0x62, - 0xc8, 0xf8, 0x47, 0x03, 0x6c, 0xd9, 0xd2, 0x7f, 0x08, 0xb0, 0x16, 0x18, 0xb0, 0xfa, 0x86, 0x6e, - 0x61, 0x84, 0x20, 0xa9, 0xab, 0x3d, 0x9c, 0x13, 0xb6, 0x85, 0xdb, 0x0b, 0xb2, 0xf3, 0x3f, 0xba, - 0x09, 0x99, 0x33, 0xac, 0xb7, 0x0d, 0x53, 0x39, 0xc3, 0xa6, 0xa5, 0x19, 0x7a, 0x2e, 0xee, 0x8c, - 0x2e, 0x53, 0xe8, 0x33, 0x0a, 0x44, 0x07, 0x90, 0xee, 0xa9, 0xba, 0x76, 0x82, 0x2d, 0x3b, 0x97, - 0xd8, 0x4e, 0xdc, 0x5e, 0xbc, 0xff, 0x41, 0x9e, 0x2e, 0x35, 0x1f, 0x3a, 0x57, 0xfe, 0x09, 0xc3, - 0x2e, 0xeb, 0xb6, 0x79, 0x2e, 0x7b, 0xc4, 0xe2, 0x43, 0x58, 0xe6, 0x86, 0x50, 0x16, 0x12, 0x5f, - 0xe3, 0x73, 0x26, 0x13, 0xf9, 0x17, 0xad, 0x42, 0xea, 0x4c, 0xed, 0x0e, 0x30, 0x93, 0x84, 0x7e, - 0xec, 0xc6, 0x7f, 0x53, 0x90, 0xae, 0xc2, 0xa6, 0x37, 0x5b, 0x49, 0xed, 0xab, 0xaf, 0xb4, 0xae, - 0x66, 0x6b, 0xd8, 0x72, 0x97, 0xfe, 0x25, 0x6c, 0x8d, 0x19, 0x67, 0x1a, 0x78, 0x04, 0x4b, 0x2d, - 0x1f, 0x3c, 0x27, 0x38, 0x4b, 0xc9, 0xb9, 0x4b, 0x09, 0x50, 0x9e, 0xcb, 0x1c, 0xb6, 0xf4, 0xe3, - 0x14, 0x64, 0x83, 0x28, 0xe8, 0x11, 0xcc, 0x5b, 0xd8, 0x3c, 0xd3, 0x5a, 0x54, 0xaf, 0x8b, 0xf7, - 0xb7, 0xc7, 0x71, 0xcb, 0xd7, 0x29, 0xde, 0x61, 0x4c, 0x76, 0x49, 0x50, 0x13, 0xb2, 0x67, 0x46, - 0x77, 0xd0, 0xc3, 0x0a, 0x7e, 0xdd, 0x57, 0x75, 0x6f, 0x03, 0x16, 0xef, 0xdf, 0x1e, 0xcb, 0xe6, - 0x99, 0x43, 0x50, 0x76, 0xf1, 0x0f, 0x63, 0xf2, 0xa5, 0x33, 0x1e, 0x84, 0x8e, 0x60, 0x59, 0xed, - 0xf6, 0x4f, 0x55, 0xe5, 0x04, 0xab, 0xf6, 0xc0, 0xc4, 0xb9, 0x84, 0xc3, 0xf3, 0xe6, 0x58, 0x9e, - 0x05, 0x82, 0xbd, 0x4f, 0x91, 0x0f, 0x63, 0xf2, 0x92, 0xea, 0xfb, 0x16, 0xff, 0x54, 0x80, 0x79, - 0x26, 0x3b, 0xfa, 0x14, 0x92, 0xf6, 0x79, 0x9f, 0xae, 0x35, 0x13, 0xc1, 0x90, 0xe1, 0xe7, 0x1b, - 0xe7, 0x7d, 0x2c, 0x3b, 0x24, 0xd2, 0x53, 0x48, 0x92, 0x2f, 0xb4, 0x08, 0xf3, 0xcd, 0xea, 0xe3, - 0x6a, 0xed, 0x79, 0x35, 0x1b, 0x43, 0xeb, 0x80, 0x4a, 0xb5, 0x6a, 0x43, 0xae, 0x1d, 0x1d, 0x95, - 0x65, 0xa5, 0x5e, 0x96, 0x9f, 0x55, 0x4a, 0xe5, 0xac, 0x80, 0xde, 0x85, 0xed, 0x67, 0xb5, 0xa3, - 0xe6, 0x93, 0xb2, 0x52, 0x28, 0x95, 0xca, 0xf5, 0x7a, 0xa5, 0x58, 0x39, 0xaa, 0x34, 0x5e, 0x28, - 0xa5, 0x5a, 0xb5, 0xde, 0x90, 0x0b, 0x95, 0x6a, 0xa3, 0x9e, 0x8d, 0x8b, 0xbf, 0x2f, 0xc0, 0xa5, - 0x80, 0x3a, 0x50, 0x81, 0x93, 0xf0, 0xee, 0xb4, 0x6a, 0xf4, 0x4b, 0xfa, 0x61, 0x98, 0xa4, 0x00, - 0x73, 0xb5, 0xea, 0x51, 0xa5, 0x4a, 0xa4, 0x5b, 0x84, 0xf9, 0xda, 0xfe, 0xbe, 0xf3, 0x11, 0x17, - 0xbf, 0x81, 0x25, 0xbf, 0xfa, 0xd0, 0xf7, 0x39, 0x01, 0xee, 0x4c, 0xa5, 0x73, 0xff, 0xec, 0xef, - 0x85, 0xcd, 0x8e, 0x20, 0xc3, 0xf4, 0x41, 0x66, 0x2d, 0x1c, 0x94, 0xb3, 0x42, 0x71, 0x8e, 0x4e, - 0x24, 0x65, 0x60, 0xe9, 0xd8, 0x34, 0x5e, 0x61, 0xf7, 0x18, 0x14, 0x60, 0x99, 0x7d, 0x33, 0xb3, - 0xff, 0x08, 0x52, 0x26, 0x56, 0xdb, 0xe7, 0xcc, 0x42, 0xc5, 0x3c, 0x75, 0x2d, 0x79, 0xd7, 0xb5, - 0xe4, 0x8b, 0x86, 0xd1, 0x7d, 0x46, 0x8e, 0x99, 0x4c, 0x11, 0xa5, 0x5f, 0x25, 0x61, 0xa5, 0x64, - 0x62, 0xd5, 0xc6, 0x54, 0x4d, 0x8c, 0x75, 0xa8, 0x0b, 0x79, 0x04, 0x19, 0x72, 0x4c, 0x5a, 0x9a, - 0x7d, 0xae, 0x98, 0xaa, 0xde, 0xc1, 0xcc, 0x82, 0xd7, 0xdc, 0x95, 0x97, 0xd8, 0xa8, 0x4c, 0x06, - 0xe5, 0xe5, 0x96, 0xff, 0x13, 0x55, 0x60, 0x85, 0x9d, 0x00, 0xee, 0x64, 0x26, 0xf8, 0x93, 0x49, - 0xa5, 0xf0, 0x9d, 0x4c, 0x74, 0xc6, 0x43, 0x34, 0x6c, 0xa1, 0xc7, 0x00, 0x7d, 0xd5, 0x54, 0x7b, - 0xd8, 0xc6, 0xa6, 0x95, 0x4b, 0xf2, 0x6e, 0x2a, 0x64, 0x35, 0xf9, 0x63, 0x0f, 0x9b, 0xba, 0x29, - 0x1f, 0x39, 0x3a, 0x20, 0xe7, 0xba, 0x65, 0x62, 0xdb, 0xca, 0xa5, 0x1c, 0x4e, 0xb7, 0xa3, 0x38, - 0xd5, 0x29, 0xaa, 0xc3, 0xa6, 0x98, 0xf8, 0xb3, 0xa2, 0x20, 0xbb, 0xd4, 0xa8, 0x06, 0x6b, 0xee, - 0x02, 0x0d, 0xdd, 0xc6, 0xba, 0xad, 0x58, 0xc6, 0xc0, 0x6c, 0xe1, 0xdc, 0x9c, 0xa3, 0xa5, 0x8d, - 0xc0, 0x12, 0x29, 0x4e, 0xdd, 0x41, 0x91, 0x99, 0x6a, 0x38, 0x20, 0x7a, 0x09, 0xa2, 0xda, 0x6a, - 0x61, 0xcb, 0xd2, 0xa8, 0x2e, 0x14, 0x13, 0xff, 0x68, 0xa0, 0x99, 0xb8, 0x87, 0x75, 0xdb, 0xca, - 0xcd, 0xf3, 0x5c, 0x1b, 0x46, 0xdf, 0xe8, 0x1a, 0x9d, 0x73, 0x79, 0x88, 0x23, 0xbf, 0xc3, 0x91, - 0xfb, 0x46, 0x2c, 0xf1, 0x33, 0xb8, 0x14, 0x50, 0xca, 0x2c, 0x0e, 0x5a, 0xdc, 0x85, 0x25, 0xbf, - 0x26, 0x66, 0x72, 0xee, 0x7f, 0x1c, 0x87, 0x95, 0x10, 0x1d, 0xa0, 0x43, 0x48, 0x5b, 0xba, 0xda, - 0xb7, 0x4e, 0x0d, 0x9b, 0xd9, 0xef, 0x9d, 0x08, 0x95, 0xe5, 0xeb, 0x0c, 0x97, 0x7e, 0x1e, 0xc6, - 0x64, 0x8f, 0x1a, 0x15, 0x61, 0x8e, 0xea, 0x33, 0xe8, 0x62, 0xc3, 0xf8, 0x50, 0x98, 0xc7, 0x85, - 0x51, 0x8a, 0xf7, 0x20, 0xc3, 0xcf, 0x80, 0xae, 0xc1, 0xa2, 0x3b, 0x83, 0xa2, 0xb5, 0xd9, 0x5a, - 0xc1, 0x05, 0x55, 0xda, 0xe2, 0x07, 0xb0, 0xe4, 0x67, 0x86, 0x36, 0x60, 0x81, 0x19, 0x84, 0x87, - 0x9e, 0xa6, 0x80, 0x4a, 0xdb, 0x3b, 0xd3, 0xdf, 0x87, 0x55, 0xde, 0xce, 0xd8, 0x51, 0xbe, 0xe5, - 0xad, 0x81, 0xea, 0x22, 0xc3, 0xaf, 0xc1, 0x95, 0x53, 0xfa, 0x9b, 0x24, 0x64, 0x83, 0x87, 0x06, - 0x3d, 0x82, 0xd4, 0xab, 0xae, 0xd1, 0xfa, 0x9a, 0xd1, 0xbe, 0x3b, 0xee, 0x74, 0xe5, 0x8b, 0x04, - 0x8b, 0x42, 0x0f, 0x63, 0x32, 0x25, 0x22, 0xd4, 0x3d, 0x63, 0xa0, 0xdb, 0x4c, 0x7b, 0xe3, 0xa9, - 0x9f, 0x10, 0xac, 0x21, 0xb5, 0x43, 0x84, 0xf6, 0x60, 0x91, 0x9a, 0x9d, 0xd2, 0x33, 0xda, 0xee, - 0x85, 0x74, 0x63, 0x2c, 0x8f, 0x82, 0x83, 0xfb, 0xc4, 0x68, 0x63, 0x19, 0x54, 0xef, 0x7f, 0x71, - 0x19, 0x16, 0x7d, 0xb2, 0x89, 0x07, 0xb0, 0xe8, 0x9b, 0x0c, 0x5d, 0x81, 0xf9, 0x13, 0x4b, 0xf1, - 0x9c, 0xef, 0x82, 0x3c, 0x77, 0x62, 0x39, 0xae, 0xf4, 0x1a, 0x2c, 0x3a, 0x52, 0x28, 0x27, 0x5d, - 0xb5, 0x63, 0xe5, 0xe2, 0xdb, 0x09, 0xb2, 0x47, 0x0e, 0x68, 0x9f, 0x40, 0xc4, 0xff, 0x11, 0x00, - 0x86, 0x53, 0xa2, 0x47, 0x90, 0x74, 0xa4, 0xa4, 0x2e, 0xfc, 0xf6, 0x14, 0x52, 0xe6, 0x1d, 0x51, - 0x1d, 0x2a, 0xe9, 0x2f, 0x04, 0x48, 0x3a, 0x6c, 0x82, 0x37, 0x5d, 0xbd, 0x52, 0x3d, 0x38, 0x2a, - 0x2b, 0xd5, 0xda, 0x5e, 0x59, 0x79, 0x2e, 0x57, 0x1a, 0x65, 0x39, 0x2b, 0xa0, 0x0d, 0xb8, 0xe2, - 0x87, 0xcb, 0xe5, 0xc2, 0x5e, 0x59, 0x56, 0x6a, 0xd5, 0xa3, 0x17, 0xd9, 0x38, 0x12, 0x61, 0xfd, - 0x49, 0xf3, 0xa8, 0x51, 0x19, 0x1d, 0x4b, 0xa0, 0x4d, 0xc8, 0xf9, 0xc6, 0x18, 0x0f, 0xc6, 0x36, - 0x49, 0xd8, 0xfa, 0x46, 0xe9, 0xbf, 0x6c, 0x30, 0x55, 0x5c, 0xf6, 0x36, 0xc3, 0x31, 0xb6, 0xe7, - 0xb0, 0xcc, 0xf9, 0x68, 0x12, 0x15, 0x32, 0xa7, 0xd2, 0x56, 0x5e, 0x9d, 0xdb, 0x4e, 0xa4, 0x24, - 0xdc, 0x4e, 0xc8, 0xcb, 0x2e, 0xb4, 0x48, 0x80, 0x44, 0xad, 0x5d, 0xad, 0xa7, 0xd9, 0x0c, 0x27, - 0xee, 0xe0, 0x80, 0x03, 0x72, 0x10, 0xa4, 0x3f, 0x49, 0xc0, 0x1c, 0xdb, 0x9b, 0x9b, 0xbe, 0x5b, - 0x82, 0x63, 0xe9, 0x42, 0x29, 0x4b, 0xee, 0x70, 0xc4, 0xf9, 0xc3, 0x81, 0x0e, 0x21, 0xe3, 0x77, - 0xa5, 0xaf, 0xdd, 0x58, 0xf4, 0x3a, 0xbf, 0x41, 0xfe, 0xf3, 0xfc, 0x9a, 0x45, 0xa0, 0xcb, 0x67, - 0x7e, 0x18, 0x2a, 0x42, 0x26, 0xe0, 0x8d, 0x93, 0x93, 0xbd, 0xf1, 0x72, 0x8b, 0x73, 0x4c, 0x05, - 0x58, 0x71, 0x1d, 0x69, 0x17, 0x2b, 0x36, 0x73, 0xb4, 0xec, 0xb6, 0xc8, 0x8e, 0x38, 0x60, 0x34, - 0x44, 0x76, 0x61, 0xe8, 0x1e, 0xcc, 0x77, 0x35, 0x1d, 0xab, 0x1d, 0x72, 0x1b, 0x10, 0x32, 0xe4, - 0x45, 0x0b, 0xa6, 0x71, 0x86, 0x75, 0x55, 0x6f, 0xe1, 0x62, 0xe2, 0x2f, 0xc9, 0x75, 0xc2, 0xf0, - 0xc4, 0x1f, 0x02, 0x1a, 0x5d, 0xde, 0x4c, 0x8e, 0xf6, 0x5f, 0xe3, 0x00, 0x43, 0xf6, 0xe8, 0x37, - 0x20, 0xad, 0xb5, 0xb1, 0x6e, 0x6b, 0xf6, 0x39, 0x8b, 0x87, 0x37, 0x46, 0x85, 0xc8, 0x57, 0x18, - 0x8a, 0xec, 0x21, 0xa3, 0x22, 0x5c, 0x6a, 0xab, 0xb6, 0xaa, 0xb4, 0x4e, 0x89, 0xcd, 0xb4, 0x15, - 0xd5, 0xf5, 0x0c, 0xa3, 0xf1, 0x45, 0xc3, 0xcd, 0x6d, 0xe4, 0x65, 0x42, 0x52, 0xa2, 0x14, 0x05, - 0x1b, 0x7d, 0x0e, 0x2b, 0x3d, 0x6c, 0xab, 0x41, 0x3e, 0x89, 0x89, 0x7c, 0x2e, 0xbb, 0x64, 0x1e, - 0x2f, 0x71, 0x00, 0x69, 0x57, 0x4a, 0xf4, 0x31, 0x17, 0x83, 0x6d, 0x47, 0x2c, 0xc8, 0x17, 0x79, - 0xf1, 0x3a, 0x5b, 0x62, 0x3a, 0x93, 0xb6, 0xc2, 0xe2, 0xb1, 0x34, 0x24, 0xbf, 0x78, 0xf0, 0xd1, - 0xa7, 0x59, 0x61, 0x97, 0x6c, 0x8f, 0x34, 0x80, 0x95, 0x90, 0x9b, 0x16, 0xe5, 0x61, 0xc1, 0x39, - 0x31, 0x96, 0x66, 0x63, 0xa6, 0xdc, 0x51, 0xc3, 0x18, 0xa2, 0x10, 0xfc, 0xbe, 0x89, 0x4f, 0xb0, - 0x69, 0xe2, 0xb6, 0xe3, 0xa5, 0x42, 0xf1, 0x3d, 0x14, 0xe9, 0x0f, 0x04, 0x48, 0x7b, 0xc6, 0xb4, - 0x0b, 0x69, 0x0b, 0x77, 0x68, 0x14, 0x40, 0xe7, 0xba, 0x1a, 0xa4, 0xcd, 0xd7, 0x19, 0x02, 0x4b, - 0xcb, 0x5c, 0x7c, 0x92, 0x96, 0x71, 0x43, 0x33, 0x19, 0xd4, 0x3f, 0x08, 0xb0, 0xb2, 0x87, 0xbb, - 0x38, 0x18, 0x2c, 0x46, 0x5d, 0x74, 0xfe, 0xf8, 0x2a, 0xce, 0xc7, 0x57, 0x21, 0xac, 0x22, 0xe2, - 0xab, 0x0b, 0xc5, 0x1c, 0xeb, 0xb0, 0xca, 0xcf, 0x46, 0x6f, 0x59, 0xe9, 0x7f, 0x13, 0x70, 0x95, - 0x9c, 0x2f, 0xd3, 0xe8, 0x76, 0xb1, 0x79, 0x3c, 0x78, 0xd5, 0xd5, 0xac, 0xd3, 0x19, 0x16, 0x77, - 0x05, 0xe6, 0x75, 0xa3, 0xed, 0xf3, 0x61, 0x73, 0xe4, 0xb3, 0xd2, 0x46, 0x65, 0xb8, 0x1c, 0x8c, - 0x76, 0xcf, 0x99, 0xb5, 0x8f, 0x8f, 0x75, 0xb3, 0x67, 0xc1, 0x8b, 0x5c, 0x84, 0x34, 0x89, 0xd3, - 0x0d, 0xbd, 0x7b, 0xee, 0x38, 0xae, 0xb4, 0xec, 0x7d, 0x23, 0x39, 0x18, 0xb8, 0x7e, 0xcf, 0x0b, - 0x5c, 0x23, 0x57, 0x14, 0x15, 0xc3, 0x7e, 0x35, 0xe2, 0x78, 0xa9, 0xbb, 0xfa, 0x74, 0x4a, 0xd6, - 0x13, 0x1d, 0xf2, 0x45, 0x76, 0xf1, 0x2d, 0xb8, 0xc4, 0x7f, 0x16, 0xe0, 0xda, 0xd8, 0x25, 0xb0, - 0xc8, 0xab, 0x0d, 0x97, 0xfa, 0x74, 0xc0, 0x53, 0x02, 0x3d, 0x65, 0x0f, 0x27, 0x2a, 0x81, 0xd5, - 0x44, 0x18, 0x94, 0x53, 0x43, 0xa6, 0xcf, 0x01, 0xc5, 0x02, 0xac, 0x84, 0xa0, 0xcd, 0xb4, 0x98, - 0x5f, 0x0a, 0xb0, 0x3d, 0x14, 0xa5, 0xa9, 0xf7, 0xdf, 0x9e, 0xf9, 0x36, 0x86, 0xb6, 0x45, 0x6f, - 0xde, 0x07, 0xa3, 0x6b, 0x0f, 0x9f, 0xf0, 0xdb, 0x3a, 0xc1, 0x37, 0xe0, 0x7a, 0xc4, 0xd4, 0xec, - 0x38, 0xff, 0x67, 0x12, 0xae, 0x3f, 0x53, 0xbb, 0x5a, 0xdb, 0x8b, 0xa7, 0x43, 0xaa, 0x47, 0xd1, - 0x2a, 0x69, 0x8d, 0x9c, 0x00, 0xea, 0xb5, 0x1e, 0x79, 0xa7, 0x76, 0x12, 0xff, 0x29, 0xa2, 0x92, - 0xb7, 0x98, 0x0b, 0xbf, 0x08, 0xc9, 0x85, 0x3f, 0x9d, 0x5e, 0xd6, 0xa8, 0xcc, 0xb8, 0x19, 0x74, - 0x30, 0x9f, 0x4c, 0xcf, 0x37, 0xc2, 0x0a, 0x2e, 0x7c, 0x8a, 0xbf, 0xcb, 0xe4, 0xf5, 0x9f, 0x92, - 0x20, 0x45, 0xad, 0x9e, 0xf9, 0x10, 0x19, 0x16, 0x5a, 0x86, 0x7e, 0xa2, 0x99, 0x3d, 0xdc, 0x66, - 0x49, 0xd8, 0xc7, 0xd3, 0x28, 0x8f, 0x39, 0x90, 0x92, 0x4b, 0x2b, 0x0f, 0xd9, 0xa0, 0x1c, 0xcc, - 0xf7, 0xb0, 0x65, 0xa9, 0x1d, 0x57, 0x2c, 0xf7, 0x53, 0xfc, 0x59, 0x02, 0x16, 0x3c, 0x12, 0xa4, - 0x8f, 0x58, 0x30, 0x75, 0x5f, 0x07, 0x6f, 0x22, 0xc0, 0x9b, 0x1b, 0x73, 0xfc, 0x0d, 0x8c, 0xb9, - 0xcd, 0x19, 0x33, 0x3d, 0x0e, 0x7b, 0x6f, 0x24, 0x76, 0x84, 0x5d, 0x7f, 0xe7, 0x06, 0x28, 0xfd, - 0x36, 0xa0, 0x23, 0xcd, 0x62, 0xc9, 0xac, 0xe7, 0x96, 0x48, 0xee, 0xaa, 0xbe, 0x56, 0xb0, 0x6e, - 0x9b, 0x1a, 0xcb, 0x9a, 0x52, 0x32, 0xf4, 0xd4, 0xd7, 0x65, 0x0a, 0x21, 0x99, 0x95, 0x65, 0xab, - 0xa6, 0xad, 0xe9, 0x1d, 0xc5, 0x36, 0xbe, 0xc6, 0x5e, 0x09, 0xdf, 0x85, 0x36, 0x08, 0x50, 0xfa, - 0x89, 0x00, 0x2b, 0x1c, 0x7b, 0x66, 0x93, 0x0f, 0x61, 0x7e, 0xc8, 0x9b, 0xcb, 0xa6, 0x42, 0xb0, - 0xf3, 0x54, 0x6d, 0x2e, 0x05, 0xda, 0x02, 0xd0, 0xf1, 0x6b, 0x9b, 0x9b, 0x77, 0x81, 0x40, 0x9c, - 0x39, 0xc5, 0x1d, 0x48, 0x51, 0x35, 0x4c, 0x5b, 0xb6, 0xf8, 0x59, 0x1c, 0xd0, 0x01, 0xb6, 0xbd, - 0x6c, 0x94, 0xe9, 0x60, 0x8c, 0x2d, 0x09, 0x6f, 0x60, 0x4b, 0x9f, 0x73, 0xb6, 0x44, 0xad, 0xf1, - 0x8e, 0xaf, 0x97, 0x11, 0x98, 0x3a, 0xd2, 0x13, 0x8e, 0xc9, 0x00, 0x69, 0x3c, 0x37, 0x55, 0x06, - 0x78, 0x51, 0x93, 0xd9, 0x83, 0x15, 0x4e, 0x66, 0xb6, 0xa7, 0x77, 0x01, 0xa9, 0x67, 0xaa, 0xd6, - 0x55, 0x89, 0x5c, 0x6e, 0x82, 0xcd, 0x12, 0xee, 0xcb, 0xde, 0x88, 0x4b, 0x26, 0x49, 0xfe, 0x80, - 0x81, 0xf1, 0x0b, 0xf6, 0x56, 0xba, 0xfe, 0x8b, 0x76, 0x04, 0x87, 0xcd, 0x7b, 0x10, 0xda, 0x5f, - 0xb9, 0x31, 0x1a, 0x24, 0xb0, 0xf6, 0xc0, 0xd8, 0x56, 0xcb, 0x7f, 0x27, 0x61, 0x23, 0x02, 0x1b, - 0x3d, 0x84, 0x84, 0xd9, 0x6f, 0x31, 0x63, 0x7a, 0x6f, 0x0a, 0xfe, 0x79, 0xf9, 0xb8, 0x74, 0x18, - 0x93, 0x09, 0x15, 0x7a, 0x1e, 0xec, 0x8e, 0xd0, 0xb4, 0xf5, 0xa3, 0x69, 0xd8, 0x44, 0x36, 0x4a, - 0x7e, 0x1a, 0x87, 0x84, 0x7c, 0x5c, 0x42, 0x3f, 0xe4, 0xb2, 0xcf, 0x0f, 0xa7, 0x14, 0xcf, 0xdf, - 0x03, 0xf8, 0x85, 0x10, 0x96, 0x74, 0xe6, 0x60, 0xb5, 0x24, 0x97, 0x0b, 0x8d, 0xb2, 0xb2, 0x57, - 0x3e, 0x2a, 0x37, 0xca, 0x0a, 0x6d, 0x09, 0x64, 0x05, 0xb4, 0x09, 0xb9, 0xe3, 0x66, 0xf1, 0xa8, - 0x52, 0x3f, 0x54, 0x9a, 0x55, 0xf7, 0x3f, 0x36, 0x1a, 0x47, 0x59, 0x58, 0x3a, 0xaa, 0xd4, 0x1b, - 0x0c, 0x50, 0xcf, 0x26, 0x08, 0xe4, 0xa0, 0xdc, 0x50, 0x4a, 0x85, 0xe3, 0x42, 0xa9, 0xd2, 0x78, - 0x91, 0x4d, 0x22, 0x11, 0xd6, 0x79, 0xde, 0xf5, 0x6a, 0xe1, 0xb8, 0x7e, 0x58, 0x6b, 0x64, 0x53, - 0x08, 0x41, 0xc6, 0xa1, 0x77, 0x41, 0xf5, 0xec, 0x1c, 0xe1, 0x50, 0x3a, 0xaa, 0x55, 0x3d, 0x19, - 0xe6, 0xd1, 0x2a, 0x64, 0xdd, 0x99, 0xe5, 0x72, 0x61, 0xcf, 0xa9, 0x52, 0xa5, 0xd1, 0x65, 0x58, - 0x2e, 0x7f, 0x71, 0x5c, 0xa8, 0xee, 0xb9, 0x88, 0x0b, 0xe2, 0xef, 0x09, 0x81, 0x8e, 0x49, 0x85, - 0xd3, 0xd7, 0x83, 0x59, 0xf7, 0xc1, 0xaf, 0xb8, 0x5b, 0x61, 0x7a, 0xbb, 0x0c, 0xcb, 0x8d, 0xc2, - 0x71, 0x59, 0x91, 0x6b, 0x8d, 0x42, 0xa3, 0x52, 0xab, 0xfa, 0x7a, 0x27, 0xbf, 0x8c, 0xc3, 0x1a, - 0x2d, 0xb4, 0xba, 0x65, 0x5d, 0xd7, 0xe7, 0xdc, 0x86, 0x2c, 0x2d, 0x0d, 0x29, 0xc1, 0xa8, 0x30, - 0x43, 0xe1, 0xcf, 0xdc, 0xd8, 0xd0, 0x6d, 0x8a, 0xc4, 0x7d, 0x4d, 0x91, 0x4a, 0x30, 0x52, 0xbe, - 0xc3, 0xb7, 0x0f, 0x02, 0xb3, 0x45, 0x25, 0x5f, 0x4f, 0x42, 0x42, 0xb9, 0xbb, 0xd1, 0xdc, 0xa2, - 0xae, 0xb9, 0x8b, 0x64, 0x5a, 0x17, 0xf4, 0x56, 0xfb, 0xb0, 0x1e, 0x94, 0x97, 0x39, 0x8e, 0x0f, - 0x47, 0x8a, 0xfc, 0x9e, 0xfb, 0xf4, 0x70, 0x3d, 0x0c, 0xe9, 0xdf, 0x05, 0x48, 0xbb, 0x60, 0x72, - 0x05, 0x59, 0xda, 0xef, 0x60, 0xae, 0xa8, 0xb8, 0x40, 0x20, 0x5e, 0x8d, 0xd2, 0x5f, 0x9e, 0x8f, - 0x07, 0xcb, 0xf3, 0xa1, 0xfb, 0x9c, 0x08, 0xdd, 0xe7, 0x1f, 0xc0, 0x72, 0x8b, 0x88, 0xaf, 0x19, - 0xba, 0x62, 0x6b, 0x3d, 0xb7, 0x66, 0x18, 0x55, 0xa6, 0x5a, 0x72, 0x09, 0x08, 0x08, 0x6d, 0xc3, - 0x92, 0xd3, 0x5e, 0x53, 0x6c, 0x43, 0x19, 0x58, 0x38, 0x97, 0x72, 0x52, 0x77, 0x70, 0x60, 0x0d, - 0xa3, 0x69, 0x61, 0xe9, 0x1f, 0x05, 0x58, 0xa3, 0x15, 0x89, 0xa0, 0x39, 0x4e, 0x6a, 0x33, 0xf8, - 0x2d, 0x2e, 0x70, 0xab, 0x85, 0x32, 0xfc, 0xb6, 0x12, 0xb2, 0x1c, 0xac, 0x07, 0xe7, 0x63, 0x59, - 0xd8, 0x5f, 0x0b, 0xb0, 0x4a, 0x42, 0x0a, 0x77, 0xe0, 0x6d, 0x47, 0x38, 0x33, 0xec, 0x64, 0x40, - 0x99, 0xc9, 0xa0, 0x32, 0xa5, 0xbf, 0x15, 0x60, 0x2d, 0x20, 0x2b, 0xb3, 0xd4, 0xcf, 0x82, 0xe1, - 0xd2, 0x0d, 0x7f, 0xb8, 0x34, 0x82, 0x3f, 0x63, 0xc0, 0xf4, 0xc0, 0x0d, 0x98, 0x66, 0x3b, 0x10, - 0x7f, 0x14, 0x87, 0xad, 0xa1, 0xb7, 0x74, 0x7a, 0xda, 0xed, 0x19, 0xf2, 0xfd, 0x8b, 0x75, 0x70, - 0x9f, 0x06, 0x5d, 0xdd, 0xfd, 0x51, 0x07, 0x1e, 0x22, 0xd2, 0xb7, 0x65, 0x80, 0xbf, 0xeb, 0x2f, - 0xdd, 0xf1, 0xf3, 0xb2, 0x2d, 0x9c, 0xb2, 0x15, 0xf1, 0x09, 0x5c, 0x71, 0xaa, 0x20, 0xde, 0xcb, - 0x0c, 0xb7, 0xd1, 0x4a, 0xbd, 0x48, 0x5a, 0x5e, 0x23, 0xc3, 0xde, 0x03, 0x02, 0x56, 0xf7, 0x6d, - 0x4b, 0xff, 0xc5, 0x6d, 0x46, 0x43, 0xed, 0x63, 0xd9, 0xb0, 0x1d, 0x27, 0xe0, 0x6e, 0x86, 0x02, - 0x97, 0x06, 0x7d, 0x92, 0xb3, 0x28, 0x96, 0x6d, 0xaa, 0x36, 0xee, 0x9c, 0x07, 0x93, 0xc1, 0x48, - 0xfa, 0x7c, 0xd3, 0x21, 0xae, 0x33, 0xda, 0xc3, 0x98, 0x9c, 0x19, 0x70, 0x10, 0x74, 0x0d, 0xc0, - 0x24, 0x34, 0x58, 0xd1, 0x8d, 0x6f, 0xa8, 0xb4, 0x87, 0x31, 0x79, 0x81, 0xc2, 0xaa, 0xc6, 0x37, - 0xe2, 0xdf, 0x09, 0x90, 0xe1, 0xb9, 0xa0, 0x3a, 0xcc, 0x59, 0xad, 0x53, 0xdc, 0x73, 0xaf, 0xe1, - 0x87, 0x6f, 0x22, 0x4b, 0xbe, 0xee, 0xb0, 0x90, 0x19, 0x2b, 0xe9, 0x73, 0x98, 0xa3, 0x90, 0x91, - 0xea, 0xf9, 0x7e, 0x65, 0xbf, 0x96, 0x15, 0xd0, 0x3c, 0x24, 0x0e, 0xf6, 0xeb, 0xd9, 0x38, 0x5a, - 0x82, 0x74, 0xbd, 0xf2, 0x85, 0x42, 0xee, 0xe9, 0x6c, 0x82, 0x44, 0x1c, 0x8d, 0xda, 0xf3, 0xb2, - 0xac, 0xd4, 0xf6, 0x95, 0xc3, 0x42, 0xb5, 0x56, 0xc9, 0x26, 0x9d, 0x42, 0x7b, 0x31, 0x0d, 0x73, - 0x6a, 0x8b, 0xcc, 0x2f, 0xfd, 0x3c, 0xee, 0xdf, 0x68, 0x5e, 0x34, 0xb6, 0xd1, 0x55, 0x58, 0xeb, - 0xaa, 0x96, 0xad, 0x98, 0x6c, 0x40, 0xb1, 0x06, 0x4e, 0x04, 0x3e, 0xf6, 0x1d, 0xc4, 0xd0, 0x71, - 0xaf, 0x10, 0x42, 0x97, 0x61, 0x9d, 0x92, 0x8d, 0xf2, 0x3b, 0x51, 0xb5, 0xee, 0x30, 0x80, 0x9c, - 0x9a, 0xdf, 0x3e, 0x25, 0x43, 0x3b, 0xb0, 0xc2, 0x24, 0xd2, 0xce, 0xb0, 0xcb, 0xcc, 0x72, 0x7c, - 0x56, 0x4a, 0x46, 0xc3, 0x21, 0x86, 0x6f, 0xa1, 0x43, 0x40, 0x8e, 0xf7, 0xf0, 0x04, 0x98, 0xf2, - 0x1a, 0xca, 0x12, 0x2a, 0x77, 0x76, 0x02, 0xa6, 0x5d, 0x8b, 0x5f, 0x25, 0x61, 0xbd, 0x6a, 0xb4, - 0x71, 0xdd, 0x56, 0x3b, 0xb3, 0xd4, 0xee, 0x7f, 0x6b, 0xb4, 0x14, 0x1a, 0xe7, 0x4f, 0x7e, 0x38, - 0xd7, 0x69, 0x2a, 0xa0, 0x28, 0x0f, 0x2b, 0x96, 0xad, 0x76, 0x1c, 0x5f, 0xaf, 0x9a, 0x1d, 0x6c, - 0x2b, 0x7d, 0xd5, 0x3e, 0x65, 0x8e, 0xfc, 0x32, 0x1b, 0x6a, 0x38, 0x23, 0xc7, 0xaa, 0x7d, 0x1a, - 0x5e, 0x52, 0x4f, 0xce, 0x5c, 0x52, 0xff, 0x3c, 0x58, 0xd5, 0xfa, 0x60, 0xc2, 0x5a, 0x22, 0x22, - 0xb6, 0x2f, 0xc6, 0x94, 0xcb, 0xef, 0x4d, 0x60, 0x39, 0xb9, 0x4c, 0x7e, 0xf1, 0xf2, 0xf0, 0x77, - 0x5c, 0x69, 0x7f, 0x07, 0xae, 0x8c, 0x2c, 0x9e, 0xc5, 0x07, 0x1d, 0xc8, 0x91, 0xa1, 0xa6, 0x6e, - 0xcd, 0x68, 0x8e, 0x63, 0x2c, 0x26, 0x3e, 0xc6, 0x62, 0xa4, 0x0d, 0x78, 0x27, 0x64, 0x22, 0x26, - 0xc5, 0xdf, 0xa7, 0xa8, 0x18, 0xb3, 0x37, 0x7d, 0xbe, 0x1c, 0x77, 0x2a, 0x3e, 0xf6, 0x6f, 0x7b, - 0x68, 0x7f, 0xe4, 0xdb, 0x38, 0x17, 0xd7, 0x60, 0xd1, 0x8f, 0xc7, 0x62, 0x1c, 0x7b, 0xc2, 0xc1, - 0x49, 0x5d, 0xa8, 0x17, 0x35, 0x17, 0xe8, 0x45, 0x1d, 0x0d, 0x0f, 0xd5, 0x3c, 0x9f, 0xb7, 0x8c, - 0x55, 0x45, 0xc4, 0xb1, 0x7a, 0x39, 0x72, 0xac, 0xd2, 0x7c, 0x83, 0x6b, 0x2c, 0xd3, 0x5f, 0x83, - 0x83, 0xc5, 0x8c, 0x3a, 0xb4, 0xf3, 0x24, 0xbd, 0x04, 0x91, 0x5a, 0xfc, 0xec, 0xbd, 0xa0, 0x80, - 0x19, 0xc5, 0x83, 0x66, 0x24, 0x6d, 0xc1, 0x46, 0x28, 0x6f, 0x36, 0xf5, 0x0b, 0x2a, 0xd7, 0x01, - 0x66, 0xa5, 0xc4, 0xba, 0xad, 0xda, 0xd6, 0xb4, 0x33, 0xb3, 0x41, 0xff, 0xcc, 0x14, 0xe4, 0xcc, - 0x7c, 0x40, 0x57, 0x15, 0x64, 0xcd, 0x2e, 0xff, 0xf7, 0x21, 0x35, 0x70, 0xaa, 0xe2, 0x34, 0x4c, - 0x5f, 0xe1, 0x4d, 0xba, 0x49, 0x86, 0x64, 0x8a, 0x21, 0xfd, 0x5c, 0x80, 0x45, 0x1f, 0x18, 0x6d, - 0xc2, 0x82, 0x57, 0x24, 0x73, 0x33, 0x4a, 0x0f, 0x40, 0xf6, 0xc0, 0x36, 0x6c, 0xb5, 0xcb, 0xde, - 0xbb, 0xd0, 0x0f, 0x84, 0x20, 0x39, 0xb0, 0x30, 0x4d, 0x38, 0x12, 0xb2, 0xf3, 0x3f, 0xfa, 0x10, - 0x92, 0x03, 0x5d, 0xb3, 0x9d, 0xb3, 0x97, 0x09, 0x1e, 0x2a, 0x67, 0xaa, 0x7c, 0x53, 0xd7, 0x6c, - 0xd9, 0xc1, 0x92, 0x1e, 0x42, 0x92, 0x7c, 0xf1, 0x91, 0xd2, 0x02, 0xa4, 0x8a, 0x2f, 0x1a, 0xe5, - 0x7a, 0x56, 0x40, 0x00, 0x73, 0x95, 0x6a, 0x6d, 0xaf, 0x4c, 0xa2, 0xa5, 0x4b, 0x30, 0xf7, 0xb4, - 0x59, 0x90, 0x1f, 0xd7, 0xb3, 0x09, 0xd1, 0xb9, 0xca, 0x37, 0x3d, 0x5d, 0x84, 0x15, 0xef, 0xbe, - 0xa2, 0x7b, 0x34, 0xae, 0x6c, 0x57, 0x08, 0x2d, 0xdb, 0x6d, 0x71, 0xb7, 0xd5, 0x84, 0x82, 0xdd, - 0xbf, 0x24, 0x60, 0x2d, 0x14, 0x0f, 0x3d, 0xf0, 0x97, 0xea, 0xae, 0x47, 0xf2, 0xf4, 0x17, 0xe9, - 0x9e, 0x86, 0x17, 0xe9, 0xee, 0x44, 0x33, 0x88, 0x2c, 0xcf, 0xfd, 0xb9, 0x40, 0xcb, 0x73, 0xbb, - 0x5c, 0xb9, 0xe9, 0xd6, 0x44, 0x91, 0xfc, 0xf5, 0xa5, 0x67, 0x63, 0xea, 0x72, 0xf5, 0x46, 0xe1, - 0xa0, 0xac, 0x34, 0xab, 0xf4, 0xaf, 0x57, 0x97, 0x5b, 0x85, 0xec, 0x41, 0xd9, 0x2d, 0xbc, 0x29, - 0xf5, 0x46, 0xa1, 0x41, 0x76, 0x6f, 0xa4, 0x26, 0x96, 0x10, 0xff, 0x30, 0x58, 0x13, 0x2b, 0x71, - 0x42, 0xee, 0x4c, 0xbf, 0x6c, 0xbf, 0xb4, 0xf7, 0xc2, 0xa4, 0xdd, 0x84, 0x1c, 0x93, 0xa7, 0x59, - 0xa7, 0x42, 0x57, 0x1a, 0x0a, 0xb3, 0xa6, 0x61, 0x61, 0x6c, 0x15, 0x10, 0x33, 0x19, 0xff, 0x8f, - 0x0b, 0x7e, 0x22, 0xc0, 0x0a, 0x07, 0x66, 0x16, 0xe4, 0xeb, 0x18, 0x0b, 0x5c, 0xc7, 0x78, 0x07, - 0x56, 0x49, 0x6e, 0x4f, 0x4f, 0xad, 0xa5, 0xf4, 0xb1, 0xa9, 0x90, 0x11, 0x76, 0x76, 0x2e, 0xf7, - 0xd4, 0xd7, 0xac, 0xc3, 0x70, 0x8c, 0x4d, 0xc2, 0xf8, 0x2d, 0xd4, 0xd4, 0xa5, 0x1f, 0x0b, 0x34, - 0xc8, 0x98, 0x39, 0x0f, 0x9e, 0xe4, 0x71, 0x42, 0x12, 0xe5, 0xc4, 0xf4, 0x89, 0xb2, 0x54, 0xa0, - 0x91, 0xc5, 0x05, 0x72, 0xd2, 0xfb, 0xff, 0x27, 0xf8, 0x1e, 0x39, 0x55, 0x61, 0x99, 0xfb, 0xf1, - 0x05, 0xda, 0x1c, 0xf3, 0x9b, 0x0c, 0x67, 0xe9, 0xe2, 0x56, 0xe4, 0x2f, 0x36, 0xa4, 0x18, 0x3a, - 0xf1, 0xfd, 0x70, 0x84, 0xeb, 0x99, 0xbc, 0x3b, 0x42, 0x19, 0xe2, 0x64, 0xc4, 0x9b, 0x13, 0xb0, - 0xbc, 0x79, 0x3e, 0x81, 0x94, 0xf3, 0x3e, 0x1d, 0xad, 0xfa, 0xde, 0x65, 0x79, 0xcf, 0xd7, 0xc5, - 0xb5, 0x00, 0xd4, 0xa5, 0xbb, 0xff, 0x6f, 0x0b, 0x00, 0xc3, 0x8c, 0x0f, 0x3d, 0x86, 0x25, 0xff, - 0x13, 0x59, 0xb4, 0x11, 0xf1, 0x40, 0x5b, 0xdc, 0x0c, 0x1f, 0xf4, 0x64, 0x7a, 0x0c, 0x4b, 0xfe, - 0x97, 0x40, 0x43, 0x66, 0x21, 0xaf, 0x91, 0x86, 0xcc, 0x42, 0x1f, 0x0f, 0xc5, 0x50, 0x17, 0xae, - 0x8c, 0x79, 0x0b, 0x82, 0x6e, 0x4d, 0xf7, 0x62, 0x46, 0x7c, 0x6f, 0xca, 0x47, 0x25, 0x52, 0x0c, - 0x99, 0xf0, 0xce, 0xd8, 0x27, 0x10, 0xe8, 0xf6, 0xb4, 0x0f, 0x34, 0xc4, 0xf7, 0xa7, 0xc0, 0xf4, - 0xe6, 0x1c, 0x80, 0x38, 0xbe, 0xef, 0x8a, 0xde, 0x9f, 0xfa, 0x41, 0x80, 0x78, 0x67, 0xfa, 0x36, - 0xae, 0x14, 0x43, 0x87, 0xb0, 0xe8, 0x6b, 0x4a, 0x22, 0x31, 0xb4, 0x53, 0x49, 0x19, 0x6f, 0x44, - 0x74, 0x31, 0x29, 0x27, 0x5f, 0xe3, 0x6c, 0xc8, 0x69, 0xb4, 0x03, 0x38, 0xe4, 0x14, 0xd2, 0x69, - 0x0b, 0xaa, 0x3f, 0x70, 0xc3, 0x86, 0xa9, 0x3f, 0xfc, 0x8a, 0x0e, 0x53, 0xff, 0x98, 0xeb, 0x5a, - 0x8a, 0xa1, 0xa7, 0x90, 0xe1, 0x0b, 0xe9, 0x68, 0x2b, 0xb2, 0x21, 0x20, 0x5e, 0x1d, 0x37, 0xec, - 0x67, 0xc9, 0xd7, 0x6d, 0x87, 0x2c, 0x43, 0xeb, 0xc7, 0x43, 0x96, 0x63, 0xca, 0xbd, 0x31, 0xe2, - 0x9f, 0xb8, 0x9a, 0xe8, 0xd0, 0x3f, 0x85, 0x95, 0x81, 0x87, 0xfe, 0x29, 0xb4, 0x90, 0x2a, 0xc5, - 0x90, 0x06, 0xeb, 0xe1, 0x95, 0x3d, 0x74, 0x73, 0xaa, 0x8a, 0xa3, 0x78, 0x6b, 0x12, 0x9a, 0xef, - 0x04, 0xaf, 0x87, 0xd7, 0x96, 0xc2, 0xa6, 0x0a, 0x29, 0x8b, 0x85, 0x4d, 0x15, 0x56, 0xa2, 0x92, - 0x48, 0xf0, 0x76, 0xff, 0x17, 0x29, 0x48, 0x3a, 0x97, 0x5f, 0x03, 0x2e, 0x05, 0xb2, 0x63, 0x74, - 0x35, 0xba, 0x66, 0x20, 0x5e, 0x1b, 0x3b, 0xee, 0x2d, 0xe6, 0x25, 0x5c, 0x1e, 0xc9, 0x77, 0xd1, - 0xb6, 0x9f, 0x2e, 0x2c, 0xe7, 0x16, 0xaf, 0x47, 0x60, 0x04, 0x79, 0xf3, 0x4e, 0x6e, 0x7b, 0x52, - 0x42, 0xc6, 0xf3, 0x1e, 0xe7, 0xd8, 0xbe, 0xa2, 0xb1, 0x46, 0xd0, 0xa5, 0x49, 0xbc, 0x5c, 0xa1, - 0xce, 0xec, 0x46, 0x24, 0x8e, 0x37, 0xc3, 0x97, 0x5e, 0x90, 0xe3, 0xcb, 0x20, 0x10, 0x27, 0x5c, - 0x68, 0xe2, 0x22, 0x4a, 0x51, 0x28, 0x1e, 0xfb, 0xe7, 0x90, 0x0d, 0x5e, 0xf8, 0x88, 0xdb, 0xaf, - 0x30, 0x23, 0xdd, 0x1e, 0x8f, 0x10, 0xd4, 0x4c, 0xd0, 0xdb, 0x04, 0xa5, 0x0a, 0xf3, 0x33, 0x37, - 0x22, 0x71, 0xfc, 0xfe, 0xd1, 0x17, 0xe7, 0x0d, 0xfd, 0xe3, 0x68, 0x4c, 0x38, 0xf4, 0x8f, 0x21, - 0x81, 0xa1, 0x14, 0xdb, 0x7d, 0x04, 0x40, 0x03, 0x79, 0xac, 0x0f, 0x7a, 0x68, 0x73, 0xa4, 0x4a, - 0x59, 0xd6, 0x07, 0xbd, 0x5a, 0x9f, 0x1c, 0x0a, 0x2b, 0xf7, 0xd3, 0xb4, 0x53, 0x40, 0x58, 0x70, - 0x08, 0xc8, 0xc0, 0xee, 0x11, 0x64, 0x87, 0xd4, 0x8a, 0x93, 0xee, 0xa2, 0xeb, 0xa1, 0x3c, 0x9c, - 0xdf, 0xaf, 0x05, 0x18, 0x65, 0x3c, 0x46, 0xce, 0xe8, 0xee, 0x67, 0x00, 0x2d, 0x4b, 0x53, 0x68, - 0x41, 0x01, 0x6d, 0x8d, 0xf0, 0xd9, 0xd7, 0x70, 0xb7, 0xed, 0xf2, 0xf8, 0x2b, 0x26, 0x4c, 0xcb, - 0xd2, 0x68, 0x5e, 0xbf, 0xfb, 0x03, 0x58, 0x64, 0x39, 0x09, 0xc1, 0x9b, 0x44, 0xcf, 0x64, 0xa0, - 0xab, 0x77, 0x46, 0x76, 0xcb, 0x6e, 0x52, 0xc3, 0x9e, 0x68, 0xa1, 0x6b, 0x23, 0x2c, 0x9e, 0xd0, - 0x91, 0x00, 0x13, 0x9a, 0xc8, 0xb0, 0xb1, 0xdd, 0x22, 0x2c, 0xb9, 0x6c, 0xec, 0x53, 0xa3, 0x8d, - 0xae, 0x86, 0x70, 0x21, 0x03, 0x01, 0x26, 0x8b, 0x8c, 0x09, 0x19, 0x1a, 0x8a, 0xe2, 0xfe, 0x14, - 0x75, 0x54, 0x14, 0x96, 0x67, 0x84, 0x8a, 0xc2, 0xc6, 0x8a, 0xa9, 0x97, 0x89, 0x96, 0xa5, 0xbd, - 0x9a, 0x73, 0x88, 0xbe, 0xf7, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x49, 0x85, 0xf2, 0xd3, 0x37, - 0x3d, 0x00, 0x00, + 0x76, 0x6c, 0xfe, 0x44, 0x3d, 0x51, 0x34, 0x5d, 0xfa, 0x98, 0xd3, 0xfe, 0x48, 0x6e, 0x8f, 0x67, + 0x3c, 0x1e, 0x9b, 0x1e, 0x7b, 0xc7, 0x33, 0xb1, 0xec, 0xd9, 0x5d, 0x92, 0xa2, 0x24, 0xda, 0x32, + 0x29, 0x37, 0x29, 0x7b, 0xec, 0x64, 0xd0, 0xd3, 0x22, 0x4b, 0x54, 0x67, 0xc8, 0x6e, 0x6e, 0x77, + 0x53, 0x63, 0xe5, 0x12, 0x24, 0x01, 0x02, 0x2c, 0x72, 0x09, 0x02, 0x04, 0x49, 0x80, 0x00, 0x09, + 0x36, 0x7b, 0x48, 0x82, 0xec, 0x21, 0x08, 0x82, 0x1c, 0xb3, 0xc8, 0x25, 0x40, 0x0e, 0x01, 0x72, + 0x49, 0x82, 0xbd, 0xe4, 0x12, 0xe4, 0xb0, 0x48, 0x80, 0x3d, 0xe7, 0x14, 0xd4, 0xa7, 0x9b, 0xdd, + 0xcd, 0x66, 0x93, 0xb2, 0x3c, 0x98, 0x43, 0x4e, 0x52, 0xbf, 0x7a, 0xef, 0xd5, 0xab, 0x57, 0xaf, + 0x5e, 0xbd, 0x4f, 0x11, 0xee, 0x77, 0x35, 0xfb, 0x68, 0x78, 0x50, 0x6c, 0x1b, 0xfd, 0x3b, 0x6d, + 0x43, 0xb7, 0x55, 0x4d, 0xc7, 0xe6, 0x6d, 0xcb, 0x36, 0x4c, 0xb5, 0x8b, 0x6f, 0x6b, 0xba, 0x8d, + 0xcd, 0x43, 0xb5, 0x8d, 0xef, 0x58, 0x03, 0xdc, 0xbe, 0xd3, 0xb6, 0xb4, 0xe2, 0xc0, 0x34, 0x6c, + 0x03, 0xa5, 0xc9, 0xbf, 0xc7, 0x77, 0xc5, 0xf5, 0xae, 0x61, 0x74, 0x7b, 0xf8, 0x0e, 0x85, 0x1e, + 0x0c, 0x0f, 0xef, 0x74, 0xb0, 0xd5, 0x36, 0xb5, 0x81, 0x6d, 0x98, 0x0c, 0x53, 0x5c, 0x0b, 0x62, + 0xd8, 0x5a, 0x1f, 0x5b, 0xb6, 0xda, 0x1f, 0x70, 0x84, 0x2b, 0x41, 0x84, 0xaf, 0x4d, 0x75, 0x30, + 0xc0, 0xa6, 0xc5, 0xc6, 0xa5, 0x55, 0x58, 0xde, 0xc6, 0xf6, 0x5e, 0x6f, 0xd8, 0xd5, 0xf4, 0x9a, + 0x7e, 0x68, 0xc8, 0xf8, 0x07, 0x43, 0x6c, 0xd9, 0xd2, 0xbf, 0x0b, 0xb0, 0x12, 0x18, 0xb0, 0x06, + 0x86, 0x6e, 0x61, 0x84, 0x20, 0xa9, 0xab, 0x7d, 0x5c, 0x10, 0xd6, 0x85, 0x1b, 0xf3, 0x32, 0xfd, + 0x1f, 0x5d, 0x87, 0xdc, 0x31, 0xd6, 0x3b, 0x86, 0xa9, 0x1c, 0x63, 0xd3, 0xd2, 0x0c, 0xbd, 0x10, + 0xa7, 0xa3, 0x8b, 0x0c, 0xfa, 0x9c, 0x01, 0xd1, 0x36, 0x64, 0xfa, 0xaa, 0xae, 0x1d, 0x62, 0xcb, + 0x2e, 0x24, 0xd6, 0x13, 0x37, 0x16, 0xee, 0x7d, 0x58, 0x64, 0x4b, 0x2d, 0x86, 0xce, 0x55, 0x7c, + 0xca, 0xb1, 0xab, 0xba, 0x6d, 0x9e, 0xc8, 0x2e, 0xb1, 0xf8, 0x10, 0x16, 0x7d, 0x43, 0x28, 0x0f, + 0x89, 0xaf, 0xf0, 0x09, 0x97, 0x89, 0xfc, 0x8b, 0x96, 0x21, 0x75, 0xac, 0xf6, 0x86, 0x98, 0x4b, + 0xc2, 0x3e, 0x36, 0xe2, 0xbf, 0x24, 0x48, 0x57, 0xe0, 0x92, 0x3b, 0x5b, 0x45, 0x1d, 0xa8, 0x07, + 0x5a, 0x4f, 0xb3, 0x35, 0x6c, 0x39, 0x4b, 0xff, 0x02, 0x2e, 0x4f, 0x18, 0xe7, 0x1a, 0x78, 0x04, + 0xd9, 0xb6, 0x07, 0x5e, 0x10, 0xe8, 0x52, 0x0a, 0xce, 0x52, 0x02, 0x94, 0x27, 0xb2, 0x0f, 0x5b, + 0xfa, 0xf3, 0x14, 0xe4, 0x83, 0x28, 0xe8, 0x11, 0xcc, 0x59, 0xd8, 0x3c, 0xd6, 0xda, 0x4c, 0xaf, + 0x0b, 0xf7, 0xd6, 0x27, 0x71, 0x2b, 0x36, 0x19, 0xde, 0x4e, 0x4c, 0x76, 0x48, 0xd0, 0x3e, 0xe4, + 0x8f, 0x8d, 0xde, 0xb0, 0x8f, 0x15, 0xfc, 0x7a, 0xa0, 0xea, 0xee, 0x06, 0x2c, 0xdc, 0xbb, 0x31, + 0x91, 0xcd, 0x73, 0x4a, 0x50, 0x75, 0xf0, 0x77, 0x62, 0xf2, 0xb9, 0x63, 0x3f, 0x08, 0xed, 0xc2, + 0xa2, 0xda, 0x1b, 0x1c, 0xa9, 0xca, 0x21, 0x56, 0xed, 0xa1, 0x89, 0x0b, 0x09, 0xca, 0xf3, 0xfa, + 0x44, 0x9e, 0x25, 0x82, 0xbd, 0xc5, 0x90, 0x77, 0x62, 0x72, 0x56, 0xf5, 0x7c, 0x8b, 0x7f, 0x20, + 0xc0, 0x1c, 0x97, 0x1d, 0x3d, 0x80, 0xa4, 0x7d, 0x32, 0x60, 0x6b, 0xcd, 0x45, 0x30, 0xe4, 0xf8, + 0xc5, 0xd6, 0xc9, 0x00, 0xcb, 0x94, 0x44, 0x7a, 0x06, 0x49, 0xf2, 0x85, 0x16, 0x60, 0x6e, 0xbf, + 0xfe, 0xa4, 0xde, 0x78, 0x51, 0xcf, 0xc7, 0xd0, 0x2a, 0xa0, 0x4a, 0xa3, 0xde, 0x92, 0x1b, 0xbb, + 0xbb, 0x55, 0x59, 0x69, 0x56, 0xe5, 0xe7, 0xb5, 0x4a, 0x35, 0x2f, 0xa0, 0x77, 0x61, 0xfd, 0x79, + 0x63, 0x77, 0xff, 0x69, 0x55, 0x29, 0x55, 0x2a, 0xd5, 0x66, 0xb3, 0x56, 0xae, 0xed, 0xd6, 0x5a, + 0x2f, 0x95, 0x4a, 0xa3, 0xde, 0x6c, 0xc9, 0xa5, 0x5a, 0xbd, 0xd5, 0xcc, 0xc7, 0xc5, 0xdf, 0x14, + 0xe0, 0x5c, 0x40, 0x1d, 0xa8, 0xe4, 0x93, 0xf0, 0xf6, 0xac, 0x6a, 0xf4, 0x4a, 0x7a, 0x2b, 0x4c, + 0x52, 0x80, 0x74, 0xa3, 0xbe, 0x5b, 0xab, 0x13, 0xe9, 0x16, 0x60, 0xae, 0xb1, 0xb5, 0x45, 0x3f, + 0xe2, 0xe2, 0x0f, 0x05, 0xc8, 0x7a, 0xf5, 0x87, 0xbe, 0xeb, 0x93, 0xe0, 0xe6, 0x4c, 0x4a, 0xf7, + 0x4e, 0xff, 0x20, 0x6c, 0x7a, 0x04, 0x39, 0xae, 0x10, 0x32, 0x6d, 0x69, 0x9b, 0x88, 0x91, 0x87, + 0x6c, 0xa3, 0xfc, 0xb8, 0x5a, 0x69, 0x29, 0xcd, 0x56, 0x43, 0xae, 0xe6, 0xe3, 0xe5, 0x34, 0x9b, + 0x5a, 0xca, 0x41, 0x76, 0xcf, 0x34, 0x0e, 0xb0, 0x73, 0x32, 0x4a, 0xb0, 0xc8, 0xbf, 0xf9, 0x49, + 0xf8, 0x08, 0x52, 0x26, 0x56, 0x3b, 0x27, 0xdc, 0x68, 0xc5, 0x22, 0xf3, 0x36, 0x45, 0xc7, 0xdb, + 0x14, 0xcb, 0x86, 0xd1, 0x7b, 0x4e, 0x4e, 0x9e, 0xcc, 0x10, 0xa5, 0x5f, 0x24, 0x61, 0xa9, 0x62, + 0x62, 0xd5, 0xc6, 0x4c, 0x73, 0x9c, 0x75, 0xa8, 0x57, 0x79, 0x04, 0x39, 0x72, 0x72, 0xda, 0x9a, + 0x7d, 0xa2, 0x98, 0xaa, 0xde, 0xc5, 0xdc, 0xa8, 0x57, 0x1c, 0x5d, 0x54, 0xf8, 0xa8, 0x4c, 0x06, + 0xe5, 0xc5, 0xb6, 0xf7, 0x13, 0xd5, 0x60, 0x89, 0x1f, 0x0a, 0xdf, 0x61, 0x4d, 0xf8, 0x0f, 0x2b, + 0x93, 0xc2, 0x73, 0x58, 0xd1, 0xb1, 0x1f, 0xa2, 0x61, 0x0b, 0x3d, 0x01, 0x18, 0xa8, 0xa6, 0xda, + 0xc7, 0x36, 0x36, 0xad, 0x42, 0xd2, 0xef, 0xb9, 0x42, 0x56, 0x53, 0xdc, 0x73, 0xb1, 0x99, 0xe7, + 0xf2, 0x90, 0xa3, 0x6d, 0x72, 0xd4, 0xdb, 0x26, 0xb6, 0xad, 0x42, 0x8a, 0x72, 0xba, 0x11, 0xc5, + 0xa9, 0xc9, 0x50, 0x29, 0x9b, 0x72, 0xe2, 0x0f, 0xcb, 0x82, 0xec, 0x50, 0xa3, 0x06, 0xac, 0x38, + 0x0b, 0x34, 0x74, 0x1b, 0xeb, 0xb6, 0x62, 0x19, 0x43, 0xb3, 0x8d, 0x0b, 0x69, 0xaa, 0xa5, 0x8b, + 0x81, 0x25, 0x32, 0x9c, 0x26, 0x45, 0x91, 0xb9, 0x6a, 0x7c, 0x40, 0xf4, 0x0a, 0x44, 0xb5, 0xdd, + 0xc6, 0x96, 0xa5, 0x31, 0x5d, 0x28, 0x26, 0xfe, 0xc1, 0x50, 0x33, 0x71, 0x1f, 0xeb, 0xb6, 0x55, + 0x98, 0xf3, 0x73, 0x6d, 0x19, 0x03, 0xa3, 0x67, 0x74, 0x4f, 0xe4, 0x11, 0x8e, 0xfc, 0x8e, 0x8f, + 0xdc, 0x33, 0x62, 0x89, 0x9f, 0xc1, 0xb9, 0x80, 0x52, 0x4e, 0xe3, 0xb3, 0xc5, 0x0d, 0xc8, 0x7a, + 0x35, 0x71, 0x2a, 0x7f, 0xff, 0x3b, 0x71, 0x58, 0x0a, 0xd1, 0x01, 0xda, 0x81, 0x8c, 0xa5, 0xab, + 0x03, 0xeb, 0xc8, 0xb0, 0xb9, 0xfd, 0xde, 0x8c, 0x50, 0x59, 0xb1, 0xc9, 0x71, 0xd9, 0xe7, 0x4e, + 0x4c, 0x76, 0xa9, 0x51, 0x19, 0xd2, 0x4c, 0x9f, 0x41, 0xaf, 0x1b, 0xc6, 0x87, 0xc1, 0x5c, 0x2e, + 0x9c, 0x52, 0xbc, 0x0b, 0x39, 0xff, 0x0c, 0x68, 0x0d, 0x16, 0x9c, 0x19, 0x14, 0xad, 0xc3, 0xd7, + 0x0a, 0x0e, 0xa8, 0xd6, 0x11, 0x3f, 0x84, 0xac, 0x97, 0x19, 0xba, 0x08, 0xf3, 0xdc, 0x20, 0x5c, + 0xf4, 0x0c, 0x03, 0xd4, 0x3a, 0xee, 0x99, 0xfe, 0x2e, 0x2c, 0xfb, 0xed, 0x8c, 0x1f, 0xe5, 0xf7, + 0xdc, 0x35, 0x30, 0x5d, 0xe4, 0xfc, 0x6b, 0x70, 0xe4, 0x94, 0xfe, 0x32, 0x09, 0xf9, 0xe0, 0xa1, + 0x41, 0x8f, 0x20, 0x75, 0xd0, 0x33, 0xda, 0x5f, 0x71, 0xda, 0x77, 0x27, 0x9d, 0xae, 0x62, 0x99, + 0x60, 0x31, 0xe8, 0x4e, 0x4c, 0x66, 0x44, 0x84, 0xba, 0x6f, 0x0c, 0x75, 0x9b, 0x6b, 0x6f, 0x32, + 0xf5, 0x53, 0x82, 0x35, 0xa2, 0xa6, 0x44, 0x68, 0x13, 0x16, 0x98, 0xd9, 0x29, 0x7d, 0xa3, 0xe3, + 0xdc, 0x51, 0xd7, 0x26, 0xf2, 0x28, 0x51, 0xdc, 0xa7, 0x46, 0x07, 0xcb, 0xa0, 0xba, 0xff, 0x8b, + 0x8b, 0xb0, 0xe0, 0x91, 0x4d, 0xdc, 0x86, 0x05, 0xcf, 0x64, 0xe8, 0x02, 0xcc, 0x1d, 0x5a, 0x8a, + 0xeb, 0x8e, 0xe7, 0xe5, 0xf4, 0xa1, 0x45, 0x9d, 0xeb, 0x1a, 0x2c, 0x50, 0x29, 0x94, 0xc3, 0x9e, + 0xda, 0xb5, 0x0a, 0xf1, 0xf5, 0x04, 0xd9, 0x23, 0x0a, 0xda, 0x22, 0x10, 0xf1, 0xbf, 0x05, 0x80, + 0xd1, 0x94, 0xe8, 0x11, 0x24, 0xa9, 0x94, 0xcc, 0xa9, 0xdf, 0x98, 0x41, 0xca, 0x22, 0x15, 0x95, + 0x52, 0x49, 0x7f, 0x22, 0x40, 0x92, 0xb2, 0x09, 0x5e, 0x7e, 0xcd, 0x5a, 0x7d, 0x7b, 0xb7, 0xaa, + 0xd4, 0x1b, 0x9b, 0x55, 0xe5, 0x85, 0x5c, 0x6b, 0x55, 0xe5, 0xbc, 0x80, 0x2e, 0xc2, 0x05, 0x2f, + 0x5c, 0xae, 0x96, 0x36, 0xab, 0xb2, 0xd2, 0xa8, 0xef, 0xbe, 0xcc, 0xc7, 0x91, 0x08, 0xab, 0x4f, + 0xf7, 0x77, 0x5b, 0xb5, 0xf1, 0xb1, 0x04, 0xba, 0x04, 0x05, 0xcf, 0x18, 0xe7, 0xc1, 0xd9, 0x26, + 0x09, 0x5b, 0xcf, 0x28, 0xfb, 0x97, 0x0f, 0xa6, 0xca, 0x8b, 0xee, 0x66, 0x50, 0x63, 0x7b, 0x01, + 0x8b, 0x3e, 0x1f, 0x4d, 0x02, 0x45, 0xee, 0x54, 0x3a, 0xca, 0xc1, 0x89, 0x4d, 0x83, 0x27, 0xe1, + 0x46, 0x42, 0x5e, 0x74, 0xa0, 0x65, 0x02, 0x24, 0x6a, 0xed, 0x69, 0x7d, 0xcd, 0xe6, 0x38, 0x71, + 0x8a, 0x03, 0x14, 0x44, 0x11, 0xa4, 0xdf, 0x4b, 0x40, 0x9a, 0xef, 0xcd, 0x75, 0xcf, 0x2d, 0xe1, + 0x63, 0xe9, 0x40, 0x19, 0x4b, 0xdf, 0xe1, 0x88, 0xfb, 0x0f, 0x07, 0xda, 0x81, 0x9c, 0xd7, 0x95, + 0xbe, 0x76, 0xc2, 0xd3, 0xab, 0xfe, 0x0d, 0xf2, 0x9e, 0xe7, 0xd7, 0x3c, 0x28, 0x5d, 0x3c, 0xf6, + 0xc2, 0x50, 0x19, 0x72, 0x01, 0x6f, 0x9c, 0x9c, 0xee, 0x8d, 0x17, 0xdb, 0x3e, 0xc7, 0x54, 0x82, + 0x25, 0xc7, 0x91, 0xf6, 0xb0, 0x62, 0x73, 0x47, 0xcb, 0x6f, 0x8b, 0xfc, 0x98, 0x03, 0x46, 0x23, + 0x64, 0x07, 0x86, 0xee, 0xc2, 0x5c, 0x4f, 0xd3, 0xb1, 0xda, 0x25, 0xb7, 0x01, 0x21, 0x43, 0x6e, + 0xfc, 0x60, 0x1a, 0xc7, 0x58, 0x57, 0xf5, 0x36, 0x2e, 0x27, 0xfe, 0x94, 0x5c, 0x27, 0x1c, 0x4f, + 0xfc, 0x3e, 0xa0, 0xf1, 0xe5, 0x9d, 0xca, 0xd1, 0xfe, 0x4b, 0x1c, 0x60, 0xc4, 0x1e, 0x7d, 0x0a, + 0x19, 0xad, 0x83, 0x75, 0x5b, 0xb3, 0x4f, 0x78, 0x88, 0x7c, 0x71, 0x5c, 0x88, 0x62, 0x8d, 0xa3, + 0xc8, 0x2e, 0x32, 0x2a, 0xc3, 0xb9, 0x8e, 0x6a, 0xab, 0x4a, 0xfb, 0x88, 0xd8, 0x4c, 0x47, 0x51, + 0x1d, 0xcf, 0x30, 0x1e, 0x5f, 0xb4, 0x9c, 0x74, 0x47, 0x5e, 0x24, 0x24, 0x15, 0x46, 0x51, 0xb2, + 0xd1, 0x63, 0x58, 0xea, 0x63, 0x5b, 0x0d, 0xf2, 0x49, 0x4c, 0xe5, 0x73, 0xde, 0x21, 0x73, 0x79, + 0x89, 0x43, 0xc8, 0x38, 0x52, 0xa2, 0x8f, 0x7d, 0x51, 0xd9, 0x7a, 0xc4, 0x82, 0x3c, 0xb1, 0x98, + 0x5f, 0x67, 0x59, 0xae, 0x33, 0xe9, 0x72, 0x58, 0x84, 0x96, 0x81, 0xe4, 0xe7, 0xf7, 0x3f, 0x7a, + 0x90, 0x17, 0x36, 0xc8, 0xf6, 0x48, 0x43, 0x58, 0x0a, 0xb9, 0x69, 0x51, 0x11, 0xe6, 0xe9, 0x89, + 0xb1, 0x34, 0x1b, 0x73, 0xe5, 0x8e, 0x1b, 0xc6, 0x08, 0x85, 0xe0, 0x0f, 0x4c, 0x7c, 0x88, 0x4d, + 0x13, 0x77, 0xa8, 0x97, 0x0a, 0xc5, 0x77, 0x51, 0xa4, 0xdf, 0x12, 0x20, 0xe3, 0x1a, 0xd3, 0x06, + 0x64, 0x2c, 0xdc, 0x65, 0x51, 0x00, 0x9b, 0xeb, 0x4a, 0x90, 0xb6, 0xd8, 0xe4, 0x08, 0x3c, 0x53, + 0x73, 0xf0, 0x49, 0xa6, 0xe6, 0x1b, 0x3a, 0x95, 0x41, 0xfd, 0x9d, 0x00, 0x4b, 0x9b, 0xb8, 0x87, + 0x83, 0xc1, 0x62, 0xd4, 0x45, 0xe7, 0x8d, 0xaf, 0xe2, 0xfe, 0xf8, 0x2a, 0x84, 0x55, 0x44, 0x7c, + 0x75, 0xa6, 0x98, 0x63, 0x15, 0x96, 0xfd, 0xb3, 0xb1, 0x5b, 0x56, 0xfa, 0x9f, 0x04, 0x5c, 0x21, + 0xe7, 0xcb, 0x34, 0x7a, 0x3d, 0x6c, 0xee, 0x0d, 0x0f, 0x7a, 0x9a, 0x75, 0x74, 0x8a, 0xc5, 0x5d, + 0x80, 0x39, 0xdd, 0xe8, 0x78, 0x7c, 0x58, 0x9a, 0x7c, 0xd6, 0x3a, 0xa8, 0x0a, 0xe7, 0x83, 0xd1, + 0xee, 0x09, 0xb7, 0xf6, 0xc9, 0xb1, 0x6e, 0xfe, 0x38, 0x78, 0x91, 0x8b, 0x90, 0x21, 0x71, 0xba, + 0xa1, 0xf7, 0x4e, 0xa8, 0xe3, 0xca, 0xc8, 0xee, 0x37, 0x92, 0x83, 0x81, 0xeb, 0x77, 0xdc, 0xc0, + 0x35, 0x72, 0x45, 0x51, 0x31, 0xec, 0x97, 0x63, 0x8e, 0x97, 0xb9, 0xab, 0x07, 0x33, 0xb2, 0x9e, + 0xea, 0x90, 0xcf, 0xb2, 0x8b, 0x6f, 0xc1, 0x25, 0xfe, 0x93, 0x00, 0x6b, 0x13, 0x97, 0xc0, 0x23, + 0xaf, 0x0e, 0x9c, 0x1b, 0xb0, 0x01, 0x57, 0x09, 0xec, 0x94, 0x3d, 0x9c, 0xaa, 0x04, 0x5e, 0x26, + 0xe1, 0x50, 0x9f, 0x1a, 0x72, 0x03, 0x1f, 0x50, 0x2c, 0xc1, 0x52, 0x08, 0xda, 0xa9, 0x16, 0xf3, + 0x73, 0x01, 0xd6, 0x47, 0xa2, 0xec, 0xeb, 0x83, 0xb7, 0x67, 0xbe, 0xad, 0x91, 0x6d, 0xb1, 0x9b, + 0xf7, 0xfe, 0xf8, 0xda, 0xc3, 0x27, 0xfc, 0xa6, 0x4e, 0xf0, 0x35, 0xb8, 0x1a, 0x31, 0x35, 0x3f, + 0xce, 0xff, 0x91, 0x84, 0xab, 0xcf, 0xd5, 0x9e, 0xd6, 0x71, 0xe3, 0xe9, 0x90, 0x82, 0x52, 0xb4, + 0x4a, 0xda, 0x63, 0x27, 0x80, 0x79, 0xad, 0x47, 0xee, 0xa9, 0x9d, 0xc6, 0x7f, 0x86, 0xa8, 0xe4, + 0x2d, 0xe6, 0xc2, 0x2f, 0x43, 0x72, 0xe1, 0x07, 0xb3, 0xcb, 0x1a, 0x95, 0x19, 0xef, 0x07, 0x1d, + 0xcc, 0x27, 0xb3, 0xf3, 0x8d, 0xb0, 0x82, 0x33, 0x9f, 0xe2, 0x6f, 0x33, 0x79, 0xfd, 0x87, 0x24, + 0x48, 0x51, 0xab, 0xe7, 0x3e, 0x44, 0x86, 0xf9, 0xb6, 0xa1, 0x1f, 0x6a, 0x66, 0x1f, 0x77, 0x78, + 0x12, 0xf6, 0xf1, 0x2c, 0xca, 0xe3, 0x0e, 0xa4, 0xe2, 0xd0, 0xca, 0x23, 0x36, 0xa8, 0x00, 0x73, + 0x7d, 0x6c, 0x59, 0x6a, 0xd7, 0x11, 0xcb, 0xf9, 0x14, 0x7f, 0x92, 0x80, 0x79, 0x97, 0x04, 0xe9, + 0x63, 0x16, 0xcc, 0xdc, 0xd7, 0xf6, 0x9b, 0x08, 0xf0, 0xe6, 0xc6, 0x1c, 0x7f, 0x03, 0x63, 0xee, + 0xf8, 0x8c, 0x99, 0x1d, 0x87, 0xcd, 0x37, 0x12, 0x3b, 0xc2, 0xae, 0xbf, 0x75, 0x03, 0x94, 0x7e, + 0x05, 0xd0, 0xae, 0x66, 0xf1, 0x64, 0xd6, 0x75, 0x4b, 0x24, 0x77, 0x55, 0x5f, 0x2b, 0x58, 0xb7, + 0x4d, 0x8d, 0x67, 0x4d, 0x29, 0x19, 0xfa, 0xea, 0xeb, 0x2a, 0x83, 0x90, 0xcc, 0xca, 0xb2, 0x55, + 0xd3, 0xd6, 0xf4, 0xae, 0x62, 0x1b, 0x5f, 0x61, 0xb7, 0xaa, 0xef, 0x40, 0x5b, 0x04, 0x28, 0xfd, + 0x48, 0x80, 0x25, 0x1f, 0x7b, 0x6e, 0x93, 0x0f, 0x61, 0x6e, 0xc4, 0xdb, 0x97, 0x4d, 0x85, 0x60, + 0x17, 0x99, 0xda, 0x1c, 0x0a, 0x74, 0x19, 0x40, 0xc7, 0xaf, 0x6d, 0xdf, 0xbc, 0xf3, 0x04, 0x42, + 0xe7, 0x14, 0xef, 0x40, 0x8a, 0xa9, 0x61, 0xd6, 0xb2, 0xc5, 0x4f, 0xe2, 0x80, 0xb6, 0xb1, 0xed, + 0x66, 0xa3, 0x5c, 0x07, 0x13, 0x6c, 0x49, 0x78, 0x03, 0x5b, 0x7a, 0xec, 0xb3, 0x25, 0x66, 0x8d, + 0x37, 0x3d, 0xed, 0x8d, 0xc0, 0xd4, 0x91, 0x9e, 0x70, 0x42, 0x06, 0xc8, 0xe2, 0xb9, 0x99, 0x32, + 0xc0, 0xb3, 0x9a, 0xcc, 0x26, 0x2c, 0xf9, 0x64, 0xe6, 0x7b, 0x7a, 0x1b, 0x90, 0x7a, 0xac, 0x6a, + 0x3d, 0x95, 0xc8, 0xe5, 0x24, 0xd8, 0x3c, 0xe1, 0x3e, 0xef, 0x8e, 0x38, 0x64, 0x92, 0xe4, 0x0d, + 0x18, 0x38, 0xbf, 0x60, 0xbb, 0xa5, 0xe7, 0xbd, 0x68, 0xc7, 0x70, 0xf8, 0xbc, 0xdb, 0xa1, 0x2d, + 0x97, 0x6b, 0xe3, 0x41, 0x02, 0xef, 0x18, 0x4c, 0xec, 0xbe, 0xfc, 0x57, 0x12, 0x2e, 0x46, 0x60, + 0xa3, 0x87, 0x90, 0x30, 0x07, 0x6d, 0x6e, 0x4c, 0xef, 0xcf, 0xc0, 0xbf, 0x28, 0xef, 0x55, 0x76, + 0x62, 0x32, 0xa1, 0x42, 0x2f, 0x82, 0x0d, 0x13, 0x96, 0xb6, 0x7e, 0x34, 0x0b, 0x9b, 0xc8, 0xde, + 0xc9, 0x8f, 0xe3, 0x90, 0x90, 0xf7, 0x2a, 0xe8, 0xfb, 0xbe, 0xec, 0xf3, 0xd6, 0x8c, 0xe2, 0x79, + 0xbb, 0x02, 0x3f, 0x13, 0xc2, 0x92, 0xce, 0x02, 0x2c, 0x57, 0xe4, 0x6a, 0xa9, 0x55, 0x55, 0x36, + 0xab, 0xbb, 0xd5, 0x56, 0x55, 0x61, 0x4d, 0x82, 0xbc, 0x80, 0x2e, 0x41, 0x61, 0x6f, 0xbf, 0xbc, + 0x5b, 0x6b, 0xee, 0x28, 0xfb, 0x75, 0xe7, 0x3f, 0x3e, 0x1a, 0x47, 0x79, 0xc8, 0xee, 0xd6, 0x9a, + 0x2d, 0x0e, 0x68, 0xe6, 0x13, 0x04, 0xb2, 0x5d, 0x6d, 0x29, 0x95, 0xd2, 0x5e, 0xa9, 0x52, 0x6b, + 0xbd, 0xcc, 0x27, 0x91, 0x08, 0xab, 0x7e, 0xde, 0xcd, 0x7a, 0x69, 0xaf, 0xb9, 0xd3, 0x68, 0xe5, + 0x53, 0x08, 0x41, 0x8e, 0xd2, 0x3b, 0xa0, 0x66, 0x3e, 0x4d, 0x38, 0x54, 0x76, 0x1b, 0x75, 0x57, + 0x86, 0x39, 0xb4, 0x0c, 0x79, 0x67, 0x66, 0xb9, 0x5a, 0xda, 0xa4, 0x55, 0xaa, 0x0c, 0x3a, 0x0f, + 0x8b, 0xd5, 0xcf, 0xf7, 0x4a, 0xf5, 0x4d, 0x07, 0x71, 0x5e, 0xfc, 0x8d, 0x60, 0x0f, 0xa5, 0xe6, + 0xd3, 0xd7, 0xfd, 0xd3, 0xee, 0x83, 0x57, 0x71, 0xef, 0x85, 0xe9, 0xed, 0x3c, 0x2c, 0xb6, 0x4a, + 0x7b, 0x55, 0x45, 0x6e, 0xb4, 0x4a, 0xad, 0x5a, 0xa3, 0x9e, 0x17, 0xdc, 0x3a, 0xeb, 0xcf, 0xe3, + 0xb0, 0xc2, 0x0a, 0xad, 0x4e, 0x59, 0xd7, 0xf1, 0x39, 0x37, 0x20, 0xcf, 0x4a, 0x43, 0x4a, 0x30, + 0x2a, 0xcc, 0x31, 0xf8, 0x73, 0x27, 0x36, 0x74, 0x9a, 0x22, 0x71, 0x4f, 0x53, 0xa4, 0x16, 0x8c, + 0x94, 0x6f, 0xfa, 0xdb, 0x07, 0x81, 0xd9, 0xa2, 0x92, 0xaf, 0xa7, 0x21, 0xa1, 0xdc, 0xed, 0x68, + 0x6e, 0x51, 0xd7, 0xdc, 0x59, 0x32, 0xad, 0x33, 0x7a, 0xab, 0x2d, 0x58, 0x0d, 0xca, 0xcb, 0x1d, + 0xc7, 0xad, 0xb1, 0x22, 0xbf, 0xeb, 0x3e, 0x5d, 0x5c, 0x17, 0x43, 0xfa, 0x37, 0x01, 0x32, 0x0e, + 0x98, 0x5c, 0x41, 0x96, 0xf6, 0x6b, 0xd8, 0x57, 0x54, 0x9c, 0x27, 0x10, 0xb7, 0x46, 0xe9, 0x2d, + 0xcf, 0xc7, 0x83, 0xe5, 0xf9, 0xd0, 0x7d, 0x4e, 0x84, 0xee, 0xf3, 0xf7, 0x60, 0xb1, 0x4d, 0xc4, + 0xd7, 0x0c, 0x5d, 0xb1, 0xb5, 0xbe, 0x53, 0x33, 0x8c, 0x2a, 0x53, 0x65, 0x1d, 0x02, 0x02, 0x42, + 0xeb, 0x90, 0xa5, 0xed, 0x35, 0xc5, 0x36, 0x94, 0xa1, 0x85, 0x0b, 0x29, 0x9a, 0xba, 0x03, 0x85, + 0xb5, 0x8c, 0x7d, 0x0b, 0x4b, 0x7f, 0x2f, 0xc0, 0x0a, 0xab, 0x48, 0x04, 0xcd, 0x71, 0x5a, 0x9b, + 0xc1, 0x6b, 0x71, 0x81, 0x5b, 0x2d, 0x94, 0xe1, 0x37, 0x95, 0x90, 0x15, 0x60, 0x35, 0x38, 0x1f, + 0xcf, 0xc2, 0xfe, 0x42, 0x80, 0x65, 0x12, 0x52, 0x38, 0x03, 0x6f, 0x3b, 0xc2, 0x39, 0xc5, 0x4e, + 0x06, 0x94, 0x99, 0x0c, 0x2a, 0x53, 0xfa, 0x2b, 0x01, 0x56, 0x02, 0xb2, 0x72, 0x4b, 0xfd, 0x2c, + 0x18, 0x2e, 0x5d, 0xf3, 0x86, 0x4b, 0x63, 0xf8, 0xa7, 0x0c, 0x98, 0xee, 0x3b, 0x01, 0xd3, 0xe9, + 0x0e, 0xc4, 0x0f, 0xe3, 0x70, 0x79, 0xe4, 0x2d, 0x69, 0x9b, 0xbb, 0x73, 0x8a, 0x7c, 0xff, 0x6c, + 0x1d, 0xdc, 0x67, 0x41, 0x57, 0x77, 0x6f, 0xdc, 0x81, 0x87, 0x88, 0xf4, 0x4d, 0x19, 0xe0, 0xaf, + 0x7b, 0x4b, 0x77, 0xfe, 0x79, 0xf9, 0x16, 0xce, 0xd8, 0x8a, 0xf8, 0x04, 0x2e, 0xd0, 0x2a, 0x88, + 0xfb, 0x58, 0xc3, 0x69, 0xb4, 0x32, 0x2f, 0x92, 0x91, 0x57, 0xc8, 0xb0, 0xfb, 0xa6, 0x80, 0xd7, + 0x7d, 0x3b, 0xd2, 0x7f, 0xfa, 0x36, 0xa3, 0xa5, 0x0e, 0xb0, 0x6c, 0xd8, 0xd4, 0x09, 0x38, 0x9b, + 0xa1, 0xc0, 0xb9, 0xe1, 0x80, 0xe4, 0x2c, 0x8a, 0x65, 0x9b, 0xaa, 0x8d, 0xbb, 0x27, 0xc1, 0x64, + 0x30, 0x92, 0xbe, 0xb8, 0x4f, 0x89, 0x9b, 0x9c, 0x76, 0x27, 0x26, 0xe7, 0x86, 0x3e, 0x08, 0x5a, + 0x03, 0x30, 0x09, 0x0d, 0x56, 0x74, 0xe3, 0x6b, 0x26, 0xed, 0x4e, 0x4c, 0x9e, 0x67, 0xb0, 0xba, + 0xf1, 0xb5, 0xf8, 0xd7, 0x02, 0xe4, 0xfc, 0x5c, 0x50, 0x13, 0xd2, 0x56, 0xfb, 0x08, 0xf7, 0x9d, + 0x6b, 0xf8, 0xe1, 0x9b, 0xc8, 0x52, 0x6c, 0x52, 0x16, 0x32, 0x67, 0x25, 0x3d, 0x86, 0x34, 0x83, + 0x8c, 0x55, 0xcf, 0xb7, 0x6a, 0x5b, 0x8d, 0xbc, 0x80, 0xe6, 0x20, 0xb1, 0xbd, 0xd5, 0xcc, 0xc7, + 0x51, 0x16, 0x32, 0xcd, 0xda, 0xe7, 0x0a, 0xb9, 0xa7, 0xf3, 0x09, 0x12, 0x71, 0xb4, 0x1a, 0x2f, + 0xaa, 0xb2, 0xd2, 0xd8, 0x52, 0x76, 0x4a, 0xf5, 0x46, 0x2d, 0x9f, 0xa4, 0x85, 0xf6, 0x72, 0x06, + 0xd2, 0x6a, 0x9b, 0xcc, 0x2f, 0xfd, 0x34, 0xee, 0xdd, 0x68, 0xbf, 0x68, 0x7c, 0xa3, 0xeb, 0xb0, + 0xd2, 0x53, 0x2d, 0x5b, 0x31, 0xf9, 0x80, 0x62, 0x0d, 0x69, 0x04, 0x3e, 0xf1, 0x1d, 0xc4, 0xc8, + 0x71, 0x2f, 0x11, 0x42, 0x87, 0x61, 0x93, 0x91, 0x8d, 0xf3, 0x3b, 0x54, 0xb5, 0xde, 0x28, 0x80, + 0x9c, 0x99, 0xdf, 0x16, 0x23, 0x43, 0x77, 0x60, 0x89, 0x4b, 0xa4, 0x1d, 0x63, 0x87, 0x99, 0x45, + 0x7d, 0x56, 0x4a, 0x46, 0xa3, 0x21, 0x8e, 0x6f, 0xa1, 0x1d, 0x40, 0xd4, 0x7b, 0xb8, 0x02, 0xcc, + 0x78, 0x0d, 0xe5, 0x09, 0x95, 0x33, 0x3b, 0x01, 0xb3, 0xae, 0xc5, 0x2f, 0x92, 0xb0, 0x5a, 0x37, + 0x3a, 0xb8, 0x69, 0xab, 0xdd, 0xd3, 0xd4, 0xee, 0x7f, 0x79, 0xbc, 0x14, 0x1a, 0xf7, 0x9f, 0xfc, + 0x70, 0xae, 0xb3, 0x54, 0x40, 0x51, 0x11, 0x96, 0x2c, 0x5b, 0xed, 0x52, 0x5f, 0xaf, 0x9a, 0x5d, + 0x6c, 0x2b, 0x03, 0xd5, 0x3e, 0xe2, 0x8e, 0xfc, 0x3c, 0x1f, 0x6a, 0xd1, 0x91, 0x3d, 0xd5, 0x3e, + 0x0a, 0x2f, 0xa9, 0x27, 0x4f, 0x5d, 0x52, 0x7f, 0x1c, 0xac, 0x6a, 0x7d, 0x38, 0x65, 0x2d, 0x11, + 0x11, 0xdb, 0xe7, 0x13, 0xca, 0xe5, 0x77, 0xa7, 0xb0, 0x9c, 0x5e, 0x26, 0x3f, 0x7b, 0x79, 0xf8, + 0x5b, 0xae, 0xb4, 0xbf, 0x03, 0x17, 0xc6, 0x16, 0xcf, 0xe3, 0x83, 0x2e, 0x14, 0xc8, 0xd0, 0xbe, + 0x6e, 0x9d, 0xd2, 0x1c, 0x27, 0x58, 0x4c, 0x7c, 0x82, 0xc5, 0x48, 0x17, 0xe1, 0x9d, 0x90, 0x89, + 0xb8, 0x14, 0x7f, 0x9b, 0x62, 0x62, 0x9c, 0xbe, 0xe9, 0xf3, 0xc5, 0xa4, 0x53, 0xf1, 0xb1, 0x77, + 0xdb, 0x43, 0xfb, 0x23, 0xdf, 0xc4, 0xb9, 0x58, 0x83, 0x05, 0x2f, 0x1e, 0x8f, 0x71, 0xec, 0x29, + 0x07, 0x27, 0x75, 0xa6, 0x5e, 0x54, 0x3a, 0xd0, 0x8b, 0xda, 0x1d, 0x1d, 0xaa, 0x39, 0x7f, 0xde, + 0x32, 0x51, 0x15, 0x11, 0xc7, 0xea, 0xd5, 0xd8, 0xb1, 0xca, 0xf8, 0x1b, 0x5c, 0x13, 0x99, 0xfe, + 0x3f, 0x38, 0x58, 0xdc, 0xa8, 0x43, 0x3b, 0x4f, 0xd2, 0x2b, 0x10, 0x99, 0xc5, 0x9f, 0xbe, 0x17, + 0x14, 0x30, 0xa3, 0x78, 0xd0, 0x8c, 0xa4, 0xcb, 0x70, 0x31, 0x94, 0x37, 0x9f, 0xfa, 0x25, 0x93, + 0x6b, 0x1b, 0xf3, 0x52, 0x62, 0xd3, 0x56, 0x6d, 0x6b, 0xd6, 0x99, 0xf9, 0xa0, 0x77, 0x66, 0x06, + 0xa2, 0x33, 0x6f, 0xb3, 0x55, 0x05, 0x59, 0xf3, 0xcb, 0xff, 0x03, 0x48, 0x0d, 0x69, 0x55, 0x9c, + 0x85, 0xe9, 0x4b, 0x7e, 0x93, 0xde, 0x27, 0x43, 0x32, 0xc3, 0x90, 0x7e, 0x2a, 0xc0, 0x82, 0x07, + 0x8c, 0x2e, 0xc1, 0xbc, 0x5b, 0x24, 0x73, 0x32, 0x4a, 0x17, 0x40, 0xf6, 0xc0, 0x36, 0x6c, 0xb5, + 0xc7, 0xdf, 0xbb, 0xb0, 0x0f, 0x84, 0x20, 0x39, 0xb4, 0x30, 0x4b, 0x38, 0x12, 0x32, 0xfd, 0x1f, + 0xdd, 0x82, 0xe4, 0x50, 0xd7, 0x6c, 0x7a, 0xf6, 0x72, 0xc1, 0x43, 0x45, 0xa7, 0x2a, 0xee, 0xeb, + 0x9a, 0x2d, 0x53, 0x2c, 0xe9, 0x21, 0x24, 0xc9, 0x97, 0x3f, 0x52, 0x9a, 0x87, 0x54, 0xf9, 0x65, + 0xab, 0xda, 0xcc, 0x0b, 0x08, 0x20, 0x5d, 0xab, 0x37, 0x36, 0xab, 0x24, 0x5a, 0x3a, 0x07, 0xe9, + 0x67, 0xfb, 0x25, 0xf9, 0x49, 0x33, 0x9f, 0x10, 0xe9, 0x55, 0x7e, 0xc9, 0xd5, 0x45, 0x58, 0xf1, + 0xee, 0x4b, 0xb6, 0x47, 0x93, 0xca, 0x76, 0xa5, 0xd0, 0xb2, 0xdd, 0x65, 0xdf, 0x6d, 0x35, 0xa5, + 0x60, 0xf7, 0xcf, 0x09, 0x58, 0x09, 0xc5, 0x43, 0xf7, 0xbd, 0xa5, 0xba, 0xab, 0x91, 0x3c, 0xbd, + 0x45, 0xba, 0x67, 0xe1, 0x45, 0xba, 0x9b, 0xd1, 0x0c, 0x22, 0xcb, 0x73, 0x7f, 0x24, 0xb0, 0xf2, + 0xdc, 0x86, 0xaf, 0xdc, 0xf4, 0xde, 0x54, 0x91, 0xbc, 0xf5, 0xa5, 0xe7, 0x13, 0xea, 0x72, 0xcd, + 0x56, 0x69, 0xbb, 0xaa, 0xec, 0xd7, 0xd9, 0x5f, 0xb7, 0x2e, 0xb7, 0x0c, 0xf9, 0xed, 0xaa, 0x53, + 0x78, 0x53, 0x9a, 0xad, 0x52, 0x8b, 0xec, 0xde, 0x58, 0x4d, 0x2c, 0x21, 0xfe, 0x76, 0xb0, 0x26, + 0x56, 0xf1, 0x09, 0x79, 0x67, 0xf6, 0x65, 0x7b, 0xa5, 0xbd, 0x1b, 0x26, 0xed, 0x25, 0x28, 0x70, + 0x79, 0xf6, 0x9b, 0x4c, 0xe8, 0x5a, 0x4b, 0xe1, 0xd6, 0x34, 0x2a, 0x8c, 0x2d, 0x03, 0xe2, 0x26, + 0xe3, 0xfd, 0xbd, 0xc1, 0x8f, 0x04, 0x58, 0xf2, 0x81, 0xb9, 0x05, 0x79, 0x3a, 0xc6, 0x82, 0xaf, + 0x63, 0x7c, 0x07, 0x96, 0x49, 0x6e, 0xcf, 0x4e, 0xad, 0xa5, 0x0c, 0xb0, 0xa9, 0x90, 0x11, 0x7e, + 0x76, 0xce, 0xf7, 0xd5, 0xd7, 0xbc, 0xc3, 0xb0, 0x87, 0x4d, 0xc2, 0xf8, 0x2d, 0xd4, 0xd4, 0xa5, + 0xdf, 0x17, 0x58, 0x90, 0x71, 0xea, 0x3c, 0x78, 0x9a, 0xc7, 0x09, 0x49, 0x94, 0x13, 0xb3, 0x27, + 0xca, 0x52, 0x89, 0x45, 0x16, 0x67, 0xc8, 0x49, 0xc9, 0x31, 0x5b, 0x6d, 0x1c, 0xfc, 0x2a, 0x6e, + 0xdb, 0x4d, 0xdb, 0x30, 0xb1, 0x8c, 0xd5, 0x8e, 0xb3, 0x32, 0x11, 0x32, 0x3d, 0xa3, 0x4d, 0x23, + 0x7c, 0x67, 0x61, 0xce, 0xb7, 0x37, 0xb8, 0x8d, 0xfb, 0x83, 0xdb, 0x70, 0x66, 0x51, 0xb7, 0xf0, + 0x75, 0x58, 0x74, 0x9f, 0x6c, 0xd1, 0x4b, 0x3f, 0xc1, 0xd3, 0xcb, 0xac, 0x03, 0x6e, 0x90, 0xab, + 0xbf, 0x06, 0x19, 0x0b, 0xf7, 0x70, 0xdb, 0x36, 0x4c, 0x1e, 0x8d, 0x4f, 0x9b, 0x73, 0x53, 0xb5, + 0xd5, 0x26, 0x27, 0xa1, 0xef, 0x76, 0xf9, 0xff, 0xe2, 0xef, 0x0a, 0x90, 0xf5, 0x0e, 0xa2, 0x6d, + 0x48, 0x31, 0xed, 0x0b, 0xfe, 0xb0, 0x7a, 0x06, 0xc6, 0x45, 0xb6, 0x33, 0x8c, 0x5e, 0xfc, 0x14, + 0x52, 0xac, 0x86, 0xb1, 0x0a, 0x69, 0xe3, 0xf0, 0xd0, 0xc2, 0x36, 0x57, 0x3b, 0xff, 0x22, 0xf0, + 0x1e, 0xd6, 0xbb, 0xdc, 0x18, 0x12, 0x32, 0xff, 0x3a, 0xcb, 0x5d, 0xcf, 0xf2, 0xd8, 0x34, 0x24, + 0xbf, 0xd2, 0xf4, 0x8e, 0xf4, 0xc7, 0x02, 0x5c, 0x18, 0x13, 0x9b, 0xdb, 0x44, 0x65, 0xec, 0x41, + 0xd7, 0xfb, 0x13, 0x57, 0xca, 0xab, 0x4d, 0xfc, 0x11, 0x97, 0xe7, 0x65, 0xd7, 0xa7, 0x30, 0xc7, + 0x81, 0x13, 0x17, 0x19, 0xfa, 0xec, 0x8d, 0x65, 0x88, 0x7f, 0x13, 0xf7, 0x89, 0xf7, 0xc2, 0xd4, + 0x6c, 0x3c, 0x8b, 0xc1, 0x3d, 0x09, 0x1a, 0xdc, 0xad, 0x10, 0xc9, 0xbd, 0xdc, 0xa2, 0x2c, 0xee, + 0x2a, 0x2c, 0x50, 0x6b, 0x53, 0x07, 0x03, 0xac, 0xb3, 0x1b, 0x36, 0xbb, 0x13, 0x93, 0x81, 0x00, + 0x4b, 0x14, 0x86, 0xde, 0x87, 0x1c, 0x33, 0xc8, 0x63, 0x6c, 0x7e, 0x4d, 0xd8, 0x52, 0x9b, 0x23, + 0x58, 0xf4, 0xc1, 0x61, 0xc3, 0x01, 0xa3, 0x02, 0xa4, 0x4d, 0xdc, 0x37, 0x8e, 0x79, 0xf1, 0x75, + 0x27, 0x26, 0xf3, 0xef, 0xb3, 0x6f, 0xe9, 0xa8, 0x34, 0xb1, 0x06, 0x85, 0xf1, 0x65, 0xb2, 0x1d, + 0xa2, 0xa8, 0xf7, 0xfe, 0x57, 0xf0, 0xbc, 0x55, 0xac, 0xc3, 0xa2, 0xef, 0x67, 0x55, 0xe8, 0xd2, + 0x84, 0x5f, 0x5b, 0x51, 0x45, 0x89, 0x97, 0x23, 0x7f, 0x8b, 0x25, 0xc5, 0xd0, 0xa1, 0xe7, 0x27, + 0x61, 0xbe, 0xd6, 0xe7, 0xbb, 0x63, 0x94, 0x21, 0xb1, 0x82, 0x78, 0x7d, 0x0a, 0x96, 0x3b, 0xcf, + 0x27, 0x90, 0xa2, 0x3f, 0x33, 0x41, 0xcb, 0x9e, 0xe7, 0x95, 0xee, 0xaf, 0x50, 0xc4, 0x95, 0x00, + 0xd4, 0xa1, 0xbb, 0xf7, 0xaf, 0xf3, 0x00, 0xa3, 0xc2, 0x0d, 0x7a, 0x02, 0x59, 0xef, 0x4b, 0x77, + 0x74, 0x31, 0xe2, 0x77, 0x16, 0xe2, 0xa5, 0xf0, 0x41, 0x57, 0xa6, 0x27, 0x90, 0xf5, 0x3e, 0xe8, + 0x1b, 0x31, 0x0b, 0x79, 0x54, 0x38, 0x62, 0x16, 0xfa, 0x06, 0x30, 0x86, 0x7a, 0x70, 0x61, 0xc2, + 0x93, 0x2e, 0xf4, 0xde, 0x6c, 0x0f, 0xdf, 0xc4, 0xf7, 0x67, 0x7c, 0x1b, 0x26, 0xc5, 0x90, 0x09, + 0xef, 0x4c, 0x7c, 0xc9, 0x84, 0x6e, 0xcc, 0xfa, 0xce, 0x4a, 0xfc, 0x60, 0x06, 0x4c, 0x77, 0xce, + 0x21, 0x88, 0x93, 0x9f, 0x4f, 0xa0, 0x0f, 0x66, 0x7e, 0xd7, 0x23, 0xde, 0x9c, 0xfd, 0x35, 0x86, + 0x14, 0x43, 0x3b, 0xb0, 0xe0, 0x79, 0x5b, 0x80, 0xc4, 0xd0, 0x07, 0x07, 0x8c, 0xf1, 0xc5, 0x88, + 0xc7, 0x08, 0x8c, 0x93, 0xa7, 0xff, 0x3d, 0xe2, 0x34, 0xde, 0xc8, 0x1f, 0x71, 0x0a, 0x69, 0x98, + 0x07, 0xd5, 0x1f, 0x08, 0x94, 0xc3, 0xd4, 0x1f, 0x1e, 0x69, 0x87, 0xa9, 0x7f, 0x42, 0xd4, 0x2d, + 0xc5, 0xd0, 0x33, 0xc8, 0xf9, 0xfb, 0x61, 0xe8, 0x72, 0x64, 0x5f, 0x4f, 0xbc, 0x32, 0x69, 0xd8, + 0xcb, 0xd2, 0xdf, 0x7e, 0x19, 0xb1, 0x0c, 0x6d, 0x03, 0x8d, 0x58, 0x4e, 0xe8, 0xda, 0xc4, 0x88, + 0x7f, 0xf2, 0xb5, 0x36, 0x46, 0xfe, 0x29, 0xac, 0x9b, 0x33, 0xf2, 0x4f, 0xa1, 0xfd, 0x10, 0x29, + 0x86, 0x34, 0x58, 0x0d, 0x2f, 0xd0, 0xa3, 0xeb, 0x33, 0x35, 0x0e, 0xc4, 0xf7, 0xa6, 0xa1, 0x79, + 0x4e, 0xf0, 0x6a, 0x78, 0x89, 0x38, 0x6c, 0xaa, 0x90, 0xea, 0x76, 0xd8, 0x54, 0x61, 0x95, 0x66, + 0x89, 0x7a, 0xf5, 0x9f, 0xa5, 0x20, 0x49, 0x63, 0xd8, 0x16, 0x9c, 0x0b, 0x14, 0xb9, 0xd0, 0x95, + 0xe8, 0xd2, 0x9f, 0xb8, 0x36, 0x71, 0xdc, 0x5d, 0xcc, 0x2b, 0x38, 0x3f, 0x56, 0xb6, 0x42, 0xeb, + 0x5e, 0xba, 0xb0, 0xd2, 0x99, 0x78, 0x35, 0x02, 0x23, 0xc8, 0xdb, 0xef, 0xe4, 0xd6, 0xa7, 0xd5, + 0x55, 0xfc, 0xbc, 0x27, 0x39, 0xb6, 0x2f, 0x59, 0xca, 0x10, 0x74, 0x69, 0x92, 0x5f, 0xae, 0x50, + 0x67, 0x76, 0x2d, 0x12, 0xc7, 0x9d, 0xe1, 0x0b, 0x37, 0x57, 0xf1, 0x14, 0x02, 0x90, 0x4f, 0xb8, + 0xd0, 0xfa, 0x83, 0x28, 0x45, 0xa1, 0xb8, 0xec, 0x5f, 0x40, 0x3e, 0x18, 0xb7, 0x23, 0xdf, 0x7e, + 0x85, 0x19, 0xe9, 0xfa, 0x64, 0x84, 0xa0, 0x66, 0x82, 0xde, 0x26, 0x28, 0x55, 0x98, 0x9f, 0xb9, + 0x16, 0x89, 0xe3, 0xf5, 0x8f, 0x9e, 0x74, 0x6d, 0xe4, 0x1f, 0xc7, 0x53, 0xbb, 0x91, 0x7f, 0x0c, + 0xc9, 0xef, 0xa4, 0xd8, 0xbd, 0x7f, 0x14, 0x60, 0xc1, 0x13, 0xd4, 0xa0, 0x17, 0x70, 0x2e, 0x10, + 0x84, 0x8e, 0x6c, 0x3c, 0x3c, 0x0e, 0x1f, 0xd9, 0xf8, 0x84, 0xe8, 0x95, 0x9e, 0x22, 0xf4, 0x0a, + 0xf2, 0xc1, 0xe0, 0x09, 0xad, 0x4d, 0x89, 0x1e, 0x47, 0xda, 0x9e, 0x14, 0x77, 0x51, 0xde, 0xb4, + 0x54, 0xb2, 0xf1, 0x08, 0x80, 0x55, 0x16, 0xb0, 0x3e, 0xec, 0xa3, 0x4b, 0x63, 0x6d, 0x93, 0xaa, + 0x3e, 0xec, 0x37, 0x06, 0xe4, 0x78, 0x5b, 0x85, 0x1f, 0x67, 0x68, 0x45, 0x73, 0x9e, 0x12, 0x90, + 0x81, 0x8d, 0x5d, 0xc8, 0x8f, 0xa8, 0x15, 0x1a, 0x02, 0xa2, 0xab, 0xa1, 0x3c, 0xe8, 0x0f, 0x6a, + 0x03, 0x8c, 0x72, 0x2e, 0x23, 0x3a, 0xba, 0xf1, 0x19, 0x40, 0xdb, 0xd2, 0x14, 0x16, 0xe9, 0xa2, + 0xcb, 0x63, 0x7c, 0xb6, 0x34, 0xdc, 0xeb, 0x38, 0x3c, 0xfe, 0x8c, 0x0b, 0xd3, 0xb6, 0x34, 0x16, + 0xa9, 0x6e, 0x7c, 0x0f, 0x16, 0x78, 0x91, 0x84, 0xe0, 0x4d, 0xa3, 0xe7, 0x32, 0xb0, 0xd5, 0xd3, + 0x91, 0x8d, 0xaa, 0x53, 0x65, 0xe1, 0x6f, 0x46, 0xd1, 0xda, 0x18, 0x8b, 0xa7, 0x6c, 0x24, 0xc0, + 0x84, 0x55, 0x56, 0xf8, 0xd8, 0x46, 0x19, 0xb2, 0x0e, 0x1b, 0xfb, 0xc8, 0x20, 0x96, 0x30, 0xce, + 0x85, 0x0c, 0x04, 0x98, 0x2c, 0x70, 0x26, 0x64, 0x68, 0x24, 0x8a, 0xf3, 0x73, 0xf9, 0x71, 0x51, + 0x78, 0xe1, 0x23, 0x54, 0x14, 0x3e, 0x56, 0x4e, 0xbd, 0x4a, 0xb4, 0x2d, 0xed, 0x20, 0x4d, 0x89, + 0xbe, 0xf3, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xd4, 0x50, 0xc8, 0xf8, 0xdb, 0x41, 0x00, 0x00, } diff --git a/spec.md b/spec.md index 81e2eb33..f04c9a34 100644 --- a/spec.md +++ b/spec.md @@ -408,6 +408,20 @@ service Node { rpc NodeGetInfo (NodeGetInfoRequest) returns (NodeGetInfoResponse) {} } + +service ObjectStore { + option (alpha_service) = true; + + rpc ObjectStoreRead(ObjectStoreReadRequest) + returns (ObjectStoreReadResponse) { + option (alpha_method) = true; + } + + rpc ObjectStoreWrite(ObjectStoreWriteRequest) + returns (ObjectStoreWriteResponse) { + option (alpha_method) = true; + } +} ``` #### Concurrency @@ -646,6 +660,9 @@ message PluginCapability { // Indicates that the plugin supports data lineage reporting for // volumes. VOLUME_LINEAGE = 1; + + // Indicates that the plugin supports the object storage service. + OBJECT_STORE = 2; } Type type = 1; // REQUIRED @@ -2503,6 +2520,74 @@ message NodeExpandVolumeResponse { | Volume in use | 9 FAILED_PRECONDITION | Indicates that the volume corresponding to the specified `volume_id` could not be expanded because it is node-published or node-staged and the underlying filesystem does not support expansion of published or staged volumes. | Caller MUST NOT retry. | | Unsupported capacity_range | 11 OUT_OF_RANGE | Indicates that the capacity range is not allowed by the Plugin. More human-readable information MAY be provided in the gRPC `status.message` field. | Caller MUST fix the capacity range before retrying. | +### ObjectStore Service RPC + +**EXPERIMENTAL FEATURE** + +Plugins that implement the `ObjectStore` service MUST advertise the `OBJECT_STORE` plugin capability. + +#### `ObjectStoreRead` + +**EXPERIMENTAL FEATURE** + +```protobuf +message ObjectStoreReadRequest { + option (alpha_message) = true; + + message DataSelector { + message Range { + int64 offset = 1; + int64 length = 2; + } + + repeated Range range = 1; + } + + string location = 1; + map secrets = 2 [(csi_secret) = true]; + + oneof kind { + bool metadata_only = 3; + DataSelector selector = 4; + } +} + +message ObjectStoreReadResponse { + option (alpha_message) = true; + + message Segment { + int64 offset = 1; + bytes value = 2; + } + + repeated Segment segments = 1; +} +``` + +#### `ObjectStoreWrite` + +**EXPERIMENTAL FEATURE** + +```protobuf +message ObjectStoreWriteRequest { + option (alpha_message) = true; + + string location = 1; + map secrets = 2 [(csi_secret) = true]; + + oneof action { + bytes data_append = 3; + bytes data_overwrite = 4; + bool remove = 5; + } +} + +message ObjectStoreWriteResponse { + option (alpha_message) = true; +} +``` + + ## Protocol ### Connectivity