From 6dab156779fed680b2b5f981a83eadbb5903540d Mon Sep 17 00:00:00 2001 From: Vladimir Vivien Date: Sat, 19 Nov 2016 15:46:23 -0500 Subject: [PATCH] Addition of ScaleIO Kubernetes Volume Plugin This commits implements the Kubernetes volume plugin allowing pods to seamlessly access and use data stored on ScaleIO volumes. Kubernetes-commit: 915a54180deca06e6befd3bd6a3712b22fb88791 --- pkg/api/types.go | 41 + pkg/api/v1/defaults.go | 15 + pkg/api/v1/generated.pb.go | 2529 ++++++++++------- pkg/api/v1/generated.proto | 54 +- pkg/api/v1/types.generated.go | 2078 ++++++++++---- pkg/api/v1/types.go | 41 + pkg/api/v1/types_swagger_doc_generated.go | 20 + pkg/api/v1/zz_generated.conversion.go | 42 + pkg/api/v1/zz_generated.deepcopy.go | 29 + pkg/api/v1/zz_generated.defaults.go | 12 + pkg/api/zz_generated.deepcopy.go | 29 + .../apps/v1beta1/zz_generated.defaults.go | 6 + pkg/apis/batch/v1/zz_generated.defaults.go | 3 + .../batch/v2alpha1/zz_generated.defaults.go | 9 + pkg/apis/extensions/types.go | 1 + .../v1beta1/zz_generated.defaults.go | 9 + .../v1alpha1/zz_generated.defaults.go | 3 + 17 files changed, 3377 insertions(+), 1544 deletions(-) diff --git a/pkg/api/types.go b/pkg/api/types.go index 1b910e3e..f95c5337 100644 --- a/pkg/api/types.go +++ b/pkg/api/types.go @@ -299,6 +299,9 @@ type VolumeSource struct { // PortworxVolume represents a portworx volume attached and mounted on kubelets host machine // +optional PortworxVolume *PortworxVolumeSource + // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. + // +optional + ScaleIO *ScaleIOVolumeSource } // Similar to VolumeSource but meant for the administrator who creates PVs. @@ -364,6 +367,9 @@ type PersistentVolumeSource struct { // PortworxVolume represents a portworx volume attached and mounted on kubelets host machine // +optional PortworxVolume *PortworxVolumeSource + // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. + // +optional + ScaleIO *ScaleIOVolumeSource } type PersistentVolumeClaimVolumeSource struct { @@ -1056,6 +1062,41 @@ type AzureDiskVolumeSource struct { ReadOnly *bool } +// ScaleIOVolumeSource represents a persistent ScaleIO volume +type ScaleIOVolumeSource struct { + // The host address of the ScaleIO API Gateway. + Gateway string + // The name of the storage system as configured in ScaleIO. + System string + // SecretRef references to the secret for ScaleIO user and other + // sensitive information. If this is not provided, Login operation will fail. + SecretRef *LocalObjectReference + // Flag to enable/disable SSL communication with Gateway, default false + // +optional + SSLEnabled bool + // The name of the Protection Domain for the configured storage (defaults to "default"). + // +optional + ProtectionDomain string + // The Storage Pool associated with the protection domain (defaults to "default"). + // +optional + StoragePool string + // Indicates whether the storage for a volume should be thick or thin (defaults to "thin"). + // +optional + StorageMode string + // The name of a volume already created in the ScaleIO system + // that is associated with this volume source. + VolumeName string + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool +} + // Adapts a ConfigMap into a volume. // // The contents of the target ConfigMap's Data field will be presented in a diff --git a/pkg/api/v1/defaults.go b/pkg/api/v1/defaults.go index 37783d2b..17b0deb0 100644 --- a/pkg/api/v1/defaults.go +++ b/pkg/api/v1/defaults.go @@ -372,3 +372,18 @@ func SetDefaults_RBDVolumeSource(obj *RBDVolumeSource) { obj.Keyring = "/etc/ceph/keyring" } } + +func SetDefaults_ScaleIOVolumeSource(obj *ScaleIOVolumeSource) { + if obj.ProtectionDomain == "" { + obj.ProtectionDomain = "default" + } + if obj.StoragePool == "" { + obj.StoragePool = "default" + } + if obj.StorageMode == "" { + obj.StorageMode = "ThinProvisioned" + } + if obj.FSType == "" { + obj.FSType = "xfs" + } +} diff --git a/pkg/api/v1/generated.pb.go b/pkg/api/v1/generated.pb.go index c07413e7..20f632dc 100644 --- a/pkg/api/v1/generated.pb.go +++ b/pkg/api/v1/generated.pb.go @@ -165,6 +165,7 @@ limitations under the License. ResourceQuotaStatus ResourceRequirements SELinuxOptions + ScaleIOVolumeSource Secret SecretEnvSource SecretKeySelector @@ -809,112 +810,116 @@ func (m *SELinuxOptions) Reset() { *m = SELinuxOptions{} } func (*SELinuxOptions) ProtoMessage() {} func (*SELinuxOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{139} } +func (m *ScaleIOVolumeSource) Reset() { *m = ScaleIOVolumeSource{} } +func (*ScaleIOVolumeSource) ProtoMessage() {} +func (*ScaleIOVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{140} } + func (m *Secret) Reset() { *m = Secret{} } func (*Secret) ProtoMessage() {} -func (*Secret) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{140} } +func (*Secret) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{141} } func (m *SecretEnvSource) Reset() { *m = SecretEnvSource{} } func (*SecretEnvSource) ProtoMessage() {} -func (*SecretEnvSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{141} } +func (*SecretEnvSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{142} } func (m *SecretKeySelector) Reset() { *m = SecretKeySelector{} } func (*SecretKeySelector) ProtoMessage() {} -func (*SecretKeySelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{142} } +func (*SecretKeySelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{143} } func (m *SecretList) Reset() { *m = SecretList{} } func (*SecretList) ProtoMessage() {} -func (*SecretList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{143} } +func (*SecretList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{144} } func (m *SecretProjection) Reset() { *m = SecretProjection{} } func (*SecretProjection) ProtoMessage() {} -func (*SecretProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{144} } +func (*SecretProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{145} } func (m *SecretVolumeSource) Reset() { *m = SecretVolumeSource{} } func (*SecretVolumeSource) ProtoMessage() {} -func (*SecretVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{145} } +func (*SecretVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{146} } func (m *SecurityContext) Reset() { *m = SecurityContext{} } func (*SecurityContext) ProtoMessage() {} -func (*SecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{146} } +func (*SecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{147} } func (m *SerializedReference) Reset() { *m = SerializedReference{} } func (*SerializedReference) ProtoMessage() {} -func (*SerializedReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{147} } +func (*SerializedReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{148} } func (m *Service) Reset() { *m = Service{} } func (*Service) ProtoMessage() {} -func (*Service) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{148} } +func (*Service) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{149} } func (m *ServiceAccount) Reset() { *m = ServiceAccount{} } func (*ServiceAccount) ProtoMessage() {} -func (*ServiceAccount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{149} } +func (*ServiceAccount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{150} } func (m *ServiceAccountList) Reset() { *m = ServiceAccountList{} } func (*ServiceAccountList) ProtoMessage() {} -func (*ServiceAccountList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{150} } +func (*ServiceAccountList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{151} } func (m *ServiceList) Reset() { *m = ServiceList{} } func (*ServiceList) ProtoMessage() {} -func (*ServiceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{151} } +func (*ServiceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{152} } func (m *ServicePort) Reset() { *m = ServicePort{} } func (*ServicePort) ProtoMessage() {} -func (*ServicePort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{152} } +func (*ServicePort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{153} } func (m *ServiceProxyOptions) Reset() { *m = ServiceProxyOptions{} } func (*ServiceProxyOptions) ProtoMessage() {} -func (*ServiceProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{153} } +func (*ServiceProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{154} } func (m *ServiceSpec) Reset() { *m = ServiceSpec{} } func (*ServiceSpec) ProtoMessage() {} -func (*ServiceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{154} } +func (*ServiceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{155} } func (m *ServiceStatus) Reset() { *m = ServiceStatus{} } func (*ServiceStatus) ProtoMessage() {} -func (*ServiceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{155} } +func (*ServiceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{156} } func (m *Sysctl) Reset() { *m = Sysctl{} } func (*Sysctl) ProtoMessage() {} -func (*Sysctl) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{156} } +func (*Sysctl) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{157} } func (m *TCPSocketAction) Reset() { *m = TCPSocketAction{} } func (*TCPSocketAction) ProtoMessage() {} -func (*TCPSocketAction) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{157} } +func (*TCPSocketAction) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{158} } func (m *Taint) Reset() { *m = Taint{} } func (*Taint) ProtoMessage() {} -func (*Taint) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{158} } +func (*Taint) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{159} } func (m *Toleration) Reset() { *m = Toleration{} } func (*Toleration) ProtoMessage() {} -func (*Toleration) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{159} } +func (*Toleration) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{160} } func (m *Volume) Reset() { *m = Volume{} } func (*Volume) ProtoMessage() {} -func (*Volume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{160} } +func (*Volume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{161} } func (m *VolumeMount) Reset() { *m = VolumeMount{} } func (*VolumeMount) ProtoMessage() {} -func (*VolumeMount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{161} } +func (*VolumeMount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{162} } func (m *VolumeProjection) Reset() { *m = VolumeProjection{} } func (*VolumeProjection) ProtoMessage() {} -func (*VolumeProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{162} } +func (*VolumeProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{163} } func (m *VolumeSource) Reset() { *m = VolumeSource{} } func (*VolumeSource) ProtoMessage() {} -func (*VolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{163} } +func (*VolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{164} } func (m *VsphereVirtualDiskVolumeSource) Reset() { *m = VsphereVirtualDiskVolumeSource{} } func (*VsphereVirtualDiskVolumeSource) ProtoMessage() {} func (*VsphereVirtualDiskVolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{164} + return fileDescriptorGenerated, []int{165} } func (m *WeightedPodAffinityTerm) Reset() { *m = WeightedPodAffinityTerm{} } func (*WeightedPodAffinityTerm) ProtoMessage() {} func (*WeightedPodAffinityTerm) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{165} + return fileDescriptorGenerated, []int{166} } func init() { @@ -1058,6 +1063,7 @@ func init() { proto.RegisterType((*ResourceQuotaStatus)(nil), "k8s.io.client-go.pkg.api.v1.ResourceQuotaStatus") proto.RegisterType((*ResourceRequirements)(nil), "k8s.io.client-go.pkg.api.v1.ResourceRequirements") proto.RegisterType((*SELinuxOptions)(nil), "k8s.io.client-go.pkg.api.v1.SELinuxOptions") + proto.RegisterType((*ScaleIOVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.ScaleIOVolumeSource") proto.RegisterType((*Secret)(nil), "k8s.io.client-go.pkg.api.v1.Secret") proto.RegisterType((*SecretEnvSource)(nil), "k8s.io.client-go.pkg.api.v1.SecretEnvSource") proto.RegisterType((*SecretKeySelector)(nil), "k8s.io.client-go.pkg.api.v1.SecretKeySelector") @@ -5482,6 +5488,18 @@ func (m *PersistentVolumeSource) MarshalTo(data []byte) (int, error) { } i += n110 } + if m.ScaleIO != nil { + data[i] = 0x9a + i++ + data[i] = 0x1 + i++ + i = encodeVarintGenerated(data, i, uint64(m.ScaleIO.Size())) + n111, err := m.ScaleIO.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n111 + } return i, nil } @@ -5515,21 +5533,21 @@ func (m *PersistentVolumeSpec) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64((&v).Size())) - n111, err := (&v).MarshalTo(data[i:]) + n112, err := (&v).MarshalTo(data[i:]) if err != nil { return 0, err } - i += n111 + i += n112 } } data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.PersistentVolumeSource.Size())) - n112, err := m.PersistentVolumeSource.MarshalTo(data[i:]) + n113, err := m.PersistentVolumeSource.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n112 + i += n113 if len(m.AccessModes) > 0 { for _, s := range m.AccessModes { data[i] = 0x1a @@ -5549,11 +5567,11 @@ func (m *PersistentVolumeSpec) MarshalTo(data []byte) (int, error) { data[i] = 0x22 i++ i = encodeVarintGenerated(data, i, uint64(m.ClaimRef.Size())) - n113, err := m.ClaimRef.MarshalTo(data[i:]) + n114, err := m.ClaimRef.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n113 + i += n114 } data[i] = 0x2a i++ @@ -5640,27 +5658,27 @@ func (m *Pod) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n114, err := m.ObjectMeta.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n114 - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n115, err := m.Spec.MarshalTo(data[i:]) + n115, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } i += n115 - data[i] = 0x1a + data[i] = 0x12 i++ - i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n116, err := m.Status.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n116, err := m.Spec.MarshalTo(data[i:]) if err != nil { return 0, err } i += n116 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n117, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n117 return i, nil } @@ -5725,11 +5743,11 @@ func (m *PodAffinityTerm) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.LabelSelector.Size())) - n117, err := m.LabelSelector.MarshalTo(data[i:]) + n118, err := m.LabelSelector.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n117 + i += n118 } if len(m.Namespaces) > 0 { for _, s := range m.Namespaces { @@ -5875,19 +5893,19 @@ func (m *PodCondition) MarshalTo(data []byte) (int, error) { data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.LastProbeTime.Size())) - n118, err := m.LastProbeTime.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n118 - data[i] = 0x22 - i++ - i = encodeVarintGenerated(data, i, uint64(m.LastTransitionTime.Size())) - n119, err := m.LastTransitionTime.MarshalTo(data[i:]) + n119, err := m.LastProbeTime.MarshalTo(data[i:]) if err != nil { return 0, err } i += n119 + data[i] = 0x22 + i++ + i = encodeVarintGenerated(data, i, uint64(m.LastTransitionTime.Size())) + n120, err := m.LastTransitionTime.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n120 data[i] = 0x2a i++ i = encodeVarintGenerated(data, i, uint64(len(m.Reason))) @@ -5986,11 +6004,11 @@ func (m *PodList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n120, err := m.ListMeta.MarshalTo(data[i:]) + n121, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n120 + i += n121 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -6050,11 +6068,11 @@ func (m *PodLogOptions) MarshalTo(data []byte) (int, error) { data[i] = 0x2a i++ i = encodeVarintGenerated(data, i, uint64(m.SinceTime.Size())) - n121, err := m.SinceTime.MarshalTo(data[i:]) + n122, err := m.SinceTime.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n121 + i += n122 } data[i] = 0x30 i++ @@ -6143,11 +6161,11 @@ func (m *PodSecurityContext) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.SELinuxOptions.Size())) - n122, err := m.SELinuxOptions.MarshalTo(data[i:]) + n123, err := m.SELinuxOptions.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n122 + i += n123 } if m.RunAsUser != nil { data[i] = 0x10 @@ -6198,11 +6216,11 @@ func (m *PodSignature) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.PodController.Size())) - n123, err := m.PodController.MarshalTo(data[i:]) + n124, err := m.PodController.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n123 + i += n124 } return i, nil } @@ -6321,11 +6339,11 @@ func (m *PodSpec) MarshalTo(data []byte) (int, error) { data[i] = 0x72 i++ i = encodeVarintGenerated(data, i, uint64(m.SecurityContext.Size())) - n124, err := m.SecurityContext.MarshalTo(data[i:]) + n125, err := m.SecurityContext.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n124 + i += n125 } if len(m.ImagePullSecrets) > 0 { for _, msg := range m.ImagePullSecrets { @@ -6357,11 +6375,11 @@ func (m *PodSpec) MarshalTo(data []byte) (int, error) { data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.Affinity.Size())) - n125, err := m.Affinity.MarshalTo(data[i:]) + n126, err := m.Affinity.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n125 + i += n126 } data[i] = 0x9a i++ @@ -6463,11 +6481,11 @@ func (m *PodStatus) MarshalTo(data []byte) (int, error) { data[i] = 0x3a i++ i = encodeVarintGenerated(data, i, uint64(m.StartTime.Size())) - n126, err := m.StartTime.MarshalTo(data[i:]) + n127, err := m.StartTime.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n126 + i += n127 } if len(m.ContainerStatuses) > 0 { for _, msg := range m.ContainerStatuses { @@ -6518,19 +6536,19 @@ func (m *PodStatusResult) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n127, err := m.ObjectMeta.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n127 - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n128, err := m.Status.MarshalTo(data[i:]) + n128, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } i += n128 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n129, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n129 return i, nil } @@ -6552,19 +6570,19 @@ func (m *PodTemplate) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n129, err := m.ObjectMeta.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n129 - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.Template.Size())) - n130, err := m.Template.MarshalTo(data[i:]) + n130, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } i += n130 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Template.Size())) + n131, err := m.Template.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n131 return i, nil } @@ -6586,11 +6604,11 @@ func (m *PodTemplateList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n131, err := m.ListMeta.MarshalTo(data[i:]) + n132, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n131 + i += n132 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -6624,19 +6642,19 @@ func (m *PodTemplateSpec) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n132, err := m.ObjectMeta.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n132 - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n133, err := m.Spec.MarshalTo(data[i:]) + n133, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } i += n133 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n134, err := m.Spec.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n134 return i, nil } @@ -6716,19 +6734,19 @@ func (m *PreferAvoidPodsEntry) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.PodSignature.Size())) - n134, err := m.PodSignature.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n134 - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.EvictionTime.Size())) - n135, err := m.EvictionTime.MarshalTo(data[i:]) + n135, err := m.PodSignature.MarshalTo(data[i:]) if err != nil { return 0, err } i += n135 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.EvictionTime.Size())) + n136, err := m.EvictionTime.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n136 data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(len(m.Reason))) @@ -6761,11 +6779,11 @@ func (m *PreferredSchedulingTerm) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.Preference.Size())) - n136, err := m.Preference.MarshalTo(data[i:]) + n137, err := m.Preference.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n136 + i += n137 return i, nil } @@ -6787,11 +6805,11 @@ func (m *Probe) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.Handler.Size())) - n137, err := m.Handler.MarshalTo(data[i:]) + n138, err := m.Handler.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n137 + i += n138 data[i] = 0x10 i++ i = encodeVarintGenerated(data, i, uint64(m.InitialDelaySeconds)) @@ -6941,11 +6959,11 @@ func (m *RBDVolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0x3a i++ i = encodeVarintGenerated(data, i, uint64(m.SecretRef.Size())) - n138, err := m.SecretRef.MarshalTo(data[i:]) + n139, err := m.SecretRef.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n138 + i += n139 } data[i] = 0x40 i++ @@ -6976,11 +6994,11 @@ func (m *RangeAllocation) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n139, err := m.ObjectMeta.MarshalTo(data[i:]) + n140, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n139 + i += n140 data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(len(m.Range))) @@ -7012,27 +7030,27 @@ func (m *ReplicationController) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n140, err := m.ObjectMeta.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n140 - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n141, err := m.Spec.MarshalTo(data[i:]) + n141, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } i += n141 - data[i] = 0x1a + data[i] = 0x12 i++ - i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n142, err := m.Status.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n142, err := m.Spec.MarshalTo(data[i:]) if err != nil { return 0, err } i += n142 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n143, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n143 return i, nil } @@ -7062,11 +7080,11 @@ func (m *ReplicationControllerCondition) MarshalTo(data []byte) (int, error) { data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.LastTransitionTime.Size())) - n143, err := m.LastTransitionTime.MarshalTo(data[i:]) + n144, err := m.LastTransitionTime.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n143 + i += n144 data[i] = 0x22 i++ i = encodeVarintGenerated(data, i, uint64(len(m.Reason))) @@ -7096,11 +7114,11 @@ func (m *ReplicationControllerList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n144, err := m.ListMeta.MarshalTo(data[i:]) + n145, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n144 + i += n145 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -7157,11 +7175,11 @@ func (m *ReplicationControllerSpec) MarshalTo(data []byte) (int, error) { data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.Template.Size())) - n145, err := m.Template.MarshalTo(data[i:]) + n146, err := m.Template.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n145 + i += n146 } data[i] = 0x20 i++ @@ -7240,11 +7258,11 @@ func (m *ResourceFieldSelector) MarshalTo(data []byte) (int, error) { data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.Divisor.Size())) - n146, err := m.Divisor.MarshalTo(data[i:]) + n147, err := m.Divisor.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n146 + i += n147 return i, nil } @@ -7266,27 +7284,27 @@ func (m *ResourceQuota) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n147, err := m.ObjectMeta.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n147 - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n148, err := m.Spec.MarshalTo(data[i:]) + n148, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } i += n148 - data[i] = 0x1a + data[i] = 0x12 i++ - i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n149, err := m.Status.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n149, err := m.Spec.MarshalTo(data[i:]) if err != nil { return 0, err } i += n149 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n150, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n150 return i, nil } @@ -7308,11 +7326,11 @@ func (m *ResourceQuotaList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n150, err := m.ListMeta.MarshalTo(data[i:]) + n151, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n150 + i += n151 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -7358,11 +7376,11 @@ func (m *ResourceQuotaSpec) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64((&v).Size())) - n151, err := (&v).MarshalTo(data[i:]) + n152, err := (&v).MarshalTo(data[i:]) if err != nil { return 0, err } - i += n151 + i += n152 } } if len(m.Scopes) > 0 { @@ -7413,11 +7431,11 @@ func (m *ResourceQuotaStatus) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64((&v).Size())) - n152, err := (&v).MarshalTo(data[i:]) + n153, err := (&v).MarshalTo(data[i:]) if err != nil { return 0, err } - i += n152 + i += n153 } } if len(m.Used) > 0 { @@ -7435,11 +7453,11 @@ func (m *ResourceQuotaStatus) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64((&v).Size())) - n153, err := (&v).MarshalTo(data[i:]) + n154, err := (&v).MarshalTo(data[i:]) if err != nil { return 0, err } - i += n153 + i += n154 } } return i, nil @@ -7475,11 +7493,11 @@ func (m *ResourceRequirements) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64((&v).Size())) - n154, err := (&v).MarshalTo(data[i:]) + n155, err := (&v).MarshalTo(data[i:]) if err != nil { return 0, err } - i += n154 + i += n155 } } if len(m.Requests) > 0 { @@ -7497,11 +7515,11 @@ func (m *ResourceRequirements) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64((&v).Size())) - n155, err := (&v).MarshalTo(data[i:]) + n156, err := (&v).MarshalTo(data[i:]) if err != nil { return 0, err } - i += n155 + i += n156 } } return i, nil @@ -7541,6 +7559,78 @@ func (m *SELinuxOptions) MarshalTo(data []byte) (int, error) { return i, nil } +func (m *ScaleIOVolumeSource) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ScaleIOVolumeSource) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Gateway))) + i += copy(data[i:], m.Gateway) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.System))) + i += copy(data[i:], m.System) + if m.SecretRef != nil { + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.SecretRef.Size())) + n157, err := m.SecretRef.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n157 + } + data[i] = 0x20 + i++ + if m.SSLEnabled { + data[i] = 1 + } else { + data[i] = 0 + } + i++ + data[i] = 0x2a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.ProtectionDomain))) + i += copy(data[i:], m.ProtectionDomain) + data[i] = 0x32 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.StoragePool))) + i += copy(data[i:], m.StoragePool) + data[i] = 0x3a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.StorageMode))) + i += copy(data[i:], m.StorageMode) + data[i] = 0x42 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.VolumeName))) + i += copy(data[i:], m.VolumeName) + data[i] = 0x4a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.FSType))) + i += copy(data[i:], m.FSType) + data[i] = 0x50 + i++ + if m.ReadOnly { + data[i] = 1 + } else { + data[i] = 0 + } + i++ + return i, nil +} + func (m *Secret) Marshal() (data []byte, err error) { size := m.Size() data = make([]byte, size) @@ -7559,11 +7649,11 @@ func (m *Secret) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n156, err := m.ObjectMeta.MarshalTo(data[i:]) + n158, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n156 + i += n158 if len(m.Data) > 0 { for k := range m.Data { data[i] = 0x12 @@ -7623,11 +7713,11 @@ func (m *SecretEnvSource) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.LocalObjectReference.Size())) - n157, err := m.LocalObjectReference.MarshalTo(data[i:]) + n159, err := m.LocalObjectReference.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n157 + i += n159 if m.Optional != nil { data[i] = 0x10 i++ @@ -7659,11 +7749,11 @@ func (m *SecretKeySelector) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.LocalObjectReference.Size())) - n158, err := m.LocalObjectReference.MarshalTo(data[i:]) + n160, err := m.LocalObjectReference.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n158 + i += n160 data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(len(m.Key))) @@ -7699,11 +7789,11 @@ func (m *SecretList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n159, err := m.ListMeta.MarshalTo(data[i:]) + n161, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n159 + i += n161 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -7737,11 +7827,11 @@ func (m *SecretProjection) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.LocalObjectReference.Size())) - n160, err := m.LocalObjectReference.MarshalTo(data[i:]) + n162, err := m.LocalObjectReference.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n160 + i += n162 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -7835,11 +7925,11 @@ func (m *SecurityContext) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.Capabilities.Size())) - n161, err := m.Capabilities.MarshalTo(data[i:]) + n163, err := m.Capabilities.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n161 + i += n163 } if m.Privileged != nil { data[i] = 0x10 @@ -7855,11 +7945,11 @@ func (m *SecurityContext) MarshalTo(data []byte) (int, error) { data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.SELinuxOptions.Size())) - n162, err := m.SELinuxOptions.MarshalTo(data[i:]) + n164, err := m.SELinuxOptions.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n162 + i += n164 } if m.RunAsUser != nil { data[i] = 0x20 @@ -7907,11 +7997,11 @@ func (m *SerializedReference) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.Reference.Size())) - n163, err := m.Reference.MarshalTo(data[i:]) + n165, err := m.Reference.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n163 + i += n165 return i, nil } @@ -7933,27 +8023,27 @@ func (m *Service) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n164, err := m.ObjectMeta.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n164 - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n165, err := m.Spec.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n165 - data[i] = 0x1a - i++ - i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n166, err := m.Status.MarshalTo(data[i:]) + n166, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } i += n166 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n167, err := m.Spec.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n167 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n168, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n168 return i, nil } @@ -7975,11 +8065,11 @@ func (m *ServiceAccount) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n167, err := m.ObjectMeta.MarshalTo(data[i:]) + n169, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n167 + i += n169 if len(m.Secrets) > 0 { for _, msg := range m.Secrets { data[i] = 0x12 @@ -8035,11 +8125,11 @@ func (m *ServiceAccountList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n168, err := m.ListMeta.MarshalTo(data[i:]) + n170, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n168 + i += n170 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -8073,11 +8163,11 @@ func (m *ServiceList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n169, err := m.ListMeta.MarshalTo(data[i:]) + n171, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n169 + i += n171 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -8122,11 +8212,11 @@ func (m *ServicePort) MarshalTo(data []byte) (int, error) { data[i] = 0x22 i++ i = encodeVarintGenerated(data, i, uint64(m.TargetPort.Size())) - n170, err := m.TargetPort.MarshalTo(data[i:]) + n172, err := m.TargetPort.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n170 + i += n172 data[i] = 0x28 i++ i = encodeVarintGenerated(data, i, uint64(m.NodePort)) @@ -8285,11 +8375,11 @@ func (m *ServiceStatus) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.LoadBalancer.Size())) - n171, err := m.LoadBalancer.MarshalTo(data[i:]) + n173, err := m.LoadBalancer.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n171 + i += n173 return i, nil } @@ -8337,11 +8427,11 @@ func (m *TCPSocketAction) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.Port.Size())) - n172, err := m.Port.MarshalTo(data[i:]) + n174, err := m.Port.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n172 + i += n174 return i, nil } @@ -8375,11 +8465,11 @@ func (m *Taint) MarshalTo(data []byte) (int, error) { data[i] = 0x22 i++ i = encodeVarintGenerated(data, i, uint64(m.TimeAdded.Size())) - n173, err := m.TimeAdded.MarshalTo(data[i:]) + n175, err := m.TimeAdded.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n173 + i += n175 return i, nil } @@ -8444,11 +8534,11 @@ func (m *Volume) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.VolumeSource.Size())) - n174, err := m.VolumeSource.MarshalTo(data[i:]) + n176, err := m.VolumeSource.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n174 + i += n176 return i, nil } @@ -8509,31 +8599,31 @@ func (m *VolumeProjection) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.Secret.Size())) - n175, err := m.Secret.MarshalTo(data[i:]) + n177, err := m.Secret.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n175 + i += n177 } if m.DownwardAPI != nil { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.DownwardAPI.Size())) - n176, err := m.DownwardAPI.MarshalTo(data[i:]) + n178, err := m.DownwardAPI.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n176 + i += n178 } if m.ConfigMap != nil { data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.ConfigMap.Size())) - n177, err := m.ConfigMap.MarshalTo(data[i:]) + n179, err := m.ConfigMap.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n177 + i += n179 } return i, nil } @@ -8557,163 +8647,163 @@ func (m *VolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.HostPath.Size())) - n178, err := m.HostPath.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n178 - } - if m.EmptyDir != nil { - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.EmptyDir.Size())) - n179, err := m.EmptyDir.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n179 - } - if m.GCEPersistentDisk != nil { - data[i] = 0x1a - i++ - i = encodeVarintGenerated(data, i, uint64(m.GCEPersistentDisk.Size())) - n180, err := m.GCEPersistentDisk.MarshalTo(data[i:]) + n180, err := m.HostPath.MarshalTo(data[i:]) if err != nil { return 0, err } i += n180 } - if m.AWSElasticBlockStore != nil { - data[i] = 0x22 + if m.EmptyDir != nil { + data[i] = 0x12 i++ - i = encodeVarintGenerated(data, i, uint64(m.AWSElasticBlockStore.Size())) - n181, err := m.AWSElasticBlockStore.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.EmptyDir.Size())) + n181, err := m.EmptyDir.MarshalTo(data[i:]) if err != nil { return 0, err } i += n181 } - if m.GitRepo != nil { - data[i] = 0x2a + if m.GCEPersistentDisk != nil { + data[i] = 0x1a i++ - i = encodeVarintGenerated(data, i, uint64(m.GitRepo.Size())) - n182, err := m.GitRepo.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.GCEPersistentDisk.Size())) + n182, err := m.GCEPersistentDisk.MarshalTo(data[i:]) if err != nil { return 0, err } i += n182 } - if m.Secret != nil { - data[i] = 0x32 + if m.AWSElasticBlockStore != nil { + data[i] = 0x22 i++ - i = encodeVarintGenerated(data, i, uint64(m.Secret.Size())) - n183, err := m.Secret.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.AWSElasticBlockStore.Size())) + n183, err := m.AWSElasticBlockStore.MarshalTo(data[i:]) if err != nil { return 0, err } i += n183 } - if m.NFS != nil { - data[i] = 0x3a + if m.GitRepo != nil { + data[i] = 0x2a i++ - i = encodeVarintGenerated(data, i, uint64(m.NFS.Size())) - n184, err := m.NFS.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.GitRepo.Size())) + n184, err := m.GitRepo.MarshalTo(data[i:]) if err != nil { return 0, err } i += n184 } - if m.ISCSI != nil { - data[i] = 0x42 + if m.Secret != nil { + data[i] = 0x32 i++ - i = encodeVarintGenerated(data, i, uint64(m.ISCSI.Size())) - n185, err := m.ISCSI.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.Secret.Size())) + n185, err := m.Secret.MarshalTo(data[i:]) if err != nil { return 0, err } i += n185 } - if m.Glusterfs != nil { - data[i] = 0x4a + if m.NFS != nil { + data[i] = 0x3a i++ - i = encodeVarintGenerated(data, i, uint64(m.Glusterfs.Size())) - n186, err := m.Glusterfs.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.NFS.Size())) + n186, err := m.NFS.MarshalTo(data[i:]) if err != nil { return 0, err } i += n186 } - if m.PersistentVolumeClaim != nil { - data[i] = 0x52 + if m.ISCSI != nil { + data[i] = 0x42 i++ - i = encodeVarintGenerated(data, i, uint64(m.PersistentVolumeClaim.Size())) - n187, err := m.PersistentVolumeClaim.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.ISCSI.Size())) + n187, err := m.ISCSI.MarshalTo(data[i:]) if err != nil { return 0, err } i += n187 } - if m.RBD != nil { - data[i] = 0x5a + if m.Glusterfs != nil { + data[i] = 0x4a i++ - i = encodeVarintGenerated(data, i, uint64(m.RBD.Size())) - n188, err := m.RBD.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.Glusterfs.Size())) + n188, err := m.Glusterfs.MarshalTo(data[i:]) if err != nil { return 0, err } i += n188 } - if m.FlexVolume != nil { - data[i] = 0x62 + if m.PersistentVolumeClaim != nil { + data[i] = 0x52 i++ - i = encodeVarintGenerated(data, i, uint64(m.FlexVolume.Size())) - n189, err := m.FlexVolume.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.PersistentVolumeClaim.Size())) + n189, err := m.PersistentVolumeClaim.MarshalTo(data[i:]) if err != nil { return 0, err } i += n189 } - if m.Cinder != nil { - data[i] = 0x6a + if m.RBD != nil { + data[i] = 0x5a i++ - i = encodeVarintGenerated(data, i, uint64(m.Cinder.Size())) - n190, err := m.Cinder.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.RBD.Size())) + n190, err := m.RBD.MarshalTo(data[i:]) if err != nil { return 0, err } i += n190 } - if m.CephFS != nil { - data[i] = 0x72 + if m.FlexVolume != nil { + data[i] = 0x62 i++ - i = encodeVarintGenerated(data, i, uint64(m.CephFS.Size())) - n191, err := m.CephFS.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.FlexVolume.Size())) + n191, err := m.FlexVolume.MarshalTo(data[i:]) if err != nil { return 0, err } i += n191 } - if m.Flocker != nil { - data[i] = 0x7a + if m.Cinder != nil { + data[i] = 0x6a i++ - i = encodeVarintGenerated(data, i, uint64(m.Flocker.Size())) - n192, err := m.Flocker.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.Cinder.Size())) + n192, err := m.Cinder.MarshalTo(data[i:]) if err != nil { return 0, err } i += n192 } + if m.CephFS != nil { + data[i] = 0x72 + i++ + i = encodeVarintGenerated(data, i, uint64(m.CephFS.Size())) + n193, err := m.CephFS.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n193 + } + if m.Flocker != nil { + data[i] = 0x7a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Flocker.Size())) + n194, err := m.Flocker.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n194 + } if m.DownwardAPI != nil { data[i] = 0x82 i++ data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.DownwardAPI.Size())) - n193, err := m.DownwardAPI.MarshalTo(data[i:]) + n195, err := m.DownwardAPI.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n193 + i += n195 } if m.FC != nil { data[i] = 0x8a @@ -8721,11 +8811,11 @@ func (m *VolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.FC.Size())) - n194, err := m.FC.MarshalTo(data[i:]) + n196, err := m.FC.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n194 + i += n196 } if m.AzureFile != nil { data[i] = 0x92 @@ -8733,11 +8823,11 @@ func (m *VolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.AzureFile.Size())) - n195, err := m.AzureFile.MarshalTo(data[i:]) + n197, err := m.AzureFile.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n195 + i += n197 } if m.ConfigMap != nil { data[i] = 0x9a @@ -8745,11 +8835,11 @@ func (m *VolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.ConfigMap.Size())) - n196, err := m.ConfigMap.MarshalTo(data[i:]) + n198, err := m.ConfigMap.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n196 + i += n198 } if m.VsphereVolume != nil { data[i] = 0xa2 @@ -8757,11 +8847,11 @@ func (m *VolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.VsphereVolume.Size())) - n197, err := m.VsphereVolume.MarshalTo(data[i:]) + n199, err := m.VsphereVolume.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n197 + i += n199 } if m.Quobyte != nil { data[i] = 0xaa @@ -8769,11 +8859,11 @@ func (m *VolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.Quobyte.Size())) - n198, err := m.Quobyte.MarshalTo(data[i:]) + n200, err := m.Quobyte.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n198 + i += n200 } if m.AzureDisk != nil { data[i] = 0xb2 @@ -8781,11 +8871,11 @@ func (m *VolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.AzureDisk.Size())) - n199, err := m.AzureDisk.MarshalTo(data[i:]) + n201, err := m.AzureDisk.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n199 + i += n201 } if m.PhotonPersistentDisk != nil { data[i] = 0xba @@ -8793,11 +8883,11 @@ func (m *VolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.PhotonPersistentDisk.Size())) - n200, err := m.PhotonPersistentDisk.MarshalTo(data[i:]) + n202, err := m.PhotonPersistentDisk.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n200 + i += n202 } if m.PortworxVolume != nil { data[i] = 0xc2 @@ -8805,23 +8895,35 @@ func (m *VolumeSource) MarshalTo(data []byte) (int, error) { data[i] = 0x1 i++ i = encodeVarintGenerated(data, i, uint64(m.PortworxVolume.Size())) - n201, err := m.PortworxVolume.MarshalTo(data[i:]) + n203, err := m.PortworxVolume.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n201 + i += n203 } - if m.Projected != nil { + if m.ScaleIO != nil { data[i] = 0xca i++ data[i] = 0x1 i++ - i = encodeVarintGenerated(data, i, uint64(m.Projected.Size())) - n202, err := m.Projected.MarshalTo(data[i:]) + i = encodeVarintGenerated(data, i, uint64(m.ScaleIO.Size())) + n204, err := m.ScaleIO.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n202 + i += n204 + } + if m.Projected != nil { + data[i] = 0xd2 + i++ + data[i] = 0x1 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Projected.Size())) + n205, err := m.Projected.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n205 } return i, nil } @@ -8873,11 +8975,11 @@ func (m *WeightedPodAffinityTerm) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.PodAffinityTerm.Size())) - n203, err := m.PodAffinityTerm.MarshalTo(data[i:]) + n206, err := m.PodAffinityTerm.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n203 + i += n206 return i, nil } @@ -10550,6 +10652,10 @@ func (m *PersistentVolumeSource) Size() (n int) { l = m.PortworxVolume.Size() n += 2 + l + sovGenerated(uint64(l)) } + if m.ScaleIO != nil { + l = m.ScaleIO.Size() + n += 2 + l + sovGenerated(uint64(l)) + } return n } @@ -11305,6 +11411,32 @@ func (m *SELinuxOptions) Size() (n int) { return n } +func (m *ScaleIOVolumeSource) Size() (n int) { + var l int + _ = l + l = len(m.Gateway) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.System) + n += 1 + l + sovGenerated(uint64(l)) + if m.SecretRef != nil { + l = m.SecretRef.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + n += 2 + l = len(m.ProtectionDomain) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.StoragePool) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.StorageMode) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.VolumeName) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.FSType) + n += 1 + l + sovGenerated(uint64(l)) + n += 2 + return n +} + func (m *Secret) Size() (n int) { var l int _ = l @@ -11770,6 +11902,10 @@ func (m *VolumeSource) Size() (n int) { l = m.PortworxVolume.Size() n += 2 + l + sovGenerated(uint64(l)) } + if m.ScaleIO != nil { + l = m.ScaleIO.Size() + n += 2 + l + sovGenerated(uint64(l)) + } if m.Projected != nil { l = m.Projected.Size() n += 2 + l + sovGenerated(uint64(l)) @@ -13148,6 +13284,7 @@ func (this *PersistentVolumeSource) String() string { `AzureDisk:` + strings.Replace(fmt.Sprintf("%v", this.AzureDisk), "AzureDiskVolumeSource", "AzureDiskVolumeSource", 1) + `,`, `PhotonPersistentDisk:` + strings.Replace(fmt.Sprintf("%v", this.PhotonPersistentDisk), "PhotonPersistentDiskVolumeSource", "PhotonPersistentDiskVolumeSource", 1) + `,`, `PortworxVolume:` + strings.Replace(fmt.Sprintf("%v", this.PortworxVolume), "PortworxVolumeSource", "PortworxVolumeSource", 1) + `,`, + `ScaleIO:` + strings.Replace(fmt.Sprintf("%v", this.ScaleIO), "ScaleIOVolumeSource", "ScaleIOVolumeSource", 1) + `,`, `}`, }, "") return s @@ -13787,6 +13924,25 @@ func (this *SELinuxOptions) String() string { }, "") return s } +func (this *ScaleIOVolumeSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ScaleIOVolumeSource{`, + `Gateway:` + fmt.Sprintf("%v", this.Gateway) + `,`, + `System:` + fmt.Sprintf("%v", this.System) + `,`, + `SecretRef:` + strings.Replace(fmt.Sprintf("%v", this.SecretRef), "LocalObjectReference", "LocalObjectReference", 1) + `,`, + `SSLEnabled:` + fmt.Sprintf("%v", this.SSLEnabled) + `,`, + `ProtectionDomain:` + fmt.Sprintf("%v", this.ProtectionDomain) + `,`, + `StoragePool:` + fmt.Sprintf("%v", this.StoragePool) + `,`, + `StorageMode:` + fmt.Sprintf("%v", this.StorageMode) + `,`, + `VolumeName:` + fmt.Sprintf("%v", this.VolumeName) + `,`, + `FSType:` + fmt.Sprintf("%v", this.FSType) + `,`, + `ReadOnly:` + fmt.Sprintf("%v", this.ReadOnly) + `,`, + `}`, + }, "") + return s +} func (this *Secret) String() string { if this == nil { return "nil" @@ -14127,6 +14283,7 @@ func (this *VolumeSource) String() string { `AzureDisk:` + strings.Replace(fmt.Sprintf("%v", this.AzureDisk), "AzureDiskVolumeSource", "AzureDiskVolumeSource", 1) + `,`, `PhotonPersistentDisk:` + strings.Replace(fmt.Sprintf("%v", this.PhotonPersistentDisk), "PhotonPersistentDiskVolumeSource", "PhotonPersistentDiskVolumeSource", 1) + `,`, `PortworxVolume:` + strings.Replace(fmt.Sprintf("%v", this.PortworxVolume), "PortworxVolumeSource", "PortworxVolumeSource", 1) + `,`, + `ScaleIO:` + strings.Replace(fmt.Sprintf("%v", this.ScaleIO), "ScaleIOVolumeSource", "ScaleIOVolumeSource", 1) + `,`, `Projected:` + strings.Replace(fmt.Sprintf("%v", this.Projected), "ProjectedVolumeSource", "ProjectedVolumeSource", 1) + `,`, `}`, }, "") @@ -29884,6 +30041,39 @@ func (m *PersistentVolumeSource) Unmarshal(data []byte) error { return err } iNdEx = postIndex + case 19: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ScaleIO", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ScaleIO == nil { + m.ScaleIO = &ScaleIOVolumeSource{} + } + if err := m.ScaleIO.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(data[iNdEx:]) @@ -37333,6 +37523,332 @@ func (m *SELinuxOptions) Unmarshal(data []byte) error { } return nil } +func (m *ScaleIOVolumeSource) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ScaleIOVolumeSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ScaleIOVolumeSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Gateway", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Gateway = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field System", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.System = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SecretRef", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SecretRef == nil { + m.SecretRef = &LocalObjectReference{} + } + if err := m.SecretRef.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field SSLEnabled", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.SSLEnabled = bool(v != 0) + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProtectionDomain", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ProtectionDomain = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StoragePool", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StoragePool = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StorageMode", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.StorageMode = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VolumeName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.VolumeName = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FSType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FSType = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 10: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ReadOnly", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.ReadOnly = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *Secret) Unmarshal(data []byte) error { l := len(data) iNdEx := 0 @@ -41631,6 +42147,39 @@ func (m *VolumeSource) Unmarshal(data []byte) error { } iNdEx = postIndex case 25: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ScaleIO", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ScaleIO == nil { + m.ScaleIO = &ScaleIOVolumeSource{} + } + if err := m.ScaleIO.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 26: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Projected", wireType) } @@ -41997,681 +42546,693 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 10815 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0x7d, 0x6d, 0x70, 0x24, 0xc7, - 0x75, 0x98, 0x66, 0x17, 0x5f, 0xfb, 0xf0, 0xdd, 0x87, 0x3b, 0x82, 0x10, 0x79, 0x38, 0x0e, 0x45, - 0xea, 0x48, 0x1e, 0x01, 0xdd, 0x91, 0x14, 0x4f, 0xa2, 0x42, 0x09, 0xc0, 0x02, 0x77, 0xd0, 0x7d, - 0x2d, 0x7b, 0x71, 0x77, 0x14, 0xc5, 0x88, 0x9c, 0xdb, 0x69, 0x00, 0xc3, 0x1b, 0xcc, 0x2c, 0x67, - 0x66, 0x71, 0x07, 0x29, 0xaa, 0xb2, 0x15, 0x95, 0x9c, 0x94, 0x95, 0x84, 0x2e, 0x47, 0x55, 0x29, - 0x27, 0x55, 0x4a, 0xb9, 0x2a, 0x8e, 0xf2, 0x1d, 0x45, 0x65, 0x49, 0xae, 0xc8, 0x49, 0xc5, 0xb1, - 0x1c, 0xb9, 0x2a, 0x71, 0x54, 0xe5, 0x72, 0xec, 0x94, 0x2b, 0xb0, 0x09, 0x55, 0xfc, 0x33, 0x3f, - 0xe2, 0x7f, 0x48, 0x2a, 0x95, 0xea, 0xcf, 0xe9, 0x9e, 0xdd, 0xc5, 0xcc, 0x82, 0x07, 0xf8, 0xa4, - 0xf2, 0xbf, 0xdd, 0xf7, 0x5e, 0xbf, 0xfe, 0x98, 0xee, 0xd7, 0xef, 0xbd, 0x7e, 0xfd, 0x1a, 0xce, - 0xdd, 0xbd, 0x18, 0xcf, 0x79, 0xe1, 0xfc, 0xdd, 0xd6, 0x1d, 0x12, 0x05, 0x24, 0x21, 0xf1, 0x7c, - 0xf3, 0xee, 0xc6, 0xbc, 0xd3, 0xf4, 0xe6, 0xb7, 0xcf, 0xcf, 0x6f, 0x90, 0x80, 0x44, 0x4e, 0x42, - 0xdc, 0xb9, 0x66, 0x14, 0x26, 0x21, 0x7a, 0x8c, 0x53, 0xcf, 0xa5, 0xd4, 0x73, 0xcd, 0xbb, 0x1b, - 0x73, 0x4e, 0xd3, 0x9b, 0xdb, 0x3e, 0x3f, 0xf3, 0xfc, 0x86, 0x97, 0x6c, 0xb6, 0xee, 0xcc, 0x35, - 0xc2, 0xad, 0xf9, 0x8d, 0x70, 0x23, 0x9c, 0x67, 0x85, 0xee, 0xb4, 0xd6, 0xd9, 0x3f, 0xf6, 0x87, - 0xfd, 0xe2, 0xcc, 0x66, 0x5e, 0x14, 0x55, 0x3b, 0x4d, 0x6f, 0xcb, 0x69, 0x6c, 0x7a, 0x01, 0x89, - 0x76, 0x54, 0xe5, 0x11, 0x89, 0xc3, 0x56, 0xd4, 0x20, 0xd9, 0x26, 0x1c, 0x58, 0x2a, 0x9e, 0xdf, - 0x22, 0x89, 0xd3, 0xa1, 0xe1, 0x33, 0xf3, 0xdd, 0x4a, 0x45, 0xad, 0x20, 0xf1, 0xb6, 0xda, 0xab, - 0xf9, 0x78, 0x5e, 0x81, 0xb8, 0xb1, 0x49, 0xb6, 0x9c, 0xb6, 0x72, 0x2f, 0x74, 0x2b, 0xd7, 0x4a, - 0x3c, 0x7f, 0xde, 0x0b, 0x92, 0x38, 0x89, 0x0e, 0xea, 0x53, 0x4c, 0xa2, 0x6d, 0x12, 0xa5, 0x1d, - 0x22, 0xf7, 0x9d, 0xad, 0xa6, 0x4f, 0x3a, 0xf4, 0xc9, 0xfe, 0x43, 0x0b, 0xce, 0x2c, 0xdc, 0xae, - 0x2f, 0xfb, 0x4e, 0x9c, 0x78, 0x8d, 0x45, 0x3f, 0x6c, 0xdc, 0xad, 0x27, 0x61, 0x44, 0x6e, 0x85, - 0x7e, 0x6b, 0x8b, 0xd4, 0xd9, 0xf0, 0xa1, 0x73, 0x30, 0xb4, 0xcd, 0xfe, 0xaf, 0x56, 0xa7, 0xad, - 0x33, 0xd6, 0xd9, 0xca, 0xe2, 0xc4, 0x8f, 0x76, 0x67, 0x3f, 0xb4, 0xb7, 0x3b, 0x3b, 0x74, 0x4b, - 0xc0, 0xb1, 0xa2, 0x40, 0x4f, 0xc3, 0xc0, 0x7a, 0xbc, 0xb6, 0xd3, 0x24, 0xd3, 0x25, 0x46, 0x3b, - 0x26, 0x68, 0x07, 0x56, 0xea, 0x14, 0x8a, 0x05, 0x16, 0xcd, 0x43, 0xa5, 0xe9, 0x44, 0x89, 0x97, - 0x78, 0x61, 0x30, 0x5d, 0x3e, 0x63, 0x9d, 0xed, 0x5f, 0x9c, 0x14, 0xa4, 0x95, 0x9a, 0x44, 0xe0, - 0x94, 0x86, 0x36, 0x23, 0x22, 0x8e, 0x7b, 0x23, 0xf0, 0x77, 0xa6, 0xfb, 0xce, 0x58, 0x67, 0x87, - 0xd2, 0x66, 0x60, 0x01, 0xc7, 0x8a, 0xc2, 0xfe, 0x7e, 0x09, 0x86, 0x16, 0xd6, 0xd7, 0xbd, 0xc0, - 0x4b, 0x76, 0xd0, 0xdb, 0x30, 0x12, 0x84, 0x2e, 0x91, 0xff, 0x59, 0x2f, 0x86, 0x2f, 0x3c, 0x3b, - 0x77, 0xd0, 0x54, 0x9c, 0xbb, 0xae, 0x95, 0x58, 0x9c, 0xd8, 0xdb, 0x9d, 0x1d, 0xd1, 0x21, 0xd8, - 0xe0, 0x88, 0xde, 0x84, 0xe1, 0x66, 0xe8, 0xaa, 0x0a, 0x4a, 0xac, 0x82, 0x67, 0x0e, 0xae, 0xa0, - 0x96, 0x16, 0x58, 0x1c, 0xdf, 0xdb, 0x9d, 0x1d, 0xd6, 0x00, 0x58, 0x67, 0x87, 0x7c, 0x18, 0xa7, - 0x7f, 0x83, 0xc4, 0x53, 0x35, 0x94, 0x59, 0x0d, 0xcf, 0xe7, 0xd7, 0xa0, 0x15, 0x5a, 0x3c, 0xb1, - 0xb7, 0x3b, 0x3b, 0x9e, 0x01, 0xe2, 0x2c, 0x6b, 0xfb, 0x8b, 0x30, 0xb6, 0x90, 0x24, 0x4e, 0x63, - 0x93, 0xb8, 0xfc, 0xfb, 0xa2, 0x17, 0xa1, 0x2f, 0x70, 0xb6, 0x88, 0xf8, 0xfa, 0x67, 0xc4, 0xb0, - 0xf7, 0x5d, 0x77, 0xb6, 0xc8, 0xfe, 0xee, 0xec, 0xc4, 0xcd, 0xc0, 0x7b, 0xb7, 0x25, 0xe6, 0x0c, - 0x85, 0x61, 0x46, 0x8d, 0x2e, 0x00, 0xb8, 0x64, 0xdb, 0x6b, 0x90, 0x9a, 0x93, 0x6c, 0x8a, 0xd9, - 0x80, 0x44, 0x59, 0xa8, 0x2a, 0x0c, 0xd6, 0xa8, 0xec, 0xaf, 0x58, 0x50, 0x59, 0xd8, 0x0e, 0x3d, - 0xb7, 0x16, 0xba, 0x31, 0x6a, 0xc1, 0x78, 0x33, 0x22, 0xeb, 0x24, 0x52, 0xa0, 0x69, 0xeb, 0x4c, - 0xf9, 0xec, 0xf0, 0x85, 0x0b, 0x39, 0xfd, 0x36, 0x0b, 0x2d, 0x07, 0x49, 0xb4, 0xb3, 0xf8, 0x88, - 0xa8, 0x7a, 0x3c, 0x83, 0xc5, 0xd9, 0x3a, 0xec, 0x5f, 0x2a, 0xc1, 0xc9, 0x85, 0x2f, 0xb6, 0x22, - 0x52, 0xf5, 0xe2, 0xbb, 0xd9, 0xa5, 0xe0, 0x7a, 0xf1, 0xdd, 0xeb, 0xe9, 0x60, 0xa8, 0x39, 0x58, - 0x15, 0x70, 0xac, 0x28, 0xd0, 0xf3, 0x30, 0x48, 0x7f, 0xdf, 0xc4, 0xab, 0xa2, 0xf7, 0x27, 0x04, - 0xf1, 0x70, 0xd5, 0x49, 0x9c, 0x2a, 0x47, 0x61, 0x49, 0x83, 0xae, 0xc1, 0x70, 0x83, 0xad, 0xf7, - 0x8d, 0x6b, 0xa1, 0x4b, 0xd8, 0x17, 0xae, 0x2c, 0x3e, 0x47, 0xc9, 0x97, 0x52, 0xf0, 0xfe, 0xee, - 0xec, 0x34, 0x6f, 0x9b, 0x60, 0xa1, 0xe1, 0xb0, 0x5e, 0x1e, 0xd9, 0x6a, 0x21, 0xf6, 0x31, 0x4e, - 0xd0, 0x61, 0x11, 0x9e, 0xd5, 0xd6, 0x54, 0x3f, 0x5b, 0x53, 0x23, 0x5d, 0xd6, 0xd3, 0x3f, 0xb5, - 0xc4, 0x98, 0xac, 0x78, 0xbe, 0x29, 0x1e, 0x2e, 0x00, 0xc4, 0xa4, 0x11, 0x91, 0x44, 0x1b, 0x15, - 0xf5, 0x99, 0xeb, 0x0a, 0x83, 0x35, 0x2a, 0xba, 0xf8, 0xe3, 0x4d, 0x27, 0x62, 0xb3, 0x45, 0x8c, - 0x8d, 0x5a, 0xfc, 0x75, 0x89, 0xc0, 0x29, 0x8d, 0xb1, 0xf8, 0xcb, 0xb9, 0x8b, 0xff, 0xb7, 0x2c, - 0x18, 0x5c, 0xf4, 0x02, 0xd7, 0x0b, 0x36, 0xd0, 0xdb, 0x30, 0x44, 0x25, 0xba, 0xeb, 0x24, 0x8e, - 0x58, 0xf7, 0x1f, 0x93, 0x93, 0x47, 0x17, 0xb0, 0x72, 0xfa, 0xc4, 0x73, 0x94, 0x9a, 0x4e, 0xa2, - 0x1b, 0x77, 0xde, 0x21, 0x8d, 0xe4, 0x1a, 0x49, 0x9c, 0xb4, 0x3b, 0x29, 0x0c, 0x2b, 0xae, 0xe8, - 0x26, 0x0c, 0x24, 0x4e, 0xb4, 0x41, 0x12, 0xb1, 0xec, 0x73, 0x16, 0x25, 0xe7, 0x81, 0xe9, 0x94, - 0x23, 0x41, 0x83, 0xa4, 0x02, 0x72, 0x8d, 0x31, 0xc1, 0x82, 0x99, 0xdd, 0x80, 0x91, 0x25, 0xa7, - 0xe9, 0xdc, 0xf1, 0x7c, 0x2f, 0xf1, 0x48, 0x8c, 0x3e, 0x0a, 0x65, 0xc7, 0x75, 0xd9, 0x02, 0xa8, - 0x2c, 0x9e, 0xdc, 0xdb, 0x9d, 0x2d, 0x2f, 0xb8, 0xee, 0xfe, 0xee, 0x2c, 0x28, 0xaa, 0x1d, 0x4c, - 0x29, 0xd0, 0xb3, 0xd0, 0xe7, 0x46, 0x61, 0x73, 0xba, 0xc4, 0x28, 0x4f, 0xd1, 0x95, 0x5a, 0x8d, - 0xc2, 0x66, 0x86, 0x94, 0xd1, 0xd8, 0x3f, 0x2c, 0x01, 0x5a, 0x22, 0xcd, 0xcd, 0x95, 0xba, 0xf1, - 0x4d, 0xcf, 0xc2, 0xd0, 0x56, 0x18, 0x78, 0x49, 0x18, 0xc5, 0xa2, 0x42, 0x36, 0x2f, 0xae, 0x09, - 0x18, 0x56, 0x58, 0x74, 0x06, 0xfa, 0x9a, 0xe9, 0xf2, 0x1e, 0x91, 0xa2, 0x81, 0x2d, 0x6c, 0x86, - 0xa1, 0x14, 0xad, 0x98, 0x44, 0x62, 0x3e, 0x2b, 0x8a, 0x9b, 0x31, 0x89, 0x30, 0xc3, 0xa4, 0x33, - 0x88, 0xce, 0x2d, 0x31, 0x5b, 0x33, 0x33, 0x88, 0x62, 0xb0, 0x46, 0x85, 0xde, 0x82, 0x0a, 0xff, - 0x87, 0xc9, 0x3a, 0x9b, 0xba, 0xb9, 0x42, 0xe1, 0x6a, 0xd8, 0x70, 0xfc, 0xec, 0xe0, 0x8f, 0xb2, - 0x19, 0x27, 0x19, 0xe1, 0x94, 0xa7, 0x31, 0xe3, 0x06, 0x72, 0x67, 0xdc, 0xdf, 0xb3, 0x00, 0x2d, - 0x79, 0x81, 0x4b, 0xa2, 0x63, 0xd8, 0x3a, 0x7b, 0x5b, 0x0c, 0x7f, 0x4c, 0x9b, 0x16, 0x6e, 0x35, - 0xc3, 0x80, 0x04, 0xc9, 0x52, 0x18, 0xb8, 0x7c, 0x3b, 0xfd, 0x24, 0xf4, 0x25, 0xb4, 0x2a, 0xde, - 0xac, 0xa7, 0xe5, 0x67, 0xa1, 0x15, 0xec, 0xef, 0xce, 0x9e, 0x6a, 0x2f, 0xc1, 0x9a, 0xc0, 0xca, - 0xa0, 0x4f, 0xc0, 0x40, 0x9c, 0x38, 0x49, 0x2b, 0x16, 0x0d, 0x7d, 0x42, 0x36, 0xb4, 0xce, 0xa0, - 0xfb, 0xbb, 0xb3, 0xe3, 0xaa, 0x18, 0x07, 0x61, 0x51, 0x00, 0x3d, 0x03, 0x83, 0x5b, 0x24, 0x8e, - 0x9d, 0x0d, 0x29, 0xe0, 0xc6, 0x45, 0xd9, 0xc1, 0x6b, 0x1c, 0x8c, 0x25, 0x1e, 0x3d, 0x09, 0xfd, - 0x24, 0x8a, 0xc2, 0x48, 0xcc, 0x88, 0x51, 0x41, 0xd8, 0xbf, 0x4c, 0x81, 0x98, 0xe3, 0xec, 0xff, - 0x6e, 0xc1, 0xb8, 0x6a, 0x2b, 0xaf, 0xeb, 0x18, 0x96, 0xbc, 0x0b, 0xd0, 0x90, 0x1d, 0x8c, 0xd9, - 0x42, 0xd3, 0xea, 0xe8, 0x3c, 0xfd, 0xda, 0x07, 0x34, 0xad, 0x43, 0x81, 0x62, 0xac, 0xf1, 0xb5, - 0xff, 0x93, 0x05, 0x27, 0x32, 0x7d, 0xbb, 0xea, 0xc5, 0x09, 0x7a, 0xb3, 0xad, 0x7f, 0x73, 0xc5, - 0xfa, 0x47, 0x4b, 0xb3, 0xde, 0xa9, 0xf9, 0x22, 0x21, 0x5a, 0xdf, 0x30, 0xf4, 0x7b, 0x09, 0xd9, - 0x92, 0xdd, 0x7a, 0xbe, 0x60, 0xb7, 0x78, 0xfb, 0xd2, 0xaf, 0xb4, 0x4a, 0x79, 0x60, 0xce, 0xca, - 0xfe, 0x3f, 0x16, 0x54, 0x96, 0xc2, 0x60, 0xdd, 0xdb, 0xb8, 0xe6, 0x34, 0x8f, 0xe1, 0xfb, 0xd4, - 0xa1, 0x8f, 0x71, 0xe7, 0x5d, 0x38, 0x9f, 0xd7, 0x05, 0xd1, 0xb0, 0x39, 0xba, 0xa7, 0x72, 0x65, - 0x41, 0x89, 0x29, 0x0a, 0xc2, 0x8c, 0xd9, 0xcc, 0xcb, 0x50, 0x51, 0x04, 0x68, 0x02, 0xca, 0x77, - 0x09, 0xd7, 0x24, 0x2b, 0x98, 0xfe, 0x44, 0x53, 0xd0, 0xbf, 0xed, 0xf8, 0x2d, 0xb1, 0x78, 0x31, - 0xff, 0xf3, 0xc9, 0xd2, 0x45, 0xcb, 0xfe, 0x21, 0x5b, 0x81, 0xa2, 0x92, 0xe5, 0x60, 0x5b, 0x08, - 0x87, 0xaf, 0x5a, 0x30, 0xe5, 0x77, 0x10, 0x4a, 0x62, 0x4c, 0x0e, 0x23, 0xce, 0x1e, 0x13, 0xcd, - 0x9e, 0xea, 0x84, 0xc5, 0x1d, 0x6b, 0xa3, 0xb2, 0x3e, 0x6c, 0xd2, 0x09, 0xe7, 0xf8, 0xac, 0xe9, - 0x42, 0x07, 0xb8, 0x21, 0x60, 0x58, 0x61, 0xed, 0x3f, 0xb3, 0x60, 0x4a, 0xf5, 0xe3, 0x0a, 0xd9, - 0xa9, 0x13, 0x9f, 0x34, 0x92, 0x30, 0x7a, 0x58, 0x7a, 0xf2, 0x38, 0xff, 0x26, 0x5c, 0x26, 0x0d, - 0x0b, 0x06, 0xe5, 0x2b, 0x64, 0x87, 0x7f, 0x20, 0xbd, 0xa3, 0xe5, 0x03, 0x3b, 0xfa, 0x6f, 0x2d, - 0x18, 0x55, 0x1d, 0x3d, 0x86, 0x25, 0x77, 0xd5, 0x5c, 0x72, 0x1f, 0x2d, 0x38, 0x5f, 0xbb, 0x2c, - 0xb6, 0xbf, 0x5b, 0xa2, 0x62, 0x43, 0xd0, 0xd4, 0xa2, 0x90, 0x0e, 0x12, 0x95, 0xf8, 0x0f, 0xc9, - 0x57, 0xea, 0xad, 0xb3, 0x57, 0xc8, 0xce, 0x5a, 0x48, 0xb5, 0x89, 0xce, 0x9d, 0x35, 0x3e, 0x6a, - 0xdf, 0x81, 0x1f, 0xf5, 0x77, 0x4b, 0x70, 0x52, 0x0d, 0x8b, 0xb1, 0x4b, 0xff, 0x4c, 0x0e, 0xcc, - 0x79, 0x18, 0x76, 0xc9, 0xba, 0xd3, 0xf2, 0x13, 0x65, 0x4d, 0xf4, 0x73, 0x33, 0xb3, 0x9a, 0x82, - 0xb1, 0x4e, 0xd3, 0xc3, 0x58, 0x7e, 0x73, 0x98, 0xc9, 0xf3, 0xc4, 0xa1, 0xb3, 0x9e, 0x6a, 0x78, - 0x9a, 0x79, 0x38, 0xa2, 0x9b, 0x87, 0xc2, 0x14, 0x7c, 0x12, 0xfa, 0xbd, 0x2d, 0xba, 0xe7, 0x97, - 0xcc, 0xad, 0x7c, 0x95, 0x02, 0x31, 0xc7, 0xa1, 0xa7, 0x60, 0xb0, 0x11, 0x6e, 0x6d, 0x39, 0x81, - 0x3b, 0x5d, 0x66, 0x3a, 0xe7, 0x30, 0x55, 0x0b, 0x96, 0x38, 0x08, 0x4b, 0x1c, 0x7a, 0x0c, 0xfa, - 0x9c, 0x68, 0x23, 0x9e, 0xee, 0x63, 0x34, 0x43, 0xb4, 0xa6, 0x85, 0x68, 0x23, 0xc6, 0x0c, 0x4a, - 0x75, 0xc9, 0x7b, 0x61, 0x74, 0xd7, 0x0b, 0x36, 0xaa, 0x5e, 0xc4, 0x14, 0x43, 0x4d, 0x97, 0xbc, - 0xad, 0x30, 0x58, 0xa3, 0x42, 0x35, 0xe8, 0x6f, 0x86, 0x51, 0x12, 0x4f, 0x0f, 0xb0, 0x81, 0x7f, - 0x2e, 0x77, 0xf9, 0xf1, 0x7e, 0xd7, 0xc2, 0x28, 0x49, 0xbb, 0x42, 0xff, 0xc5, 0x98, 0x33, 0x42, - 0x4b, 0x50, 0x26, 0xc1, 0xf6, 0xf4, 0x20, 0xe3, 0xf7, 0x91, 0x83, 0xf9, 0x2d, 0x07, 0xdb, 0xb7, - 0x9c, 0x28, 0x95, 0x57, 0xcb, 0xc1, 0x36, 0xa6, 0xa5, 0x51, 0x03, 0x2a, 0xd2, 0x85, 0x15, 0x4f, - 0x0f, 0x15, 0x99, 0x8a, 0x58, 0x90, 0x63, 0xf2, 0x6e, 0xcb, 0x8b, 0xc8, 0x16, 0x09, 0x92, 0x38, - 0x35, 0xac, 0x24, 0x36, 0xc6, 0x29, 0x5f, 0xd4, 0x80, 0x11, 0xae, 0x7f, 0x5e, 0x0b, 0x5b, 0x41, - 0x12, 0x4f, 0x57, 0x58, 0x93, 0x73, 0x3c, 0x17, 0xb7, 0xd2, 0x12, 0x8b, 0x53, 0x82, 0xfd, 0x88, - 0x06, 0x8c, 0xb1, 0xc1, 0x14, 0xbd, 0x09, 0xa3, 0xbe, 0xb7, 0x4d, 0x02, 0x12, 0xc7, 0xb5, 0x28, - 0xbc, 0x43, 0xa6, 0x81, 0xf5, 0xe6, 0xc9, 0x3c, 0x2b, 0x3e, 0xbc, 0x43, 0x16, 0x27, 0xf7, 0x76, - 0x67, 0x47, 0xaf, 0xea, 0xa5, 0xb1, 0xc9, 0x0c, 0xbd, 0x05, 0x63, 0x54, 0xd9, 0xf5, 0x52, 0xf6, - 0xc3, 0xc5, 0xd9, 0xa3, 0xbd, 0xdd, 0xd9, 0x31, 0x6c, 0x14, 0xc7, 0x19, 0x76, 0x68, 0x0d, 0x2a, - 0xbe, 0xb7, 0x4e, 0x1a, 0x3b, 0x0d, 0x9f, 0x4c, 0x8f, 0x30, 0xde, 0x39, 0x8b, 0xf3, 0xaa, 0x24, - 0xe7, 0x06, 0x86, 0xfa, 0x8b, 0x53, 0x46, 0xe8, 0x16, 0x9c, 0x4a, 0x48, 0xb4, 0xe5, 0x05, 0x0e, - 0x5d, 0x54, 0x42, 0xfb, 0x65, 0xae, 0x92, 0x51, 0x36, 0x6b, 0x4f, 0x8b, 0x81, 0x3d, 0xb5, 0xd6, - 0x91, 0x0a, 0x77, 0x29, 0x8d, 0x6e, 0xc0, 0x38, 0x5b, 0x4f, 0xb5, 0x96, 0xef, 0xd7, 0x42, 0xdf, - 0x6b, 0xec, 0x4c, 0x8f, 0x31, 0x86, 0x4f, 0x49, 0x07, 0xc8, 0xaa, 0x89, 0xa6, 0x86, 0x61, 0xfa, - 0x0f, 0x67, 0x4b, 0x23, 0x1f, 0xc6, 0x63, 0xd2, 0x68, 0x45, 0x5e, 0xb2, 0x43, 0xe7, 0x3e, 0xb9, - 0x9f, 0x4c, 0x8f, 0x17, 0x31, 0x74, 0xeb, 0x66, 0x21, 0xee, 0x7d, 0xca, 0x00, 0x71, 0x96, 0x35, - 0x15, 0x15, 0x71, 0xe2, 0x7a, 0xc1, 0xf4, 0x04, 0x93, 0x40, 0x6a, 0x7d, 0xd5, 0x29, 0x10, 0x73, - 0x1c, 0xf3, 0x1f, 0xd0, 0x1f, 0x37, 0xa8, 0x94, 0x9e, 0x64, 0x84, 0xa9, 0xff, 0x40, 0x22, 0x70, - 0x4a, 0x43, 0x55, 0x83, 0x24, 0xd9, 0x99, 0x46, 0x8c, 0x54, 0x2d, 0xb5, 0xb5, 0xb5, 0xcf, 0x61, - 0x0a, 0x47, 0xb7, 0x60, 0x90, 0x04, 0xdb, 0x2b, 0x51, 0xb8, 0x35, 0x7d, 0xa2, 0x88, 0x0c, 0x58, - 0xe6, 0xc4, 0x7c, 0xff, 0x48, 0x4d, 0x18, 0x01, 0xc6, 0x92, 0x19, 0xba, 0x0f, 0xd3, 0x1d, 0xbe, - 0x12, 0xff, 0x28, 0x53, 0xec, 0xa3, 0x7c, 0x4a, 0x94, 0x9d, 0x5e, 0xeb, 0x42, 0xb7, 0x7f, 0x00, - 0x0e, 0x77, 0xe5, 0x6e, 0xdf, 0x81, 0x31, 0x25, 0xa8, 0xd8, 0xf7, 0x46, 0xb3, 0xd0, 0x4f, 0x65, - 0xb1, 0x34, 0xe8, 0x2b, 0x74, 0x50, 0xa9, 0x88, 0x8e, 0x31, 0x87, 0xb3, 0x41, 0xf5, 0xbe, 0x48, - 0x16, 0x77, 0x12, 0xc2, 0x0d, 0xbb, 0xb2, 0x36, 0xa8, 0x12, 0x81, 0x53, 0x1a, 0xfb, 0xff, 0x71, - 0x35, 0x29, 0x95, 0x86, 0x05, 0x76, 0x82, 0x73, 0x30, 0xb4, 0x19, 0xc6, 0x09, 0xa5, 0x66, 0x75, - 0xf4, 0xa7, 0x8a, 0xd1, 0x65, 0x01, 0xc7, 0x8a, 0x02, 0xbd, 0x02, 0xa3, 0x0d, 0xbd, 0x02, 0xb1, - 0x8d, 0x9d, 0x14, 0x45, 0xcc, 0xda, 0xb1, 0x49, 0x8b, 0x2e, 0xc2, 0x10, 0xf3, 0x72, 0x37, 0x42, - 0x5f, 0x98, 0x90, 0x72, 0x57, 0x1e, 0xaa, 0x09, 0xf8, 0xbe, 0xf6, 0x1b, 0x2b, 0x6a, 0x6a, 0x88, - 0xd3, 0x26, 0xac, 0xd6, 0xc4, 0x06, 0xa2, 0x0c, 0xf1, 0xcb, 0x0c, 0x8a, 0x05, 0xd6, 0xfe, 0xd7, - 0x25, 0x6d, 0x94, 0xa9, 0x01, 0x44, 0xd0, 0x1b, 0x30, 0x78, 0xcf, 0xf1, 0x12, 0x2f, 0xd8, 0x10, - 0xda, 0xc3, 0x0b, 0x05, 0x77, 0x13, 0x56, 0xfc, 0x36, 0x2f, 0xca, 0x77, 0x3e, 0xf1, 0x07, 0x4b, - 0x86, 0x94, 0x77, 0xd4, 0x0a, 0x02, 0xca, 0xbb, 0xd4, 0x3b, 0x6f, 0xcc, 0x8b, 0x72, 0xde, 0xe2, - 0x0f, 0x96, 0x0c, 0xd1, 0x3a, 0x80, 0x9c, 0x4b, 0xc4, 0x15, 0xde, 0xe5, 0x8f, 0xf7, 0xc2, 0x7e, - 0x4d, 0x95, 0x5e, 0x1c, 0xa3, 0x7b, 0x6d, 0xfa, 0x1f, 0x6b, 0x9c, 0xed, 0x84, 0x29, 0x61, 0xed, - 0xcd, 0x42, 0x9f, 0xa7, 0x4b, 0xda, 0x89, 0x12, 0xe2, 0x2e, 0x24, 0x59, 0x07, 0xfd, 0xc1, 0x2a, - 0xf6, 0x9a, 0xb7, 0x45, 0xf4, 0xe5, 0x2f, 0x98, 0xe0, 0x94, 0x9f, 0xfd, 0xbd, 0x32, 0x4c, 0x77, - 0x6b, 0x2e, 0x9d, 0x92, 0xe4, 0xbe, 0x97, 0x2c, 0x51, 0x35, 0xc9, 0x32, 0xa7, 0xe4, 0xb2, 0x80, - 0x63, 0x45, 0x41, 0xe7, 0x46, 0xec, 0x6d, 0x48, 0x63, 0xa9, 0x3f, 0x9d, 0x1b, 0x75, 0x06, 0xc5, - 0x02, 0x4b, 0xe9, 0x22, 0xe2, 0xc4, 0xe2, 0x70, 0x43, 0x9b, 0x43, 0x98, 0x41, 0xb1, 0xc0, 0xea, - 0x0e, 0x91, 0xbe, 0x1c, 0x87, 0x88, 0x31, 0x44, 0xfd, 0x0f, 0x76, 0x88, 0xd0, 0x17, 0x00, 0xd6, - 0xbd, 0xc0, 0x8b, 0x37, 0x19, 0xf7, 0x81, 0x9e, 0xb9, 0x2b, 0x25, 0x6b, 0x45, 0x71, 0xc1, 0x1a, - 0x47, 0xf4, 0x12, 0x0c, 0xab, 0xe5, 0xb9, 0x5a, 0x9d, 0x1e, 0x34, 0x1d, 0xe2, 0xa9, 0xac, 0xaa, - 0x62, 0x9d, 0xce, 0x7e, 0x27, 0x3b, 0x5f, 0xc4, 0xaa, 0xd0, 0xc6, 0xd7, 0x2a, 0x3a, 0xbe, 0xa5, - 0x83, 0xc7, 0xd7, 0xfe, 0x6f, 0x65, 0x18, 0x37, 0x2a, 0x6b, 0xc5, 0x05, 0x24, 0xda, 0x6b, 0x74, - 0xc3, 0x72, 0x12, 0x22, 0xd6, 0xe4, 0xb9, 0x5e, 0x16, 0x8d, 0xbe, 0xbd, 0xd1, 0xb5, 0xc0, 0x39, - 0xa1, 0x4d, 0xa8, 0xf8, 0x4e, 0xcc, 0x5c, 0x2a, 0x44, 0xac, 0xc5, 0xde, 0xd8, 0xa6, 0xe6, 0x87, - 0x13, 0x27, 0xda, 0xee, 0xc1, 0x6b, 0x49, 0x99, 0xd3, 0xdd, 0x96, 0x2a, 0x3b, 0xf2, 0x44, 0x4d, - 0x35, 0x87, 0x6a, 0x44, 0x3b, 0x98, 0xe3, 0xd0, 0x45, 0x18, 0x89, 0x08, 0x9b, 0x29, 0x4b, 0x54, - 0x9f, 0x63, 0x53, 0xaf, 0x3f, 0x55, 0xfc, 0xb0, 0x86, 0xc3, 0x06, 0x65, 0xaa, 0xf7, 0x0f, 0x1c, - 0xa0, 0xf7, 0x3f, 0x03, 0x83, 0xec, 0x87, 0x9a, 0x15, 0xea, 0x0b, 0xad, 0x72, 0x30, 0x96, 0xf8, - 0xec, 0x24, 0x1a, 0x2a, 0x38, 0x89, 0x9e, 0x85, 0xb1, 0xaa, 0x43, 0xb6, 0xc2, 0x60, 0x39, 0x70, - 0x9b, 0xa1, 0x17, 0x24, 0x68, 0x1a, 0xfa, 0xd8, 0x7e, 0xc2, 0xd7, 0x7b, 0x1f, 0xe5, 0x80, 0xfb, - 0xa8, 0xee, 0x6e, 0xff, 0x71, 0x09, 0x46, 0xab, 0xc4, 0x27, 0x09, 0xe1, 0x76, 0x4f, 0x8c, 0x56, - 0x00, 0x6d, 0x44, 0x4e, 0x83, 0xd4, 0x48, 0xe4, 0x85, 0x6e, 0x9d, 0x34, 0xc2, 0x80, 0x1d, 0x44, - 0xd1, 0x0d, 0xf2, 0xd4, 0xde, 0xee, 0x2c, 0xba, 0xd4, 0x86, 0xc5, 0x1d, 0x4a, 0x20, 0x17, 0x46, - 0x9b, 0x11, 0x31, 0xfc, 0x86, 0x56, 0xbe, 0xaa, 0x51, 0xd3, 0x8b, 0x70, 0x6d, 0xd8, 0x00, 0x61, - 0x93, 0x29, 0xfa, 0x0c, 0x4c, 0x84, 0x51, 0x73, 0xd3, 0x09, 0xaa, 0xa4, 0x49, 0x02, 0x97, 0x9a, - 0x00, 0xc2, 0xdb, 0x31, 0xb5, 0xb7, 0x3b, 0x3b, 0x71, 0x23, 0x83, 0xc3, 0x6d, 0xd4, 0xe8, 0x0d, - 0x98, 0x6c, 0x46, 0x61, 0xd3, 0xd9, 0x60, 0x53, 0x46, 0x68, 0x2b, 0x5c, 0x36, 0x9d, 0xdb, 0xdb, - 0x9d, 0x9d, 0xac, 0x65, 0x91, 0xfb, 0xbb, 0xb3, 0x27, 0xd8, 0x90, 0x51, 0x48, 0x8a, 0xc4, 0xed, - 0x6c, 0xec, 0x77, 0xe1, 0x64, 0x35, 0xbc, 0x17, 0xdc, 0x73, 0x22, 0x77, 0xa1, 0xb6, 0xaa, 0x39, - 0x27, 0x5e, 0x97, 0xc6, 0x2f, 0x3f, 0xe0, 0xcb, 0xd9, 0xd9, 0x34, 0x1e, 0xdc, 0xec, 0x58, 0xf1, - 0x7c, 0xd2, 0xc5, 0x1d, 0xf2, 0xcf, 0x4a, 0x46, 0x9d, 0x29, 0xbd, 0x3a, 0xbb, 0xb0, 0xba, 0x9e, - 0x5d, 0x7c, 0x1e, 0x86, 0xd6, 0x3d, 0xe2, 0xbb, 0x98, 0xac, 0x8b, 0xaf, 0x75, 0xbe, 0xc8, 0xe1, - 0xce, 0x0a, 0x2d, 0x23, 0xbd, 0x63, 0xdc, 0x88, 0x5e, 0x11, 0x6c, 0xb0, 0x62, 0x88, 0x5a, 0x30, - 0x21, 0xed, 0x30, 0x89, 0x15, 0x8b, 0xfd, 0x85, 0x62, 0x66, 0x9e, 0x59, 0x0d, 0xfb, 0xbc, 0x38, - 0xc3, 0x10, 0xb7, 0x55, 0x41, 0xed, 0xe7, 0x2d, 0xba, 0xd5, 0xf5, 0xb1, 0xa9, 0xcf, 0xec, 0x67, - 0xe6, 0x0a, 0x60, 0x50, 0xfb, 0xd7, 0x2c, 0x78, 0xa4, 0x6d, 0xb4, 0x84, 0x9f, 0xe4, 0xc8, 0xbe, - 0x51, 0xd6, 0x59, 0x51, 0xca, 0x77, 0x56, 0xd8, 0x37, 0x60, 0x6a, 0x79, 0xab, 0x99, 0xec, 0x54, - 0x3d, 0xf3, 0xc8, 0xe5, 0x65, 0x18, 0xd8, 0x22, 0xae, 0xd7, 0xda, 0x12, 0x9f, 0x75, 0x56, 0xee, - 0x0b, 0xd7, 0x18, 0x74, 0x7f, 0x77, 0x76, 0xb4, 0x9e, 0x84, 0x91, 0xb3, 0x41, 0x38, 0x00, 0x0b, - 0x72, 0xfb, 0x7d, 0x0b, 0xc6, 0xa5, 0x7c, 0x58, 0x70, 0xdd, 0x88, 0xc4, 0x31, 0x9a, 0x81, 0x92, - 0xd7, 0x14, 0x8c, 0x40, 0x30, 0x2a, 0xad, 0xd6, 0x70, 0xc9, 0x6b, 0xa2, 0x37, 0xa0, 0xc2, 0x4f, - 0xea, 0xd2, 0xc9, 0xd1, 0xe3, 0xc9, 0x1f, 0xb3, 0x0d, 0xd7, 0x24, 0x0f, 0x9c, 0xb2, 0x93, 0x5a, - 0x32, 0xdb, 0x79, 0xca, 0xe6, 0xb9, 0xd1, 0x65, 0x01, 0xc7, 0x8a, 0x02, 0x9d, 0x85, 0xa1, 0x20, - 0x74, 0xf9, 0x61, 0x2a, 0x5f, 0xa7, 0x6c, 0xca, 0x5d, 0x17, 0x30, 0xac, 0xb0, 0xf6, 0xd7, 0x2d, - 0x18, 0x91, 0x7d, 0x2c, 0xa8, 0xb0, 0xd3, 0x45, 0x92, 0x2a, 0xeb, 0xe9, 0x22, 0xa1, 0x0a, 0x37, - 0xc3, 0x18, 0x7a, 0x76, 0xb9, 0x17, 0x3d, 0xdb, 0xfe, 0x8d, 0x12, 0x8c, 0xc9, 0xe6, 0xd4, 0x5b, - 0x77, 0x62, 0x42, 0xd5, 0x90, 0x8a, 0xc3, 0x07, 0x9f, 0xc8, 0x79, 0xf6, 0x7c, 0x9e, 0x2d, 0x66, - 0x7c, 0xb3, 0x54, 0xcd, 0x59, 0x90, 0x7c, 0x70, 0xca, 0x12, 0x6d, 0xc3, 0x64, 0x10, 0x26, 0x6c, - 0x7b, 0x53, 0xf8, 0x62, 0x27, 0x1d, 0xd9, 0x7a, 0x1e, 0x15, 0xf5, 0x4c, 0x5e, 0xcf, 0xf2, 0xc3, - 0xed, 0x55, 0xa0, 0x1b, 0xd2, 0xc7, 0x54, 0x66, 0x75, 0x3d, 0x5b, 0xac, 0xae, 0xee, 0x2e, 0x26, - 0xfb, 0x77, 0x2c, 0xa8, 0x48, 0xb2, 0xe3, 0x38, 0xf2, 0xba, 0x0d, 0x83, 0x31, 0xfb, 0x44, 0x72, - 0xb8, 0xce, 0x15, 0xeb, 0x02, 0xff, 0xae, 0xe9, 0x9e, 0xce, 0xff, 0xc7, 0x58, 0x72, 0x63, 0xce, - 0x76, 0xd5, 0x91, 0x87, 0xce, 0xd9, 0xae, 0x5a, 0xd6, 0xfd, 0x64, 0x6b, 0xd4, 0xf0, 0x06, 0x50, - 0xc5, 0xb4, 0x19, 0x91, 0x75, 0xef, 0x7e, 0x56, 0x31, 0xad, 0x31, 0x28, 0x16, 0x58, 0xb4, 0x0e, - 0x23, 0x0d, 0xe9, 0x8e, 0x4e, 0x45, 0xc8, 0xc7, 0x0a, 0xfa, 0xfe, 0xd5, 0x31, 0x12, 0x0f, 0x4d, - 0x5a, 0xd2, 0x38, 0x61, 0x83, 0x2f, 0x95, 0x53, 0xe9, 0x49, 0x79, 0xb9, 0xa0, 0xe3, 0x26, 0x22, - 0x49, 0x5a, 0x43, 0xd7, 0x43, 0x72, 0xfb, 0x5b, 0x16, 0x0c, 0x70, 0xff, 0x65, 0x31, 0x27, 0xb0, - 0x76, 0x40, 0x96, 0x8e, 0xe7, 0x2d, 0x0a, 0x14, 0xe7, 0x65, 0xe8, 0x36, 0x54, 0xd8, 0x0f, 0xe6, - 0x8b, 0x29, 0x17, 0x89, 0xd3, 0xe2, 0xf5, 0xeb, 0x4d, 0xbd, 0x25, 0x19, 0xe0, 0x94, 0x97, 0xfd, - 0x83, 0x32, 0x15, 0x7d, 0x29, 0xa9, 0xb1, 0xb7, 0x5b, 0xc7, 0xb1, 0xb7, 0x97, 0x8e, 0x7e, 0x6f, - 0x7f, 0x17, 0xc6, 0x1b, 0xda, 0x01, 0x5d, 0xfa, 0xc5, 0x2f, 0x14, 0x9c, 0x56, 0xda, 0xa9, 0x1e, - 0xf7, 0xd7, 0x2d, 0x99, 0xec, 0x70, 0x96, 0x3f, 0x22, 0x30, 0xc2, 0xe7, 0x83, 0xa8, 0xaf, 0x8f, - 0xd5, 0x37, 0x5f, 0x64, 0x86, 0xe9, 0x95, 0xb1, 0x59, 0x5c, 0xd7, 0x18, 0x61, 0x83, 0xad, 0xfd, - 0x2b, 0xfd, 0xd0, 0xbf, 0xbc, 0x4d, 0x82, 0xe4, 0x18, 0x44, 0xdd, 0x16, 0x8c, 0x79, 0xc1, 0x76, - 0xe8, 0x6f, 0x13, 0x97, 0xe3, 0x0f, 0xb7, 0xbd, 0x9f, 0x12, 0x95, 0x8c, 0xad, 0x1a, 0xcc, 0x70, - 0x86, 0xf9, 0x51, 0x78, 0x0a, 0x5e, 0x83, 0x01, 0x3e, 0x33, 0x84, 0x9b, 0x20, 0xc7, 0x9f, 0xcf, - 0x06, 0x56, 0xac, 0xa0, 0xd4, 0x9f, 0xc1, 0x8f, 0x12, 0x04, 0x23, 0xf4, 0x0e, 0x8c, 0xad, 0x7b, - 0x51, 0x9c, 0x50, 0x63, 0x3f, 0x4e, 0x9c, 0xad, 0xe6, 0x21, 0x7c, 0x04, 0x6a, 0x44, 0x56, 0x0c, - 0x4e, 0x38, 0xc3, 0x19, 0x6d, 0xc0, 0x28, 0x35, 0x51, 0xd3, 0xaa, 0x06, 0x7b, 0xae, 0x4a, 0xb9, - 0x08, 0xaf, 0xea, 0x8c, 0xb0, 0xc9, 0x97, 0x8a, 0xa4, 0x06, 0x33, 0x69, 0x87, 0x98, 0x76, 0xa3, - 0x44, 0x12, 0xb7, 0x65, 0x39, 0x8e, 0x4a, 0x36, 0x16, 0x29, 0x53, 0x31, 0x25, 0x5b, 0x1a, 0x0f, - 0x63, 0x7f, 0x87, 0xee, 0xc5, 0x74, 0x0c, 0x8f, 0x61, 0xfb, 0xba, 0x6c, 0x6e, 0x5f, 0x4f, 0x16, - 0xf8, 0xb2, 0x5d, 0xb6, 0xae, 0xb7, 0x61, 0x58, 0xfb, 0xf0, 0x68, 0x1e, 0x2a, 0x0d, 0x19, 0xcc, - 0x21, 0xa4, 0xb8, 0x52, 0xa5, 0x54, 0x94, 0x07, 0x4e, 0x69, 0xe8, 0xb8, 0x50, 0x15, 0x34, 0x1b, - 0xfa, 0x45, 0x15, 0x54, 0xcc, 0x30, 0xf6, 0x0b, 0x00, 0xcb, 0xf7, 0x49, 0x63, 0x81, 0x9b, 0x78, - 0xda, 0xf9, 0x9e, 0xd5, 0xfd, 0x7c, 0xcf, 0xfe, 0xb6, 0x05, 0x63, 0x2b, 0x4b, 0x86, 0x4e, 0x3f, - 0x07, 0xc0, 0x75, 0xe3, 0xdb, 0xb7, 0xaf, 0x4b, 0xff, 0x35, 0x77, 0x32, 0x2a, 0x28, 0xd6, 0x28, - 0xd0, 0xa3, 0x50, 0xf6, 0x5b, 0x81, 0x50, 0x59, 0x07, 0xf7, 0x76, 0x67, 0xcb, 0x57, 0x5b, 0x01, - 0xa6, 0x30, 0x2d, 0xc6, 0xaa, 0x5c, 0x38, 0xc6, 0x2a, 0x3f, 0xda, 0xf8, 0x1b, 0x65, 0x98, 0x58, - 0xf1, 0xc9, 0x7d, 0xa3, 0xd5, 0x4f, 0xc3, 0x80, 0x1b, 0x79, 0xdb, 0x24, 0xca, 0x2a, 0x02, 0x55, - 0x06, 0xc5, 0x02, 0x5b, 0x38, 0xec, 0xeb, 0xad, 0xf6, 0x8d, 0xfc, 0xe8, 0x42, 0xde, 0x72, 0xfb, - 0x8c, 0xd6, 0x61, 0x90, 0x9f, 0x07, 0xc7, 0xd3, 0xfd, 0x6c, 0x2a, 0xbe, 0x72, 0x70, 0x63, 0xb2, - 0xe3, 0x33, 0x27, 0xfc, 0x2b, 0x3c, 0xe0, 0x46, 0xc9, 0x32, 0x01, 0xc5, 0x92, 0xf9, 0xcc, 0x27, - 0x61, 0x44, 0xa7, 0xec, 0x29, 0xf2, 0xe6, 0xaf, 0x5b, 0x70, 0x62, 0xc5, 0x0f, 0x1b, 0x77, 0x33, - 0x71, 0x79, 0x2f, 0xc1, 0x30, 0x5d, 0x4c, 0xb1, 0x11, 0xb4, 0x6a, 0x44, 0xe7, 0x0a, 0x14, 0xd6, - 0xe9, 0xb4, 0x62, 0x37, 0x6f, 0xae, 0x56, 0x3b, 0x05, 0xf5, 0x0a, 0x14, 0xd6, 0xe9, 0xec, 0xdf, - 0xb3, 0xe0, 0xf1, 0x4b, 0x4b, 0xcb, 0x35, 0x12, 0xc5, 0x5e, 0x9c, 0x90, 0x20, 0x69, 0x8b, 0x2b, - 0xa6, 0x3a, 0xa3, 0xab, 0x35, 0x25, 0xd5, 0x19, 0xab, 0xac, 0x15, 0x02, 0xfb, 0xb0, 0x04, 0xd7, - 0x7f, 0xcb, 0x82, 0x13, 0x97, 0xbc, 0x04, 0x93, 0x66, 0x98, 0x0d, 0x05, 0x8e, 0x48, 0x33, 0x8c, - 0xbd, 0x24, 0x8c, 0x76, 0xb2, 0xa1, 0xc0, 0x58, 0x61, 0xb0, 0x46, 0xc5, 0x6b, 0xde, 0xf6, 0x62, - 0xda, 0xd2, 0x92, 0x69, 0xea, 0x62, 0x01, 0xc7, 0x8a, 0x82, 0x76, 0xcc, 0xf5, 0x22, 0xa6, 0x32, - 0xec, 0x88, 0x15, 0xac, 0x3a, 0x56, 0x95, 0x08, 0x9c, 0xd2, 0xd8, 0xff, 0xc0, 0x82, 0x93, 0x97, - 0xfc, 0x56, 0x9c, 0x90, 0x68, 0x3d, 0x36, 0x1a, 0xfb, 0x02, 0x54, 0x88, 0x54, 0xee, 0x45, 0x5b, - 0xd5, 0xa6, 0xa1, 0xb4, 0x7e, 0x1e, 0x87, 0xac, 0xe8, 0x0a, 0x84, 0xbb, 0xf6, 0x16, 0x9c, 0xf9, - 0x9b, 0x25, 0x18, 0xbd, 0xbc, 0xb6, 0x56, 0xbb, 0x44, 0x12, 0x21, 0x25, 0xf3, 0x9d, 0x52, 0x58, - 0xb3, 0xc8, 0x0f, 0x52, 0x7e, 0x5a, 0x89, 0xe7, 0xcf, 0xf1, 0xeb, 0x22, 0x73, 0xab, 0x41, 0x72, - 0x23, 0xaa, 0x27, 0x91, 0x17, 0x6c, 0x74, 0xb4, 0xe1, 0xa5, 0x2c, 0x2f, 0x77, 0x93, 0xe5, 0xe8, - 0x05, 0x18, 0x60, 0xf7, 0x55, 0xa4, 0xf2, 0xf1, 0x61, 0xa5, 0x27, 0x30, 0xe8, 0xfe, 0xee, 0x6c, - 0xe5, 0x26, 0x5e, 0xe5, 0x7f, 0xb0, 0x20, 0x45, 0x6f, 0xc1, 0xf0, 0x66, 0x92, 0x34, 0x2f, 0x13, - 0xc7, 0x25, 0x91, 0x94, 0x13, 0x67, 0x0f, 0x96, 0x13, 0x74, 0x38, 0x78, 0x81, 0x74, 0x69, 0xa5, - 0xb0, 0x18, 0xeb, 0x1c, 0xed, 0x3a, 0x40, 0x8a, 0x7b, 0x40, 0x36, 0x88, 0xfd, 0xf3, 0x25, 0x18, - 0xbc, 0xec, 0x04, 0xae, 0x4f, 0x22, 0xb4, 0x02, 0x7d, 0xe4, 0x3e, 0x69, 0x88, 0x8d, 0x3c, 0xa7, - 0xe9, 0xe9, 0x66, 0xc7, 0xfd, 0x6a, 0xf4, 0x3f, 0x66, 0xe5, 0x11, 0x86, 0x41, 0xda, 0xee, 0x4b, - 0x2a, 0x4a, 0xfc, 0xb9, 0xfc, 0x51, 0x50, 0x93, 0x82, 0xef, 0x94, 0x02, 0x84, 0x25, 0x23, 0xe6, - 0x81, 0x6a, 0x34, 0xeb, 0x54, 0xbc, 0x25, 0xc5, 0x2c, 0xbb, 0xb5, 0xa5, 0x1a, 0x27, 0x17, 0x7c, - 0xb9, 0x07, 0x4a, 0x02, 0x71, 0xca, 0xce, 0xbe, 0x08, 0x53, 0xec, 0x3c, 0xd6, 0x49, 0x36, 0x8d, - 0x55, 0x93, 0x3b, 0x3d, 0xed, 0x1f, 0x95, 0x60, 0x72, 0xb5, 0xbe, 0x54, 0x37, 0x7d, 0x87, 0x17, - 0x61, 0x84, 0x6f, 0xd0, 0x74, 0xd2, 0x39, 0xbe, 0x28, 0xaf, 0xce, 0x10, 0xd6, 0x34, 0x1c, 0x36, - 0x28, 0xd1, 0xe3, 0x50, 0xf6, 0xde, 0x0d, 0xb2, 0x51, 0x7d, 0xab, 0xaf, 0x5d, 0xc7, 0x14, 0x4e, - 0xd1, 0x74, 0xaf, 0xe7, 0x42, 0x4e, 0xa1, 0xd5, 0x7e, 0xff, 0x2a, 0x8c, 0x79, 0x71, 0x23, 0xf6, - 0x56, 0x03, 0x2a, 0x01, 0x9c, 0x86, 0x9c, 0xbe, 0xa9, 0x72, 0x4e, 0x9b, 0xaa, 0xb0, 0x38, 0x43, - 0xad, 0x49, 0xdc, 0xfe, 0xc2, 0xfa, 0x42, 0x6e, 0xb8, 0x38, 0x55, 0x85, 0x9a, 0xac, 0x77, 0x31, - 0x8b, 0x11, 0x12, 0xaa, 0x10, 0xef, 0x70, 0x8c, 0x25, 0xce, 0x7e, 0x07, 0x2a, 0x2a, 0xcc, 0x4b, - 0x46, 0x37, 0x5a, 0x5d, 0xa2, 0x1b, 0xf3, 0x25, 0x93, 0x74, 0xfc, 0x96, 0x3b, 0x3a, 0x7e, 0xff, - 0x85, 0x05, 0x69, 0x9c, 0x0a, 0xc2, 0x50, 0x69, 0x86, 0xec, 0x90, 0x28, 0x92, 0xa7, 0xb1, 0x4f, - 0xe5, 0x4c, 0x58, 0xbe, 0x60, 0xf8, 0x94, 0xaa, 0xc9, 0xb2, 0x38, 0x65, 0x83, 0xae, 0xc2, 0x60, - 0x33, 0x22, 0xf5, 0x84, 0x5d, 0x4d, 0xe8, 0x81, 0x23, 0x1f, 0x1b, 0x5e, 0x12, 0x4b, 0x16, 0xf6, - 0xbf, 0xb3, 0x00, 0xae, 0x7a, 0x5b, 0x5e, 0x82, 0x9d, 0x60, 0x83, 0x1c, 0x83, 0x55, 0x78, 0x1d, - 0xfa, 0xe2, 0x26, 0x69, 0x14, 0x3b, 0xe6, 0x4b, 0x5b, 0x56, 0x6f, 0x92, 0x46, 0xfa, 0x39, 0xe8, - 0x3f, 0xcc, 0xf8, 0xd8, 0xdf, 0x07, 0x18, 0x4b, 0xc9, 0xa8, 0x66, 0x8e, 0x9e, 0x37, 0x62, 0xf2, - 0x1f, 0xcd, 0xc4, 0xe4, 0x57, 0x18, 0xb5, 0x16, 0x86, 0x9f, 0x40, 0x79, 0xcb, 0xb9, 0x2f, 0x0c, - 0x81, 0x97, 0x8a, 0x36, 0x88, 0xd6, 0x34, 0x77, 0xcd, 0xb9, 0xcf, 0xf5, 0xae, 0xe7, 0xe4, 0x44, - 0xba, 0xe6, 0xdc, 0xdf, 0xe7, 0x87, 0x79, 0x6c, 0xc1, 0x52, 0xcb, 0xe3, 0x2b, 0x7f, 0x92, 0xfe, - 0x67, 0x32, 0x94, 0x56, 0xc7, 0x6a, 0xf5, 0x02, 0xe1, 0xc7, 0xec, 0xb1, 0x56, 0x2f, 0xc8, 0xd6, - 0xea, 0x05, 0x05, 0x6a, 0xf5, 0x58, 0xf0, 0xea, 0xa0, 0x70, 0xff, 0xb3, 0xc8, 0xbf, 0xe1, 0x0b, - 0x9f, 0xe8, 0xa9, 0x6a, 0x71, 0x8e, 0xc0, 0xab, 0x9f, 0x97, 0xca, 0xa6, 0x80, 0xe6, 0x36, 0x41, - 0x56, 0x8d, 0xfe, 0xa1, 0x05, 0x63, 0xe2, 0x37, 0x26, 0xef, 0xb6, 0x48, 0x9c, 0x88, 0x4d, 0xed, - 0x33, 0x87, 0x69, 0x8d, 0x60, 0xc1, 0x1b, 0xf5, 0x71, 0x29, 0x91, 0x4c, 0x64, 0x6e, 0xdb, 0x32, - 0xed, 0x41, 0xdf, 0xb7, 0x60, 0x6a, 0xcb, 0xb9, 0xcf, 0x6b, 0xe4, 0x30, 0xec, 0x24, 0x5e, 0x28, - 0xa2, 0x1b, 0x57, 0x7a, 0x9d, 0x27, 0x6d, 0x8c, 0x78, 0x73, 0x65, 0xe0, 0xd2, 0x54, 0x27, 0x92, - 0xdc, 0x46, 0x77, 0x6c, 0xe1, 0xcc, 0x3a, 0x0c, 0xc9, 0x89, 0xd9, 0x41, 0xcd, 0xaf, 0xea, 0x7b, - 0x77, 0x8e, 0x51, 0x3d, 0x27, 0x5d, 0x63, 0x73, 0xaf, 0xb5, 0x9c, 0x20, 0xf1, 0x92, 0x1d, 0xcd, - 0x2c, 0x60, 0xf5, 0x88, 0xa9, 0x78, 0xa4, 0xf5, 0xbc, 0x03, 0x23, 0xfa, 0xbc, 0x3b, 0xd2, 0xba, - 0xde, 0x85, 0x13, 0x1d, 0x66, 0xd5, 0x91, 0x56, 0x79, 0x0f, 0x1e, 0xed, 0x3a, 0x3f, 0x8e, 0xb2, - 0x62, 0xfb, 0x37, 0x2d, 0x5d, 0x74, 0x1e, 0x83, 0xd3, 0xe5, 0x9a, 0xe9, 0x74, 0x39, 0x5b, 0x74, - 0x0d, 0x75, 0xf1, 0xbc, 0xac, 0xeb, 0xcd, 0xa7, 0x5b, 0x02, 0x5a, 0x83, 0x01, 0x9f, 0x42, 0xe4, - 0x99, 0xd7, 0xb9, 0x5e, 0x56, 0x69, 0xaa, 0x94, 0x30, 0x78, 0x8c, 0x05, 0x2f, 0xfb, 0xfb, 0x16, - 0xf4, 0xfd, 0x05, 0xde, 0x18, 0x6a, 0x63, 0x2d, 0x2e, 0xbe, 0xcf, 0x61, 0xe7, 0xde, 0xf2, 0xfd, - 0x84, 0x04, 0x31, 0xd3, 0x41, 0xbb, 0x9d, 0xda, 0x0f, 0xd3, 0xaa, 0x64, 0x10, 0xc6, 0x2b, 0x30, - 0xea, 0x3b, 0x77, 0x88, 0x2f, 0x1d, 0xc6, 0x59, 0x8b, 0xed, 0xaa, 0x8e, 0xc4, 0x26, 0x2d, 0x2d, - 0xbc, 0xae, 0xfb, 0xd3, 0x85, 0x92, 0xa4, 0x0a, 0x1b, 0xce, 0x76, 0x6c, 0xd2, 0x52, 0x93, 0xe1, - 0x9e, 0x93, 0x34, 0x36, 0x85, 0x35, 0xa7, 0x9a, 0x7b, 0x9b, 0x02, 0x31, 0xc7, 0xa1, 0x05, 0x18, - 0x97, 0x33, 0xf6, 0x16, 0x35, 0xf3, 0xc3, 0x40, 0xe8, 0x99, 0xea, 0xd6, 0x31, 0x36, 0xd1, 0x38, - 0x4b, 0x8f, 0x3e, 0x09, 0x63, 0x74, 0x70, 0xc2, 0x56, 0x22, 0x43, 0x4c, 0xfa, 0x59, 0x88, 0x09, - 0x8b, 0x50, 0x5e, 0x33, 0x30, 0x38, 0x43, 0x69, 0xbf, 0x05, 0x27, 0xae, 0x86, 0x8e, 0xbb, 0xe8, - 0xf8, 0x4e, 0xd0, 0x20, 0xd1, 0x6a, 0xb0, 0x91, 0x7b, 0x7c, 0xad, 0x1f, 0x31, 0x97, 0xf2, 0x8e, - 0x98, 0xed, 0x08, 0x90, 0x5e, 0x81, 0x08, 0x8e, 0x7a, 0x13, 0x06, 0x3d, 0x5e, 0x95, 0x98, 0xb6, - 0xe7, 0xf3, 0xfc, 0x51, 0x6d, 0x6d, 0xd4, 0x82, 0x7d, 0x38, 0x00, 0x4b, 0x96, 0xd4, 0x04, 0xe9, - 0xe4, 0xc0, 0xca, 0xb7, 0xf2, 0xec, 0xbf, 0x69, 0xc1, 0xf8, 0xf5, 0xcc, 0x95, 0xd6, 0xa7, 0x61, - 0x80, 0x27, 0x46, 0xc8, 0xba, 0x58, 0xea, 0x0c, 0x8a, 0x05, 0xf6, 0x81, 0x5b, 0xf8, 0xbf, 0x5c, - 0x82, 0x0a, 0x0b, 0xb3, 0x6d, 0x52, 0x73, 0xe2, 0xe8, 0xd5, 0xd4, 0x6b, 0x86, 0x9a, 0x9a, 0x63, - 0x65, 0xaa, 0x86, 0x75, 0xd3, 0x52, 0xd1, 0x4d, 0x75, 0xd5, 0xb3, 0x90, 0x81, 0x99, 0x32, 0xe4, - 0xd7, 0x01, 0xc7, 0xcc, 0x9b, 0xa1, 0xf2, 0x1a, 0x28, 0x3b, 0xf4, 0x55, 0xb4, 0x0f, 0xdd, 0xa1, - 0xaf, 0x6a, 0x59, 0x17, 0xe1, 0x54, 0xd3, 0x1a, 0xcf, 0xc4, 0xf7, 0xa7, 0x59, 0xf0, 0xa4, 0xe3, - 0x7b, 0x5f, 0x24, 0xea, 0xc6, 0xf4, 0xac, 0x08, 0x86, 0x14, 0xd0, 0x7d, 0x26, 0x67, 0xc4, 0x3f, - 0x7e, 0x21, 0x3e, 0x2d, 0x62, 0x5f, 0x86, 0xf1, 0xcc, 0xd0, 0xa1, 0x97, 0xa0, 0xbf, 0xb9, 0xe9, - 0xc4, 0x24, 0x13, 0xc7, 0xd2, 0x5f, 0xa3, 0xc0, 0xfd, 0xdd, 0xd9, 0x31, 0x55, 0x80, 0x41, 0x30, - 0xa7, 0xb6, 0xbf, 0x5a, 0x82, 0xbe, 0xeb, 0xa1, 0x7b, 0x1c, 0x53, 0xed, 0xb2, 0x31, 0xd5, 0x9e, - 0xce, 0x4f, 0xa7, 0xd1, 0x75, 0x96, 0xd5, 0x32, 0xb3, 0xec, 0x6c, 0x01, 0x5e, 0x07, 0x4f, 0xb0, - 0x2d, 0x18, 0x66, 0xe9, 0x3a, 0x44, 0x20, 0xcf, 0x0b, 0x86, 0x65, 0x35, 0x9b, 0xb1, 0xac, 0xc6, - 0x35, 0x52, 0xcd, 0xbe, 0x7a, 0x06, 0x06, 0x45, 0xe0, 0x48, 0x36, 0x74, 0x54, 0xd0, 0x62, 0x89, - 0xb7, 0xff, 0x4d, 0x19, 0x8c, 0xf4, 0x20, 0xe8, 0x77, 0x2c, 0x98, 0x8b, 0xf8, 0x35, 0x1c, 0xb7, - 0xda, 0x8a, 0xbc, 0x60, 0xa3, 0xde, 0xd8, 0x24, 0x6e, 0xcb, 0xf7, 0x82, 0x8d, 0xd5, 0x8d, 0x20, - 0x54, 0xe0, 0xe5, 0xfb, 0xa4, 0xd1, 0x62, 0x7e, 0xda, 0xc2, 0x59, 0x49, 0xd4, 0xa1, 0xe9, 0x85, - 0xbd, 0xdd, 0xd9, 0x39, 0xdc, 0x53, 0x2d, 0xb8, 0xc7, 0x56, 0xa1, 0x3f, 0xb2, 0x60, 0x9e, 0x27, - 0xc8, 0x28, 0xde, 0x93, 0x42, 0x16, 0x69, 0x4d, 0x32, 0x4d, 0xd9, 0xad, 0x91, 0x68, 0x6b, 0xf1, - 0x65, 0x31, 0xc8, 0xf3, 0xb5, 0xde, 0x6a, 0xc5, 0xbd, 0x36, 0xd3, 0xfe, 0x0f, 0x65, 0x18, 0xa5, - 0xe3, 0x99, 0x5e, 0x8a, 0x7f, 0xc9, 0x98, 0x26, 0x4f, 0x64, 0xa6, 0xc9, 0xa4, 0x41, 0xfc, 0x60, - 0xee, 0xc3, 0xc7, 0x30, 0xe9, 0x3b, 0x71, 0x72, 0x99, 0x38, 0x51, 0x72, 0x87, 0x38, 0xec, 0x6c, - 0x32, 0x1b, 0xf7, 0x50, 0xe0, 0xb8, 0x53, 0x05, 0x23, 0x5d, 0xcd, 0x32, 0xc3, 0xed, 0xfc, 0xd1, - 0x36, 0x20, 0x76, 0x0e, 0x1a, 0x39, 0x41, 0xcc, 0xfb, 0xe2, 0x09, 0xbf, 0x6e, 0x6f, 0xb5, 0xce, - 0x88, 0x5a, 0xd1, 0xd5, 0x36, 0x6e, 0xb8, 0x43, 0x0d, 0xda, 0x49, 0x77, 0x7f, 0xd1, 0x93, 0xee, - 0x81, 0x9c, 0x98, 0xed, 0xaf, 0x59, 0x70, 0x82, 0x7e, 0x16, 0x33, 0xbe, 0x37, 0x46, 0x21, 0x8c, - 0xd3, 0x69, 0xe7, 0x93, 0x44, 0xc2, 0xc4, 0xfa, 0xca, 0xd1, 0xac, 0x4d, 0x3e, 0xa9, 0xfa, 0x76, - 0xc5, 0x64, 0x86, 0xb3, 0xdc, 0xed, 0x6f, 0x5b, 0xc0, 0x22, 0xee, 0x8e, 0x61, 0x33, 0xbb, 0x64, - 0x6e, 0x66, 0x76, 0xbe, 0xc4, 0xe8, 0xb2, 0x8f, 0xbd, 0x08, 0x13, 0x14, 0x5b, 0x8b, 0xc2, 0xfb, - 0x3b, 0x52, 0xd1, 0xce, 0x77, 0xf0, 0x7e, 0xad, 0xc4, 0x97, 0x8d, 0xba, 0x4f, 0x88, 0x7e, 0xc1, - 0x82, 0xa1, 0x86, 0xd3, 0x74, 0x1a, 0x3c, 0xb9, 0x52, 0x01, 0xef, 0x8c, 0x51, 0x7e, 0x6e, 0x49, - 0x94, 0xe5, 0x9e, 0x85, 0x8f, 0xc9, 0xae, 0x4b, 0x70, 0xae, 0x37, 0x41, 0x55, 0x3e, 0x73, 0x17, - 0x46, 0x0d, 0x66, 0x47, 0x6a, 0x86, 0xfe, 0x82, 0xc5, 0x85, 0xbe, 0x32, 0x15, 0xee, 0xc1, 0x64, - 0xa0, 0xfd, 0xa7, 0xe2, 0x4c, 0x6a, 0xc6, 0x73, 0xc5, 0xc5, 0x3a, 0x93, 0x82, 0x5a, 0x74, 0x61, - 0x86, 0x21, 0x6e, 0xaf, 0xc3, 0xfe, 0x55, 0x0b, 0x1e, 0xd1, 0x09, 0xb5, 0x0b, 0xa0, 0x79, 0x7e, - 0xe3, 0x2a, 0x0c, 0x85, 0x4d, 0x12, 0x39, 0xa9, 0x59, 0x74, 0x56, 0x8e, 0xff, 0x0d, 0x01, 0xdf, - 0xdf, 0x9d, 0x9d, 0xd2, 0xb9, 0x4b, 0x38, 0x56, 0x25, 0x91, 0x0d, 0x03, 0x6c, 0x5c, 0x62, 0x71, - 0x75, 0x97, 0x25, 0x1b, 0x62, 0x87, 0x2a, 0x31, 0x16, 0x18, 0xfb, 0xef, 0x58, 0x7c, 0xba, 0xe9, - 0x4d, 0x47, 0x5f, 0x82, 0x89, 0x2d, 0x6a, 0x41, 0x2d, 0xdf, 0x6f, 0xd2, 0x8d, 0x94, 0x1d, 0x27, - 0x5b, 0x45, 0xb6, 0x8f, 0x2e, 0xdd, 0x5d, 0x9c, 0x16, 0xad, 0x9f, 0xb8, 0x96, 0x61, 0x8b, 0xdb, - 0x2a, 0xb2, 0xff, 0x71, 0x89, 0xaf, 0x59, 0xa6, 0xc3, 0x3d, 0x03, 0x83, 0xcd, 0xd0, 0x5d, 0x5a, - 0xad, 0x62, 0x31, 0x56, 0x4a, 0xe8, 0xd4, 0x38, 0x18, 0x4b, 0x3c, 0xba, 0x00, 0x40, 0xee, 0x27, - 0x24, 0x0a, 0x1c, 0x5f, 0x1d, 0x03, 0x2b, 0x55, 0x69, 0x59, 0x61, 0xb0, 0x46, 0x45, 0xcb, 0x34, - 0xa3, 0x70, 0xdb, 0x73, 0xd9, 0xcd, 0x85, 0xb2, 0x59, 0xa6, 0xa6, 0x30, 0x58, 0xa3, 0xa2, 0x76, - 0x6b, 0x2b, 0x88, 0xf9, 0x36, 0xe6, 0xdc, 0x11, 0xb9, 0x71, 0x86, 0x52, 0xbb, 0xf5, 0xa6, 0x8e, - 0xc4, 0x26, 0x2d, 0xba, 0x02, 0x03, 0x89, 0xc3, 0x0e, 0x37, 0xfb, 0x8b, 0x44, 0x8a, 0xac, 0x51, - 0x5a, 0x3d, 0x19, 0x11, 0x2d, 0x8a, 0x05, 0x0b, 0xfb, 0x0f, 0x2a, 0x00, 0xa9, 0xd6, 0x85, 0xbe, - 0xda, 0xbe, 0xe0, 0x3f, 0x5e, 0x54, 0x65, 0x7b, 0x70, 0xab, 0x1d, 0xbd, 0x67, 0xc1, 0xb0, 0xe3, - 0xfb, 0x61, 0xc3, 0x49, 0xd8, 0xf0, 0x94, 0x8a, 0x8a, 0x1e, 0xd1, 0x92, 0x85, 0xb4, 0x2c, 0x6f, - 0xcc, 0x0b, 0xf2, 0xc0, 0x51, 0xc3, 0xe4, 0xb6, 0x47, 0x6f, 0x02, 0xfa, 0x98, 0xd4, 0xda, 0xf9, - 0x17, 0x9e, 0xc9, 0x6a, 0xed, 0x15, 0x26, 0x70, 0x35, 0x85, 0x1d, 0xbd, 0x65, 0xe4, 0x92, 0xe9, - 0x2b, 0x72, 0xfd, 0xd4, 0xd0, 0x43, 0xf2, 0xd2, 0xc8, 0xa0, 0x37, 0xf4, 0x90, 0xea, 0xfe, 0x22, - 0xf7, 0xbb, 0x35, 0x75, 0x38, 0x27, 0x9c, 0x3a, 0x81, 0x71, 0xd7, 0xdc, 0x79, 0x45, 0x58, 0xd8, - 0xf9, 0xfc, 0x1a, 0x32, 0x5b, 0x76, 0xba, 0xd7, 0x66, 0x10, 0x38, 0x5b, 0x05, 0x7a, 0x83, 0x07, - 0xbc, 0xaf, 0x06, 0xeb, 0xa1, 0x08, 0x0d, 0x3b, 0x57, 0xe0, 0x9b, 0xef, 0xc4, 0x09, 0xd9, 0xa2, - 0x65, 0xd2, 0xcd, 0xf5, 0xba, 0xe0, 0x82, 0x15, 0x3f, 0xb4, 0x06, 0x03, 0xec, 0xb6, 0x51, 0x3c, - 0x3d, 0x54, 0xc4, 0x13, 0x67, 0x5e, 0xb2, 0x4d, 0xd7, 0x0f, 0xfb, 0x1b, 0x63, 0xc1, 0x0b, 0x5d, - 0x96, 0xd7, 0xec, 0xe3, 0xd5, 0xe0, 0x66, 0x4c, 0xd8, 0x35, 0xfb, 0xca, 0xe2, 0x47, 0xd2, 0x7b, - 0xf3, 0x1c, 0xde, 0x31, 0x9b, 0x9e, 0x51, 0x92, 0x2a, 0x36, 0xe2, 0xbf, 0x4c, 0xd2, 0x37, 0x0d, - 0x45, 0x1a, 0x6a, 0xa6, 0xf4, 0x4b, 0x07, 0xfb, 0x96, 0xc9, 0x0c, 0x67, 0xb9, 0x1f, 0xeb, 0x96, - 0x3a, 0x13, 0xc0, 0x44, 0x76, 0x51, 0x1e, 0xe9, 0x16, 0xfe, 0x93, 0x3e, 0x18, 0x33, 0x27, 0x07, - 0x9a, 0x87, 0x8a, 0x60, 0xa2, 0x92, 0x76, 0xa9, 0x35, 0x70, 0x4d, 0x22, 0x70, 0x4a, 0xc3, 0xd2, - 0x97, 0xb1, 0xe2, 0x5a, 0x50, 0x50, 0x9a, 0xbe, 0x4c, 0x61, 0xb0, 0x46, 0x45, 0x35, 0xe1, 0x3b, - 0x61, 0x98, 0xa8, 0x9d, 0x40, 0xcd, 0x9b, 0x45, 0x06, 0xc5, 0x02, 0x4b, 0x77, 0x80, 0xbb, 0xf4, - 0x63, 0xfa, 0xa6, 0x57, 0x51, 0xed, 0x00, 0x57, 0x74, 0x24, 0x36, 0x69, 0xe9, 0x8e, 0x16, 0xc6, - 0x6c, 0x22, 0x0a, 0x7d, 0x3b, 0x0d, 0xb2, 0xaa, 0xf3, 0x1b, 0x78, 0x12, 0x8f, 0x3e, 0x07, 0x8f, - 0xa8, 0x0b, 0x73, 0x98, 0x7b, 0x69, 0x65, 0x8d, 0x03, 0x86, 0xc9, 0xfc, 0xc8, 0x52, 0x67, 0x32, - 0xdc, 0xad, 0x3c, 0x7a, 0x15, 0xc6, 0x84, 0xae, 0x2c, 0x39, 0x0e, 0x9a, 0x27, 0xf0, 0x57, 0x0c, - 0x2c, 0xce, 0x50, 0xa3, 0x2a, 0x4c, 0x50, 0x08, 0x53, 0x52, 0x25, 0x07, 0x7e, 0xf1, 0x4f, 0x6d, - 0xf5, 0x57, 0x32, 0x78, 0xdc, 0x56, 0x02, 0x2d, 0xc0, 0x38, 0x57, 0x56, 0xa8, 0x61, 0xc8, 0xbe, - 0x83, 0x88, 0xe7, 0x54, 0x0b, 0xe1, 0x86, 0x89, 0xc6, 0x59, 0x7a, 0x74, 0x11, 0x46, 0x9c, 0xa8, - 0xb1, 0xe9, 0x25, 0xa4, 0x91, 0xb4, 0x22, 0x9e, 0xc4, 0x42, 0x0b, 0x61, 0x58, 0xd0, 0x70, 0xd8, - 0xa0, 0xb4, 0xbf, 0x08, 0x27, 0x3a, 0x04, 0x8f, 0xd3, 0x89, 0xe3, 0x34, 0x3d, 0xd9, 0xa7, 0x4c, - 0xb8, 0xd4, 0x42, 0x6d, 0x55, 0xf6, 0x46, 0xa3, 0xa2, 0xb3, 0x93, 0xb9, 0xa7, 0xb5, 0x9c, 0x9a, - 0x6a, 0x76, 0xae, 0x48, 0x04, 0x4e, 0x69, 0xec, 0x3f, 0xaf, 0x80, 0xe6, 0xbd, 0x29, 0x10, 0x22, - 0x73, 0x11, 0x46, 0x64, 0x9a, 0x58, 0x2d, 0x3d, 0xa3, 0xea, 0xe6, 0x25, 0x0d, 0x87, 0x0d, 0x4a, - 0xda, 0xb6, 0x40, 0xfa, 0xa4, 0xb2, 0xc1, 0x59, 0xca, 0x59, 0x85, 0x53, 0x1a, 0x74, 0x0e, 0x86, - 0x62, 0xe2, 0xaf, 0x5f, 0xf5, 0x82, 0xbb, 0x62, 0x62, 0x2b, 0xc9, 0x5c, 0x17, 0x70, 0xac, 0x28, - 0xd0, 0x22, 0x94, 0x5b, 0x9e, 0x2b, 0xa6, 0xb2, 0x54, 0x1b, 0xca, 0x37, 0x57, 0xab, 0xfb, 0xbb, - 0xb3, 0x4f, 0x74, 0xcb, 0x99, 0x4b, 0xed, 0xf3, 0x78, 0x8e, 0x2e, 0x3f, 0x5a, 0xb8, 0x93, 0x9f, - 0x7e, 0xa0, 0x47, 0x3f, 0xfd, 0x05, 0x00, 0xd1, 0x6b, 0x39, 0x97, 0xcb, 0xe9, 0x57, 0xbb, 0xa4, - 0x30, 0x58, 0xa3, 0xa2, 0x56, 0x7e, 0x23, 0x22, 0x8e, 0x34, 0x84, 0x79, 0x50, 0xf3, 0xd0, 0xe1, - 0xad, 0xfc, 0xa5, 0x2c, 0x33, 0xdc, 0xce, 0x1f, 0x85, 0x30, 0xe9, 0x8a, 0x5b, 0x99, 0x69, 0xa5, - 0x95, 0xde, 0x23, 0xa9, 0x69, 0x85, 0xd5, 0x2c, 0x23, 0xdc, 0xce, 0x1b, 0x7d, 0x01, 0x66, 0x24, - 0xb0, 0xfd, 0x4a, 0x2c, 0x5b, 0x2e, 0xe5, 0xc5, 0xd3, 0x7b, 0xbb, 0xb3, 0x33, 0xd5, 0xae, 0x54, - 0xf8, 0x00, 0x0e, 0xe8, 0x4d, 0x18, 0x60, 0xe7, 0x3a, 0xf1, 0xf4, 0x30, 0xdb, 0xf1, 0x5e, 0x2c, - 0x12, 0x8f, 0x4f, 0x67, 0xfd, 0x1c, 0x3b, 0x1d, 0x12, 0x91, 0xa6, 0xe9, 0x61, 0x19, 0x03, 0x62, - 0xc1, 0x13, 0x35, 0x61, 0xd8, 0x09, 0x82, 0x30, 0x71, 0xb8, 0x22, 0x36, 0x52, 0x44, 0x97, 0xd4, - 0xaa, 0x58, 0x48, 0xcb, 0xf2, 0x7a, 0x54, 0xf0, 0x9a, 0x86, 0xc1, 0x7a, 0x15, 0xe8, 0x1e, 0x8c, - 0x87, 0xf7, 0xa8, 0xc0, 0x94, 0x47, 0x1b, 0xf1, 0xf4, 0xa8, 0xd9, 0xb1, 0x1c, 0x47, 0xad, 0x51, - 0x58, 0x93, 0x64, 0x26, 0x53, 0x9c, 0xad, 0x05, 0xcd, 0x19, 0xee, 0xea, 0xb1, 0x34, 0x9e, 0x3a, - 0x75, 0x57, 0xeb, 0xde, 0x69, 0x76, 0xed, 0x9a, 0xc7, 0x50, 0x32, 0x89, 0x30, 0x9e, 0xb9, 0x76, - 0x9d, 0xa2, 0xb0, 0x4e, 0x37, 0xf3, 0x09, 0x18, 0xd6, 0x06, 0xbe, 0x97, 0xc0, 0xdd, 0x99, 0x57, - 0x61, 0x22, 0x3b, 0xa0, 0x3d, 0x05, 0xfe, 0xfe, 0xef, 0x12, 0x8c, 0x77, 0x38, 0x37, 0xba, 0xeb, - 0xb1, 0xe0, 0x73, 0x43, 0xf4, 0x5d, 0xf1, 0x02, 0x17, 0x33, 0x8c, 0x29, 0xc0, 0x4a, 0x05, 0x04, - 0x98, 0x94, 0xa6, 0xe5, 0xae, 0xd2, 0x54, 0x08, 0xad, 0xbe, 0x0f, 0x22, 0xb4, 0xcc, 0x7d, 0xa2, - 0xbf, 0xd0, 0x3e, 0xf1, 0x00, 0x04, 0x9d, 0xb1, 0xd5, 0x0c, 0x16, 0xd8, 0x6a, 0xbe, 0x55, 0x82, - 0x89, 0x34, 0xc8, 0x59, 0xe4, 0x8e, 0x3e, 0xfa, 0x63, 0x88, 0x35, 0xe3, 0x18, 0x22, 0x2f, 0x35, - 0x74, 0xa6, 0x7d, 0x5d, 0x8f, 0x24, 0xde, 0xcc, 0x1c, 0x49, 0xbc, 0xd8, 0x23, 0xdf, 0x83, 0x8f, - 0x27, 0xbe, 0x57, 0x82, 0x93, 0xd9, 0x22, 0x4b, 0xbe, 0xe3, 0x6d, 0x1d, 0xc3, 0x78, 0x7d, 0xce, - 0x18, 0xaf, 0x97, 0x7b, 0xeb, 0x17, 0x6b, 0x64, 0xd7, 0x41, 0x73, 0x32, 0x83, 0xf6, 0x89, 0xc3, - 0x30, 0x3f, 0x78, 0xe4, 0x7e, 0xdf, 0x82, 0x47, 0x3b, 0x96, 0x3b, 0x06, 0xc7, 0xeb, 0xeb, 0xa6, - 0xe3, 0xf5, 0x85, 0x43, 0xf4, 0xae, 0x8b, 0x27, 0xf6, 0xd7, 0xca, 0x5d, 0x7a, 0xc5, 0x5c, 0x53, - 0x37, 0x60, 0xd8, 0x69, 0x34, 0x48, 0x1c, 0x5f, 0x0b, 0x5d, 0x95, 0xc0, 0xe9, 0x79, 0xb6, 0xb7, - 0xa4, 0xe0, 0xfd, 0xdd, 0xd9, 0x99, 0x2c, 0x8b, 0x14, 0x8d, 0x75, 0x0e, 0x66, 0x6a, 0xb9, 0xd2, - 0x11, 0xa5, 0x96, 0xbb, 0x00, 0xb0, 0xad, 0xac, 0xd8, 0xac, 0xc7, 0x4b, 0xb3, 0x6f, 0x35, 0x2a, - 0xf4, 0x57, 0x99, 0x46, 0xc8, 0x83, 0x34, 0xfa, 0xcc, 0xfb, 0x92, 0x39, 0xdf, 0x4f, 0x0f, 0xf8, - 0xe0, 0xd7, 0x32, 0x95, 0x77, 0x50, 0xb1, 0x44, 0x9f, 0x81, 0x89, 0x98, 0x5f, 0xfe, 0x5f, 0xf2, - 0x9d, 0x98, 0x45, 0xf7, 0x0b, 0x79, 0xca, 0x6e, 0x58, 0xd6, 0x33, 0x38, 0xdc, 0x46, 0x6d, 0x7f, - 0xb7, 0x0c, 0x1f, 0x3e, 0x60, 0xda, 0xa2, 0x05, 0xf3, 0xd4, 0xf6, 0xb9, 0xac, 0xff, 0x67, 0xa6, - 0x63, 0x61, 0xc3, 0x21, 0x94, 0xf9, 0xda, 0xa5, 0x0f, 0xfc, 0xb5, 0xbf, 0xa1, 0x7b, 0xeb, 0x78, - 0xdc, 0xe6, 0xa5, 0x43, 0x2f, 0xcc, 0x9f, 0x56, 0x67, 0xfd, 0x57, 0x2c, 0x78, 0xa2, 0x63, 0xb7, - 0x8c, 0x28, 0x91, 0x79, 0xa8, 0x34, 0x28, 0x50, 0xbb, 0x8b, 0x93, 0x5e, 0x82, 0x93, 0x08, 0x9c, - 0xd2, 0x18, 0xc1, 0x20, 0xa5, 0xdc, 0x60, 0x90, 0xdf, 0xb5, 0x60, 0x2a, 0xdb, 0x88, 0x63, 0x90, - 0x5b, 0x75, 0x53, 0x6e, 0xcd, 0xf5, 0xf6, 0xf1, 0xbb, 0x88, 0xac, 0xf7, 0xc6, 0xe0, 0x54, 0xdb, - 0xae, 0xc7, 0x47, 0xf1, 0xe7, 0x2c, 0x98, 0xdc, 0x60, 0xda, 0xbb, 0x76, 0xe1, 0x49, 0xf4, 0x2b, - 0xe7, 0x96, 0xd8, 0x81, 0xf7, 0xa4, 0xb8, 0x2d, 0xd2, 0x46, 0x82, 0xdb, 0x2b, 0x43, 0x5f, 0xb7, - 0x60, 0xca, 0xb9, 0x17, 0xb7, 0xbd, 0x6c, 0x22, 0x26, 0xd2, 0xab, 0x39, 0xce, 0xb2, 0x9c, 0x37, - 0x51, 0x16, 0xa7, 0xf7, 0x76, 0x67, 0xa7, 0x3a, 0x51, 0xe1, 0x8e, 0xb5, 0xd2, 0xef, 0xbb, 0x29, - 0xae, 0x53, 0x14, 0xbb, 0xba, 0xd7, 0xe9, 0xf2, 0x05, 0x17, 0x6b, 0x12, 0x83, 0x15, 0x47, 0xf4, - 0x36, 0x54, 0x36, 0xe4, 0x1d, 0xa7, 0xac, 0xd8, 0xec, 0x32, 0xcc, 0x9d, 0xae, 0x44, 0xf1, 0xd8, - 0x7d, 0x85, 0xc2, 0x29, 0x53, 0x74, 0x19, 0xca, 0xc1, 0x7a, 0x2c, 0x6e, 0x13, 0xe7, 0xc5, 0x00, - 0x99, 0x91, 0x57, 0xfc, 0x02, 0xe6, 0xf5, 0x95, 0x3a, 0xa6, 0x2c, 0x28, 0xa7, 0xe8, 0x8e, 0x2b, - 0xbc, 0xc4, 0x39, 0x9c, 0xf0, 0x62, 0xb5, 0x9d, 0x13, 0x5e, 0xac, 0x62, 0xca, 0x02, 0xd5, 0xa0, - 0x9f, 0x5d, 0xd6, 0x10, 0x2e, 0xe0, 0x9c, 0x2b, 0xe7, 0x6d, 0x57, 0x52, 0x78, 0x06, 0x44, 0x06, - 0xc6, 0x9c, 0x11, 0x5a, 0x83, 0x81, 0x06, 0x4b, 0xe2, 0x2f, 0x6c, 0xf3, 0xbc, 0x64, 0x0c, 0x6d, - 0x09, 0xff, 0xf9, 0xb9, 0x17, 0x87, 0x63, 0xc1, 0x8b, 0x71, 0x25, 0xcd, 0xcd, 0xf5, 0x58, 0x18, - 0xdf, 0x79, 0x5c, 0xdb, 0x9e, 0x63, 0x10, 0x5c, 0x19, 0x1c, 0x0b, 0x5e, 0xa8, 0x0a, 0xa5, 0xf5, - 0x86, 0x48, 0xa4, 0x9a, 0xe3, 0xfa, 0x35, 0x6f, 0xd3, 0x2e, 0x0e, 0xec, 0xed, 0xce, 0x96, 0x56, - 0x96, 0x70, 0x69, 0xbd, 0x81, 0x5e, 0x87, 0xc1, 0x75, 0x7e, 0x3f, 0x52, 0x24, 0x4d, 0x3d, 0x9f, - 0x77, 0x89, 0xb3, 0xed, 0x32, 0x25, 0xbf, 0x9f, 0x21, 0x10, 0x58, 0xb2, 0x63, 0xf9, 0xe4, 0xd4, - 0x8d, 0x4f, 0x91, 0x35, 0x75, 0xae, 0xb7, 0x1b, 0xa2, 0xc2, 0x26, 0x55, 0x50, 0xac, 0x71, 0xa4, - 0x73, 0xde, 0x91, 0xef, 0x91, 0xb0, 0x8c, 0xa9, 0xb9, 0x73, 0xbe, 0xe3, 0xf3, 0x25, 0x7c, 0xce, - 0x2b, 0x14, 0x4e, 0x99, 0xa2, 0x16, 0x8c, 0x6e, 0xc7, 0xcd, 0x4d, 0x22, 0x97, 0x3e, 0x4b, 0xa3, - 0x3a, 0x7c, 0xe1, 0x53, 0x39, 0xb9, 0x71, 0x45, 0x11, 0x2f, 0x4a, 0x5a, 0x8e, 0xdf, 0x26, 0xc1, - 0x58, 0x02, 0xaf, 0x5b, 0x3a, 0x5b, 0x6c, 0xd6, 0x42, 0x3f, 0xc9, 0xbb, 0xad, 0xf0, 0xce, 0x4e, - 0x42, 0x44, 0x9a, 0xd5, 0x9c, 0x4f, 0xf2, 0x1a, 0x27, 0x6e, 0xff, 0x24, 0x02, 0x81, 0x25, 0x3b, - 0x35, 0x64, 0x4c, 0x1a, 0x4f, 0x14, 0x1e, 0xb2, 0xb6, 0x3e, 0xa4, 0x43, 0xc6, 0xa4, 0x6f, 0xca, - 0x94, 0x49, 0xdd, 0xe6, 0x66, 0x98, 0x84, 0x41, 0x46, 0xf6, 0x4f, 0x16, 0x91, 0xba, 0xb5, 0x0e, - 0x25, 0xdb, 0xa5, 0x6e, 0x27, 0x2a, 0xdc, 0xb1, 0x56, 0x14, 0xc0, 0x58, 0x33, 0x8c, 0x92, 0x7b, - 0x61, 0x24, 0xe7, 0x21, 0x2a, 0x64, 0x23, 0x1a, 0x65, 0x44, 0xdd, 0x2c, 0x0c, 0xd7, 0xc4, 0xe0, - 0x0c, 0x77, 0xfb, 0x57, 0x07, 0xda, 0xb7, 0x77, 0xa6, 0xc0, 0xff, 0xed, 0xf6, 0xf3, 0xd2, 0xcf, - 0xf4, 0x6e, 0xa7, 0x3e, 0xc0, 0x93, 0xd3, 0xaf, 0x5b, 0x70, 0xaa, 0xd9, 0x71, 0xf3, 0x16, 0x1b, - 0x64, 0xaf, 0xe6, 0x2e, 0x1f, 0x24, 0x95, 0xb3, 0xb8, 0x33, 0x1e, 0x77, 0xa9, 0x33, 0xab, 0xf2, - 0x96, 0x3f, 0xb0, 0xca, 0x7b, 0x1b, 0x86, 0x98, 0x8e, 0x96, 0x66, 0x24, 0xe9, 0x31, 0x79, 0x07, - 0xdb, 0x6a, 0x97, 0x04, 0x0b, 0xac, 0x98, 0xd1, 0x81, 0x7b, 0x3c, 0xdb, 0x09, 0x4c, 0x18, 0x5a, - 0x64, 0xca, 0xe3, 0xf6, 0xc4, 0x8a, 0x18, 0x89, 0xc7, 0x6b, 0x07, 0x11, 0xef, 0xe7, 0x11, 0xe0, - 0x83, 0x2b, 0x43, 0xd5, 0x0e, 0x06, 0xcd, 0x80, 0x79, 0x38, 0x92, 0x6f, 0xd4, 0x1c, 0xaf, 0x22, - 0xfe, 0x4f, 0xac, 0x0e, 0x7a, 0x23, 0x37, 0x9e, 0x3e, 0x65, 0x1a, 0x4f, 0x4f, 0x67, 0x8d, 0xa7, - 0x36, 0x97, 0x89, 0x61, 0x37, 0x15, 0xcf, 0xf4, 0x59, 0x34, 0xe5, 0x8a, 0xed, 0xc3, 0x99, 0x3c, - 0xa1, 0xc4, 0x02, 0xa6, 0x5c, 0x75, 0x54, 0x98, 0x06, 0x4c, 0xb9, 0xab, 0x55, 0xcc, 0x30, 0x45, - 0x6f, 0xed, 0xdb, 0x3f, 0x5f, 0x82, 0x72, 0x2d, 0x74, 0x8f, 0xc1, 0x05, 0x74, 0xc9, 0x70, 0x01, - 0x3d, 0x95, 0xfb, 0x8a, 0x5c, 0x57, 0x87, 0xcf, 0x8d, 0x8c, 0xc3, 0xe7, 0xa3, 0xf9, 0xac, 0x0e, - 0x76, 0xef, 0x7c, 0xbf, 0x0c, 0xfa, 0x3b, 0x78, 0xe8, 0xbf, 0x1c, 0x26, 0x8e, 0xb6, 0x5c, 0xec, - 0x69, 0x3c, 0x51, 0x07, 0x8b, 0xb7, 0x92, 0xb7, 0xef, 0x7e, 0x6a, 0xc3, 0x69, 0x6f, 0x13, 0x6f, - 0x63, 0x33, 0x21, 0x6e, 0xb6, 0x63, 0xc7, 0x17, 0x4e, 0xfb, 0x67, 0x16, 0x8c, 0x67, 0x6a, 0x47, - 0x7e, 0xa7, 0x6b, 0x3b, 0x87, 0x74, 0xea, 0x4c, 0xe6, 0xde, 0xf3, 0x99, 0x03, 0x50, 0xbe, 0x79, - 0xe9, 0x38, 0x61, 0x3a, 0xa4, 0x72, 0xde, 0xc7, 0x58, 0xa3, 0x40, 0x2f, 0xc1, 0x70, 0x12, 0x36, - 0x43, 0x3f, 0xdc, 0xd8, 0xb9, 0x42, 0x64, 0x3e, 0x09, 0x75, 0xae, 0xb1, 0x96, 0xa2, 0xb0, 0x4e, - 0x67, 0xff, 0xa0, 0x0c, 0xd9, 0x57, 0x14, 0xff, 0x72, 0x9e, 0xfe, 0xf4, 0xcc, 0xd3, 0x3f, 0xb4, - 0x60, 0x82, 0xd6, 0xce, 0x02, 0x5c, 0x64, 0xd8, 0xab, 0x7a, 0x76, 0xc0, 0x3a, 0xe0, 0xd9, 0x81, - 0xa7, 0xa9, 0xb4, 0x73, 0xc3, 0x56, 0x22, 0x5c, 0x3d, 0x9a, 0x10, 0xa3, 0x50, 0x2c, 0xb0, 0x82, - 0x8e, 0x44, 0x91, 0xb8, 0x1f, 0xa4, 0xd3, 0x91, 0x28, 0xc2, 0x02, 0x2b, 0x5f, 0x25, 0xe8, 0xeb, - 0xf2, 0x2a, 0x01, 0xcb, 0xc8, 0x24, 0x82, 0x2a, 0x84, 0x5a, 0xa1, 0x65, 0x64, 0x92, 0xd1, 0x16, - 0x29, 0x8d, 0xfd, 0x9d, 0x32, 0x8c, 0xd4, 0x42, 0x37, 0x8d, 0x67, 0x7f, 0xd1, 0x88, 0x67, 0x3f, - 0x93, 0x89, 0x67, 0x9f, 0xd0, 0x69, 0x1f, 0x4c, 0x38, 0xbb, 0xc8, 0xdc, 0xc5, 0xde, 0xcd, 0x38, - 0x64, 0x28, 0xbb, 0x91, 0xb9, 0x4b, 0x31, 0xc2, 0x26, 0xdf, 0x9f, 0xa5, 0x10, 0xf6, 0xff, 0x6b, - 0xc1, 0x58, 0x2d, 0x74, 0xe9, 0x04, 0xfd, 0x59, 0x9a, 0x8d, 0x7a, 0xbe, 0xaf, 0x81, 0x03, 0xf2, - 0x7d, 0xfd, 0x2b, 0x0b, 0x06, 0x6b, 0xa1, 0x7b, 0x0c, 0x6e, 0xd0, 0x15, 0xd3, 0x0d, 0xfa, 0x44, - 0xae, 0xe4, 0xed, 0xe2, 0xf9, 0xfc, 0x6e, 0x19, 0x46, 0x69, 0x8b, 0xc3, 0x0d, 0xf9, 0xbd, 0x8c, - 0xb1, 0xb1, 0x0a, 0x8c, 0x0d, 0x55, 0x09, 0x43, 0xdf, 0x0f, 0xef, 0x65, 0xbf, 0xdd, 0x0a, 0x83, - 0x62, 0x81, 0x45, 0xe7, 0x60, 0xa8, 0x19, 0x91, 0x6d, 0x2f, 0x6c, 0xc5, 0xd9, 0xbb, 0x86, 0x35, - 0x01, 0xc7, 0x8a, 0x02, 0xbd, 0x08, 0x23, 0xb1, 0x17, 0x34, 0x88, 0x0c, 0xb9, 0xe8, 0x63, 0x21, - 0x17, 0x3c, 0xb5, 0xa2, 0x06, 0xc7, 0x06, 0x15, 0xba, 0x0d, 0x15, 0xf6, 0x9f, 0xad, 0xa0, 0xde, - 0x9f, 0x15, 0xe0, 0xf9, 0xc4, 0x24, 0x03, 0x9c, 0xf2, 0x42, 0x17, 0x00, 0x12, 0x19, 0x1c, 0x12, - 0x8b, 0xac, 0x28, 0x4a, 0x2f, 0x55, 0x61, 0x23, 0x31, 0xd6, 0xa8, 0xd0, 0x73, 0x50, 0x49, 0x1c, - 0xcf, 0xbf, 0xea, 0x05, 0x24, 0x16, 0xc1, 0x35, 0x22, 0x4d, 0xb2, 0x00, 0xe2, 0x14, 0x4f, 0xf7, - 0x7b, 0x76, 0xd3, 0x99, 0x3f, 0x59, 0x32, 0xc4, 0xa8, 0xd9, 0x7e, 0x7f, 0x55, 0x41, 0xb1, 0x46, - 0x61, 0x5f, 0x84, 0x93, 0xb5, 0xd0, 0xa5, 0x46, 0xfc, 0x4a, 0x18, 0xdd, 0x73, 0x22, 0x57, 0x7e, - 0xbf, 0x59, 0x99, 0x9d, 0x97, 0xee, 0xc9, 0xfd, 0xdc, 0x33, 0x68, 0x64, 0xdb, 0x7d, 0x81, 0xed, - 0xf8, 0x3d, 0x5e, 0x94, 0xf8, 0x71, 0x09, 0x50, 0x8d, 0x85, 0xaf, 0x18, 0x2f, 0xdc, 0x6c, 0xc2, - 0x58, 0x4c, 0xae, 0x7a, 0x41, 0xeb, 0xbe, 0x60, 0x55, 0xec, 0x66, 0x4a, 0x7d, 0x59, 0x2f, 0xc3, - 0xfd, 0x11, 0x26, 0x0c, 0x67, 0xf8, 0xd2, 0xc1, 0x8c, 0x5a, 0xc1, 0x42, 0x7c, 0x33, 0x26, 0x91, - 0x78, 0xd1, 0x85, 0x0d, 0x26, 0x96, 0x40, 0x9c, 0xe2, 0xe9, 0xe4, 0x61, 0x7f, 0xae, 0x87, 0x01, - 0x0e, 0xc3, 0x44, 0x4e, 0x37, 0x96, 0xe1, 0x5f, 0x83, 0x63, 0x83, 0x0a, 0xad, 0x00, 0x8a, 0x5b, - 0xcd, 0xa6, 0xcf, 0x4e, 0x04, 0x1d, 0xff, 0x52, 0x14, 0xb6, 0x9a, 0x3c, 0x8a, 0x59, 0x24, 0xc7, - 0xaf, 0xb7, 0x61, 0x71, 0x87, 0x12, 0x54, 0x58, 0xac, 0xc7, 0xec, 0xb7, 0xb8, 0xf6, 0xcc, 0xbd, - 0x8a, 0x75, 0x06, 0xc2, 0x12, 0x67, 0x7f, 0x99, 0x6d, 0x70, 0xec, 0xa9, 0x8d, 0xa4, 0x15, 0x11, - 0xb4, 0x05, 0xa3, 0x4d, 0xb6, 0x89, 0x25, 0x51, 0xe8, 0xfb, 0x44, 0xea, 0x97, 0x87, 0x0b, 0xa0, - 0xe1, 0xc9, 0xf5, 0x75, 0x76, 0xd8, 0xe4, 0x6e, 0xff, 0xe2, 0x18, 0x93, 0x55, 0xe2, 0x50, 0x76, - 0x50, 0x84, 0xca, 0x0a, 0x4d, 0xee, 0x23, 0x45, 0x1e, 0xcd, 0x4a, 0xf7, 0x01, 0x11, 0x78, 0x8b, - 0x25, 0x17, 0xf4, 0x79, 0x16, 0x08, 0xce, 0x05, 0x44, 0xf1, 0xa7, 0x00, 0x39, 0xbd, 0x11, 0x04, - 0x2e, 0x58, 0x60, 0x8d, 0x1d, 0xba, 0x0a, 0xa3, 0xe2, 0x65, 0x06, 0xe1, 0xa6, 0x28, 0x1b, 0x26, - 0xf6, 0x28, 0xd6, 0x91, 0xfb, 0x59, 0x00, 0x36, 0x0b, 0xa3, 0x0d, 0x78, 0x5c, 0x7b, 0x79, 0xa8, - 0x43, 0xb0, 0x17, 0x97, 0x3c, 0x4f, 0xec, 0xed, 0xce, 0x3e, 0xbe, 0x76, 0x10, 0x21, 0x3e, 0x98, - 0x0f, 0xba, 0x01, 0x27, 0x9d, 0x46, 0xe2, 0x6d, 0x93, 0x2a, 0x71, 0x5c, 0xdf, 0x0b, 0x88, 0x79, - 0x37, 0xfe, 0xd1, 0xbd, 0xdd, 0xd9, 0x93, 0x0b, 0x9d, 0x08, 0x70, 0xe7, 0x72, 0xe8, 0x53, 0x50, - 0x71, 0x83, 0x58, 0x8c, 0xc1, 0x80, 0xf1, 0xd0, 0x56, 0xa5, 0x7a, 0xbd, 0xae, 0xfa, 0x9f, 0xfe, - 0xc1, 0x69, 0x01, 0xf4, 0x2e, 0x7f, 0x48, 0x5e, 0x59, 0x33, 0xfc, 0x81, 0xb7, 0x97, 0x0b, 0xd9, - 0xcf, 0xc6, 0x8d, 0x15, 0xee, 0xc1, 0x53, 0x41, 0x95, 0xc6, 0x65, 0x16, 0xa3, 0x0a, 0xf4, 0x59, - 0x40, 0x31, 0x89, 0xb6, 0xbd, 0x06, 0x59, 0x68, 0xb0, 0x7c, 0xa4, 0xcc, 0xc7, 0x33, 0x64, 0xdc, - 0x2e, 0x40, 0xf5, 0x36, 0x0a, 0xdc, 0xa1, 0x14, 0xba, 0x4c, 0x25, 0x8f, 0x0e, 0x15, 0x31, 0xb0, - 0x52, 0x31, 0x9c, 0xae, 0x92, 0x66, 0x44, 0x1a, 0x4e, 0x42, 0x5c, 0x93, 0x23, 0xce, 0x94, 0xa3, - 0xfb, 0x92, 0x4a, 0x39, 0x0f, 0x66, 0xe4, 0x66, 0x7b, 0xda, 0x79, 0x6a, 0x67, 0x6d, 0x86, 0x71, - 0x72, 0x9d, 0x24, 0xf7, 0xc2, 0xe8, 0x2e, 0x3b, 0x69, 0x18, 0xd2, 0x92, 0xbb, 0xa5, 0x28, 0xac, - 0xd3, 0x51, 0x1d, 0x8a, 0x1d, 0x71, 0xad, 0x56, 0xd9, 0xf9, 0xc1, 0x50, 0xba, 0x76, 0x2e, 0x73, - 0x30, 0x96, 0x78, 0x49, 0xba, 0x5a, 0x5b, 0x62, 0x67, 0x01, 0x19, 0xd2, 0xd5, 0xda, 0x12, 0x96, - 0x78, 0x14, 0xb6, 0x3f, 0x67, 0x36, 0x56, 0xe4, 0x5c, 0xa6, 0x5d, 0x92, 0x17, 0x7c, 0xd1, 0xec, - 0x3e, 0x4c, 0xa8, 0x27, 0xd5, 0x78, 0xde, 0xcd, 0x78, 0x7a, 0xbc, 0xc8, 0x33, 0xf6, 0x1d, 0xd3, - 0x77, 0x2a, 0xbf, 0xde, 0x6a, 0x86, 0x27, 0x6e, 0xab, 0xc5, 0xc8, 0xf1, 0x30, 0x91, 0xfb, 0x8c, - 0xc0, 0x3c, 0x54, 0xe2, 0xd6, 0x1d, 0x37, 0xdc, 0x72, 0xbc, 0x80, 0x39, 0xec, 0xf5, 0x47, 0xd9, - 0x25, 0x02, 0xa7, 0x34, 0xa8, 0x06, 0x43, 0x8e, 0x30, 0xe1, 0x84, 0x63, 0x3d, 0xe7, 0x0e, 0xb8, - 0x34, 0xf8, 0xb8, 0x77, 0x55, 0xfe, 0xc3, 0x8a, 0x0b, 0x7a, 0x05, 0x46, 0xc5, 0x15, 0x26, 0x11, - 0x6a, 0x78, 0xc2, 0x0c, 0x77, 0xaf, 0xeb, 0x48, 0x6c, 0xd2, 0xa2, 0x0d, 0x18, 0xa3, 0x5c, 0x52, - 0x01, 0x38, 0x3d, 0xd5, 0x9b, 0x0c, 0xd5, 0x12, 0x36, 0xeb, 0x6c, 0x70, 0x86, 0x2d, 0x72, 0xe1, - 0x31, 0xa7, 0x95, 0x84, 0x5b, 0x74, 0x25, 0x98, 0xeb, 0x64, 0x2d, 0xbc, 0x4b, 0x82, 0xe9, 0x93, - 0x6c, 0x06, 0x9e, 0xd9, 0xdb, 0x9d, 0x7d, 0x6c, 0xe1, 0x00, 0x3a, 0x7c, 0x20, 0x17, 0xf4, 0x16, - 0x0c, 0x27, 0xa1, 0x2f, 0x22, 0x88, 0xe3, 0xe9, 0x53, 0x45, 0x32, 0xcf, 0xac, 0xa9, 0x02, 0xba, - 0x1b, 0x43, 0x31, 0xc1, 0x3a, 0xc7, 0x99, 0x4f, 0xc3, 0x64, 0x9b, 0x48, 0xea, 0x29, 0xc8, 0xf2, - 0xbf, 0xf6, 0x43, 0x45, 0x79, 0xf4, 0xd0, 0xbc, 0xe9, 0xbc, 0x7d, 0x34, 0xeb, 0xbc, 0x1d, 0xa2, - 0x0a, 0x94, 0xee, 0xaf, 0xfd, 0x42, 0x87, 0x47, 0xb4, 0x9f, 0xcd, 0x5d, 0x83, 0xc5, 0xef, 0x3d, - 0xf5, 0xf0, 0xd4, 0x78, 0x6a, 0xd5, 0xf5, 0x1d, 0x68, 0xd5, 0x15, 0x7c, 0x18, 0x8e, 0xda, 0x6f, - 0xcd, 0xd0, 0x5d, 0xad, 0x65, 0xdf, 0x3d, 0xaa, 0x51, 0x20, 0xe6, 0x38, 0xa6, 0x77, 0xd3, 0x3d, - 0x95, 0xe9, 0xdd, 0x83, 0x87, 0xd4, 0xbb, 0x25, 0x03, 0x9c, 0xf2, 0x42, 0xdb, 0x30, 0xd9, 0x30, - 0x9f, 0xb1, 0x52, 0xb7, 0x99, 0x9e, 0xef, 0xe1, 0x19, 0xa9, 0x96, 0xf6, 0xc6, 0xc5, 0x52, 0x96, - 0x1f, 0x6e, 0xaf, 0x02, 0xbd, 0x02, 0x43, 0xef, 0x86, 0x31, 0x3b, 0x56, 0x10, 0x1b, 0x8b, 0xbc, - 0x35, 0x32, 0xf4, 0xda, 0x8d, 0x3a, 0x83, 0xef, 0xef, 0xce, 0x0e, 0xd7, 0x42, 0x57, 0xfe, 0xc5, - 0xaa, 0x00, 0xfa, 0x8a, 0x05, 0x27, 0x8d, 0x75, 0xa6, 0x5a, 0x0e, 0x87, 0x69, 0xf9, 0xe3, 0xa2, - 0xe6, 0x93, 0xab, 0x9d, 0x78, 0xe2, 0xce, 0x55, 0xd9, 0xbf, 0xcd, 0x5d, 0x98, 0xc2, 0xa9, 0x41, - 0xe2, 0x96, 0x7f, 0x1c, 0xf9, 0xe6, 0x6f, 0x18, 0xfe, 0x96, 0x07, 0xe0, 0x44, 0xff, 0xcf, 0x16, - 0x73, 0xa2, 0xaf, 0x91, 0xad, 0xa6, 0xef, 0x24, 0xc7, 0x11, 0x83, 0xfb, 0x79, 0x18, 0x4a, 0x44, - 0x6d, 0xc5, 0x92, 0xe5, 0x6b, 0xcd, 0x63, 0x87, 0x0b, 0x6a, 0x63, 0x92, 0x50, 0xac, 0x18, 0xda, - 0xff, 0x9e, 0x7f, 0x15, 0x89, 0x39, 0x06, 0x4f, 0xc1, 0x75, 0xd3, 0x53, 0xf0, 0x4c, 0xe1, 0xbe, - 0x74, 0xf1, 0x18, 0xfc, 0xc0, 0xec, 0x01, 0xb3, 0x1f, 0x7e, 0x7a, 0x4e, 0x79, 0xec, 0x5f, 0xb1, - 0x60, 0xaa, 0xd3, 0xa1, 0x38, 0x55, 0x30, 0xb8, 0xf5, 0xa2, 0xce, 0xbf, 0xd4, 0xa8, 0xde, 0x12, - 0x70, 0xac, 0x28, 0x0a, 0x67, 0xaf, 0xee, 0x2d, 0xc1, 0xd2, 0x0d, 0x30, 0x1f, 0x44, 0x43, 0xaf, - 0xf2, 0x90, 0x7b, 0x4b, 0xbd, 0x58, 0xd6, 0x5b, 0xb8, 0xbd, 0xfd, 0xeb, 0x25, 0x98, 0xe2, 0x4e, - 0xe8, 0x85, 0xed, 0xd0, 0x73, 0x6b, 0xa1, 0x2b, 0x2e, 0x20, 0xb8, 0x30, 0xd2, 0xd4, 0x8c, 0xcf, - 0x62, 0x09, 0x5b, 0x74, 0x73, 0x35, 0x55, 0xf8, 0x75, 0x28, 0x36, 0xb8, 0xd2, 0x5a, 0xc8, 0xb6, - 0xd7, 0x50, 0x3e, 0xcd, 0x52, 0xcf, 0x3b, 0x83, 0xaa, 0x65, 0x59, 0xe3, 0x83, 0x0d, 0xae, 0x47, - 0xf0, 0xe8, 0x84, 0xfd, 0x8f, 0x2c, 0x78, 0xa4, 0x4b, 0x52, 0x17, 0x5a, 0xdd, 0x3d, 0xe6, 0xf8, - 0x17, 0x2f, 0xee, 0xa9, 0xea, 0xf8, 0x71, 0x00, 0x16, 0x58, 0x74, 0x07, 0x80, 0xbb, 0xf3, 0xd9, - 0xfb, 0xeb, 0xa5, 0x22, 0x51, 0x43, 0x6d, 0xa9, 0x13, 0xb4, 0x5b, 0xf5, 0xea, 0xc5, 0x75, 0x8d, - 0xab, 0xfd, 0xed, 0x32, 0xf4, 0xf3, 0x87, 0x9d, 0x6b, 0x30, 0xb8, 0xc9, 0x93, 0xcc, 0xf6, 0x96, - 0xe3, 0x36, 0x35, 0x2e, 0x38, 0x00, 0x4b, 0x36, 0xe8, 0x1a, 0x9c, 0xa0, 0x3b, 0x8b, 0xe7, 0xf8, - 0x55, 0xe2, 0x3b, 0x3b, 0xd2, 0x5a, 0xe5, 0x2f, 0x11, 0xc8, 0x94, 0xd9, 0x27, 0x56, 0xdb, 0x49, - 0x70, 0xa7, 0x72, 0xe8, 0xd5, 0xb6, 0x9c, 0x70, 0x3c, 0x79, 0xaf, 0xd2, 0x54, 0x0f, 0xce, 0x0b, - 0x47, 0xf5, 0xe9, 0x66, 0x9b, 0x5d, 0xae, 0xbd, 0x9f, 0x6b, 0xda, 0xe2, 0x26, 0x2d, 0x8b, 0x2d, - 0x68, 0xb1, 0x98, 0x8a, 0xb5, 0xcd, 0x88, 0xc4, 0x9b, 0xa1, 0xef, 0x8a, 0xa7, 0x1f, 0xd3, 0xd8, - 0x82, 0x0c, 0x1e, 0xb7, 0x95, 0xa0, 0x5c, 0xd6, 0x1d, 0xcf, 0x6f, 0x45, 0x24, 0xe5, 0x32, 0x60, - 0x72, 0x59, 0xc9, 0xe0, 0x71, 0x5b, 0x09, 0x3a, 0xb7, 0x4e, 0x8a, 0xd7, 0x02, 0xe5, 0x15, 0x66, - 0x21, 0x82, 0x3e, 0x07, 0x83, 0x32, 0x90, 0xbd, 0x50, 0xa6, 0x0d, 0x11, 0x38, 0xa0, 0x5e, 0x1e, - 0xd4, 0x5e, 0xa6, 0x12, 0x21, 0xec, 0x92, 0xdf, 0x61, 0x5e, 0xa5, 0xfb, 0x53, 0x0b, 0x4e, 0x74, - 0x08, 0xc8, 0xe2, 0x22, 0x6d, 0xc3, 0x8b, 0x13, 0x95, 0x17, 0x5f, 0x13, 0x69, 0x1c, 0x8e, 0x15, - 0x05, 0x5d, 0x2d, 0x5c, 0x68, 0x66, 0x05, 0xa5, 0x08, 0x01, 0x11, 0xd8, 0xde, 0x04, 0x25, 0x3a, - 0x03, 0x7d, 0xad, 0x98, 0x44, 0xf2, 0x89, 0x38, 0x29, 0xe7, 0x99, 0x1f, 0x90, 0x61, 0xa8, 0xda, - 0xba, 0xa1, 0x5c, 0x70, 0x9a, 0xda, 0xca, 0x9d, 0x70, 0x1c, 0x67, 0x7f, 0xa3, 0x0c, 0xe3, 0x99, - 0xc0, 0x4c, 0xda, 0x90, 0xad, 0x30, 0xf0, 0x92, 0x50, 0x65, 0x3f, 0xe3, 0xaf, 0x52, 0x91, 0xe6, - 0xe6, 0x35, 0x01, 0xc7, 0x8a, 0x02, 0x3d, 0x2d, 0x5f, 0x05, 0xcd, 0xe6, 0xfb, 0x5f, 0xac, 0x1a, - 0x0f, 0x83, 0x16, 0x7d, 0xab, 0xe3, 0x49, 0xe8, 0x6b, 0x86, 0xea, 0x91, 0x67, 0xf5, 0x3d, 0xf1, - 0x62, 0xb5, 0x16, 0x86, 0x3e, 0x66, 0x48, 0xf4, 0x94, 0xe8, 0x7d, 0xe6, 0xe4, 0x02, 0x3b, 0x6e, - 0x18, 0x6b, 0x43, 0xf0, 0x0c, 0x0c, 0xde, 0x25, 0x3b, 0x91, 0x17, 0x6c, 0x64, 0xcf, 0x6d, 0xae, - 0x70, 0x30, 0x96, 0x78, 0xf3, 0x3d, 0x8e, 0xc1, 0x23, 0x7e, 0x8f, 0x63, 0x28, 0x77, 0x1f, 0xfc, - 0xae, 0x05, 0xe3, 0x2c, 0x25, 0xa8, 0xb8, 0x40, 0xef, 0x85, 0xc1, 0x31, 0xe8, 0x18, 0x4f, 0x42, - 0x7f, 0x44, 0x2b, 0xcd, 0x26, 0xd4, 0x67, 0x2d, 0xc1, 0x1c, 0x87, 0x1e, 0x83, 0x3e, 0xd6, 0x04, - 0xfa, 0x19, 0x47, 0x78, 0xe6, 0xf1, 0xaa, 0x93, 0x38, 0x98, 0x41, 0xd9, 0x5d, 0x28, 0x4c, 0x9a, - 0xbe, 0xc7, 0x1b, 0x9d, 0xba, 0x5b, 0x1f, 0xb6, 0xbb, 0x50, 0x1d, 0x1b, 0xf9, 0xa0, 0xee, 0x42, - 0x75, 0x66, 0x7e, 0xb0, 0x9e, 0xff, 0xbf, 0x4a, 0x70, 0xba, 0x63, 0xb9, 0xf4, 0x04, 0x78, 0xc5, - 0x38, 0x01, 0xbe, 0x90, 0x39, 0x01, 0xb6, 0x0f, 0x2e, 0xfd, 0x60, 0xce, 0x84, 0x3b, 0x1f, 0xd5, - 0x96, 0x8f, 0xf1, 0xa8, 0xb6, 0xaf, 0xa8, 0x8a, 0xd3, 0x9f, 0xa3, 0xe2, 0xfc, 0xbe, 0x05, 0x8f, - 0x76, 0x1c, 0xb2, 0x87, 0xee, 0xf2, 0x59, 0xc7, 0x56, 0x76, 0xb1, 0x4e, 0x7e, 0xb9, 0xdc, 0xa5, - 0x57, 0xcc, 0x4e, 0x39, 0x4b, 0xa5, 0x10, 0x43, 0xc6, 0x42, 0x79, 0x1b, 0xe1, 0x12, 0x88, 0xc3, - 0xb0, 0xc2, 0xa2, 0x58, 0xbb, 0xbc, 0xc5, 0x1b, 0xb9, 0x7c, 0xc8, 0x05, 0x35, 0x67, 0xfa, 0xc9, - 0xf5, 0xac, 0x00, 0xd9, 0x2b, 0x5d, 0xb7, 0x35, 0xcb, 0xb3, 0x7c, 0x18, 0xcb, 0x73, 0xa4, 0xb3, - 0xd5, 0x89, 0x16, 0x60, 0x7c, 0xcb, 0x0b, 0xd8, 0x33, 0x9e, 0xa6, 0xf6, 0xa4, 0x6e, 0xd0, 0x5e, - 0x33, 0xd1, 0x38, 0x4b, 0x3f, 0xf3, 0x0a, 0x8c, 0x1e, 0xde, 0xbb, 0xf6, 0x7e, 0x19, 0x3e, 0x7c, - 0x80, 0x50, 0xe0, 0xbb, 0x83, 0xf1, 0x5d, 0xb4, 0xdd, 0xa1, 0xed, 0xdb, 0xd4, 0x60, 0x6a, 0xbd, - 0xe5, 0xfb, 0x3b, 0x2c, 0x7e, 0x8a, 0xb8, 0x92, 0x42, 0x28, 0x35, 0xea, 0xbd, 0xf0, 0x95, 0x0e, - 0x34, 0xb8, 0x63, 0x49, 0xf4, 0x59, 0x40, 0xe1, 0x1d, 0x96, 0x34, 0xd7, 0x4d, 0xb3, 0x1e, 0xb0, - 0x4f, 0x50, 0x4e, 0x97, 0xea, 0x8d, 0x36, 0x0a, 0xdc, 0xa1, 0x14, 0xd5, 0x53, 0xd9, 0x53, 0xe3, - 0xaa, 0x59, 0x19, 0x3d, 0x15, 0xeb, 0x48, 0x6c, 0xd2, 0xa2, 0x4b, 0x30, 0xe9, 0x6c, 0x3b, 0x1e, - 0x4f, 0x82, 0x25, 0x19, 0x70, 0x45, 0x55, 0xf9, 0xaf, 0x16, 0xb2, 0x04, 0xb8, 0xbd, 0x0c, 0x6a, - 0x1a, 0x0e, 0x49, 0x9e, 0x2e, 0xff, 0x53, 0x87, 0x98, 0xc1, 0x85, 0x5d, 0x94, 0xf6, 0xff, 0xb0, - 0xe8, 0xd6, 0xd7, 0xe1, 0xc5, 0x47, 0x3a, 0x22, 0xca, 0xc1, 0xa6, 0x5d, 0x46, 0x53, 0x23, 0xb2, - 0xa4, 0x23, 0xb1, 0x49, 0xcb, 0xa7, 0x46, 0x9c, 0x86, 0x73, 0x1b, 0xda, 0xa6, 0xb8, 0xc7, 0xa9, - 0x28, 0xa8, 0x06, 0xed, 0x7a, 0xdb, 0x5e, 0x1c, 0x46, 0x62, 0x01, 0xf5, 0x18, 0xdc, 0x9b, 0xca, - 0xcb, 0x2a, 0x67, 0x83, 0x25, 0x3f, 0xfb, 0x9b, 0x25, 0x18, 0x95, 0x35, 0xbe, 0xd6, 0x0a, 0x13, - 0xe7, 0x18, 0xb6, 0xf4, 0xd7, 0x8c, 0x2d, 0x7d, 0xbe, 0xd8, 0xb5, 0x56, 0xd6, 0xb8, 0xae, 0x5b, - 0xf9, 0xe7, 0x32, 0x5b, 0xf9, 0xf9, 0x5e, 0x98, 0x1e, 0xbc, 0x85, 0xff, 0x47, 0x0b, 0x26, 0x0d, - 0xfa, 0x63, 0xd8, 0x49, 0x6a, 0xe6, 0x4e, 0xf2, 0x5c, 0x0f, 0xbd, 0xe9, 0xb2, 0x83, 0x7c, 0xa7, - 0x94, 0xe9, 0x05, 0xdb, 0x39, 0xbe, 0x04, 0x7d, 0x9b, 0x4e, 0xe4, 0x16, 0xcb, 0x08, 0xd9, 0x56, - 0x7c, 0xee, 0xb2, 0x13, 0xb9, 0x5c, 0xfe, 0x9f, 0x53, 0xef, 0x51, 0x39, 0x91, 0x9b, 0x7b, 0xcb, - 0x81, 0x55, 0x8a, 0x2e, 0xc2, 0x40, 0xdc, 0x08, 0x9b, 0x2a, 0x0e, 0xf4, 0x0c, 0x7f, 0xab, 0x8a, - 0x42, 0xf6, 0x77, 0x67, 0x91, 0x59, 0x1d, 0x05, 0x63, 0x41, 0x3f, 0xb3, 0x01, 0x15, 0x55, 0xf5, - 0x91, 0x46, 0xc2, 0xff, 0xcf, 0x32, 0x9c, 0xe8, 0x30, 0x57, 0xd0, 0x97, 0x8d, 0x71, 0x7b, 0xa5, - 0xe7, 0xc9, 0xf6, 0x01, 0x47, 0xee, 0xcb, 0xcc, 0x52, 0x72, 0xc5, 0xec, 0x38, 0x44, 0xf5, 0x37, - 0x63, 0x92, 0xad, 0x9e, 0x82, 0xf2, 0xab, 0xa7, 0xd5, 0x1e, 0xdb, 0xf0, 0xd3, 0x8a, 0x54, 0x4b, - 0x8f, 0xf4, 0x3b, 0xff, 0x8d, 0x3e, 0x98, 0xea, 0x74, 0x7f, 0x1e, 0x7d, 0xcd, 0xca, 0x3c, 0xfb, - 0xf0, 0x6a, 0xef, 0x97, 0xf0, 0xf9, 0x5b, 0x10, 0x22, 0xe7, 0xcc, 0x9c, 0xf9, 0x10, 0x44, 0xee, - 0x88, 0x8b, 0xda, 0xd9, 0xfd, 0xa4, 0x88, 0x3f, 0xe1, 0x21, 0xa5, 0xc2, 0x67, 0x0e, 0xd1, 0x14, - 0xf1, 0x0a, 0x48, 0x9c, 0xb9, 0x9f, 0x24, 0xc1, 0xf9, 0xf7, 0x93, 0x64, 0x1b, 0x66, 0x3c, 0x18, - 0xd6, 0xfa, 0x75, 0xa4, 0xd3, 0xe0, 0x2e, 0xdd, 0xa2, 0xb4, 0x76, 0x1f, 0xe9, 0x54, 0xf8, 0xfb, - 0x16, 0x64, 0x82, 0xb6, 0x94, 0x5b, 0xc6, 0xea, 0xea, 0x96, 0x39, 0x03, 0x7d, 0x51, 0xe8, 0x93, - 0xec, 0x93, 0x04, 0x38, 0xf4, 0x09, 0x66, 0x18, 0xf5, 0x44, 0x6d, 0xb9, 0xdb, 0x13, 0xb5, 0xd4, - 0x4e, 0xf7, 0xc9, 0x36, 0x91, 0x4e, 0x12, 0x25, 0xc6, 0xaf, 0x52, 0x20, 0xe6, 0x38, 0xfb, 0xf7, - 0xca, 0x30, 0xc0, 0x3d, 0x11, 0xc7, 0xb0, 0x4f, 0xd7, 0x84, 0x53, 0xa0, 0xd0, 0x9d, 0x74, 0xde, - 0xaa, 0xb9, 0xaa, 0x93, 0x38, 0x7c, 0x72, 0xa9, 0x3e, 0xa6, 0x8e, 0x04, 0x34, 0x67, 0x8c, 0xc2, - 0x4c, 0xc6, 0xd6, 0x05, 0xce, 0x43, 0x1b, 0x93, 0x4d, 0x80, 0x98, 0x3d, 0x89, 0x48, 0x79, 0x88, - 0xcc, 0x9b, 0x2f, 0x16, 0x6a, 0x47, 0x5d, 0x15, 0xe3, 0xad, 0x49, 0xd3, 0xfd, 0x29, 0x04, 0xd6, - 0x78, 0xcf, 0xbc, 0x0c, 0x15, 0x45, 0x9c, 0x67, 0x04, 0x8c, 0xe8, 0x93, 0xf3, 0xaf, 0xc0, 0x78, - 0xa6, 0xae, 0x9e, 0x6c, 0x88, 0xdf, 0xb2, 0x60, 0x3c, 0xf3, 0x9a, 0x3b, 0xfa, 0xaa, 0x05, 0x53, - 0x7e, 0x07, 0x47, 0x94, 0xf8, 0xcc, 0x87, 0x71, 0x61, 0x29, 0xf3, 0xa1, 0x13, 0x16, 0x77, 0xac, - 0x8d, 0x9a, 0x95, 0xfc, 0x85, 0x57, 0xc7, 0x17, 0x31, 0xb0, 0x23, 0x3c, 0xe7, 0x30, 0x87, 0x61, - 0x85, 0xb5, 0x7f, 0x62, 0xc1, 0x64, 0xdb, 0x83, 0xe1, 0x0f, 0x4b, 0x37, 0x44, 0x76, 0xe5, 0x52, - 0x97, 0xec, 0xca, 0x7a, 0x2f, 0xcb, 0x07, 0xf6, 0xf2, 0xd7, 0x2d, 0x10, 0x33, 0xf4, 0x18, 0x34, - 0xc0, 0x55, 0x53, 0x03, 0xfc, 0x48, 0x91, 0x49, 0xdf, 0x45, 0xf5, 0xfb, 0xa5, 0x12, 0x4c, 0x70, - 0x82, 0xd4, 0xa7, 0xfe, 0xb0, 0x7c, 0x9c, 0xde, 0x5e, 0xfd, 0x50, 0x4f, 0x2d, 0x76, 0xee, 0xa9, - 0xf1, 0x2d, 0xfb, 0x0e, 0xfc, 0x96, 0x7f, 0x6e, 0x01, 0xe2, 0x63, 0x92, 0x7d, 0x1e, 0x97, 0x3b, - 0x77, 0x35, 0x83, 0x2e, 0x95, 0x1c, 0x0a, 0x83, 0x35, 0xaa, 0x07, 0xdc, 0x85, 0xcc, 0x89, 0x46, - 0x39, 0xff, 0x44, 0xa3, 0x87, 0x5e, 0xff, 0x76, 0x19, 0xb2, 0xc1, 0x70, 0xe8, 0x6d, 0x18, 0x69, - 0x38, 0x4d, 0xe7, 0x8e, 0xe7, 0x7b, 0x89, 0x47, 0xe2, 0x62, 0x47, 0xa6, 0x4b, 0x5a, 0x09, 0x71, - 0x90, 0xa0, 0x41, 0xb0, 0xc1, 0x11, 0xcd, 0x01, 0x34, 0x23, 0x6f, 0xdb, 0xf3, 0xc9, 0x06, 0xd3, - 0x59, 0x59, 0x34, 0x3d, 0x3f, 0xfd, 0x93, 0x50, 0xac, 0x51, 0x74, 0x88, 0xbe, 0x2e, 0x1f, 0x47, - 0xf4, 0x75, 0x5f, 0x8f, 0xd1, 0xd7, 0xfd, 0x85, 0xa2, 0xaf, 0x31, 0x9c, 0x92, 0xfe, 0x7f, 0xfa, - 0x7f, 0xc5, 0xf3, 0x09, 0x4f, 0x32, 0x2b, 0xa2, 0xed, 0x67, 0xf6, 0x76, 0x67, 0x4f, 0xe1, 0x8e, - 0x14, 0xb8, 0x4b, 0x49, 0xbb, 0x05, 0x27, 0xea, 0x24, 0xf2, 0x58, 0xee, 0x3f, 0x37, 0x5d, 0x4b, - 0x5f, 0x80, 0x4a, 0x94, 0x59, 0xc6, 0x3d, 0x5e, 0xa9, 0xd6, 0xb2, 0x45, 0xc9, 0x65, 0x9b, 0xb2, - 0xb4, 0xff, 0x56, 0x09, 0x06, 0x45, 0x18, 0xdc, 0x31, 0x28, 0x1f, 0x57, 0x0c, 0x27, 0xc1, 0x33, - 0x79, 0xf2, 0x8f, 0x35, 0xab, 0xab, 0x7b, 0xa0, 0x9e, 0x71, 0x0f, 0x3c, 0x57, 0x8c, 0xdd, 0xc1, - 0x8e, 0x81, 0x7f, 0x5e, 0x86, 0x31, 0x33, 0x2c, 0xf0, 0x18, 0x86, 0xe5, 0x75, 0x18, 0x8c, 0x45, - 0x84, 0x6a, 0xa9, 0x48, 0xd4, 0x55, 0xf6, 0x13, 0xa7, 0x67, 0xa9, 0x22, 0x26, 0x55, 0xb2, 0xeb, - 0x18, 0x04, 0x5b, 0x3e, 0x96, 0x20, 0xd8, 0xbc, 0x68, 0xcd, 0xbe, 0x07, 0x11, 0xad, 0x69, 0xff, - 0x90, 0x89, 0x7c, 0x1d, 0x7e, 0x0c, 0xdb, 0xf8, 0x6b, 0xe6, 0xe6, 0x70, 0xae, 0xd0, 0xbc, 0x13, - 0xcd, 0xeb, 0xb2, 0x9d, 0x7f, 0xcf, 0x82, 0x61, 0x41, 0x78, 0x0c, 0x1d, 0xf8, 0xac, 0xd9, 0x81, - 0xa7, 0x0a, 0x75, 0xa0, 0x4b, 0xcb, 0xbf, 0x59, 0x52, 0x2d, 0xaf, 0x89, 0x27, 0xcd, 0x73, 0x33, - 0x1d, 0x0f, 0x35, 0xa3, 0x30, 0x09, 0x1b, 0xa1, 0x2f, 0x14, 0xb8, 0xc7, 0xd2, 0xcb, 0x55, 0x1c, - 0xbe, 0xaf, 0xfd, 0xc6, 0x8a, 0x9a, 0xdd, 0xfd, 0x09, 0xa3, 0x44, 0x6c, 0xa0, 0x9d, 0x1e, 0x54, - 0x77, 0x01, 0xd2, 0x57, 0xac, 0xc5, 0xbd, 0xc4, 0xde, 0x9f, 0x6a, 0x4f, 0x6f, 0x4b, 0x29, 0x5e, - 0x58, 0xe3, 0x2b, 0xc3, 0xf0, 0x59, 0x1d, 0xfd, 0xe6, 0x19, 0xc0, 0x75, 0x01, 0xc7, 0x8a, 0xc2, - 0x7e, 0x99, 0x49, 0x76, 0x36, 0x40, 0xbd, 0x5d, 0x64, 0xfa, 0xc5, 0x01, 0x35, 0xb4, 0xcc, 0xb1, - 0x77, 0x5d, 0xbf, 0x2e, 0x55, 0x54, 0x7c, 0xd2, 0x26, 0xe8, 0x91, 0xb0, 0xe9, 0xed, 0x2a, 0x44, - 0xda, 0x0e, 0x8e, 0x5e, 0x2e, 0x2c, 0x91, 0x7b, 0x38, 0x2a, 0x62, 0xc9, 0xdd, 0x58, 0x46, 0xab, - 0xd5, 0x5a, 0x36, 0x3f, 0xf5, 0x92, 0x44, 0xe0, 0x94, 0x06, 0xcd, 0x0b, 0x83, 0xd2, 0x7c, 0xf1, - 0x5e, 0x1a, 0x94, 0x72, 0x48, 0x34, 0x8b, 0xf2, 0x3c, 0x0c, 0xab, 0x27, 0x3f, 0x6a, 0xfc, 0xb1, - 0x85, 0x0a, 0xd7, 0xaf, 0x96, 0x53, 0x30, 0xd6, 0x69, 0xd0, 0x2a, 0x9c, 0x70, 0xd5, 0xad, 0x8b, - 0x5a, 0xeb, 0x8e, 0xef, 0x35, 0x68, 0x51, 0x7e, 0x63, 0xf2, 0x91, 0xbd, 0xdd, 0xd9, 0x13, 0xd5, - 0x76, 0x34, 0xee, 0x54, 0x06, 0xad, 0xc1, 0x78, 0xcc, 0x9f, 0x36, 0x91, 0xa1, 0xf5, 0x22, 0x6d, - 0xeb, 0xb3, 0xf2, 0xc4, 0xaa, 0x6e, 0xa2, 0xf7, 0x19, 0x88, 0x4b, 0x05, 0x19, 0x8c, 0x9f, 0x65, - 0x81, 0x5e, 0x85, 0x31, 0x5f, 0x7f, 0xb7, 0xb1, 0x26, 0x2e, 0x9f, 0xa8, 0x18, 0x24, 0xe3, 0x55, - 0xc7, 0x1a, 0xce, 0x50, 0xa3, 0xd7, 0x61, 0x5a, 0x87, 0x88, 0x4c, 0x30, 0x4e, 0xb0, 0x41, 0x62, - 0xf1, 0x0c, 0xc2, 0x63, 0x7b, 0xbb, 0xb3, 0xd3, 0x57, 0xbb, 0xd0, 0xe0, 0xae, 0xa5, 0xd1, 0x45, - 0x18, 0x91, 0x23, 0xa9, 0x5d, 0x44, 0x49, 0xa3, 0xdf, 0x34, 0x1c, 0x36, 0x28, 0x3f, 0xd8, 0xc1, - 0xdc, 0x97, 0x68, 0x61, 0x6d, 0x0b, 0x47, 0xef, 0xc0, 0x88, 0xde, 0xc6, 0xec, 0xde, 0x9c, 0xff, - 0x16, 0xa6, 0x50, 0x05, 0x54, 0xcb, 0x75, 0x1c, 0x36, 0x78, 0xdb, 0x37, 0x60, 0xa0, 0xbe, 0x13, - 0x37, 0x12, 0xbf, 0x80, 0x7c, 0x7b, 0xd2, 0xe8, 0x42, 0xba, 0xf6, 0xd8, 0xbb, 0x3c, 0xa2, 0x47, - 0x36, 0x81, 0xf1, 0xb5, 0xa5, 0x1a, 0x7f, 0xf5, 0x7f, 0x81, 0x5b, 0x6f, 0x58, 0x48, 0x37, 0xeb, - 0x90, 0x52, 0xab, 0x83, 0x3c, 0xb4, 0xff, 0xc4, 0x82, 0x7e, 0xf6, 0xa6, 0x4c, 0xde, 0x7b, 0x44, - 0x45, 0x1a, 0x8d, 0x5e, 0x82, 0x01, 0xb2, 0xbe, 0x4e, 0x1a, 0x89, 0x58, 0xc6, 0x32, 0xda, 0x7b, - 0x60, 0x99, 0x41, 0xe9, 0xe2, 0x64, 0x95, 0xf1, 0xbf, 0x58, 0x10, 0xa3, 0xcf, 0x43, 0x25, 0xf1, - 0xb6, 0xc8, 0x82, 0xeb, 0x12, 0xf7, 0x10, 0x77, 0xc5, 0x95, 0xb0, 0x58, 0x93, 0x4c, 0x70, 0xca, - 0xcf, 0x7e, 0xaf, 0x04, 0x90, 0xde, 0xb5, 0xc8, 0xeb, 0xe6, 0x62, 0xdb, 0xb3, 0x4b, 0x4f, 0x77, - 0x78, 0x76, 0x09, 0xa5, 0x0c, 0x3b, 0x3c, 0xba, 0xa4, 0x86, 0xaa, 0x5c, 0x68, 0xa8, 0xfa, 0x7a, - 0x19, 0xaa, 0x25, 0x98, 0x4c, 0xef, 0x8a, 0x98, 0x97, 0xee, 0x58, 0x12, 0xc6, 0xb5, 0x2c, 0x12, - 0xb7, 0xd3, 0xdb, 0xef, 0x59, 0x20, 0x42, 0xd6, 0x0a, 0xcc, 0x56, 0x57, 0x3e, 0x91, 0x62, 0xe4, - 0xa1, 0x7a, 0xb6, 0x48, 0x34, 0x9f, 0xc8, 0x3e, 0xa5, 0xd6, 0x8f, 0x91, 0x73, 0xca, 0xe0, 0x6a, - 0xff, 0x86, 0x05, 0xc3, 0x1c, 0x7d, 0x8d, 0xe9, 0xd4, 0xf9, 0xed, 0xea, 0x29, 0xc3, 0x27, 0x7b, - 0x3d, 0x84, 0x32, 0x56, 0x99, 0x1e, 0xf5, 0xd7, 0x43, 0x24, 0x02, 0xa7, 0x34, 0xe8, 0x19, 0x18, - 0x8c, 0x5b, 0x77, 0x18, 0x79, 0x26, 0x7e, 0xad, 0xce, 0xc1, 0x58, 0xe2, 0xed, 0x7f, 0x59, 0x82, - 0x89, 0x6c, 0xf8, 0x22, 0xc2, 0x30, 0xc0, 0x75, 0xec, 0xac, 0x7a, 0x76, 0x90, 0x2f, 0x47, 0x0b, - 0x7f, 0x04, 0xfe, 0x06, 0x2e, 0x8b, 0x39, 0x13, 0x9c, 0xd0, 0x3a, 0x0c, 0xbb, 0xe1, 0xbd, 0xe0, - 0x9e, 0x13, 0xb9, 0x0b, 0xb5, 0x55, 0xf1, 0x25, 0x72, 0x02, 0x4e, 0xaa, 0x69, 0x01, 0x3d, 0xb8, - 0x92, 0xf9, 0x16, 0x52, 0x14, 0xd6, 0x19, 0x53, 0x9b, 0xb2, 0x11, 0x06, 0xeb, 0xde, 0xc6, 0x35, - 0xa7, 0x59, 0xec, 0x68, 0x75, 0x49, 0x92, 0x6b, 0x75, 0x8c, 0x8a, 0x5b, 0xf6, 0x1c, 0x81, 0x53, - 0x96, 0xf6, 0x1f, 0x9c, 0x00, 0x63, 0x2e, 0x18, 0x69, 0x38, 0xad, 0x07, 0x9e, 0x86, 0xf3, 0x4d, - 0x18, 0x22, 0x5b, 0xcd, 0x64, 0xa7, 0xea, 0x45, 0xc5, 0x92, 0x2a, 0x2f, 0x0b, 0xea, 0x76, 0xee, - 0x12, 0x83, 0x15, 0xc7, 0x2e, 0x49, 0x55, 0xcb, 0x0f, 0x45, 0x52, 0xd5, 0xbe, 0xbf, 0x90, 0xa4, - 0xaa, 0xaf, 0xc3, 0xe0, 0x86, 0x97, 0x60, 0xd2, 0x0c, 0x45, 0xda, 0x82, 0x9c, 0xc9, 0x73, 0x89, - 0x13, 0xb7, 0x67, 0x4a, 0x14, 0x08, 0x2c, 0xd9, 0xa1, 0x35, 0xb5, 0xa8, 0x06, 0x8a, 0xec, 0xe5, - 0xed, 0xbe, 0xbe, 0x8e, 0xcb, 0x4a, 0x24, 0x51, 0x1d, 0xfc, 0xe0, 0x49, 0x54, 0x55, 0xea, 0xd3, - 0xa1, 0x07, 0x95, 0xfa, 0xd4, 0x48, 0x21, 0x5b, 0x39, 0x8a, 0x14, 0xb2, 0xef, 0x59, 0x70, 0xb2, - 0xd9, 0x29, 0x01, 0xb3, 0x48, 0x62, 0xfa, 0xe9, 0x43, 0xa4, 0xa4, 0x36, 0xaa, 0x66, 0x97, 0xc1, - 0x3b, 0x92, 0xe1, 0xce, 0x15, 0xcb, 0x5c, 0xb4, 0xc3, 0x1f, 0x3c, 0x17, 0xed, 0x51, 0x67, 0x3b, - 0x4d, 0x33, 0xd3, 0x8e, 0x1e, 0x49, 0x66, 0xda, 0xb1, 0x07, 0x98, 0x99, 0x56, 0xcb, 0x29, 0x3b, - 0xfe, 0x60, 0x73, 0xca, 0x6e, 0x9a, 0xfb, 0x12, 0x4f, 0x61, 0xfa, 0x52, 0xe1, 0x7d, 0xc9, 0xa8, - 0xe1, 0xe0, 0x9d, 0x89, 0x67, 0xd7, 0x9d, 0xfc, 0x80, 0xd9, 0x75, 0x8d, 0x1c, 0xb5, 0xe8, 0x28, - 0x72, 0xd4, 0xbe, 0xad, 0xef, 0xa0, 0x27, 0x8a, 0xd4, 0xa0, 0x36, 0xca, 0xf6, 0x1a, 0x3a, 0xed, - 0xa1, 0xed, 0x59, 0x70, 0xa7, 0x8e, 0x3b, 0x0b, 0xee, 0xc9, 0x23, 0xcc, 0x82, 0x7b, 0xea, 0x58, - 0xb3, 0xe0, 0x3e, 0xf2, 0x90, 0x64, 0xc1, 0x9d, 0x3e, 0xca, 0x2c, 0xb8, 0x74, 0x80, 0x9b, 0xf2, - 0xaa, 0xce, 0xf4, 0xa3, 0x45, 0x06, 0xb8, 0xe3, 0xcd, 0x1e, 0x3e, 0xc0, 0x0a, 0x85, 0x53, 0xa6, - 0xf6, 0x5f, 0x83, 0xd3, 0x07, 0x4f, 0xb0, 0xf4, 0xed, 0x89, 0x5a, 0xea, 0xd9, 0xca, 0xbc, 0x3d, - 0xc1, 0x94, 0x37, 0x8d, 0xaa, 0x70, 0x9a, 0xce, 0xef, 0x58, 0xf0, 0x48, 0x97, 0x2c, 0x76, 0x85, - 0xef, 0xb9, 0x35, 0x61, 0xbc, 0x69, 0x16, 0x2d, 0x7c, 0x6d, 0xd6, 0xc8, 0x9a, 0xa7, 0x62, 0x91, - 0x33, 0x08, 0x9c, 0x65, 0xbf, 0xf8, 0x91, 0x1f, 0xbd, 0x7f, 0xfa, 0x43, 0x3f, 0x7e, 0xff, 0xf4, - 0x87, 0xfe, 0xe8, 0xfd, 0xd3, 0x1f, 0xfa, 0xb9, 0xbd, 0xd3, 0xd6, 0x8f, 0xf6, 0x4e, 0x5b, 0x3f, - 0xde, 0x3b, 0x6d, 0xfd, 0xe9, 0xde, 0x69, 0xeb, 0xbd, 0x9f, 0x9c, 0xfe, 0xd0, 0x1b, 0xa5, 0xed, - 0xf3, 0xff, 0x3f, 0x00, 0x00, 0xff, 0xff, 0x7d, 0xa2, 0x84, 0xda, 0xcc, 0xc5, 0x00, 0x00, + // 11000 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0xbd, 0x7d, 0x70, 0x24, 0xc7, + 0x75, 0x18, 0xae, 0xd9, 0xc5, 0xd7, 0x3e, 0x7c, 0x37, 0x70, 0x47, 0x10, 0x22, 0x0f, 0xc7, 0xa1, + 0x48, 0x1d, 0xc9, 0x23, 0x20, 0x1e, 0x49, 0xf1, 0x24, 0xea, 0x47, 0x09, 0xc0, 0x02, 0x77, 0xd0, + 0x7d, 0x2d, 0x7b, 0x71, 0x77, 0x14, 0xc5, 0x9f, 0xc8, 0xb9, 0x9d, 0x06, 0x30, 0xbc, 0xc1, 0xcc, + 0x72, 0x66, 0x16, 0x77, 0x90, 0xa2, 0x2a, 0x5b, 0x51, 0xc9, 0x49, 0x59, 0x49, 0xe4, 0x72, 0x54, + 0x95, 0x72, 0x52, 0xa5, 0x94, 0xab, 0xe2, 0x28, 0x9f, 0x8e, 0xa2, 0xb2, 0x24, 0x97, 0xe5, 0xa4, + 0xe2, 0x58, 0x8e, 0x5c, 0x95, 0x38, 0xaa, 0x72, 0x25, 0x76, 0xca, 0x15, 0xd8, 0x82, 0x2a, 0xfe, + 0x23, 0x7f, 0xe4, 0x8f, 0xf8, 0x3f, 0x24, 0x95, 0x4a, 0xf5, 0xe7, 0x74, 0xcf, 0xee, 0x62, 0x66, + 0xc1, 0x03, 0x7c, 0x52, 0xe5, 0xbf, 0xdd, 0x7e, 0xaf, 0x5f, 0x7f, 0x4c, 0xf7, 0xeb, 0xf7, 0x5e, + 0xbf, 0xf7, 0x1a, 0xce, 0xdf, 0xbd, 0x18, 0xcf, 0x7b, 0xe1, 0xc2, 0xdd, 0xd6, 0x1d, 0x12, 0x05, + 0x24, 0x21, 0xf1, 0x42, 0xf3, 0xee, 0xe6, 0x82, 0xd3, 0xf4, 0x16, 0x76, 0x5e, 0x58, 0xd8, 0x24, + 0x01, 0x89, 0x9c, 0x84, 0xb8, 0xf3, 0xcd, 0x28, 0x4c, 0x42, 0xf4, 0x18, 0xc7, 0x9e, 0x4f, 0xb1, + 0xe7, 0x9b, 0x77, 0x37, 0xe7, 0x9d, 0xa6, 0x37, 0xbf, 0xf3, 0xc2, 0xec, 0xf3, 0x9b, 0x5e, 0xb2, + 0xd5, 0xba, 0x33, 0xdf, 0x08, 0xb7, 0x17, 0x36, 0xc3, 0xcd, 0x70, 0x81, 0x55, 0xba, 0xd3, 0xda, + 0x60, 0xff, 0xd8, 0x1f, 0xf6, 0x8b, 0x13, 0x9b, 0x7d, 0x49, 0x34, 0xed, 0x34, 0xbd, 0x6d, 0xa7, + 0xb1, 0xe5, 0x05, 0x24, 0xda, 0x55, 0x8d, 0x47, 0x24, 0x0e, 0x5b, 0x51, 0x83, 0x64, 0xbb, 0x70, + 0x68, 0xad, 0x78, 0x61, 0x9b, 0x24, 0x4e, 0x87, 0x8e, 0xcf, 0x2e, 0x74, 0xab, 0x15, 0xb5, 0x82, + 0xc4, 0xdb, 0x6e, 0x6f, 0xe6, 0xa3, 0x79, 0x15, 0xe2, 0xc6, 0x16, 0xd9, 0x76, 0xda, 0xea, 0xbd, + 0xd8, 0xad, 0x5e, 0x2b, 0xf1, 0xfc, 0x05, 0x2f, 0x48, 0xe2, 0x24, 0x3a, 0x6c, 0x4c, 0x31, 0x89, + 0x76, 0x48, 0x94, 0x0e, 0x88, 0xdc, 0x77, 0xb6, 0x9b, 0x3e, 0xe9, 0x30, 0x26, 0xfb, 0x8f, 0x2c, + 0x38, 0xbb, 0x78, 0xbb, 0xbe, 0xe2, 0x3b, 0x71, 0xe2, 0x35, 0x96, 0xfc, 0xb0, 0x71, 0xb7, 0x9e, + 0x84, 0x11, 0xb9, 0x15, 0xfa, 0xad, 0x6d, 0x52, 0x67, 0xd3, 0x87, 0xce, 0xc3, 0xd0, 0x0e, 0xfb, + 0xbf, 0x56, 0x9d, 0xb1, 0xce, 0x5a, 0xe7, 0x2a, 0x4b, 0x13, 0x3f, 0xdc, 0x9b, 0xfb, 0xc0, 0xfe, + 0xde, 0xdc, 0xd0, 0x2d, 0x51, 0x8e, 0x15, 0x06, 0x7a, 0x1a, 0x06, 0x36, 0xe2, 0xf5, 0xdd, 0x26, + 0x99, 0x29, 0x31, 0xdc, 0x31, 0x81, 0x3b, 0xb0, 0x5a, 0xa7, 0xa5, 0x58, 0x40, 0xd1, 0x02, 0x54, + 0x9a, 0x4e, 0x94, 0x78, 0x89, 0x17, 0x06, 0x33, 0xe5, 0xb3, 0xd6, 0xb9, 0xfe, 0xa5, 0x49, 0x81, + 0x5a, 0xa9, 0x49, 0x00, 0x4e, 0x71, 0x68, 0x37, 0x22, 0xe2, 0xb8, 0x37, 0x02, 0x7f, 0x77, 0xa6, + 0xef, 0xac, 0x75, 0x6e, 0x28, 0xed, 0x06, 0x16, 0xe5, 0x58, 0x61, 0xd8, 0xdf, 0x2b, 0xc1, 0xd0, + 0xe2, 0xc6, 0x86, 0x17, 0x78, 0xc9, 0x2e, 0x7a, 0x07, 0x46, 0x82, 0xd0, 0x25, 0xf2, 0x3f, 0x1b, + 0xc5, 0xf0, 0x85, 0x67, 0xe7, 0x0f, 0x5b, 0x8a, 0xf3, 0xd7, 0xb5, 0x1a, 0x4b, 0x13, 0xfb, 0x7b, + 0x73, 0x23, 0x7a, 0x09, 0x36, 0x28, 0xa2, 0xb7, 0x60, 0xb8, 0x19, 0xba, 0xaa, 0x81, 0x12, 0x6b, + 0xe0, 0x99, 0xc3, 0x1b, 0xa8, 0xa5, 0x15, 0x96, 0xc6, 0xf7, 0xf7, 0xe6, 0x86, 0xb5, 0x02, 0xac, + 0x93, 0x43, 0x3e, 0x8c, 0xd3, 0xbf, 0x41, 0xe2, 0xa9, 0x16, 0xca, 0xac, 0x85, 0xe7, 0xf3, 0x5b, + 0xd0, 0x2a, 0x2d, 0x4d, 0xed, 0xef, 0xcd, 0x8d, 0x67, 0x0a, 0x71, 0x96, 0xb4, 0xfd, 0x79, 0x18, + 0x5b, 0x4c, 0x12, 0xa7, 0xb1, 0x45, 0x5c, 0xfe, 0x7d, 0xd1, 0x4b, 0xd0, 0x17, 0x38, 0xdb, 0x44, + 0x7c, 0xfd, 0xb3, 0x62, 0xda, 0xfb, 0xae, 0x3b, 0xdb, 0xe4, 0x60, 0x6f, 0x6e, 0xe2, 0x66, 0xe0, + 0xbd, 0xd7, 0x12, 0x6b, 0x86, 0x96, 0x61, 0x86, 0x8d, 0x2e, 0x00, 0xb8, 0x64, 0xc7, 0x6b, 0x90, + 0x9a, 0x93, 0x6c, 0x89, 0xd5, 0x80, 0x44, 0x5d, 0xa8, 0x2a, 0x08, 0xd6, 0xb0, 0xec, 0x2f, 0x59, + 0x50, 0x59, 0xdc, 0x09, 0x3d, 0xb7, 0x16, 0xba, 0x31, 0x6a, 0xc1, 0x78, 0x33, 0x22, 0x1b, 0x24, + 0x52, 0x45, 0x33, 0xd6, 0xd9, 0xf2, 0xb9, 0xe1, 0x0b, 0x17, 0x72, 0xc6, 0x6d, 0x56, 0x5a, 0x09, + 0x92, 0x68, 0x77, 0xe9, 0x11, 0xd1, 0xf4, 0x78, 0x06, 0x8a, 0xb3, 0x6d, 0xd8, 0xbf, 0x54, 0x82, + 0x53, 0x8b, 0x9f, 0x6f, 0x45, 0xa4, 0xea, 0xc5, 0x77, 0xb3, 0x5b, 0xc1, 0xf5, 0xe2, 0xbb, 0xd7, + 0xd3, 0xc9, 0x50, 0x6b, 0xb0, 0x2a, 0xca, 0xb1, 0xc2, 0x40, 0xcf, 0xc3, 0x20, 0xfd, 0x7d, 0x13, + 0xaf, 0x89, 0xd1, 0x4f, 0x09, 0xe4, 0xe1, 0xaa, 0x93, 0x38, 0x55, 0x0e, 0xc2, 0x12, 0x07, 0x5d, + 0x83, 0xe1, 0x06, 0xdb, 0xef, 0x9b, 0xd7, 0x42, 0x97, 0xb0, 0x2f, 0x5c, 0x59, 0x7a, 0x8e, 0xa2, + 0x2f, 0xa7, 0xc5, 0x07, 0x7b, 0x73, 0x33, 0xbc, 0x6f, 0x82, 0x84, 0x06, 0xc3, 0x7a, 0x7d, 0x64, + 0xab, 0x8d, 0xd8, 0xc7, 0x28, 0x41, 0x87, 0x4d, 0x78, 0x4e, 0xdb, 0x53, 0xfd, 0x6c, 0x4f, 0x8d, + 0x74, 0xd9, 0x4f, 0xff, 0xd8, 0x12, 0x73, 0xb2, 0xea, 0xf9, 0x26, 0x7b, 0xb8, 0x00, 0x10, 0x93, + 0x46, 0x44, 0x12, 0x6d, 0x56, 0xd4, 0x67, 0xae, 0x2b, 0x08, 0xd6, 0xb0, 0xe8, 0xe6, 0x8f, 0xb7, + 0x9c, 0x88, 0xad, 0x16, 0x31, 0x37, 0x6a, 0xf3, 0xd7, 0x25, 0x00, 0xa7, 0x38, 0xc6, 0xe6, 0x2f, + 0xe7, 0x6e, 0xfe, 0xdf, 0xb1, 0x60, 0x70, 0xc9, 0x0b, 0x5c, 0x2f, 0xd8, 0x44, 0xef, 0xc0, 0x10, + 0xe5, 0xe8, 0xae, 0x93, 0x38, 0x62, 0xdf, 0x7f, 0x44, 0x2e, 0x1e, 0x9d, 0xc1, 0xca, 0xe5, 0x13, + 0xcf, 0x53, 0x6c, 0xba, 0x88, 0x6e, 0xdc, 0x79, 0x97, 0x34, 0x92, 0x6b, 0x24, 0x71, 0xd2, 0xe1, + 0xa4, 0x65, 0x58, 0x51, 0x45, 0x37, 0x61, 0x20, 0x71, 0xa2, 0x4d, 0x92, 0x88, 0x6d, 0x9f, 0xb3, + 0x29, 0x39, 0x0d, 0x4c, 0x97, 0x1c, 0x09, 0x1a, 0x24, 0x65, 0x90, 0xeb, 0x8c, 0x08, 0x16, 0xc4, + 0xec, 0x06, 0x8c, 0x2c, 0x3b, 0x4d, 0xe7, 0x8e, 0xe7, 0x7b, 0x89, 0x47, 0x62, 0xf4, 0x61, 0x28, + 0x3b, 0xae, 0xcb, 0x36, 0x40, 0x65, 0xe9, 0xd4, 0xfe, 0xde, 0x5c, 0x79, 0xd1, 0x75, 0x0f, 0xf6, + 0xe6, 0x40, 0x61, 0xed, 0x62, 0x8a, 0x81, 0x9e, 0x85, 0x3e, 0x37, 0x0a, 0x9b, 0x33, 0x25, 0x86, + 0x79, 0x9a, 0xee, 0xd4, 0x6a, 0x14, 0x36, 0x33, 0xa8, 0x0c, 0xc7, 0xfe, 0x41, 0x09, 0xd0, 0x32, + 0x69, 0x6e, 0xad, 0xd6, 0x8d, 0x6f, 0x7a, 0x0e, 0x86, 0xb6, 0xc3, 0xc0, 0x4b, 0xc2, 0x28, 0x16, + 0x0d, 0xb2, 0x75, 0x71, 0x4d, 0x94, 0x61, 0x05, 0x45, 0x67, 0xa1, 0xaf, 0x99, 0x6e, 0xef, 0x11, + 0xc9, 0x1a, 0xd8, 0xc6, 0x66, 0x10, 0x8a, 0xd1, 0x8a, 0x49, 0x24, 0xd6, 0xb3, 0xc2, 0xb8, 0x19, + 0x93, 0x08, 0x33, 0x48, 0xba, 0x82, 0xe8, 0xda, 0x12, 0xab, 0x35, 0xb3, 0x82, 0x28, 0x04, 0x6b, + 0x58, 0xe8, 0x6d, 0xa8, 0xf0, 0x7f, 0x98, 0x6c, 0xb0, 0xa5, 0x9b, 0xcb, 0x14, 0xae, 0x86, 0x0d, + 0xc7, 0xcf, 0x4e, 0xfe, 0x28, 0x5b, 0x71, 0x92, 0x10, 0x4e, 0x69, 0x1a, 0x2b, 0x6e, 0x20, 0x77, + 0xc5, 0xfd, 0x1d, 0x0b, 0xd0, 0xb2, 0x17, 0xb8, 0x24, 0x3a, 0x81, 0xa3, 0xb3, 0xb7, 0xcd, 0xf0, + 0x27, 0xb4, 0x6b, 0xe1, 0x76, 0x33, 0x0c, 0x48, 0x90, 0x2c, 0x87, 0x81, 0xcb, 0x8f, 0xd3, 0x8f, + 0x43, 0x5f, 0x42, 0x9b, 0xe2, 0xdd, 0x7a, 0x5a, 0x7e, 0x16, 0xda, 0xc0, 0xc1, 0xde, 0xdc, 0xe9, + 0xf6, 0x1a, 0xac, 0x0b, 0xac, 0x0e, 0xfa, 0x18, 0x0c, 0xc4, 0x89, 0x93, 0xb4, 0x62, 0xd1, 0xd1, + 0x27, 0x64, 0x47, 0xeb, 0xac, 0xf4, 0x60, 0x6f, 0x6e, 0x5c, 0x55, 0xe3, 0x45, 0x58, 0x54, 0x40, + 0xcf, 0xc0, 0xe0, 0x36, 0x89, 0x63, 0x67, 0x53, 0x32, 0xb8, 0x71, 0x51, 0x77, 0xf0, 0x1a, 0x2f, + 0xc6, 0x12, 0x8e, 0x9e, 0x84, 0x7e, 0x12, 0x45, 0x61, 0x24, 0x56, 0xc4, 0xa8, 0x40, 0xec, 0x5f, + 0xa1, 0x85, 0x98, 0xc3, 0xec, 0xff, 0x62, 0xc1, 0xb8, 0xea, 0x2b, 0x6f, 0xeb, 0x04, 0xb6, 0xbc, + 0x0b, 0xd0, 0x90, 0x03, 0x8c, 0xd9, 0x46, 0xd3, 0xda, 0xe8, 0xbc, 0xfc, 0xda, 0x27, 0x34, 0x6d, + 0x43, 0x15, 0xc5, 0x58, 0xa3, 0x6b, 0xff, 0x3b, 0x0b, 0xa6, 0x32, 0x63, 0xbb, 0xea, 0xc5, 0x09, + 0x7a, 0xab, 0x6d, 0x7c, 0xf3, 0xc5, 0xc6, 0x47, 0x6b, 0xb3, 0xd1, 0xa9, 0xf5, 0x22, 0x4b, 0xb4, + 0xb1, 0x61, 0xe8, 0xf7, 0x12, 0xb2, 0x2d, 0x87, 0xf5, 0x7c, 0xc1, 0x61, 0xf1, 0xfe, 0xa5, 0x5f, + 0x69, 0x8d, 0xd2, 0xc0, 0x9c, 0x94, 0xfd, 0xbf, 0x2c, 0xa8, 0x2c, 0x87, 0xc1, 0x86, 0xb7, 0x79, + 0xcd, 0x69, 0x9e, 0xc0, 0xf7, 0xa9, 0x43, 0x1f, 0xa3, 0xce, 0x87, 0xf0, 0x42, 0xde, 0x10, 0x44, + 0xc7, 0xe6, 0xe9, 0x99, 0xca, 0x85, 0x05, 0xc5, 0xa6, 0x68, 0x11, 0x66, 0xc4, 0x66, 0x5f, 0x81, + 0x8a, 0x42, 0x40, 0x13, 0x50, 0xbe, 0x4b, 0xb8, 0x24, 0x59, 0xc1, 0xf4, 0x27, 0x9a, 0x86, 0xfe, + 0x1d, 0xc7, 0x6f, 0x89, 0xcd, 0x8b, 0xf9, 0x9f, 0x8f, 0x97, 0x2e, 0x5a, 0xf6, 0x0f, 0xd8, 0x0e, + 0x14, 0x8d, 0xac, 0x04, 0x3b, 0x82, 0x39, 0x7c, 0xd9, 0x82, 0x69, 0xbf, 0x03, 0x53, 0x12, 0x73, + 0x72, 0x14, 0x76, 0xf6, 0x98, 0xe8, 0xf6, 0x74, 0x27, 0x28, 0xee, 0xd8, 0x1a, 0xe5, 0xf5, 0x61, + 0x93, 0x2e, 0x38, 0xc7, 0x67, 0x5d, 0x17, 0x32, 0xc0, 0x0d, 0x51, 0x86, 0x15, 0xd4, 0xfe, 0x73, + 0x0b, 0xa6, 0xd5, 0x38, 0xae, 0x90, 0xdd, 0x3a, 0xf1, 0x49, 0x23, 0x09, 0xa3, 0x87, 0x65, 0x24, + 0x8f, 0xf3, 0x6f, 0xc2, 0x79, 0xd2, 0xb0, 0x20, 0x50, 0xbe, 0x42, 0x76, 0xf9, 0x07, 0xd2, 0x07, + 0x5a, 0x3e, 0x74, 0xa0, 0xbf, 0x65, 0xc1, 0xa8, 0x1a, 0xe8, 0x09, 0x6c, 0xb9, 0xab, 0xe6, 0x96, + 0xfb, 0x70, 0xc1, 0xf5, 0xda, 0x65, 0xb3, 0xfd, 0xed, 0x12, 0x65, 0x1b, 0x02, 0xa7, 0x16, 0x85, + 0x74, 0x92, 0x28, 0xc7, 0x7f, 0x48, 0xbe, 0x52, 0x6f, 0x83, 0xbd, 0x42, 0x76, 0xd7, 0x43, 0x2a, + 0x4d, 0x74, 0x1e, 0xac, 0xf1, 0x51, 0xfb, 0x0e, 0xfd, 0xa8, 0xbf, 0x5f, 0x82, 0x53, 0x6a, 0x5a, + 0x8c, 0x53, 0xfa, 0x67, 0x72, 0x62, 0x5e, 0x80, 0x61, 0x97, 0x6c, 0x38, 0x2d, 0x3f, 0x51, 0xda, + 0x44, 0x3f, 0x57, 0x33, 0xab, 0x69, 0x31, 0xd6, 0x71, 0x7a, 0x98, 0xcb, 0x6f, 0x0c, 0x33, 0x7e, + 0x9e, 0x38, 0x74, 0xd5, 0x53, 0x09, 0x4f, 0x53, 0x0f, 0x47, 0x74, 0xf5, 0x50, 0xa8, 0x82, 0x4f, + 0x42, 0xbf, 0xb7, 0x4d, 0xcf, 0xfc, 0x92, 0x79, 0x94, 0xaf, 0xd1, 0x42, 0xcc, 0x61, 0xe8, 0x29, + 0x18, 0x6c, 0x84, 0xdb, 0xdb, 0x4e, 0xe0, 0xce, 0x94, 0x99, 0xcc, 0x39, 0x4c, 0xc5, 0x82, 0x65, + 0x5e, 0x84, 0x25, 0x0c, 0x3d, 0x06, 0x7d, 0x4e, 0xb4, 0x19, 0xcf, 0xf4, 0x31, 0x9c, 0x21, 0xda, + 0xd2, 0x62, 0xb4, 0x19, 0x63, 0x56, 0x4a, 0x65, 0xc9, 0x7b, 0x61, 0x74, 0xd7, 0x0b, 0x36, 0xab, + 0x5e, 0xc4, 0x04, 0x43, 0x4d, 0x96, 0xbc, 0xad, 0x20, 0x58, 0xc3, 0x42, 0x35, 0xe8, 0x6f, 0x86, + 0x51, 0x12, 0xcf, 0x0c, 0xb0, 0x89, 0x7f, 0x2e, 0x77, 0xfb, 0xf1, 0x71, 0xd7, 0xc2, 0x28, 0x49, + 0x87, 0x42, 0xff, 0xc5, 0x98, 0x13, 0x42, 0xcb, 0x50, 0x26, 0xc1, 0xce, 0xcc, 0x20, 0xa3, 0xf7, + 0xa1, 0xc3, 0xe9, 0xad, 0x04, 0x3b, 0xb7, 0x9c, 0x28, 0xe5, 0x57, 0x2b, 0xc1, 0x0e, 0xa6, 0xb5, + 0x51, 0x03, 0x2a, 0xd2, 0x84, 0x15, 0xcf, 0x0c, 0x15, 0x59, 0x8a, 0x58, 0xa0, 0x63, 0xf2, 0x5e, + 0xcb, 0x8b, 0xc8, 0x36, 0x09, 0x92, 0x38, 0x55, 0xac, 0x24, 0x34, 0xc6, 0x29, 0x5d, 0xd4, 0x80, + 0x11, 0x2e, 0x7f, 0x5e, 0x0b, 0x5b, 0x41, 0x12, 0xcf, 0x54, 0x58, 0x97, 0x73, 0x2c, 0x17, 0xb7, + 0xd2, 0x1a, 0x4b, 0xd3, 0x82, 0xfc, 0x88, 0x56, 0x18, 0x63, 0x83, 0x28, 0x7a, 0x0b, 0x46, 0x7d, + 0x6f, 0x87, 0x04, 0x24, 0x8e, 0x6b, 0x51, 0x78, 0x87, 0xcc, 0x00, 0x1b, 0xcd, 0x93, 0x79, 0x5a, + 0x7c, 0x78, 0x87, 0x2c, 0x4d, 0xee, 0xef, 0xcd, 0x8d, 0x5e, 0xd5, 0x6b, 0x63, 0x93, 0x18, 0x7a, + 0x1b, 0xc6, 0xa8, 0xb0, 0xeb, 0xa5, 0xe4, 0x87, 0x8b, 0x93, 0x47, 0xfb, 0x7b, 0x73, 0x63, 0xd8, + 0xa8, 0x8e, 0x33, 0xe4, 0xd0, 0x3a, 0x54, 0x7c, 0x6f, 0x83, 0x34, 0x76, 0x1b, 0x3e, 0x99, 0x19, + 0x61, 0xb4, 0x73, 0x36, 0xe7, 0x55, 0x89, 0xce, 0x15, 0x0c, 0xf5, 0x17, 0xa7, 0x84, 0xd0, 0x2d, + 0x38, 0x9d, 0x90, 0x68, 0xdb, 0x0b, 0x1c, 0xba, 0xa9, 0x84, 0xf4, 0xcb, 0x4c, 0x25, 0xa3, 0x6c, + 0xd5, 0x9e, 0x11, 0x13, 0x7b, 0x7a, 0xbd, 0x23, 0x16, 0xee, 0x52, 0x1b, 0xdd, 0x80, 0x71, 0xb6, + 0x9f, 0x6a, 0x2d, 0xdf, 0xaf, 0x85, 0xbe, 0xd7, 0xd8, 0x9d, 0x19, 0x63, 0x04, 0x9f, 0x92, 0x06, + 0x90, 0x35, 0x13, 0x4c, 0x15, 0xc3, 0xf4, 0x1f, 0xce, 0xd6, 0x46, 0x3e, 0x8c, 0xc7, 0xa4, 0xd1, + 0x8a, 0xbc, 0x64, 0x97, 0xae, 0x7d, 0x72, 0x3f, 0x99, 0x19, 0x2f, 0xa2, 0xe8, 0xd6, 0xcd, 0x4a, + 0xdc, 0xfa, 0x94, 0x29, 0xc4, 0x59, 0xd2, 0x94, 0x55, 0xc4, 0x89, 0xeb, 0x05, 0x33, 0x13, 0x8c, + 0x03, 0xa9, 0xfd, 0x55, 0xa7, 0x85, 0x98, 0xc3, 0x98, 0xfd, 0x80, 0xfe, 0xb8, 0x41, 0xb9, 0xf4, + 0x24, 0x43, 0x4c, 0xed, 0x07, 0x12, 0x80, 0x53, 0x1c, 0x2a, 0x1a, 0x24, 0xc9, 0xee, 0x0c, 0x62, + 0xa8, 0x6a, 0xab, 0xad, 0xaf, 0x7f, 0x06, 0xd3, 0x72, 0x74, 0x0b, 0x06, 0x49, 0xb0, 0xb3, 0x1a, + 0x85, 0xdb, 0x33, 0x53, 0x45, 0x78, 0xc0, 0x0a, 0x47, 0xe6, 0xe7, 0x47, 0xaa, 0xc2, 0x88, 0x62, + 0x2c, 0x89, 0xa1, 0xfb, 0x30, 0xd3, 0xe1, 0x2b, 0xf1, 0x8f, 0x32, 0xcd, 0x3e, 0xca, 0x27, 0x44, + 0xdd, 0x99, 0xf5, 0x2e, 0x78, 0x07, 0x87, 0xc0, 0x70, 0x57, 0xea, 0xf6, 0x1d, 0x18, 0x53, 0x8c, + 0x8a, 0x7d, 0x6f, 0x34, 0x07, 0xfd, 0x94, 0x17, 0x4b, 0x85, 0xbe, 0x42, 0x27, 0x95, 0xb2, 0xe8, + 0x18, 0xf3, 0x72, 0x36, 0xa9, 0xde, 0xe7, 0xc9, 0xd2, 0x6e, 0x42, 0xb8, 0x62, 0x57, 0xd6, 0x26, + 0x55, 0x02, 0x70, 0x8a, 0x63, 0xff, 0x1f, 0x2e, 0x26, 0xa5, 0xdc, 0xb0, 0xc0, 0x49, 0x70, 0x1e, + 0x86, 0xb6, 0xc2, 0x38, 0xa1, 0xd8, 0xac, 0x8d, 0xfe, 0x54, 0x30, 0xba, 0x2c, 0xca, 0xb1, 0xc2, + 0x40, 0xaf, 0xc2, 0x68, 0x43, 0x6f, 0x40, 0x1c, 0x63, 0xa7, 0x44, 0x15, 0xb3, 0x75, 0x6c, 0xe2, + 0xa2, 0x8b, 0x30, 0xc4, 0xac, 0xdc, 0x8d, 0xd0, 0x17, 0x2a, 0xa4, 0x3c, 0x95, 0x87, 0x6a, 0xa2, + 0xfc, 0x40, 0xfb, 0x8d, 0x15, 0x36, 0x55, 0xc4, 0x69, 0x17, 0xd6, 0x6a, 0xe2, 0x00, 0x51, 0x8a, + 0xf8, 0x65, 0x56, 0x8a, 0x05, 0xd4, 0xfe, 0x17, 0x25, 0x6d, 0x96, 0xa9, 0x02, 0x44, 0xd0, 0x9b, + 0x30, 0x78, 0xcf, 0xf1, 0x12, 0x2f, 0xd8, 0x14, 0xd2, 0xc3, 0x8b, 0x05, 0x4f, 0x13, 0x56, 0xfd, + 0x36, 0xaf, 0xca, 0x4f, 0x3e, 0xf1, 0x07, 0x4b, 0x82, 0x94, 0x76, 0xd4, 0x0a, 0x02, 0x4a, 0xbb, + 0xd4, 0x3b, 0x6d, 0xcc, 0xab, 0x72, 0xda, 0xe2, 0x0f, 0x96, 0x04, 0xd1, 0x06, 0x80, 0x5c, 0x4b, + 0xc4, 0x15, 0xd6, 0xe5, 0x8f, 0xf6, 0x42, 0x7e, 0x5d, 0xd5, 0x5e, 0x1a, 0xa3, 0x67, 0x6d, 0xfa, + 0x1f, 0x6b, 0x94, 0xed, 0x84, 0x09, 0x61, 0xed, 0xdd, 0x42, 0x9f, 0xa5, 0x5b, 0xda, 0x89, 0x12, + 0xe2, 0x2e, 0x26, 0x59, 0x03, 0xfd, 0xe1, 0x22, 0xf6, 0xba, 0xb7, 0x4d, 0xf4, 0xed, 0x2f, 0x88, + 0xe0, 0x94, 0x9e, 0xfd, 0xdd, 0x32, 0xcc, 0x74, 0xeb, 0x2e, 0x5d, 0x92, 0xe4, 0xbe, 0x97, 0x2c, + 0x53, 0x31, 0xc9, 0x32, 0x97, 0xe4, 0x8a, 0x28, 0xc7, 0x0a, 0x83, 0xae, 0x8d, 0xd8, 0xdb, 0x94, + 0xca, 0x52, 0x7f, 0xba, 0x36, 0xea, 0xac, 0x14, 0x0b, 0x28, 0xc5, 0x8b, 0x88, 0x13, 0x8b, 0xcb, + 0x0d, 0x6d, 0x0d, 0x61, 0x56, 0x8a, 0x05, 0x54, 0x37, 0x88, 0xf4, 0xe5, 0x18, 0x44, 0x8c, 0x29, + 0xea, 0x7f, 0xb0, 0x53, 0x84, 0x3e, 0x07, 0xb0, 0xe1, 0x05, 0x5e, 0xbc, 0xc5, 0xa8, 0x0f, 0xf4, + 0x4c, 0x5d, 0x09, 0x59, 0xab, 0x8a, 0x0a, 0xd6, 0x28, 0xa2, 0x97, 0x61, 0x58, 0x6d, 0xcf, 0xb5, + 0xea, 0xcc, 0xa0, 0x69, 0x10, 0x4f, 0x79, 0x55, 0x15, 0xeb, 0x78, 0xf6, 0xbb, 0xd9, 0xf5, 0x22, + 0x76, 0x85, 0x36, 0xbf, 0x56, 0xd1, 0xf9, 0x2d, 0x1d, 0x3e, 0xbf, 0xf6, 0x7f, 0x2e, 0xc3, 0xb8, + 0xd1, 0x58, 0x2b, 0x2e, 0xc0, 0xd1, 0x5e, 0xa7, 0x07, 0x96, 0x93, 0x10, 0xb1, 0x27, 0xcf, 0xf7, + 0xb2, 0x69, 0xf4, 0xe3, 0x8d, 0xee, 0x05, 0x4e, 0x09, 0x6d, 0x41, 0xc5, 0x77, 0x62, 0x66, 0x52, + 0x21, 0x62, 0x2f, 0xf6, 0x46, 0x36, 0x55, 0x3f, 0x9c, 0x38, 0xd1, 0x4e, 0x0f, 0xde, 0x4a, 0x4a, + 0x9c, 0x9e, 0xb6, 0x54, 0xd8, 0x91, 0x37, 0x6a, 0xaa, 0x3b, 0x54, 0x22, 0xda, 0xc5, 0x1c, 0x86, + 0x2e, 0xc2, 0x48, 0x44, 0xd8, 0x4a, 0x59, 0xa6, 0xf2, 0x1c, 0x5b, 0x7a, 0xfd, 0xa9, 0xe0, 0x87, + 0x35, 0x18, 0x36, 0x30, 0x53, 0xb9, 0x7f, 0xe0, 0x10, 0xb9, 0xff, 0x19, 0x18, 0x64, 0x3f, 0xd4, + 0xaa, 0x50, 0x5f, 0x68, 0x8d, 0x17, 0x63, 0x09, 0xcf, 0x2e, 0xa2, 0xa1, 0x82, 0x8b, 0xe8, 0x59, + 0x18, 0xab, 0x3a, 0x64, 0x3b, 0x0c, 0x56, 0x02, 0xb7, 0x19, 0x7a, 0x41, 0x82, 0x66, 0xa0, 0x8f, + 0x9d, 0x27, 0x7c, 0xbf, 0xf7, 0x51, 0x0a, 0xb8, 0x8f, 0xca, 0xee, 0xf6, 0x9f, 0x94, 0x60, 0xb4, + 0x4a, 0x7c, 0x92, 0x10, 0xae, 0xf7, 0xc4, 0x68, 0x15, 0xd0, 0x66, 0xe4, 0x34, 0x48, 0x8d, 0x44, + 0x5e, 0xe8, 0xd6, 0x49, 0x23, 0x0c, 0xd8, 0x45, 0x14, 0x3d, 0x20, 0x4f, 0xef, 0xef, 0xcd, 0xa1, + 0x4b, 0x6d, 0x50, 0xdc, 0xa1, 0x06, 0x72, 0x61, 0xb4, 0x19, 0x11, 0xc3, 0x6e, 0x68, 0xe5, 0x8b, + 0x1a, 0x35, 0xbd, 0x0a, 0x97, 0x86, 0x8d, 0x22, 0x6c, 0x12, 0x45, 0x9f, 0x82, 0x89, 0x30, 0x6a, + 0x6e, 0x39, 0x41, 0x95, 0x34, 0x49, 0xe0, 0x52, 0x15, 0x40, 0x58, 0x3b, 0xa6, 0xf7, 0xf7, 0xe6, + 0x26, 0x6e, 0x64, 0x60, 0xb8, 0x0d, 0x1b, 0xbd, 0x09, 0x93, 0xcd, 0x28, 0x6c, 0x3a, 0x9b, 0x6c, + 0xc9, 0x08, 0x69, 0x85, 0xf3, 0xa6, 0xf3, 0xfb, 0x7b, 0x73, 0x93, 0xb5, 0x2c, 0xf0, 0x60, 0x6f, + 0x6e, 0x8a, 0x4d, 0x19, 0x2d, 0x49, 0x81, 0xb8, 0x9d, 0x8c, 0xfd, 0x1e, 0x9c, 0xaa, 0x86, 0xf7, + 0x82, 0x7b, 0x4e, 0xe4, 0x2e, 0xd6, 0xd6, 0x34, 0xe3, 0xc4, 0x1b, 0x52, 0xf9, 0xe5, 0x17, 0x7c, + 0x39, 0x27, 0x9b, 0x46, 0x83, 0xab, 0x1d, 0xab, 0x9e, 0x4f, 0xba, 0x98, 0x43, 0xfe, 0x49, 0xc9, + 0x68, 0x33, 0xc5, 0x57, 0x77, 0x17, 0x56, 0xd7, 0xbb, 0x8b, 0xcf, 0xc2, 0xd0, 0x86, 0x47, 0x7c, + 0x17, 0x93, 0x0d, 0xf1, 0xb5, 0x5e, 0x28, 0x72, 0xb9, 0xb3, 0x4a, 0xeb, 0x48, 0xeb, 0x18, 0x57, + 0xa2, 0x57, 0x05, 0x19, 0xac, 0x08, 0xa2, 0x16, 0x4c, 0x48, 0x3d, 0x4c, 0x42, 0xc5, 0x66, 0x7f, + 0xb1, 0x98, 0x9a, 0x67, 0x36, 0xc3, 0x3e, 0x2f, 0xce, 0x10, 0xc4, 0x6d, 0x4d, 0x50, 0xfd, 0x79, + 0x9b, 0x1e, 0x75, 0x7d, 0x6c, 0xe9, 0x33, 0xfd, 0x99, 0x99, 0x02, 0x58, 0xa9, 0xfd, 0x6b, 0x16, + 0x3c, 0xd2, 0x36, 0x5b, 0xc2, 0x4e, 0x72, 0x6c, 0xdf, 0x28, 0x6b, 0xac, 0x28, 0xe5, 0x1b, 0x2b, + 0xec, 0x1b, 0x30, 0xbd, 0xb2, 0xdd, 0x4c, 0x76, 0xab, 0x9e, 0x79, 0xe5, 0xf2, 0x0a, 0x0c, 0x6c, + 0x13, 0xd7, 0x6b, 0x6d, 0x8b, 0xcf, 0x3a, 0x27, 0xcf, 0x85, 0x6b, 0xac, 0xf4, 0x60, 0x6f, 0x6e, + 0xb4, 0x9e, 0x84, 0x91, 0xb3, 0x49, 0x78, 0x01, 0x16, 0xe8, 0xf6, 0x8f, 0x2d, 0x18, 0x97, 0xfc, + 0x61, 0xd1, 0x75, 0x23, 0x12, 0xc7, 0x68, 0x16, 0x4a, 0x5e, 0x53, 0x10, 0x02, 0x41, 0xa8, 0xb4, + 0x56, 0xc3, 0x25, 0xaf, 0x89, 0xde, 0x84, 0x0a, 0xbf, 0xa9, 0x4b, 0x17, 0x47, 0x8f, 0x37, 0x7f, + 0x4c, 0x37, 0x5c, 0x97, 0x34, 0x70, 0x4a, 0x4e, 0x4a, 0xc9, 0xec, 0xe4, 0x29, 0x9b, 0xf7, 0x46, + 0x97, 0x45, 0x39, 0x56, 0x18, 0xe8, 0x1c, 0x0c, 0x05, 0xa1, 0xcb, 0x2f, 0x53, 0xf9, 0x3e, 0x65, + 0x4b, 0xee, 0xba, 0x28, 0xc3, 0x0a, 0x6a, 0x7f, 0xd5, 0x82, 0x11, 0x39, 0xc6, 0x82, 0x02, 0x3b, + 0xdd, 0x24, 0xa9, 0xb0, 0x9e, 0x6e, 0x12, 0x2a, 0x70, 0x33, 0x88, 0x21, 0x67, 0x97, 0x7b, 0x91, + 0xb3, 0xed, 0xdf, 0x2c, 0xc1, 0x98, 0xec, 0x4e, 0xbd, 0x75, 0x27, 0x26, 0x54, 0x0c, 0xa9, 0x38, + 0x7c, 0xf2, 0x89, 0x5c, 0x67, 0xcf, 0xe7, 0xe9, 0x62, 0xc6, 0x37, 0x4b, 0xc5, 0x9c, 0x45, 0x49, + 0x07, 0xa7, 0x24, 0xd1, 0x0e, 0x4c, 0x06, 0x61, 0xc2, 0x8e, 0x37, 0x05, 0x2f, 0x76, 0xd3, 0x91, + 0x6d, 0xe7, 0x51, 0xd1, 0xce, 0xe4, 0xf5, 0x2c, 0x3d, 0xdc, 0xde, 0x04, 0xba, 0x21, 0x6d, 0x4c, + 0x65, 0xd6, 0xd6, 0xb3, 0xc5, 0xda, 0xea, 0x6e, 0x62, 0xb2, 0x7f, 0xcf, 0x82, 0x8a, 0x44, 0x3b, + 0x89, 0x2b, 0xaf, 0xdb, 0x30, 0x18, 0xb3, 0x4f, 0x24, 0xa7, 0xeb, 0x7c, 0xb1, 0x21, 0xf0, 0xef, + 0x9a, 0x9e, 0xe9, 0xfc, 0x7f, 0x8c, 0x25, 0x35, 0x66, 0x6c, 0x57, 0x03, 0x79, 0xe8, 0x8c, 0xed, + 0xaa, 0x67, 0xdd, 0x6f, 0xb6, 0x46, 0x0d, 0x6b, 0x00, 0x15, 0x4c, 0x9b, 0x11, 0xd9, 0xf0, 0xee, + 0x67, 0x05, 0xd3, 0x1a, 0x2b, 0xc5, 0x02, 0x8a, 0x36, 0x60, 0xa4, 0x21, 0xcd, 0xd1, 0x29, 0x0b, + 0xf9, 0x48, 0x41, 0xdb, 0xbf, 0xba, 0x46, 0xe2, 0xae, 0x49, 0xcb, 0x1a, 0x25, 0x6c, 0xd0, 0xa5, + 0x7c, 0x2a, 0xbd, 0x29, 0x2f, 0x17, 0x34, 0xdc, 0x44, 0x24, 0x49, 0x5b, 0xe8, 0x7a, 0x49, 0x6e, + 0x7f, 0xd3, 0x82, 0x01, 0x6e, 0xbf, 0x2c, 0x66, 0x04, 0xd6, 0x2e, 0xc8, 0xd2, 0xf9, 0xbc, 0x45, + 0x0b, 0xc5, 0x7d, 0x19, 0xba, 0x0d, 0x15, 0xf6, 0x83, 0xd9, 0x62, 0xca, 0x45, 0xfc, 0xb4, 0x78, + 0xfb, 0x7a, 0x57, 0x6f, 0x49, 0x02, 0x38, 0xa5, 0x65, 0x7f, 0xbf, 0x4c, 0x59, 0x5f, 0x8a, 0x6a, + 0x9c, 0xed, 0xd6, 0x49, 0x9c, 0xed, 0xa5, 0xe3, 0x3f, 0xdb, 0xdf, 0x83, 0xf1, 0x86, 0x76, 0x41, + 0x97, 0x7e, 0xf1, 0x0b, 0x05, 0x97, 0x95, 0x76, 0xab, 0xc7, 0xed, 0x75, 0xcb, 0x26, 0x39, 0x9c, + 0xa5, 0x8f, 0x08, 0x8c, 0xf0, 0xf5, 0x20, 0xda, 0xeb, 0x63, 0xed, 0x2d, 0x14, 0x59, 0x61, 0x7a, + 0x63, 0x6c, 0x15, 0xd7, 0x35, 0x42, 0xd8, 0x20, 0x6b, 0xff, 0x4a, 0x3f, 0xf4, 0xaf, 0xec, 0x90, + 0x20, 0x39, 0x01, 0x56, 0xb7, 0x0d, 0x63, 0x5e, 0xb0, 0x13, 0xfa, 0x3b, 0xc4, 0xe5, 0xf0, 0xa3, + 0x1d, 0xef, 0xa7, 0x45, 0x23, 0x63, 0x6b, 0x06, 0x31, 0x9c, 0x21, 0x7e, 0x1c, 0x96, 0x82, 0xd7, + 0x61, 0x80, 0xaf, 0x0c, 0x61, 0x26, 0xc8, 0xb1, 0xe7, 0xb3, 0x89, 0x15, 0x3b, 0x28, 0xb5, 0x67, + 0xf0, 0xab, 0x04, 0x41, 0x08, 0xbd, 0x0b, 0x63, 0x1b, 0x5e, 0x14, 0x27, 0x54, 0xd9, 0x8f, 0x13, + 0x67, 0xbb, 0x79, 0x04, 0x1b, 0x81, 0x9a, 0x91, 0x55, 0x83, 0x12, 0xce, 0x50, 0x46, 0x9b, 0x30, + 0x4a, 0x55, 0xd4, 0xb4, 0xa9, 0xc1, 0x9e, 0x9b, 0x52, 0x26, 0xc2, 0xab, 0x3a, 0x21, 0x6c, 0xd2, + 0xa5, 0x2c, 0xa9, 0xc1, 0x54, 0xda, 0x21, 0x26, 0xdd, 0x28, 0x96, 0xc4, 0x75, 0x59, 0x0e, 0xa3, + 0x9c, 0x8d, 0x79, 0xca, 0x54, 0x4c, 0xce, 0x96, 0xfa, 0xc3, 0xd8, 0xdf, 0xa6, 0x67, 0x31, 0x9d, + 0xc3, 0x13, 0x38, 0xbe, 0x2e, 0x9b, 0xc7, 0xd7, 0x93, 0x05, 0xbe, 0x6c, 0x97, 0xa3, 0xeb, 0x1d, + 0x18, 0xd6, 0x3e, 0x3c, 0x5a, 0x80, 0x4a, 0x43, 0x3a, 0x73, 0x08, 0x2e, 0xae, 0x44, 0x29, 0xe5, + 0xe5, 0x81, 0x53, 0x1c, 0x3a, 0x2f, 0x54, 0x04, 0xcd, 0xba, 0x7e, 0x51, 0x01, 0x15, 0x33, 0x88, + 0xfd, 0x22, 0xc0, 0xca, 0x7d, 0xd2, 0x58, 0xe4, 0x2a, 0x9e, 0x76, 0xbf, 0x67, 0x75, 0xbf, 0xdf, + 0xb3, 0xbf, 0x65, 0xc1, 0xd8, 0xea, 0xb2, 0x21, 0xd3, 0xcf, 0x03, 0x70, 0xd9, 0xf8, 0xf6, 0xed, + 0xeb, 0xd2, 0x7e, 0xcd, 0x8d, 0x8c, 0xaa, 0x14, 0x6b, 0x18, 0xe8, 0x51, 0x28, 0xfb, 0xad, 0x40, + 0x88, 0xac, 0x83, 0xfb, 0x7b, 0x73, 0xe5, 0xab, 0xad, 0x00, 0xd3, 0x32, 0xcd, 0xc7, 0xaa, 0x5c, + 0xd8, 0xc7, 0x2a, 0xdf, 0xdb, 0xf8, 0xeb, 0x65, 0x98, 0x58, 0xf5, 0xc9, 0x7d, 0xa3, 0xd7, 0x4f, + 0xc3, 0x80, 0x1b, 0x79, 0x3b, 0x24, 0xca, 0x0a, 0x02, 0x55, 0x56, 0x8a, 0x05, 0xb4, 0xb0, 0xdb, + 0xd7, 0xdb, 0xed, 0x07, 0xf9, 0xf1, 0xb9, 0xbc, 0xe5, 0x8e, 0x19, 0x6d, 0xc0, 0x20, 0xbf, 0x0f, + 0x8e, 0x67, 0xfa, 0xd9, 0x52, 0x7c, 0xf5, 0xf0, 0xce, 0x64, 0xe7, 0x67, 0x5e, 0xd8, 0x57, 0xb8, + 0xc3, 0x8d, 0xe2, 0x65, 0xa2, 0x14, 0x4b, 0xe2, 0xb3, 0x1f, 0x87, 0x11, 0x1d, 0xb3, 0x27, 0xcf, + 0x9b, 0xbf, 0x6a, 0xc1, 0xd4, 0xaa, 0x1f, 0x36, 0xee, 0x66, 0xfc, 0xf2, 0x5e, 0x86, 0x61, 0xba, + 0x99, 0x62, 0xc3, 0x69, 0xd5, 0xf0, 0xce, 0x15, 0x20, 0xac, 0xe3, 0x69, 0xd5, 0x6e, 0xde, 0x5c, + 0xab, 0x76, 0x72, 0xea, 0x15, 0x20, 0xac, 0xe3, 0xd9, 0x7f, 0x60, 0xc1, 0xe3, 0x97, 0x96, 0x57, + 0x6a, 0x24, 0x8a, 0xbd, 0x38, 0x21, 0x41, 0xd2, 0xe6, 0x57, 0x4c, 0x65, 0x46, 0x57, 0xeb, 0x4a, + 0x2a, 0x33, 0x56, 0x59, 0x2f, 0x04, 0xf4, 0x61, 0x71, 0xae, 0xff, 0xa6, 0x05, 0x53, 0x97, 0xbc, + 0x04, 0x93, 0x66, 0x98, 0x75, 0x05, 0x8e, 0x48, 0x33, 0x8c, 0xbd, 0x24, 0x8c, 0x76, 0xb3, 0xae, + 0xc0, 0x58, 0x41, 0xb0, 0x86, 0xc5, 0x5b, 0xde, 0xf1, 0x62, 0xda, 0xd3, 0x92, 0xa9, 0xea, 0x62, + 0x51, 0x8e, 0x15, 0x06, 0x1d, 0x98, 0xeb, 0x45, 0x4c, 0x64, 0xd8, 0x15, 0x3b, 0x58, 0x0d, 0xac, + 0x2a, 0x01, 0x38, 0xc5, 0xb1, 0xff, 0x9e, 0x05, 0xa7, 0x2e, 0xf9, 0xad, 0x38, 0x21, 0xd1, 0x46, + 0x6c, 0x74, 0xf6, 0x45, 0xa8, 0x10, 0x29, 0xdc, 0x8b, 0xbe, 0xaa, 0x43, 0x43, 0x49, 0xfd, 0xdc, + 0x0f, 0x59, 0xe1, 0x15, 0x70, 0x77, 0xed, 0xcd, 0x39, 0xf3, 0xb7, 0x4b, 0x30, 0x7a, 0x79, 0x7d, + 0xbd, 0x76, 0x89, 0x24, 0x82, 0x4b, 0xe6, 0x1b, 0xa5, 0xb0, 0xa6, 0x91, 0x1f, 0x26, 0xfc, 0xb4, + 0x12, 0xcf, 0x9f, 0xe7, 0xe1, 0x22, 0xf3, 0x6b, 0x41, 0x72, 0x23, 0xaa, 0x27, 0x91, 0x17, 0x6c, + 0x76, 0xd4, 0xe1, 0x25, 0x2f, 0x2f, 0x77, 0xe3, 0xe5, 0xe8, 0x45, 0x18, 0x60, 0xf1, 0x2a, 0x52, + 0xf8, 0xf8, 0xa0, 0x92, 0x13, 0x58, 0xe9, 0xc1, 0xde, 0x5c, 0xe5, 0x26, 0x5e, 0xe3, 0x7f, 0xb0, + 0x40, 0x45, 0x6f, 0xc3, 0xf0, 0x56, 0x92, 0x34, 0x2f, 0x13, 0xc7, 0x25, 0x91, 0xe4, 0x13, 0xe7, + 0x0e, 0xe7, 0x13, 0x74, 0x3a, 0x78, 0x85, 0x74, 0x6b, 0xa5, 0x65, 0x31, 0xd6, 0x29, 0xda, 0x75, + 0x80, 0x14, 0xf6, 0x80, 0x74, 0x10, 0xfb, 0xe7, 0x4b, 0x30, 0x78, 0xd9, 0x09, 0x5c, 0x9f, 0x44, + 0x68, 0x15, 0xfa, 0xc8, 0x7d, 0xd2, 0x10, 0x07, 0x79, 0x4e, 0xd7, 0xd3, 0xc3, 0x8e, 0xdb, 0xd5, + 0xe8, 0x7f, 0xcc, 0xea, 0x23, 0x0c, 0x83, 0xb4, 0xdf, 0x97, 0x94, 0x97, 0xf8, 0x73, 0xf9, 0xb3, + 0xa0, 0x16, 0x05, 0x3f, 0x29, 0x45, 0x11, 0x96, 0x84, 0x98, 0x05, 0xaa, 0xd1, 0xac, 0x53, 0xf6, + 0x96, 0x14, 0xd3, 0xec, 0xd6, 0x97, 0x6b, 0x1c, 0x5d, 0xd0, 0xe5, 0x16, 0x28, 0x59, 0x88, 0x53, + 0x72, 0xf6, 0x45, 0x98, 0x66, 0xf7, 0xb1, 0x4e, 0xb2, 0x65, 0xec, 0x9a, 0xdc, 0xe5, 0x69, 0xff, + 0xb0, 0x04, 0x93, 0x6b, 0xf5, 0xe5, 0xba, 0x69, 0x3b, 0xbc, 0x08, 0x23, 0xfc, 0x80, 0xa6, 0x8b, + 0xce, 0xf1, 0x45, 0x7d, 0x75, 0x87, 0xb0, 0xae, 0xc1, 0xb0, 0x81, 0x89, 0x1e, 0x87, 0xb2, 0xf7, + 0x5e, 0x90, 0xf5, 0xea, 0x5b, 0x7b, 0xfd, 0x3a, 0xa6, 0xe5, 0x14, 0x4c, 0xcf, 0x7a, 0xce, 0xe4, + 0x14, 0x58, 0x9d, 0xf7, 0xaf, 0xc1, 0x98, 0x17, 0x37, 0x62, 0x6f, 0x2d, 0xa0, 0x1c, 0xc0, 0x69, + 0xc8, 0xe5, 0x9b, 0x0a, 0xe7, 0xb4, 0xab, 0x0a, 0x8a, 0x33, 0xd8, 0x1a, 0xc7, 0xed, 0x2f, 0x2c, + 0x2f, 0xe4, 0xba, 0x8b, 0x53, 0x51, 0xa8, 0xc9, 0x46, 0x17, 0x33, 0x1f, 0x21, 0x21, 0x0a, 0xf1, + 0x01, 0xc7, 0x58, 0xc2, 0xec, 0x77, 0xa1, 0xa2, 0xdc, 0xbc, 0xa4, 0x77, 0xa3, 0xd5, 0xc5, 0xbb, + 0x31, 0x9f, 0x33, 0x49, 0xc3, 0x6f, 0xb9, 0xa3, 0xe1, 0xf7, 0x9f, 0x59, 0x90, 0xfa, 0xa9, 0x20, + 0x0c, 0x95, 0x66, 0xc8, 0x2e, 0x89, 0x22, 0x79, 0x1b, 0xfb, 0x54, 0xce, 0x82, 0xe5, 0x1b, 0x86, + 0x2f, 0xa9, 0x9a, 0xac, 0x8b, 0x53, 0x32, 0xe8, 0x2a, 0x0c, 0x36, 0x23, 0x52, 0x4f, 0x58, 0x68, + 0x42, 0x0f, 0x14, 0xf9, 0xdc, 0xf0, 0x9a, 0x58, 0x92, 0xb0, 0xff, 0x95, 0x05, 0x70, 0xd5, 0xdb, + 0xf6, 0x12, 0xec, 0x04, 0x9b, 0xe4, 0x04, 0xb4, 0xc2, 0xeb, 0xd0, 0x17, 0x37, 0x49, 0xa3, 0xd8, + 0x35, 0x5f, 0xda, 0xb3, 0x7a, 0x93, 0x34, 0xd2, 0xcf, 0x41, 0xff, 0x61, 0x46, 0xc7, 0xfe, 0x1e, + 0xc0, 0x58, 0x8a, 0x46, 0x25, 0x73, 0xf4, 0xbc, 0xe1, 0x93, 0xff, 0x68, 0xc6, 0x27, 0xbf, 0xc2, + 0xb0, 0x35, 0x37, 0xfc, 0x04, 0xca, 0xdb, 0xce, 0x7d, 0xa1, 0x08, 0xbc, 0x5c, 0xb4, 0x43, 0xb4, + 0xa5, 0xf9, 0x6b, 0xce, 0x7d, 0x2e, 0x77, 0x3d, 0x27, 0x17, 0xd2, 0x35, 0xe7, 0xfe, 0x01, 0xbf, + 0xcc, 0x63, 0x1b, 0x96, 0x6a, 0x1e, 0x5f, 0xfa, 0xd3, 0xf4, 0x3f, 0xe3, 0xa1, 0xb4, 0x39, 0xd6, + 0xaa, 0x17, 0x08, 0x3b, 0x66, 0x8f, 0xad, 0x7a, 0x41, 0xb6, 0x55, 0x2f, 0x28, 0xd0, 0xaa, 0xc7, + 0x9c, 0x57, 0x07, 0x85, 0xf9, 0x9f, 0x79, 0xfe, 0x0d, 0x5f, 0xf8, 0x58, 0x4f, 0x4d, 0x8b, 0x7b, + 0x04, 0xde, 0xfc, 0x82, 0x14, 0x36, 0x45, 0x69, 0x6e, 0x17, 0x64, 0xd3, 0xe8, 0xef, 0x5b, 0x30, + 0x26, 0x7e, 0x63, 0xf2, 0x5e, 0x8b, 0xc4, 0x89, 0x38, 0xd4, 0x3e, 0x75, 0x94, 0xde, 0x08, 0x12, + 0xbc, 0x53, 0x1f, 0x95, 0x1c, 0xc9, 0x04, 0xe6, 0xf6, 0x2d, 0xd3, 0x1f, 0xf4, 0x3d, 0x0b, 0xa6, + 0xb7, 0x9d, 0xfb, 0xbc, 0x45, 0x5e, 0x86, 0x9d, 0xc4, 0x0b, 0x85, 0x77, 0xe3, 0x6a, 0xaf, 0xeb, + 0xa4, 0x8d, 0x10, 0xef, 0xae, 0x74, 0x5c, 0x9a, 0xee, 0x84, 0x92, 0xdb, 0xe9, 0x8e, 0x3d, 0x9c, + 0xdd, 0x80, 0x21, 0xb9, 0x30, 0x3b, 0x88, 0xf9, 0x55, 0xfd, 0xec, 0xce, 0x51, 0xaa, 0xe7, 0xa5, + 0x69, 0x6c, 0xfe, 0xf5, 0x96, 0x13, 0x24, 0x5e, 0xb2, 0xab, 0xa9, 0x05, 0xac, 0x1d, 0xb1, 0x14, + 0x8f, 0xb5, 0x9d, 0x77, 0x61, 0x44, 0x5f, 0x77, 0xc7, 0xda, 0xd6, 0x7b, 0x30, 0xd5, 0x61, 0x55, + 0x1d, 0x6b, 0x93, 0xf7, 0xe0, 0xd1, 0xae, 0xeb, 0xe3, 0x38, 0x1b, 0xb6, 0x7f, 0xdb, 0xd2, 0x59, + 0xe7, 0x09, 0x18, 0x5d, 0xae, 0x99, 0x46, 0x97, 0x73, 0x45, 0xf7, 0x50, 0x17, 0xcb, 0xcb, 0x86, + 0xde, 0x7d, 0x7a, 0x24, 0xa0, 0x75, 0x18, 0xf0, 0x69, 0x89, 0xbc, 0xf3, 0x3a, 0xdf, 0xcb, 0x2e, + 0x4d, 0x85, 0x12, 0x56, 0x1e, 0x63, 0x41, 0xcb, 0xfe, 0x9e, 0x05, 0x7d, 0x7f, 0x89, 0x11, 0x43, + 0x6d, 0xa4, 0x45, 0xe0, 0xfb, 0x3c, 0x76, 0xee, 0xad, 0xdc, 0x4f, 0x48, 0x10, 0x33, 0x19, 0xb4, + 0xdb, 0xad, 0xfd, 0x30, 0x6d, 0x4a, 0x3a, 0x61, 0xbc, 0x0a, 0xa3, 0xbe, 0x73, 0x87, 0xf8, 0xd2, + 0x60, 0x9c, 0xd5, 0xd8, 0xae, 0xea, 0x40, 0x6c, 0xe2, 0xd2, 0xca, 0x1b, 0xba, 0x3d, 0x5d, 0x08, + 0x49, 0xaa, 0xb2, 0x61, 0x6c, 0xc7, 0x26, 0x2e, 0x55, 0x19, 0xee, 0x39, 0x49, 0x63, 0x4b, 0x68, + 0x73, 0xaa, 0xbb, 0xb7, 0x69, 0x21, 0xe6, 0x30, 0xb4, 0x08, 0xe3, 0x72, 0xc5, 0xde, 0xa2, 0x6a, + 0x7e, 0x18, 0x08, 0x39, 0x53, 0x45, 0x1d, 0x63, 0x13, 0x8c, 0xb3, 0xf8, 0xe8, 0xe3, 0x30, 0x46, + 0x27, 0x27, 0x6c, 0x25, 0xd2, 0xc5, 0xa4, 0x9f, 0xb9, 0x98, 0x30, 0x0f, 0xe5, 0x75, 0x03, 0x82, + 0x33, 0x98, 0xf6, 0xdb, 0x30, 0x75, 0x35, 0x74, 0xdc, 0x25, 0xc7, 0x77, 0x82, 0x06, 0x89, 0xd6, + 0x82, 0xcd, 0xdc, 0xeb, 0x6b, 0xfd, 0x8a, 0xb9, 0x94, 0x77, 0xc5, 0x6c, 0x47, 0x80, 0xf4, 0x06, + 0x84, 0x73, 0xd4, 0x5b, 0x30, 0xe8, 0xf1, 0xa6, 0xc4, 0xb2, 0x7d, 0x21, 0xcf, 0x1e, 0xd5, 0xd6, + 0x47, 0xcd, 0xd9, 0x87, 0x17, 0x60, 0x49, 0x92, 0xaa, 0x20, 0x9d, 0x0c, 0x58, 0xf9, 0x5a, 0x9e, + 0xfd, 0xd7, 0x2d, 0x18, 0xbf, 0x9e, 0x09, 0x69, 0x7d, 0x1a, 0x06, 0x78, 0x62, 0x84, 0xac, 0x89, + 0xa5, 0xce, 0x4a, 0xb1, 0x80, 0x3e, 0x70, 0x0d, 0xff, 0x97, 0x4b, 0x50, 0x61, 0x6e, 0xb6, 0x4d, + 0xaa, 0x4e, 0x1c, 0xbf, 0x98, 0x7a, 0xcd, 0x10, 0x53, 0x73, 0xb4, 0x4c, 0xd5, 0xb1, 0x6e, 0x52, + 0x2a, 0xba, 0xa9, 0x42, 0x3d, 0x0b, 0x29, 0x98, 0x29, 0x41, 0x1e, 0x0e, 0x38, 0x66, 0x46, 0x86, + 0xca, 0x30, 0x50, 0x76, 0xe9, 0xab, 0x70, 0x1f, 0xba, 0x4b, 0x5f, 0xd5, 0xb3, 0x2e, 0xcc, 0xa9, + 0xa6, 0x75, 0x9e, 0xb1, 0xef, 0x4f, 0x32, 0xe7, 0x49, 0xc7, 0xf7, 0x3e, 0x4f, 0x54, 0xc4, 0xf4, + 0x9c, 0x70, 0x86, 0x14, 0xa5, 0x07, 0x8c, 0xcf, 0x88, 0x7f, 0x3c, 0x20, 0x3e, 0xad, 0x62, 0x5f, + 0x86, 0xf1, 0xcc, 0xd4, 0xa1, 0x97, 0xa1, 0xbf, 0xb9, 0xe5, 0xc4, 0x24, 0xe3, 0xc7, 0xd2, 0x5f, + 0xa3, 0x85, 0x07, 0x7b, 0x73, 0x63, 0xaa, 0x02, 0x2b, 0xc1, 0x1c, 0xdb, 0xfe, 0x72, 0x09, 0xfa, + 0xae, 0x87, 0xee, 0x49, 0x2c, 0xb5, 0xcb, 0xc6, 0x52, 0x7b, 0x3a, 0x3f, 0x9d, 0x46, 0xd7, 0x55, + 0x56, 0xcb, 0xac, 0xb2, 0x73, 0x05, 0x68, 0x1d, 0xbe, 0xc0, 0xb6, 0x61, 0x98, 0xa5, 0xeb, 0x10, + 0x8e, 0x3c, 0x2f, 0x1a, 0x9a, 0xd5, 0x5c, 0x46, 0xb3, 0x1a, 0xd7, 0x50, 0x35, 0xfd, 0xea, 0x19, + 0x18, 0x14, 0x8e, 0x23, 0x59, 0xd7, 0x51, 0x81, 0x8b, 0x25, 0xdc, 0xfe, 0x97, 0x65, 0x30, 0xd2, + 0x83, 0xa0, 0xdf, 0xb3, 0x60, 0x3e, 0xe2, 0x61, 0x38, 0x6e, 0xb5, 0x15, 0x79, 0xc1, 0x66, 0xbd, + 0xb1, 0x45, 0xdc, 0x96, 0xef, 0x05, 0x9b, 0x6b, 0x9b, 0x41, 0xa8, 0x8a, 0x57, 0xee, 0x93, 0x46, + 0x8b, 0xd9, 0x69, 0x0b, 0x67, 0x25, 0x51, 0x97, 0xa6, 0x17, 0xf6, 0xf7, 0xe6, 0xe6, 0x71, 0x4f, + 0xad, 0xe0, 0x1e, 0x7b, 0x85, 0xfe, 0xd8, 0x82, 0x05, 0x9e, 0x20, 0xa3, 0xf8, 0x48, 0x0a, 0x69, + 0xa4, 0x35, 0x49, 0x34, 0x25, 0xb7, 0x4e, 0xa2, 0xed, 0xa5, 0x57, 0xc4, 0x24, 0x2f, 0xd4, 0x7a, + 0x6b, 0x15, 0xf7, 0xda, 0x4d, 0xfb, 0xdf, 0x94, 0x61, 0x94, 0xce, 0x67, 0x1a, 0x14, 0xff, 0xb2, + 0xb1, 0x4c, 0x9e, 0xc8, 0x2c, 0x93, 0x49, 0x03, 0xf9, 0xc1, 0xc4, 0xc3, 0xc7, 0x30, 0xe9, 0x3b, + 0x71, 0x72, 0x99, 0x38, 0x51, 0x72, 0x87, 0x38, 0xec, 0x6e, 0x32, 0xeb, 0xf7, 0x50, 0xe0, 0xba, + 0x53, 0x39, 0x23, 0x5d, 0xcd, 0x12, 0xc3, 0xed, 0xf4, 0xd1, 0x0e, 0x20, 0x76, 0x0f, 0x1a, 0x39, + 0x41, 0xcc, 0xc7, 0xe2, 0x09, 0xbb, 0x6e, 0x6f, 0xad, 0xce, 0x8a, 0x56, 0xd1, 0xd5, 0x36, 0x6a, + 0xb8, 0x43, 0x0b, 0xda, 0x4d, 0x77, 0x7f, 0xd1, 0x9b, 0xee, 0x81, 0x1c, 0x9f, 0xed, 0xaf, 0x58, + 0x30, 0x45, 0x3f, 0x8b, 0xe9, 0xdf, 0x1b, 0xa3, 0x10, 0xc6, 0xe9, 0xb2, 0xf3, 0x49, 0x22, 0xcb, + 0xc4, 0xfe, 0xca, 0x91, 0xac, 0x4d, 0x3a, 0xa9, 0xf8, 0x76, 0xc5, 0x24, 0x86, 0xb3, 0xd4, 0xed, + 0x6f, 0x59, 0xc0, 0x3c, 0xee, 0x4e, 0xe0, 0x30, 0xbb, 0x64, 0x1e, 0x66, 0x76, 0x3e, 0xc7, 0xe8, + 0x72, 0x8e, 0xbd, 0x04, 0x13, 0x14, 0x5a, 0x8b, 0xc2, 0xfb, 0xbb, 0x52, 0xd0, 0xce, 0x37, 0xf0, + 0x7e, 0xa5, 0xc4, 0xb7, 0x8d, 0x8a, 0x27, 0x44, 0xbf, 0x60, 0xc1, 0x50, 0xc3, 0x69, 0x3a, 0x0d, + 0x9e, 0x5c, 0xa9, 0x80, 0x75, 0xc6, 0xa8, 0x3f, 0xbf, 0x2c, 0xea, 0x72, 0xcb, 0xc2, 0x47, 0xe4, + 0xd0, 0x65, 0x71, 0xae, 0x35, 0x41, 0x35, 0x3e, 0x7b, 0x17, 0x46, 0x0d, 0x62, 0xc7, 0xaa, 0x86, + 0xfe, 0x82, 0xc5, 0x99, 0xbe, 0x52, 0x15, 0xee, 0xc1, 0x64, 0xa0, 0xfd, 0xa7, 0xec, 0x4c, 0x4a, + 0xc6, 0xf3, 0xc5, 0xd9, 0x3a, 0xe3, 0x82, 0x9a, 0x77, 0x61, 0x86, 0x20, 0x6e, 0x6f, 0xc3, 0xfe, + 0x55, 0x0b, 0x1e, 0xd1, 0x11, 0xb5, 0x00, 0xd0, 0x3c, 0xbb, 0x71, 0x15, 0x86, 0xc2, 0x26, 0x89, + 0x9c, 0x54, 0x2d, 0x3a, 0x27, 0xe7, 0xff, 0x86, 0x28, 0x3f, 0xd8, 0x9b, 0x9b, 0xd6, 0xa9, 0xcb, + 0x72, 0xac, 0x6a, 0x22, 0x1b, 0x06, 0xd8, 0xbc, 0xc4, 0x22, 0x74, 0x97, 0x25, 0x1b, 0x62, 0x97, + 0x2a, 0x31, 0x16, 0x10, 0xfb, 0x6f, 0x59, 0x7c, 0xb9, 0xe9, 0x5d, 0x47, 0x5f, 0x80, 0x89, 0x6d, + 0xaa, 0x41, 0xad, 0xdc, 0x6f, 0xd2, 0x83, 0x94, 0x5d, 0x27, 0x5b, 0x45, 0x8e, 0x8f, 0x2e, 0xc3, + 0x5d, 0x9a, 0x11, 0xbd, 0x9f, 0xb8, 0x96, 0x21, 0x8b, 0xdb, 0x1a, 0xb2, 0xff, 0x61, 0x89, 0xef, + 0x59, 0x26, 0xc3, 0x3d, 0x03, 0x83, 0xcd, 0xd0, 0x5d, 0x5e, 0xab, 0x62, 0x31, 0x57, 0x8a, 0xe9, + 0xd4, 0x78, 0x31, 0x96, 0x70, 0x74, 0x01, 0x80, 0xdc, 0x4f, 0x48, 0x14, 0x38, 0xbe, 0xba, 0x06, + 0x56, 0xa2, 0xd2, 0x8a, 0x82, 0x60, 0x0d, 0x8b, 0xd6, 0x69, 0x46, 0xe1, 0x8e, 0xe7, 0xb2, 0xc8, + 0x85, 0xb2, 0x59, 0xa7, 0xa6, 0x20, 0x58, 0xc3, 0xa2, 0x7a, 0x6b, 0x2b, 0x88, 0xf9, 0x31, 0xe6, + 0xdc, 0x11, 0xb9, 0x71, 0x86, 0x52, 0xbd, 0xf5, 0xa6, 0x0e, 0xc4, 0x26, 0x2e, 0xba, 0x02, 0x03, + 0x89, 0xc3, 0x2e, 0x37, 0xfb, 0x8b, 0x78, 0x8a, 0xac, 0x53, 0x5c, 0x3d, 0x19, 0x11, 0xad, 0x8a, + 0x05, 0x09, 0xfb, 0x3f, 0x55, 0x00, 0x52, 0xa9, 0x0b, 0x7d, 0xb9, 0x7d, 0xc3, 0x7f, 0xb4, 0xa8, + 0xc8, 0xf6, 0xe0, 0x76, 0x3b, 0xfa, 0x9a, 0x05, 0xc3, 0x8e, 0xef, 0x87, 0x0d, 0x27, 0x61, 0xd3, + 0x53, 0x2a, 0xca, 0x7a, 0x44, 0x4f, 0x16, 0xd3, 0xba, 0xbc, 0x33, 0x2f, 0xca, 0x0b, 0x47, 0x0d, + 0x92, 0xdb, 0x1f, 0xbd, 0x0b, 0xe8, 0x23, 0x52, 0x6a, 0xe7, 0x5f, 0x78, 0x36, 0x2b, 0xb5, 0x57, + 0x18, 0xc3, 0xd5, 0x04, 0x76, 0xf4, 0xb6, 0x91, 0x4b, 0xa6, 0xaf, 0x48, 0xf8, 0xa9, 0x21, 0x87, + 0xe4, 0xa5, 0x91, 0x41, 0x6f, 0xea, 0x2e, 0xd5, 0xfd, 0x45, 0xe2, 0xbb, 0x35, 0x71, 0x38, 0xc7, + 0x9d, 0x3a, 0x81, 0x71, 0xd7, 0x3c, 0x79, 0x85, 0x5b, 0xd8, 0x0b, 0xf9, 0x2d, 0x64, 0x8e, 0xec, + 0xf4, 0xac, 0xcd, 0x00, 0x70, 0xb6, 0x09, 0xf4, 0x26, 0x77, 0x78, 0x5f, 0x0b, 0x36, 0x42, 0xe1, + 0x1a, 0x76, 0xbe, 0xc0, 0x37, 0xdf, 0x8d, 0x13, 0xb2, 0x4d, 0xeb, 0xa4, 0x87, 0xeb, 0x75, 0x41, + 0x05, 0x2b, 0x7a, 0x68, 0x1d, 0x06, 0x58, 0xb4, 0x51, 0x3c, 0x33, 0x54, 0xc4, 0x12, 0x67, 0x06, + 0xd9, 0xa6, 0xfb, 0x87, 0xfd, 0x8d, 0xb1, 0xa0, 0x85, 0x2e, 0xcb, 0x30, 0xfb, 0x78, 0x2d, 0xb8, + 0x19, 0x13, 0x16, 0x66, 0x5f, 0x59, 0xfa, 0x50, 0x1a, 0x37, 0xcf, 0xcb, 0x3b, 0x66, 0xd3, 0x33, + 0x6a, 0x52, 0xc1, 0x46, 0xfc, 0x97, 0x49, 0xfa, 0x66, 0xa0, 0x48, 0x47, 0xcd, 0x94, 0x7e, 0xe9, + 0x64, 0xdf, 0x32, 0x89, 0xe1, 0x2c, 0xf5, 0x13, 0x3d, 0x52, 0x67, 0x03, 0x98, 0xc8, 0x6e, 0xca, + 0x63, 0x3d, 0xc2, 0x7f, 0xd2, 0x07, 0x63, 0xe6, 0xe2, 0x40, 0x0b, 0x50, 0x11, 0x44, 0x54, 0xd2, + 0x2e, 0xb5, 0x07, 0xae, 0x49, 0x00, 0x4e, 0x71, 0x58, 0xfa, 0x32, 0x56, 0x5d, 0x73, 0x0a, 0x4a, + 0xd3, 0x97, 0x29, 0x08, 0xd6, 0xb0, 0xa8, 0x24, 0x7c, 0x27, 0x0c, 0x13, 0x75, 0x12, 0xa8, 0x75, + 0xb3, 0xc4, 0x4a, 0xb1, 0x80, 0xd2, 0x13, 0xe0, 0x2e, 0xfd, 0x98, 0xbe, 0x69, 0x55, 0x54, 0x27, + 0xc0, 0x15, 0x1d, 0x88, 0x4d, 0x5c, 0x7a, 0xa2, 0x85, 0x31, 0x5b, 0x88, 0x42, 0xde, 0x4e, 0x9d, + 0xac, 0xea, 0x3c, 0x02, 0x4f, 0xc2, 0xd1, 0x67, 0xe0, 0x11, 0x15, 0x30, 0x87, 0xb9, 0x95, 0x56, + 0xb6, 0x38, 0x60, 0xa8, 0xcc, 0x8f, 0x2c, 0x77, 0x46, 0xc3, 0xdd, 0xea, 0xa3, 0xd7, 0x60, 0x4c, + 0xc8, 0xca, 0x92, 0xe2, 0xa0, 0x79, 0x03, 0x7f, 0xc5, 0x80, 0xe2, 0x0c, 0x36, 0xaa, 0xc2, 0x04, + 0x2d, 0x61, 0x42, 0xaa, 0xa4, 0xc0, 0x03, 0xff, 0xd4, 0x51, 0x7f, 0x25, 0x03, 0xc7, 0x6d, 0x35, + 0xd0, 0x22, 0x8c, 0x73, 0x61, 0x85, 0x2a, 0x86, 0xec, 0x3b, 0x08, 0x7f, 0x4e, 0xb5, 0x11, 0x6e, + 0x98, 0x60, 0x9c, 0xc5, 0x47, 0x17, 0x61, 0xc4, 0x89, 0x1a, 0x5b, 0x5e, 0x42, 0x1a, 0x49, 0x2b, + 0xe2, 0x49, 0x2c, 0x34, 0x17, 0x86, 0x45, 0x0d, 0x86, 0x0d, 0x4c, 0xfb, 0xf3, 0x30, 0xd5, 0xc1, + 0x79, 0x9c, 0x2e, 0x1c, 0xa7, 0xe9, 0xc9, 0x31, 0x65, 0xdc, 0xa5, 0x16, 0x6b, 0x6b, 0x72, 0x34, + 0x1a, 0x16, 0x5d, 0x9d, 0xcc, 0x3c, 0xad, 0xe5, 0xd4, 0x54, 0xab, 0x73, 0x55, 0x02, 0x70, 0x8a, + 0x63, 0xff, 0x45, 0x05, 0x34, 0xeb, 0x4d, 0x01, 0x17, 0x99, 0x8b, 0x30, 0x22, 0xd3, 0xc4, 0x6a, + 0xe9, 0x19, 0xd5, 0x30, 0x2f, 0x69, 0x30, 0x6c, 0x60, 0xd2, 0xbe, 0x05, 0xd2, 0x26, 0x95, 0x75, + 0xce, 0x52, 0xc6, 0x2a, 0x9c, 0xe2, 0xa0, 0xf3, 0x30, 0x14, 0x13, 0x7f, 0xe3, 0xaa, 0x17, 0xdc, + 0x15, 0x0b, 0x5b, 0x71, 0xe6, 0xba, 0x28, 0xc7, 0x0a, 0x03, 0x2d, 0x41, 0xb9, 0xe5, 0xb9, 0x62, + 0x29, 0x4b, 0xb1, 0xa1, 0x7c, 0x73, 0xad, 0x7a, 0xb0, 0x37, 0xf7, 0x44, 0xb7, 0x9c, 0xb9, 0x54, + 0x3f, 0x8f, 0xe7, 0xe9, 0xf6, 0xa3, 0x95, 0x3b, 0xd9, 0xe9, 0x07, 0x7a, 0xb4, 0xd3, 0x5f, 0x00, + 0x10, 0xa3, 0x96, 0x6b, 0xb9, 0x9c, 0x7e, 0xb5, 0x4b, 0x0a, 0x82, 0x35, 0x2c, 0xaa, 0xe5, 0x37, + 0x22, 0xe2, 0x48, 0x45, 0x98, 0x3b, 0x35, 0x0f, 0x1d, 0x5d, 0xcb, 0x5f, 0xce, 0x12, 0xc3, 0xed, + 0xf4, 0x51, 0x08, 0x93, 0xae, 0x88, 0xca, 0x4c, 0x1b, 0xad, 0xf4, 0xee, 0x49, 0x4d, 0x1b, 0xac, + 0x66, 0x09, 0xe1, 0x76, 0xda, 0xe8, 0x73, 0x30, 0x2b, 0x0b, 0xdb, 0x43, 0x62, 0xd9, 0x76, 0x29, + 0x2f, 0x9d, 0xd9, 0xdf, 0x9b, 0x9b, 0xad, 0x76, 0xc5, 0xc2, 0x87, 0x50, 0x40, 0x6f, 0xc1, 0x00, + 0xbb, 0xd7, 0x89, 0x67, 0x86, 0xd9, 0x89, 0xf7, 0x52, 0x11, 0x7f, 0x7c, 0xba, 0xea, 0xe7, 0xd9, + 0xed, 0x90, 0xf0, 0x34, 0x4d, 0x2f, 0xcb, 0x58, 0x21, 0x16, 0x34, 0x51, 0x13, 0x86, 0x9d, 0x20, + 0x08, 0x13, 0x87, 0x0b, 0x62, 0x23, 0x45, 0x64, 0x49, 0xad, 0x89, 0xc5, 0xb4, 0x2e, 0x6f, 0x47, + 0x39, 0xaf, 0x69, 0x10, 0xac, 0x37, 0x81, 0xee, 0xc1, 0x78, 0x78, 0x8f, 0x32, 0x4c, 0x79, 0xb5, + 0x11, 0xcf, 0x8c, 0x9a, 0x03, 0xcb, 0x31, 0xd4, 0x1a, 0x95, 0x35, 0x4e, 0x66, 0x12, 0xc5, 0xd9, + 0x56, 0xd0, 0xbc, 0x61, 0xae, 0x1e, 0x4b, 0xfd, 0xa9, 0x53, 0x73, 0xb5, 0x6e, 0x9d, 0x66, 0x61, + 0xd7, 0xdc, 0x87, 0x92, 0x71, 0x84, 0xf1, 0x4c, 0xd8, 0x75, 0x0a, 0xc2, 0x3a, 0xde, 0xec, 0xc7, + 0x60, 0x58, 0x9b, 0xf8, 0x5e, 0x1c, 0x77, 0x67, 0x5f, 0x83, 0x89, 0xec, 0x84, 0xf6, 0xe4, 0xf8, + 0xfb, 0x3f, 0x4b, 0x30, 0xde, 0xe1, 0xde, 0xe8, 0xae, 0xc7, 0x9c, 0xcf, 0x0d, 0xd6, 0x77, 0xc5, + 0x0b, 0x5c, 0xcc, 0x20, 0x26, 0x03, 0x2b, 0x15, 0x60, 0x60, 0x92, 0x9b, 0x96, 0xbb, 0x72, 0x53, + 0xc1, 0xb4, 0xfa, 0xde, 0x0f, 0xd3, 0x32, 0xcf, 0x89, 0xfe, 0x42, 0xe7, 0xc4, 0x03, 0x60, 0x74, + 0xc6, 0x51, 0x33, 0x58, 0xe0, 0xa8, 0xf9, 0x66, 0x09, 0x26, 0x52, 0x27, 0x67, 0x91, 0x3b, 0xfa, + 0xf8, 0xaf, 0x21, 0xd6, 0x8d, 0x6b, 0x88, 0xbc, 0xd4, 0xd0, 0x99, 0xfe, 0x75, 0xbd, 0x92, 0x78, + 0x2b, 0x73, 0x25, 0xf1, 0x52, 0x8f, 0x74, 0x0f, 0xbf, 0x9e, 0xf8, 0x6e, 0x09, 0x4e, 0x65, 0xab, + 0x2c, 0xfb, 0x8e, 0xb7, 0x7d, 0x02, 0xf3, 0xf5, 0x19, 0x63, 0xbe, 0x5e, 0xe9, 0x6d, 0x5c, 0xac, + 0x93, 0x5d, 0x27, 0xcd, 0xc9, 0x4c, 0xda, 0xc7, 0x8e, 0x42, 0xfc, 0xf0, 0x99, 0xfb, 0x43, 0x0b, + 0x1e, 0xed, 0x58, 0xef, 0x04, 0x0c, 0xaf, 0x6f, 0x98, 0x86, 0xd7, 0x17, 0x8f, 0x30, 0xba, 0x2e, + 0x96, 0xd8, 0x5f, 0x2b, 0x77, 0x19, 0x15, 0x33, 0x4d, 0xdd, 0x80, 0x61, 0xa7, 0xd1, 0x20, 0x71, + 0x7c, 0x2d, 0x74, 0x55, 0x02, 0xa7, 0xe7, 0xd9, 0xd9, 0x92, 0x16, 0x1f, 0xec, 0xcd, 0xcd, 0x66, + 0x49, 0xa4, 0x60, 0xac, 0x53, 0x30, 0x53, 0xcb, 0x95, 0x8e, 0x29, 0xb5, 0xdc, 0x05, 0x80, 0x1d, + 0xa5, 0xc5, 0x66, 0x2d, 0x5e, 0x9a, 0x7e, 0xab, 0x61, 0xa1, 0xff, 0x9f, 0x49, 0x84, 0xdc, 0x49, + 0xa3, 0xcf, 0x8c, 0x97, 0xcc, 0xf9, 0x7e, 0xba, 0xc3, 0x07, 0x0f, 0xcb, 0x54, 0xd6, 0x41, 0x45, + 0x12, 0x7d, 0x0a, 0x26, 0x62, 0x1e, 0xfc, 0xbf, 0xec, 0x3b, 0x31, 0xf3, 0xee, 0x17, 0xfc, 0x94, + 0x45, 0x58, 0xd6, 0x33, 0x30, 0xdc, 0x86, 0x6d, 0x7f, 0xa7, 0x0c, 0x1f, 0x3c, 0x64, 0xd9, 0xa2, + 0x45, 0xf3, 0xd6, 0xf6, 0xb9, 0xac, 0xfd, 0x67, 0xb6, 0x63, 0x65, 0xc3, 0x20, 0x94, 0xf9, 0xda, + 0xa5, 0xf7, 0xfd, 0xb5, 0xbf, 0xae, 0x5b, 0xeb, 0xb8, 0xdf, 0xe6, 0xa5, 0x23, 0x6f, 0xcc, 0x9f, + 0x56, 0x63, 0xfd, 0x97, 0x2c, 0x78, 0xa2, 0xe3, 0xb0, 0x0c, 0x2f, 0x91, 0x05, 0xa8, 0x34, 0x68, + 0xa1, 0x16, 0x8b, 0x93, 0x06, 0xc1, 0x49, 0x00, 0x4e, 0x71, 0x0c, 0x67, 0x90, 0x52, 0xae, 0x33, + 0xc8, 0xef, 0x5b, 0x30, 0x9d, 0xed, 0xc4, 0x09, 0xf0, 0xad, 0xba, 0xc9, 0xb7, 0xe6, 0x7b, 0xfb, + 0xf8, 0x5d, 0x58, 0xd6, 0x7f, 0x1f, 0x83, 0xd3, 0x6d, 0xa7, 0x1e, 0x9f, 0xc5, 0x9f, 0xb3, 0x60, + 0x72, 0x93, 0x49, 0xef, 0x5a, 0xc0, 0x93, 0x18, 0x57, 0x4e, 0x94, 0xd8, 0xa1, 0x71, 0x52, 0x5c, + 0x17, 0x69, 0x43, 0xc1, 0xed, 0x8d, 0xa1, 0xaf, 0x5a, 0x30, 0xed, 0xdc, 0x8b, 0xdb, 0x5e, 0x36, + 0x11, 0x0b, 0xe9, 0xb5, 0x1c, 0x63, 0x59, 0xce, 0x9b, 0x28, 0x4b, 0x33, 0xfb, 0x7b, 0x73, 0xd3, + 0x9d, 0xb0, 0x70, 0xc7, 0x56, 0xe9, 0xf7, 0xdd, 0x12, 0xe1, 0x14, 0xc5, 0x42, 0xf7, 0x3a, 0x05, + 0x5f, 0x70, 0xb6, 0x26, 0x21, 0x58, 0x51, 0x44, 0xef, 0x40, 0x65, 0x53, 0xc6, 0x38, 0x65, 0xd9, + 0x66, 0x97, 0x69, 0xee, 0x14, 0x12, 0xc5, 0x7d, 0xf7, 0x15, 0x08, 0xa7, 0x44, 0xd1, 0x65, 0x28, + 0x07, 0x1b, 0xb1, 0x88, 0x26, 0xce, 0xf3, 0x01, 0x32, 0x3d, 0xaf, 0x78, 0x00, 0xe6, 0xf5, 0xd5, + 0x3a, 0xa6, 0x24, 0x28, 0xa5, 0xe8, 0x8e, 0x2b, 0xac, 0xc4, 0x39, 0x94, 0xf0, 0x52, 0xb5, 0x9d, + 0x12, 0x5e, 0xaa, 0x62, 0x4a, 0x02, 0xd5, 0xa0, 0x9f, 0x05, 0x6b, 0x08, 0x13, 0x70, 0x4e, 0xc8, + 0x79, 0x5b, 0x48, 0x0a, 0xcf, 0x80, 0xc8, 0x8a, 0x31, 0x27, 0x84, 0xd6, 0x61, 0xa0, 0xc1, 0x92, + 0xf8, 0x0b, 0xdd, 0x3c, 0x2f, 0x19, 0x43, 0x5b, 0xc2, 0x7f, 0x7e, 0xef, 0xc5, 0xcb, 0xb1, 0xa0, + 0xc5, 0xa8, 0x92, 0xe6, 0xd6, 0x46, 0x2c, 0x94, 0xef, 0x3c, 0xaa, 0x6d, 0xcf, 0x31, 0x08, 0xaa, + 0xac, 0x1c, 0x0b, 0x5a, 0xa8, 0x0a, 0xa5, 0x8d, 0x86, 0x48, 0xa4, 0x9a, 0x63, 0xfa, 0x35, 0xa3, + 0x69, 0x97, 0x06, 0xf6, 0xf7, 0xe6, 0x4a, 0xab, 0xcb, 0xb8, 0xb4, 0xd1, 0x40, 0x6f, 0xc0, 0xe0, + 0x06, 0x8f, 0x8f, 0x14, 0x49, 0x53, 0x5f, 0xc8, 0x0b, 0xe2, 0x6c, 0x0b, 0xa6, 0xe4, 0xf1, 0x19, + 0x02, 0x80, 0x25, 0x39, 0x96, 0x4f, 0x4e, 0x45, 0x7c, 0x8a, 0xac, 0xa9, 0xf3, 0xbd, 0x45, 0x88, + 0x0a, 0x9d, 0x54, 0x95, 0x62, 0x8d, 0x22, 0x5d, 0xf3, 0x8e, 0x7c, 0x8f, 0x84, 0x65, 0x4c, 0xcd, + 0x5d, 0xf3, 0x1d, 0x9f, 0x2f, 0xe1, 0x6b, 0x5e, 0x81, 0x70, 0x4a, 0x14, 0xb5, 0x60, 0x74, 0x27, + 0x6e, 0x6e, 0x11, 0xb9, 0xf5, 0x59, 0x1a, 0xd5, 0xe1, 0x0b, 0x9f, 0xc8, 0xc9, 0x8d, 0x2b, 0xaa, + 0x78, 0x51, 0xd2, 0x72, 0xfc, 0x36, 0x0e, 0xc6, 0x12, 0x78, 0xdd, 0xd2, 0xc9, 0x62, 0xb3, 0x15, + 0xfa, 0x49, 0xde, 0x6b, 0x85, 0x77, 0x76, 0x13, 0x22, 0xd2, 0xac, 0xe6, 0x7c, 0x92, 0xd7, 0x39, + 0x72, 0xfb, 0x27, 0x11, 0x00, 0x2c, 0xc9, 0xa9, 0x29, 0x63, 0xdc, 0x78, 0xa2, 0xf0, 0x94, 0xb5, + 0x8d, 0x21, 0x9d, 0x32, 0xc6, 0x7d, 0x53, 0xa2, 0x8c, 0xeb, 0x36, 0xb7, 0xc2, 0x24, 0x0c, 0x32, + 0xbc, 0x7f, 0xb2, 0x08, 0xd7, 0xad, 0x75, 0xa8, 0xd9, 0xce, 0x75, 0x3b, 0x61, 0xe1, 0x8e, 0xad, + 0xa2, 0x00, 0xc6, 0x9a, 0x61, 0x94, 0xdc, 0x0b, 0x23, 0xb9, 0x0e, 0x51, 0x21, 0x1d, 0xd1, 0xa8, + 0x23, 0xda, 0x66, 0x6e, 0xb8, 0x26, 0x04, 0x67, 0xa8, 0xd3, 0x4f, 0x17, 0x37, 0x1c, 0x9f, 0xac, + 0xdd, 0x98, 0x99, 0x2a, 0xf2, 0xe9, 0xea, 0x1c, 0xb9, 0xfd, 0xd3, 0x09, 0x00, 0x96, 0xe4, 0xec, + 0x5f, 0x1d, 0x68, 0x17, 0x1c, 0x98, 0x6a, 0xf0, 0x37, 0xdb, 0x6f, 0x62, 0x3f, 0xd5, 0xbb, 0x06, + 0xfc, 0x00, 0xef, 0x64, 0xbf, 0x6a, 0xc1, 0xe9, 0x66, 0x47, 0xb1, 0x40, 0x1c, 0xbd, 0xbd, 0x2a, + 0xd2, 0x7c, 0x5a, 0x54, 0x36, 0xe4, 0xce, 0x70, 0xdc, 0xa5, 0xcd, 0xac, 0x30, 0x5d, 0x7e, 0xdf, + 0xc2, 0xf4, 0x6d, 0x18, 0x62, 0xd2, 0x5f, 0x9a, 0xeb, 0xa4, 0xc7, 0xb4, 0x20, 0xec, 0x10, 0x5f, + 0x16, 0x24, 0xb0, 0x22, 0x46, 0x27, 0xee, 0xf1, 0xec, 0x20, 0x30, 0x61, 0x60, 0x91, 0x83, 0x8f, + 0x6b, 0x2a, 0xab, 0x62, 0x26, 0x1e, 0xaf, 0x1d, 0x86, 0x7c, 0x90, 0x87, 0x80, 0x0f, 0x6f, 0x0c, + 0x55, 0x3b, 0xa8, 0x4a, 0x03, 0xe6, 0xb5, 0x4b, 0xbe, 0xba, 0x74, 0xb2, 0x22, 0xfe, 0x3f, 0xb2, + 0x3a, 0x48, 0xa4, 0x5c, 0x2d, 0xfb, 0x84, 0xa9, 0x96, 0x3d, 0x9d, 0x55, 0xcb, 0xda, 0x8c, 0x31, + 0x86, 0x46, 0x56, 0x3c, 0x87, 0x68, 0xd1, 0x64, 0x2e, 0xb6, 0x0f, 0x67, 0xf3, 0xd8, 0x1d, 0x73, + 0xc5, 0x72, 0xd5, 0x25, 0x64, 0xea, 0x8a, 0xe5, 0xae, 0x55, 0x31, 0x83, 0x14, 0xcd, 0x07, 0x60, + 0xff, 0x7c, 0x09, 0xca, 0xb5, 0xd0, 0x3d, 0x01, 0xe3, 0xd2, 0x25, 0xc3, 0xb8, 0xf4, 0x54, 0xee, + 0xfb, 0x74, 0x5d, 0x4d, 0x49, 0x37, 0x32, 0xa6, 0xa4, 0x0f, 0xe7, 0x93, 0x3a, 0xdc, 0x70, 0xf4, + 0xbd, 0x32, 0xe8, 0x2f, 0xec, 0xa1, 0xff, 0x70, 0x14, 0x0f, 0xdd, 0x72, 0xb1, 0x47, 0xf7, 0x44, + 0x1b, 0xcc, 0x93, 0x4b, 0xc6, 0xf5, 0xfd, 0xd4, 0x3a, 0xea, 0xde, 0x26, 0xde, 0xe6, 0x56, 0x42, + 0xdc, 0xec, 0xc0, 0x4e, 0xce, 0x51, 0xf7, 0xcf, 0x2d, 0x18, 0xcf, 0xb4, 0x8e, 0xfc, 0x4e, 0x01, + 0x41, 0x47, 0x34, 0x17, 0x4d, 0xe6, 0x46, 0x10, 0xcd, 0x03, 0x28, 0xab, 0xbf, 0x34, 0xc9, 0x30, + 0xe9, 0x54, 0x5d, 0x0b, 0xc4, 0x58, 0xc3, 0x40, 0x2f, 0xc3, 0x70, 0x12, 0x36, 0x43, 0x3f, 0xdc, + 0xdc, 0xbd, 0x42, 0x64, 0xa6, 0x0a, 0x75, 0x63, 0xb2, 0x9e, 0x82, 0xb0, 0x8e, 0x67, 0x7f, 0xbf, + 0x0c, 0xd9, 0xf7, 0x19, 0xff, 0xdf, 0x3a, 0xfd, 0xe9, 0x59, 0xa7, 0x7f, 0x64, 0xc1, 0x04, 0x6d, + 0x9d, 0xb9, 0xce, 0x48, 0x87, 0x5a, 0xf5, 0xa0, 0x81, 0x75, 0xc8, 0x83, 0x06, 0x4f, 0x53, 0x6e, + 0xe7, 0x86, 0xad, 0x44, 0x18, 0x91, 0x34, 0x26, 0x46, 0x4b, 0xb1, 0x80, 0x0a, 0x3c, 0x12, 0x45, + 0x22, 0xf2, 0x48, 0xc7, 0x23, 0x51, 0x84, 0x05, 0x54, 0xbe, 0x77, 0xd0, 0xd7, 0xe5, 0xbd, 0x03, + 0x96, 0xeb, 0x49, 0xb8, 0x6b, 0x08, 0xb1, 0x42, 0xcb, 0xf5, 0x24, 0xfd, 0x38, 0x52, 0x1c, 0xfb, + 0xdb, 0x65, 0x18, 0xa9, 0x85, 0x6e, 0xea, 0x29, 0xff, 0x92, 0xe1, 0x29, 0x7f, 0x36, 0xe3, 0x29, + 0x3f, 0xa1, 0xe3, 0x3e, 0x18, 0x47, 0x79, 0x91, 0x13, 0x8c, 0xbd, 0xc8, 0x71, 0x44, 0x27, 0x79, + 0x23, 0x27, 0x98, 0x22, 0x84, 0x4d, 0xba, 0x3f, 0x4b, 0xce, 0xf1, 0xff, 0xdb, 0x82, 0xb1, 0x5a, + 0xe8, 0xd2, 0x05, 0xfa, 0xb3, 0xb4, 0x1a, 0xf5, 0x4c, 0x62, 0x03, 0x87, 0x64, 0x12, 0xfb, 0x75, + 0x0b, 0x06, 0x6b, 0xa1, 0x7b, 0x02, 0x06, 0xd6, 0x55, 0xd3, 0xc0, 0xfa, 0x44, 0x2e, 0xe7, 0xed, + 0x62, 0x53, 0xfd, 0x4e, 0x19, 0x46, 0x69, 0x8f, 0xc3, 0x4d, 0xf9, 0xbd, 0x8c, 0xb9, 0xb1, 0x0a, + 0xcc, 0x0d, 0x15, 0x09, 0x43, 0xdf, 0x0f, 0xef, 0x65, 0xbf, 0xdd, 0x2a, 0x2b, 0xc5, 0x02, 0x8a, + 0xce, 0xc3, 0x50, 0x33, 0x22, 0x3b, 0x5e, 0xd8, 0x8a, 0xb3, 0x51, 0x8c, 0x35, 0x51, 0x8e, 0x15, + 0x06, 0x7a, 0x09, 0x46, 0x62, 0x2f, 0x68, 0x10, 0xe9, 0xcc, 0xd1, 0xc7, 0x9c, 0x39, 0x78, 0xd2, + 0x46, 0xad, 0x1c, 0x1b, 0x58, 0xe8, 0x36, 0x54, 0xd8, 0x7f, 0xb6, 0x83, 0x7a, 0x7f, 0xb0, 0x80, + 0x67, 0x2a, 0x93, 0x04, 0x70, 0x4a, 0x0b, 0x5d, 0x00, 0x48, 0xa4, 0xdb, 0x49, 0x2c, 0xf2, 0xad, + 0x28, 0xb9, 0x54, 0x39, 0xa4, 0xc4, 0x58, 0xc3, 0x42, 0xcf, 0x41, 0x25, 0x71, 0x3c, 0xff, 0xaa, + 0x17, 0x90, 0x58, 0xb8, 0xed, 0x88, 0x04, 0xcc, 0xa2, 0x10, 0xa7, 0x70, 0x7a, 0xde, 0xb3, 0x18, + 0x6a, 0xfe, 0x18, 0xca, 0x10, 0xc3, 0x66, 0xe7, 0xfd, 0x55, 0x55, 0x8a, 0x35, 0x0c, 0xfb, 0x22, + 0x9c, 0xaa, 0x85, 0x6e, 0x2d, 0x8c, 0x92, 0xd5, 0x30, 0xba, 0xe7, 0x44, 0xae, 0xfc, 0x7e, 0x73, + 0x32, 0xef, 0x2f, 0x3d, 0x93, 0xfb, 0xb9, 0xcd, 0xd1, 0xc8, 0xe3, 0xfb, 0x22, 0x3b, 0xf1, 0x7b, + 0x0c, 0xc1, 0xf8, 0x51, 0x09, 0x50, 0x8d, 0x39, 0xc6, 0x18, 0x6f, 0xe7, 0x6c, 0xc1, 0x58, 0x4c, + 0xae, 0x7a, 0x41, 0xeb, 0xbe, 0x20, 0x55, 0x2c, 0xe6, 0xa5, 0xbe, 0xa2, 0xd7, 0xe1, 0x96, 0x0e, + 0xb3, 0x0c, 0x67, 0xe8, 0xd2, 0xc9, 0x8c, 0x5a, 0xc1, 0x62, 0x7c, 0x33, 0x26, 0x91, 0x78, 0x2b, + 0x86, 0x4d, 0x26, 0x96, 0x85, 0x38, 0x85, 0xd3, 0xc5, 0xc3, 0xfe, 0x5c, 0x0f, 0x03, 0x1c, 0x86, + 0x89, 0x5c, 0x6e, 0xec, 0xed, 0x00, 0xad, 0x1c, 0x1b, 0x58, 0x68, 0x15, 0x50, 0xdc, 0x6a, 0x36, + 0x7d, 0x76, 0xd7, 0xe8, 0xf8, 0x97, 0xa2, 0xb0, 0xd5, 0xe4, 0xfe, 0xd1, 0x22, 0xed, 0x7e, 0xbd, + 0x0d, 0x8a, 0x3b, 0xd4, 0xa0, 0xcc, 0x62, 0x23, 0x66, 0xbf, 0x45, 0x40, 0x35, 0xb7, 0x57, 0xd6, + 0x59, 0x11, 0x96, 0x30, 0xfb, 0x8b, 0xec, 0x80, 0x63, 0x8f, 0x78, 0x24, 0xad, 0x88, 0xa0, 0x6d, + 0x18, 0x6d, 0xb2, 0x43, 0x2c, 0x89, 0x42, 0xdf, 0x27, 0x52, 0xbe, 0x3c, 0x9a, 0x6b, 0x0e, 0x4f, + 0xdb, 0xaf, 0x93, 0xc3, 0x26, 0x75, 0xfb, 0x17, 0xc7, 0x18, 0xaf, 0x12, 0xd7, 0xbd, 0x83, 0xc2, + 0x09, 0x57, 0x48, 0x72, 0x1f, 0x2a, 0xf2, 0x1c, 0x57, 0x7a, 0x0e, 0x08, 0x97, 0x5e, 0x2c, 0xa9, + 0xa0, 0xcf, 0x32, 0x17, 0x73, 0xce, 0x20, 0x8a, 0x3f, 0x32, 0xc8, 0xf1, 0x0d, 0xf7, 0x72, 0x41, + 0x02, 0x6b, 0xe4, 0xd0, 0x55, 0x18, 0x15, 0x6f, 0x3e, 0x08, 0x33, 0x45, 0xd9, 0x50, 0xb1, 0x47, + 0xb1, 0x0e, 0x3c, 0xc8, 0x16, 0x60, 0xb3, 0x32, 0xda, 0x84, 0xc7, 0xb5, 0x37, 0x8d, 0x3a, 0xb8, + 0x91, 0x71, 0xce, 0xf3, 0xc4, 0xfe, 0xde, 0xdc, 0xe3, 0xeb, 0x87, 0x21, 0xe2, 0xc3, 0xe9, 0xa0, + 0x1b, 0x70, 0xca, 0x69, 0x24, 0xde, 0x0e, 0xa9, 0x12, 0xc7, 0xf5, 0xbd, 0x80, 0x98, 0x51, 0xf7, + 0x8f, 0xee, 0xef, 0xcd, 0x9d, 0x5a, 0xec, 0x84, 0x80, 0x3b, 0xd7, 0x43, 0x9f, 0x80, 0x8a, 0x1b, + 0xc4, 0x62, 0x0e, 0x06, 0x8c, 0x27, 0xbc, 0x2a, 0xd5, 0xeb, 0x75, 0x35, 0xfe, 0xf4, 0x0f, 0x4e, + 0x2b, 0xa0, 0xf7, 0xf8, 0x13, 0xf5, 0x4a, 0x9b, 0xe1, 0x4f, 0xc7, 0xbd, 0x52, 0x48, 0x7f, 0x36, + 0x62, 0x61, 0xb8, 0x05, 0x4f, 0xb9, 0x6b, 0x1a, 0x61, 0x32, 0x46, 0x13, 0xe8, 0xd3, 0x80, 0x62, + 0x12, 0xed, 0x78, 0x0d, 0xb2, 0xd8, 0x60, 0x99, 0x4e, 0x99, 0x8d, 0x67, 0xc8, 0x88, 0x5b, 0x40, + 0xf5, 0x36, 0x0c, 0xdc, 0xa1, 0x16, 0xba, 0x4c, 0x39, 0x8f, 0x5e, 0x2a, 0xbc, 0x6b, 0xa5, 0x60, + 0x38, 0x53, 0x25, 0xcd, 0x88, 0x34, 0x9c, 0x84, 0xb8, 0x26, 0x45, 0x9c, 0xa9, 0x47, 0xcf, 0x25, + 0x95, 0xcc, 0x1e, 0x4c, 0x9f, 0xd0, 0xf6, 0x84, 0xf6, 0x54, 0xcf, 0xda, 0x0a, 0xe3, 0xe4, 0x3a, + 0x49, 0xee, 0x85, 0xd1, 0x5d, 0x76, 0x87, 0x31, 0xa4, 0xa5, 0x8d, 0x4b, 0x41, 0x58, 0xc7, 0xa3, + 0x32, 0x14, 0xbb, 0x3c, 0x5b, 0xab, 0xb2, 0x9b, 0x89, 0xa1, 0x74, 0xef, 0x5c, 0xe6, 0xc5, 0x58, + 0xc2, 0x25, 0xea, 0x5a, 0x6d, 0x99, 0xdd, 0x32, 0x64, 0x50, 0xd7, 0x6a, 0xcb, 0x58, 0xc2, 0x51, + 0xd8, 0xfe, 0x50, 0xda, 0x58, 0x91, 0x1b, 0x9f, 0x76, 0x4e, 0x5e, 0xf0, 0xad, 0xb4, 0xfb, 0x30, + 0xa1, 0x1e, 0x6b, 0xe3, 0x19, 0x3d, 0xe3, 0x99, 0xf1, 0x22, 0x0f, 0xe4, 0x77, 0x4c, 0x0c, 0xaa, + 0xec, 0x7a, 0x6b, 0x19, 0x9a, 0xb8, 0xad, 0x15, 0x23, 0x7b, 0xc4, 0x44, 0xee, 0x03, 0x05, 0x0b, + 0x50, 0x89, 0x5b, 0x77, 0xdc, 0x70, 0xdb, 0xf1, 0x02, 0x76, 0x15, 0xa0, 0x3f, 0xf7, 0x2e, 0x01, + 0x38, 0xc5, 0x41, 0x35, 0x18, 0x72, 0x84, 0x0a, 0x27, 0x4c, 0xf6, 0x39, 0xd1, 0xe5, 0x52, 0xe1, + 0xe3, 0xd6, 0x55, 0xf9, 0x0f, 0x2b, 0x2a, 0xe8, 0x55, 0x18, 0x15, 0xc1, 0x51, 0xc2, 0x89, 0x71, + 0xca, 0x74, 0xa4, 0xaf, 0xeb, 0x40, 0x6c, 0xe2, 0xa2, 0x4d, 0x18, 0xa3, 0x54, 0x52, 0x06, 0x38, + 0x33, 0xdd, 0x1b, 0x0f, 0xd5, 0x52, 0x41, 0xeb, 0x64, 0x70, 0x86, 0x2c, 0x72, 0xe1, 0x31, 0xa7, + 0x95, 0x84, 0xdb, 0x74, 0x27, 0x98, 0xfb, 0x64, 0x3d, 0xbc, 0x4b, 0x82, 0x99, 0x53, 0x6c, 0x05, + 0x9e, 0xdd, 0xdf, 0x9b, 0x7b, 0x6c, 0xf1, 0x10, 0x3c, 0x7c, 0x28, 0x15, 0xf4, 0x36, 0x0c, 0x27, + 0xa1, 0x2f, 0x7c, 0x93, 0xe3, 0x99, 0xd3, 0x45, 0x72, 0xda, 0xac, 0xab, 0x0a, 0xba, 0x19, 0x43, + 0x11, 0xc1, 0x3a, 0xc5, 0xd9, 0x4f, 0xc2, 0x64, 0x1b, 0x4b, 0xea, 0xc9, 0x7d, 0xf3, 0x3f, 0xf6, + 0x43, 0x45, 0x59, 0xf4, 0xd0, 0x82, 0x69, 0xbc, 0x7d, 0x34, 0x6b, 0xbc, 0x1d, 0xa2, 0x02, 0x94, + 0x6e, 0xaf, 0xfd, 0x5c, 0x87, 0xe7, 0xb9, 0x9f, 0xcd, 0xdd, 0x83, 0xc5, 0x23, 0xaa, 0x7a, 0x78, + 0xc4, 0x3c, 0xd5, 0xea, 0xfa, 0x0e, 0xd5, 0xea, 0x0a, 0x3e, 0x39, 0x47, 0xf5, 0xb7, 0x66, 0xe8, + 0xae, 0xd5, 0xb2, 0x2f, 0x2a, 0xd5, 0x68, 0x21, 0xe6, 0x30, 0x26, 0x77, 0xd3, 0x33, 0x95, 0xc9, + 0xdd, 0x83, 0x47, 0x94, 0xbb, 0x25, 0x01, 0x9c, 0xd2, 0x42, 0x3b, 0x30, 0xd9, 0x30, 0x1f, 0xc8, + 0x52, 0x71, 0x52, 0xcf, 0xf7, 0xf0, 0x40, 0x55, 0x4b, 0x7b, 0x3d, 0x63, 0x39, 0x4b, 0x0f, 0xb7, + 0x37, 0x81, 0x5e, 0x85, 0xa1, 0xf7, 0xc2, 0x98, 0x5d, 0x2b, 0x88, 0x83, 0x45, 0xc6, 0xa3, 0x0c, + 0xbd, 0x7e, 0xa3, 0xce, 0xca, 0x0f, 0xf6, 0xe6, 0x86, 0x6b, 0xa1, 0x2b, 0xff, 0x62, 0x55, 0x01, + 0x7d, 0xc9, 0x82, 0x53, 0xc6, 0x3e, 0x53, 0x3d, 0x87, 0xa3, 0xf4, 0xfc, 0x71, 0xd1, 0xf2, 0xa9, + 0xb5, 0x4e, 0x34, 0x71, 0xe7, 0xa6, 0xec, 0xdf, 0xe5, 0x26, 0x4c, 0x61, 0xd4, 0x20, 0x71, 0xcb, + 0x3f, 0x89, 0x4c, 0xf6, 0x37, 0x0c, 0x7b, 0xcb, 0x03, 0x30, 0xa2, 0xff, 0x7b, 0x8b, 0x19, 0xd1, + 0xd7, 0xc9, 0x76, 0xd3, 0x77, 0x92, 0x93, 0xf0, 0xee, 0xfd, 0x2c, 0x0c, 0x25, 0xa2, 0xb5, 0x62, + 0x69, 0xf8, 0xb5, 0xee, 0xb1, 0xcb, 0x05, 0x75, 0x30, 0xc9, 0x52, 0xac, 0x08, 0xda, 0xff, 0x9a, + 0x7f, 0x15, 0x09, 0x39, 0x01, 0x4b, 0xc1, 0x75, 0xd3, 0x52, 0xf0, 0x4c, 0xe1, 0xb1, 0x74, 0xb1, + 0x18, 0x7c, 0xdf, 0x1c, 0x01, 0xd3, 0x1f, 0x7e, 0x7a, 0x6e, 0x79, 0xec, 0x5f, 0xb1, 0x60, 0xba, + 0xd3, 0x75, 0x3b, 0x15, 0x30, 0xb8, 0xf6, 0xa2, 0xee, 0xbf, 0xd4, 0xac, 0xde, 0x12, 0xe5, 0x58, + 0x61, 0x14, 0xce, 0x8b, 0xdd, 0x5b, 0xea, 0xa6, 0x1b, 0x60, 0x3e, 0xb5, 0x86, 0x5e, 0xe3, 0xce, + 0xfc, 0x96, 0x7a, 0x0b, 0xad, 0x37, 0x47, 0x7e, 0xfb, 0x37, 0x4a, 0x30, 0xcd, 0x8d, 0xd0, 0x8b, + 0x3b, 0xa1, 0xe7, 0xd6, 0x42, 0x57, 0x84, 0x36, 0xb8, 0x30, 0xd2, 0xd4, 0x94, 0xcf, 0x62, 0xa9, + 0x60, 0x74, 0x75, 0x35, 0x15, 0xf8, 0xf5, 0x52, 0x6c, 0x50, 0xa5, 0xad, 0x90, 0x1d, 0xaf, 0xa1, + 0x6c, 0x9a, 0xa5, 0x9e, 0x4f, 0x06, 0xd5, 0xca, 0x8a, 0x46, 0x07, 0x1b, 0x54, 0x8f, 0xe1, 0x39, + 0x0b, 0xfb, 0x1f, 0x58, 0xf0, 0x48, 0x97, 0x74, 0x31, 0xb4, 0xb9, 0x7b, 0xcc, 0xf0, 0x2f, 0xde, + 0xf2, 0x53, 0xcd, 0xf1, 0xeb, 0x00, 0x2c, 0xa0, 0xe8, 0x0e, 0x00, 0x37, 0xe7, 0xb3, 0x97, 0xdd, + 0x4b, 0x45, 0xfc, 0x91, 0xda, 0x92, 0x32, 0x68, 0xf1, 0xfa, 0xea, 0x2d, 0x77, 0x8d, 0xaa, 0xfd, + 0xad, 0x32, 0xf4, 0xf3, 0x27, 0xa3, 0x6b, 0x30, 0xb8, 0xc5, 0xd3, 0xd7, 0xf6, 0x96, 0x3d, 0x37, + 0x55, 0x2e, 0x78, 0x01, 0x96, 0x64, 0xd0, 0x35, 0x98, 0xa2, 0x27, 0x8b, 0xe7, 0xf8, 0x55, 0xe2, + 0x3b, 0xbb, 0x52, 0x5b, 0xe5, 0x6f, 0x1c, 0xc8, 0x64, 0xdc, 0x53, 0x6b, 0xed, 0x28, 0xb8, 0x53, + 0x3d, 0xf4, 0x5a, 0x5b, 0xb6, 0x39, 0x9e, 0x16, 0x58, 0x49, 0xaa, 0x87, 0x67, 0x9c, 0xa3, 0xf2, + 0x74, 0xb3, 0x4d, 0x2f, 0xd7, 0x5e, 0xe6, 0x35, 0x75, 0x71, 0x13, 0x97, 0xf9, 0x16, 0xb4, 0x98, + 0x4f, 0xc5, 0xfa, 0x56, 0x44, 0xe2, 0xad, 0xd0, 0x77, 0xc5, 0xa3, 0x92, 0xa9, 0x6f, 0x41, 0x06, + 0x8e, 0xdb, 0x6a, 0x50, 0x2a, 0x1b, 0x8e, 0xe7, 0xb7, 0x22, 0x92, 0x52, 0x19, 0x30, 0xa9, 0xac, + 0x66, 0xe0, 0xb8, 0xad, 0x06, 0x5d, 0x5b, 0xa7, 0xc4, 0x3b, 0x84, 0x32, 0x38, 0x5a, 0xb0, 0xa0, + 0xcf, 0xc0, 0xa0, 0x74, 0x91, 0x2f, 0x94, 0xc3, 0x43, 0x38, 0x0e, 0xa8, 0x37, 0x0d, 0xb5, 0x37, + 0xaf, 0x84, 0x73, 0xbc, 0xa4, 0x77, 0x94, 0xf7, 0xee, 0xfe, 0xcc, 0x82, 0xa9, 0x0e, 0xae, 0x5e, + 0x9c, 0xa5, 0x6d, 0x7a, 0x71, 0xa2, 0x32, 0xee, 0x6b, 0x2c, 0x8d, 0x97, 0x63, 0x85, 0x41, 0x77, + 0x0b, 0x67, 0x9a, 0x59, 0x46, 0x29, 0x5c, 0x40, 0x04, 0xb4, 0x37, 0x46, 0x89, 0xce, 0x42, 0x5f, + 0x2b, 0x26, 0x91, 0x7c, 0x7c, 0x4e, 0xf2, 0x79, 0x66, 0x07, 0x64, 0x10, 0x2a, 0xb6, 0x6e, 0x2a, + 0x13, 0x9c, 0x26, 0xb6, 0x72, 0x23, 0x1c, 0x87, 0xd9, 0x5f, 0x2f, 0xc3, 0x78, 0xc6, 0xe5, 0x93, + 0x76, 0x64, 0x3b, 0x0c, 0xbc, 0x24, 0x54, 0x79, 0xd5, 0xf8, 0x7b, 0x57, 0xa4, 0xb9, 0x75, 0x4d, + 0x94, 0x63, 0x85, 0x81, 0x9e, 0x96, 0xef, 0x8d, 0x66, 0x5f, 0x12, 0x58, 0xaa, 0x1a, 0x4f, 0x8e, + 0x16, 0x7d, 0x05, 0xe4, 0x49, 0xe8, 0x6b, 0x86, 0xea, 0xf9, 0x68, 0xf5, 0x3d, 0xf1, 0x52, 0xb5, + 0x16, 0x86, 0x3e, 0x66, 0x40, 0xf4, 0x94, 0x18, 0x7d, 0xe6, 0xe6, 0x02, 0x3b, 0x6e, 0x18, 0x6b, + 0x53, 0xf0, 0x0c, 0x0c, 0xde, 0x25, 0xbb, 0x91, 0x17, 0x6c, 0x66, 0xef, 0x6d, 0xae, 0xf0, 0x62, + 0x2c, 0xe1, 0xe6, 0x4b, 0x1f, 0x83, 0xc7, 0xfc, 0xd2, 0xc7, 0x50, 0xee, 0x39, 0xf8, 0x1d, 0x0b, + 0xc6, 0x59, 0xb2, 0x51, 0x11, 0x9a, 0xef, 0x85, 0xc1, 0x09, 0xc8, 0x18, 0x4f, 0x42, 0x7f, 0x44, + 0x1b, 0xcd, 0xa6, 0xea, 0x67, 0x3d, 0xc1, 0x1c, 0x86, 0x1e, 0x83, 0x3e, 0xd6, 0x05, 0xfa, 0x19, + 0x47, 0x78, 0x4e, 0xf3, 0xaa, 0x93, 0x38, 0x98, 0x95, 0xb2, 0x28, 0x2b, 0x4c, 0x9a, 0xbe, 0xc7, + 0x3b, 0x9d, 0x9a, 0x5b, 0x1f, 0xb6, 0x28, 0xab, 0x8e, 0x9d, 0x7c, 0x50, 0x51, 0x56, 0x9d, 0x89, + 0x1f, 0x2e, 0xe7, 0xff, 0x8f, 0x12, 0x9c, 0xe9, 0x58, 0x2f, 0xbd, 0x01, 0x5e, 0x35, 0x6e, 0x80, + 0x2f, 0x64, 0x6e, 0x80, 0xed, 0xc3, 0x6b, 0x3f, 0x98, 0x3b, 0xe1, 0xce, 0x57, 0xb5, 0xe5, 0x13, + 0xbc, 0xaa, 0xed, 0x2b, 0x2a, 0xe2, 0xf4, 0xe7, 0x88, 0x38, 0x7f, 0x68, 0xc1, 0xa3, 0x1d, 0xa7, + 0xec, 0xa1, 0x0b, 0x6b, 0xeb, 0xd8, 0xcb, 0x2e, 0xda, 0xc9, 0x2f, 0x97, 0xbb, 0x8c, 0x8a, 0xe9, + 0x29, 0xe7, 0x28, 0x17, 0x62, 0xc0, 0x58, 0x08, 0x6f, 0x23, 0x9c, 0x03, 0xf1, 0x32, 0xac, 0xa0, + 0x28, 0xd6, 0xc2, 0xc2, 0x78, 0x27, 0x57, 0x8e, 0xb8, 0xa1, 0xe6, 0x4d, 0x3b, 0xb9, 0x9e, 0x6f, + 0x20, 0x1b, 0x2c, 0x76, 0x5b, 0xd3, 0x3c, 0xcb, 0x47, 0xd1, 0x3c, 0x47, 0x3a, 0x6b, 0x9d, 0x68, + 0x11, 0xc6, 0xb7, 0xbd, 0x80, 0x3d, 0x10, 0x6a, 0x4a, 0x4f, 0x2a, 0x36, 0xf7, 0x9a, 0x09, 0xc6, + 0x59, 0xfc, 0xd9, 0x57, 0x61, 0xf4, 0xe8, 0xd6, 0xb5, 0x1f, 0x97, 0xe1, 0x83, 0x87, 0x30, 0x05, + 0x7e, 0x3a, 0x18, 0xdf, 0x45, 0x3b, 0x1d, 0xda, 0xbe, 0x4d, 0x0d, 0xa6, 0x37, 0x5a, 0xbe, 0xbf, + 0xcb, 0xfc, 0xa7, 0x88, 0x2b, 0x31, 0x84, 0x50, 0xa3, 0x5e, 0x22, 0x5f, 0xed, 0x80, 0x83, 0x3b, + 0xd6, 0x44, 0x9f, 0x06, 0x14, 0xde, 0x61, 0xe9, 0x78, 0xdd, 0x34, 0x9f, 0x02, 0xfb, 0x04, 0xe5, + 0x74, 0xab, 0xde, 0x68, 0xc3, 0xc0, 0x1d, 0x6a, 0x51, 0x39, 0x95, 0x3d, 0x62, 0xae, 0xba, 0x95, + 0x91, 0x53, 0xb1, 0x0e, 0xc4, 0x26, 0x2e, 0xba, 0x04, 0x93, 0xce, 0x8e, 0xe3, 0xf1, 0xf4, 0x5a, + 0x92, 0x00, 0x17, 0x54, 0x95, 0xfd, 0x6a, 0x31, 0x8b, 0x80, 0xdb, 0xeb, 0xa0, 0xa6, 0x61, 0x90, + 0xe4, 0x89, 0xf8, 0x3f, 0x71, 0x84, 0x15, 0x5c, 0xd8, 0x44, 0x69, 0xff, 0x57, 0x8b, 0x1e, 0x7d, + 0x1d, 0xde, 0x92, 0xa4, 0x33, 0xa2, 0x0c, 0x6c, 0x5a, 0x98, 0x9b, 0x9a, 0x91, 0x65, 0x1d, 0x88, + 0x4d, 0x5c, 0xbe, 0x34, 0xe2, 0xd4, 0x9d, 0xdb, 0x90, 0x36, 0x45, 0x84, 0xa8, 0xc2, 0xa0, 0x12, + 0xb4, 0xeb, 0xed, 0x78, 0x71, 0x18, 0x89, 0x0d, 0xd4, 0xa3, 0x73, 0x6f, 0xca, 0x2f, 0xab, 0x9c, + 0x0c, 0x96, 0xf4, 0xec, 0x6f, 0x94, 0x60, 0x54, 0xb6, 0xf8, 0x7a, 0x2b, 0x4c, 0x9c, 0x13, 0x38, + 0xd2, 0x5f, 0x37, 0x8e, 0xf4, 0x85, 0x62, 0x01, 0xb3, 0xac, 0x73, 0x5d, 0x8f, 0xf2, 0xcf, 0x64, + 0x8e, 0xf2, 0x17, 0x7a, 0x21, 0x7a, 0xf8, 0x11, 0xfe, 0x6f, 0x2d, 0x98, 0x34, 0xf0, 0x4f, 0xe0, + 0x24, 0xa9, 0x99, 0x27, 0xc9, 0x73, 0x3d, 0x8c, 0xa6, 0xcb, 0x09, 0xf2, 0xed, 0x52, 0x66, 0x14, + 0xec, 0xe4, 0xf8, 0x02, 0xf4, 0x6d, 0x39, 0x91, 0x5b, 0x2c, 0xd7, 0x64, 0x5b, 0xf5, 0xf9, 0xcb, + 0x4e, 0xe4, 0x72, 0xfe, 0x7f, 0x5e, 0xbd, 0x74, 0xe5, 0x44, 0x6e, 0x6e, 0x94, 0x03, 0x6b, 0x14, + 0x5d, 0x84, 0x81, 0xb8, 0x11, 0x36, 0x95, 0x1f, 0xe8, 0x59, 0xfe, 0x0a, 0x16, 0x2d, 0x39, 0xd8, + 0x9b, 0x43, 0x66, 0x73, 0xb4, 0x18, 0x0b, 0xfc, 0xd9, 0x4d, 0xa8, 0xa8, 0xa6, 0x8f, 0xd5, 0x13, + 0xfe, 0xbf, 0x95, 0x61, 0xaa, 0xc3, 0x5a, 0x41, 0x5f, 0x34, 0xe6, 0xed, 0xd5, 0x9e, 0x17, 0xdb, + 0xfb, 0x9c, 0xb9, 0x2f, 0x32, 0x4d, 0xc9, 0x15, 0xab, 0xe3, 0x08, 0xcd, 0xdf, 0x8c, 0x49, 0xb6, + 0x79, 0x5a, 0x94, 0xdf, 0x3c, 0x6d, 0xf6, 0xc4, 0xa6, 0x9f, 0x36, 0xa4, 0x7a, 0x7a, 0xac, 0xdf, + 0xf9, 0xaf, 0xf5, 0xc1, 0x74, 0xa7, 0xc8, 0x7c, 0xf4, 0x15, 0x2b, 0xf3, 0xa0, 0xc4, 0x6b, 0xbd, + 0x87, 0xf7, 0xf3, 0x57, 0x26, 0x44, 0x36, 0x9b, 0x79, 0xf3, 0x89, 0x89, 0xdc, 0x19, 0x17, 0xad, + 0xb3, 0xf8, 0xa4, 0x88, 0x3f, 0x0e, 0x22, 0xb9, 0xc2, 0xa7, 0x8e, 0xd0, 0x15, 0xf1, 0xbe, 0x48, + 0x9c, 0x89, 0x4f, 0x92, 0xc5, 0xf9, 0xf1, 0x49, 0xb2, 0x0f, 0xb3, 0x1e, 0x0c, 0x6b, 0xe3, 0x3a, + 0xd6, 0x65, 0x70, 0x97, 0x1e, 0x51, 0x5a, 0xbf, 0x8f, 0x75, 0x29, 0xfc, 0x5d, 0x0b, 0x32, 0x4e, + 0x5b, 0xca, 0x2c, 0x63, 0x75, 0x35, 0xcb, 0x9c, 0x85, 0xbe, 0x28, 0xf4, 0x49, 0xf6, 0xb1, 0x03, + 0x1c, 0xfa, 0x04, 0x33, 0x88, 0x7a, 0xfc, 0xb6, 0xdc, 0xed, 0xf1, 0x5b, 0xaa, 0xa7, 0xfb, 0x64, + 0x87, 0x48, 0x23, 0x89, 0x62, 0xe3, 0x57, 0x69, 0x21, 0xe6, 0x30, 0xfb, 0xb7, 0xfa, 0x60, 0xaa, + 0x43, 0xb4, 0x1b, 0xd5, 0x90, 0x36, 0x9d, 0x84, 0xdc, 0x73, 0x76, 0xb3, 0x49, 0x57, 0x2f, 0xf1, + 0x62, 0x2c, 0xe1, 0xcc, 0xd9, 0x94, 0x27, 0x6e, 0xcb, 0x98, 0xae, 0x44, 0xbe, 0x36, 0x01, 0x3d, + 0xfe, 0x67, 0x52, 0x2f, 0x00, 0xc4, 0xb1, 0xbf, 0x12, 0x50, 0x09, 0xcf, 0x15, 0x4e, 0xad, 0x69, + 0xbe, 0xbf, 0xfa, 0x55, 0x01, 0xc1, 0x1a, 0x16, 0xaa, 0xc2, 0x44, 0x33, 0x0a, 0x13, 0x6e, 0x18, + 0xac, 0x72, 0x47, 0x88, 0x7e, 0x33, 0x9a, 0xaa, 0x96, 0x81, 0xe3, 0xb6, 0x1a, 0xe8, 0x65, 0x18, + 0x16, 0x11, 0x56, 0xb5, 0x30, 0xf4, 0x85, 0x19, 0x49, 0x5d, 0xc7, 0xd7, 0x53, 0x10, 0xd6, 0xf1, + 0xb4, 0x6a, 0xcc, 0xda, 0x38, 0xd8, 0xb1, 0x1a, 0xb7, 0x38, 0x6a, 0x78, 0x99, 0xfc, 0x1d, 0x43, + 0x85, 0xf2, 0x77, 0xa4, 0x86, 0xb5, 0x4a, 0xe1, 0x8b, 0x18, 0xc8, 0x35, 0x40, 0xfd, 0x41, 0x19, + 0x06, 0xf8, 0xa7, 0x38, 0x01, 0x29, 0xaf, 0x26, 0x4c, 0x4a, 0x85, 0x72, 0x25, 0xf0, 0x5e, 0xcd, + 0x57, 0x9d, 0xc4, 0xe1, 0xac, 0x49, 0xed, 0x90, 0xd4, 0x0c, 0x85, 0xe6, 0x8d, 0x3d, 0x34, 0x9b, + 0xb1, 0x94, 0x00, 0xa7, 0xa1, 0xed, 0xa8, 0x2d, 0x80, 0x98, 0x3d, 0xd5, 0x49, 0x69, 0x88, 0x8c, + 0xb0, 0x2f, 0x15, 0xea, 0x47, 0x5d, 0x55, 0xe3, 0xbd, 0x49, 0x97, 0xa5, 0x02, 0x60, 0x8d, 0xf6, + 0xec, 0x2b, 0x50, 0x51, 0xc8, 0x79, 0x2a, 0xe4, 0x88, 0xce, 0xda, 0xfe, 0x3f, 0x18, 0xcf, 0xb4, + 0xd5, 0x93, 0x06, 0xfa, 0x3b, 0x16, 0x8c, 0xf3, 0x2e, 0xaf, 0x04, 0x3b, 0x82, 0x15, 0x7c, 0xd9, + 0x82, 0x69, 0xbf, 0xc3, 0x4e, 0x14, 0x9f, 0xf9, 0x28, 0x7b, 0x58, 0x29, 0x9f, 0x9d, 0xa0, 0xb8, + 0x63, 0x6b, 0xe8, 0x1c, 0x0c, 0xf1, 0x97, 0x87, 0x1d, 0x5f, 0x78, 0x50, 0x8f, 0xf0, 0x5c, 0xd8, + 0xbc, 0x0c, 0x2b, 0xa8, 0xfd, 0x13, 0x0b, 0x26, 0xdb, 0x1e, 0xb2, 0x7f, 0x58, 0x86, 0x21, 0xb2, + 0x7e, 0x97, 0xba, 0x64, 0xfd, 0xd6, 0x47, 0x59, 0x3e, 0x74, 0x94, 0xbf, 0x61, 0x81, 0x58, 0xa1, + 0x27, 0xa0, 0x3f, 0xac, 0x99, 0xfa, 0xc3, 0x87, 0x8a, 0x2c, 0xfa, 0x2e, 0x8a, 0xc3, 0x2f, 0x95, + 0x60, 0x82, 0x23, 0xa4, 0x37, 0x32, 0x0f, 0xcb, 0xc7, 0xe9, 0xed, 0x35, 0x1a, 0xf5, 0x04, 0x68, + 0xe7, 0x91, 0x1a, 0xdf, 0xb2, 0xef, 0xd0, 0x6f, 0xf9, 0x17, 0x16, 0x20, 0x3e, 0x27, 0xd9, 0x67, + 0x9b, 0xf9, 0xe9, 0xa6, 0x99, 0x03, 0x52, 0xce, 0xa1, 0x20, 0x58, 0xc3, 0x7a, 0xc0, 0x43, 0xc8, + 0xdc, 0x87, 0x95, 0xf3, 0xef, 0xc3, 0x7a, 0x18, 0xf5, 0xef, 0x96, 0x21, 0xeb, 0x4a, 0x89, 0xde, + 0x81, 0x91, 0x86, 0xd3, 0x74, 0xee, 0x78, 0xbe, 0x97, 0x78, 0x24, 0x2e, 0x76, 0xe1, 0xbe, 0xac, + 0xd5, 0x10, 0xd7, 0x50, 0x5a, 0x09, 0x36, 0x28, 0xa2, 0x79, 0x80, 0x66, 0xe4, 0xed, 0x78, 0x3e, + 0xd9, 0x64, 0x1a, 0x0f, 0x8b, 0xc5, 0xe0, 0x77, 0xc7, 0xb2, 0x14, 0x6b, 0x18, 0x1d, 0x7c, 0xf7, + 0xcb, 0x27, 0xe1, 0xbb, 0xdf, 0xd7, 0xa3, 0xef, 0x7e, 0x7f, 0x21, 0xdf, 0x7d, 0x0c, 0xa7, 0xe5, + 0xe1, 0x4d, 0xff, 0xaf, 0x7a, 0x3e, 0x11, 0xb2, 0x1b, 0x8f, 0xd5, 0x98, 0xdd, 0xdf, 0x9b, 0x3b, + 0x8d, 0x3b, 0x62, 0xe0, 0x2e, 0x35, 0xed, 0x16, 0x4c, 0xd5, 0x49, 0xe4, 0xb1, 0x9c, 0x94, 0x6e, + 0xba, 0x97, 0x3e, 0x07, 0x95, 0x28, 0xb3, 0x8d, 0x7b, 0x0c, 0xc8, 0xd7, 0xb2, 0x98, 0xc9, 0x6d, + 0x9b, 0x92, 0xb4, 0xff, 0x46, 0x09, 0x06, 0x85, 0x13, 0xe5, 0x09, 0x08, 0x1f, 0x57, 0x0c, 0x13, + 0xd3, 0x33, 0x79, 0xfc, 0x8f, 0x75, 0xab, 0xab, 0x71, 0xa9, 0x9e, 0x31, 0x2e, 0x3d, 0x57, 0x8c, + 0xdc, 0xe1, 0x66, 0xa5, 0x7f, 0x5a, 0x86, 0x31, 0xd3, 0xa9, 0xf4, 0x04, 0xa6, 0xe5, 0x0d, 0x18, + 0x8c, 0x85, 0x7f, 0x73, 0xa9, 0x88, 0xcf, 0x5e, 0xf6, 0x13, 0xa7, 0x37, 0xf1, 0xc2, 0xa3, 0x59, + 0x92, 0xeb, 0xe8, 0x42, 0x5d, 0x3e, 0x11, 0x17, 0xea, 0x3c, 0x5f, 0xdf, 0xbe, 0x07, 0xe1, 0xeb, + 0x6b, 0xff, 0x80, 0xb1, 0x7c, 0xbd, 0xfc, 0x04, 0x8e, 0xf1, 0xd7, 0xcd, 0xc3, 0xe1, 0x7c, 0xa1, + 0x75, 0x27, 0xba, 0xd7, 0xe5, 0x38, 0xff, 0xae, 0x05, 0xc3, 0x02, 0xf1, 0x04, 0x06, 0xf0, 0x69, + 0x73, 0x00, 0x4f, 0x15, 0x1a, 0x40, 0x97, 0x9e, 0x7f, 0xa3, 0xa4, 0x7a, 0x5e, 0x13, 0x4f, 0xed, + 0xe7, 0x66, 0xe0, 0x1e, 0xa2, 0xaa, 0x5f, 0xd8, 0x08, 0x7d, 0x21, 0xc0, 0x3d, 0x96, 0x86, 0xe6, + 0xf1, 0xf2, 0x03, 0xed, 0x37, 0x56, 0xd8, 0x2c, 0x72, 0x2c, 0x8c, 0x12, 0x71, 0x80, 0x76, 0x7a, + 0xe8, 0xdf, 0x05, 0x48, 0x5f, 0x57, 0x17, 0x51, 0xad, 0xdd, 0x77, 0x6b, 0x2b, 0xf1, 0xfc, 0x79, + 0x2f, 0x48, 0xe2, 0x24, 0x9a, 0x5f, 0x0b, 0x92, 0x1b, 0x11, 0x17, 0xfa, 0xb5, 0x58, 0x3b, 0x45, + 0x0b, 0x6b, 0x74, 0x65, 0x10, 0x07, 0x6b, 0xa3, 0xdf, 0xbc, 0x41, 0xba, 0x2e, 0xca, 0xb1, 0xc2, + 0xb0, 0x5f, 0x61, 0x9c, 0x9d, 0x4d, 0x50, 0x6f, 0x61, 0x70, 0xbf, 0x38, 0xa0, 0xa6, 0x96, 0x99, + 0x85, 0xaf, 0xeb, 0xc1, 0x76, 0x45, 0xd9, 0x27, 0xed, 0x82, 0xee, 0x47, 0x9d, 0xc6, 0xe6, 0x21, + 0xd2, 0x76, 0xed, 0xf8, 0x4a, 0x61, 0x8e, 0xdc, 0xc3, 0x45, 0x23, 0x4b, 0x3a, 0xc8, 0x32, 0xad, + 0xad, 0xd5, 0xb2, 0x79, 0xd3, 0x97, 0x25, 0x00, 0xa7, 0x38, 0x68, 0x41, 0x28, 0x94, 0xdc, 0xe2, + 0xf2, 0xc1, 0x8c, 0x42, 0x29, 0xa7, 0x44, 0xd3, 0x28, 0x5f, 0x80, 0x61, 0xf5, 0x14, 0x4d, 0x8d, + 0x3f, 0x02, 0x52, 0xe1, 0xf2, 0xd5, 0x4a, 0x5a, 0x8c, 0x75, 0x1c, 0xb4, 0x06, 0x53, 0xae, 0x8a, + 0xd9, 0xa9, 0xb5, 0xee, 0xf8, 0x5e, 0x83, 0x56, 0xe5, 0xf1, 0xb6, 0x8f, 0xec, 0xef, 0xcd, 0x4d, + 0x55, 0xdb, 0xc1, 0xb8, 0x53, 0x1d, 0xb4, 0x0e, 0xe3, 0x31, 0x7f, 0x72, 0x47, 0x06, 0x66, 0x08, + 0x1b, 0xc4, 0xb3, 0xf2, 0xbe, 0xb3, 0x6e, 0x82, 0x0f, 0x58, 0x11, 0xe7, 0x0a, 0x32, 0x94, 0x23, + 0x4b, 0x02, 0xbd, 0x06, 0x63, 0xbe, 0xfe, 0x9e, 0x68, 0x4d, 0x98, 0x28, 0x94, 0x07, 0x9b, 0xf1, + 0xda, 0x68, 0x0d, 0x67, 0xb0, 0xd1, 0x1b, 0x30, 0xa3, 0x97, 0x88, 0x3c, 0x42, 0x4e, 0xb0, 0x49, + 0x62, 0xf1, 0x3c, 0xc7, 0x63, 0xfb, 0x7b, 0x73, 0x33, 0x57, 0xbb, 0xe0, 0xe0, 0xae, 0xb5, 0xd1, + 0x45, 0x18, 0x91, 0x33, 0xa9, 0x85, 0x31, 0xa5, 0xbe, 0x93, 0x1a, 0x0c, 0x1b, 0x98, 0xef, 0xef, + 0x5a, 0xf7, 0x0b, 0xb4, 0xb2, 0x76, 0x84, 0xa3, 0x77, 0x61, 0x44, 0xef, 0x63, 0xf6, 0x6c, 0xce, + 0x7f, 0xa3, 0x55, 0x88, 0x02, 0xaa, 0xe7, 0x3a, 0x0c, 0x1b, 0xb4, 0xed, 0x1b, 0x30, 0x50, 0xdf, + 0x8d, 0x1b, 0x89, 0x5f, 0x80, 0xbf, 0x3d, 0x69, 0x0c, 0x21, 0xdd, 0x7b, 0xec, 0xbd, 0x28, 0x31, + 0x22, 0x9b, 0xc0, 0xf8, 0xfa, 0x72, 0xad, 0x1e, 0x36, 0xee, 0x92, 0x64, 0x91, 0x6b, 0x6f, 0x58, + 0x70, 0x37, 0xeb, 0x88, 0x5c, 0xab, 0x03, 0x3f, 0xb4, 0xff, 0xd4, 0x82, 0x7e, 0xf6, 0xd6, 0x51, + 0xde, 0x3b, 0x59, 0x45, 0x3a, 0x8d, 0x5e, 0x86, 0x01, 0xb2, 0xb1, 0x41, 0x1a, 0x89, 0xd8, 0xc6, + 0x32, 0x56, 0x60, 0x60, 0x85, 0x95, 0xd2, 0xcd, 0xc9, 0x1a, 0xe3, 0x7f, 0xb1, 0x40, 0x46, 0x9f, + 0x85, 0x4a, 0xe2, 0x6d, 0x93, 0x45, 0xd7, 0x15, 0x06, 0xc5, 0xde, 0xdc, 0x57, 0x14, 0xb3, 0x58, + 0x97, 0x44, 0x70, 0x4a, 0xcf, 0xfe, 0x5a, 0x09, 0x20, 0x8d, 0xd4, 0xc9, 0x1b, 0xe6, 0x52, 0xdb, + 0x73, 0x60, 0x4f, 0x77, 0x78, 0x0e, 0x0c, 0xa5, 0x04, 0x3b, 0x3c, 0x06, 0xa6, 0xa6, 0xaa, 0x5c, + 0x68, 0xaa, 0xfa, 0x7a, 0x99, 0xaa, 0x65, 0x98, 0x4c, 0x23, 0x8d, 0xcc, 0x90, 0x4d, 0x96, 0x1c, + 0x74, 0x3d, 0x0b, 0xc4, 0xed, 0xf8, 0xf6, 0xd7, 0x2c, 0x10, 0x0e, 0x8f, 0x05, 0x56, 0xab, 0x2b, + 0x9f, 0xee, 0x31, 0xb2, 0x98, 0x3d, 0x5b, 0xc4, 0x17, 0x54, 0xe4, 0x2e, 0x53, 0xfb, 0xc7, 0xc8, + 0x58, 0x66, 0x50, 0xb5, 0x7f, 0xd3, 0x82, 0x61, 0x0e, 0xbe, 0xc6, 0x64, 0xea, 0xfc, 0x7e, 0xf5, + 0x94, 0x79, 0x96, 0xbd, 0x6a, 0x43, 0x09, 0xab, 0x0c, 0xa4, 0xfa, 0xab, 0x36, 0x12, 0x80, 0x53, + 0x1c, 0xf4, 0x0c, 0x0c, 0xc6, 0xad, 0x3b, 0x0c, 0x3d, 0xe3, 0xfd, 0x58, 0xe7, 0xc5, 0x58, 0xc2, + 0xed, 0x7f, 0x5e, 0x82, 0x89, 0xac, 0xf3, 0x2b, 0xc2, 0x30, 0xc0, 0x65, 0xec, 0xac, 0x78, 0x76, + 0x98, 0x2d, 0x47, 0x73, 0x9e, 0x05, 0xfe, 0x36, 0x33, 0x33, 0xba, 0x0b, 0x4a, 0x68, 0x03, 0x86, + 0xdd, 0xf0, 0x5e, 0x70, 0xcf, 0x89, 0xdc, 0xc5, 0xda, 0x9a, 0xf8, 0x12, 0x39, 0xee, 0x4a, 0xd5, + 0xb4, 0x82, 0xee, 0x9a, 0xcb, 0x6c, 0x0b, 0x29, 0x08, 0xeb, 0x84, 0xa9, 0x4e, 0xd9, 0x08, 0x83, + 0x0d, 0x6f, 0xf3, 0x9a, 0xd3, 0x2c, 0x76, 0x31, 0xbf, 0x2c, 0xd1, 0xb5, 0x36, 0x46, 0x45, 0x8e, + 0x06, 0x0e, 0xc0, 0x29, 0x49, 0xfb, 0xd7, 0xa7, 0xc1, 0x58, 0x0b, 0x46, 0x7a, 0x58, 0xeb, 0x81, + 0xa7, 0x87, 0x7d, 0x0b, 0x86, 0xc8, 0x76, 0x33, 0xd9, 0xad, 0x7a, 0x51, 0xb1, 0x64, 0xdf, 0x2b, + 0x02, 0xbb, 0x9d, 0xba, 0x84, 0x60, 0x45, 0xb1, 0x4b, 0xb2, 0xdf, 0xf2, 0x43, 0x91, 0xec, 0xb7, + 0xef, 0x2f, 0x25, 0xd9, 0xef, 0x1b, 0x30, 0xb8, 0xe9, 0x25, 0x98, 0x34, 0x43, 0x91, 0xf4, 0x22, + 0x67, 0xf1, 0x5c, 0xe2, 0xc8, 0xed, 0x69, 0x20, 0x05, 0x00, 0x4b, 0x72, 0x68, 0x5d, 0x6d, 0xaa, + 0x81, 0x22, 0x67, 0x79, 0xbb, 0xad, 0xaf, 0xe3, 0xb6, 0x12, 0xc9, 0x7d, 0x07, 0xdf, 0x7f, 0x72, + 0x5f, 0x95, 0x92, 0x77, 0xe8, 0x41, 0xa5, 0xe4, 0x35, 0x52, 0x1b, 0x57, 0x8e, 0x23, 0xb5, 0xf1, + 0xd7, 0x2c, 0x38, 0xd5, 0xec, 0x94, 0x18, 0x5c, 0x24, 0xd7, 0xfd, 0xe4, 0x11, 0x52, 0xa5, 0x1b, + 0x4d, 0xb3, 0x54, 0x02, 0x1d, 0xd1, 0x70, 0xe7, 0x86, 0x65, 0x8e, 0xe4, 0xe1, 0xf7, 0x9f, 0x23, + 0xf9, 0xb8, 0xb3, 0xf0, 0xa6, 0x19, 0x93, 0x47, 0x8f, 0x25, 0x63, 0xf2, 0xd8, 0x03, 0xcc, 0x98, + 0xac, 0xe5, 0x3a, 0x1e, 0x7f, 0xb0, 0xb9, 0x8e, 0xb7, 0xcc, 0x73, 0x89, 0xa7, 0xd6, 0x7d, 0xb9, + 0xf0, 0xb9, 0x64, 0xb4, 0x70, 0xf8, 0xc9, 0xc4, 0xb3, 0x3e, 0x4f, 0xbe, 0xcf, 0xac, 0xcf, 0x46, + 0xee, 0x64, 0x74, 0x1c, 0xb9, 0x93, 0xdf, 0xd1, 0x4f, 0xd0, 0xa9, 0x22, 0x2d, 0xa8, 0x83, 0xb2, + 0xbd, 0x85, 0x4e, 0x67, 0x68, 0x7b, 0x76, 0xe6, 0xe9, 0x93, 0xce, 0xce, 0x7c, 0xea, 0x18, 0xb3, + 0x33, 0x9f, 0x3e, 0xd1, 0xec, 0xcc, 0x8f, 0x3c, 0x24, 0xd9, 0x99, 0x67, 0x4e, 0x2a, 0x3b, 0xf3, + 0xa3, 0x0f, 0x34, 0x3b, 0x33, 0xfd, 0x74, 0x4d, 0x19, 0x42, 0x36, 0x33, 0x5b, 0xe4, 0xd3, 0x75, + 0x8c, 0x38, 0xe3, 0x9f, 0x4e, 0x81, 0x70, 0x4a, 0xd4, 0xfe, 0x2b, 0x70, 0xe6, 0xf0, 0xa5, 0x9b, + 0x7a, 0x6b, 0xd4, 0x52, 0x9b, 0x59, 0xc6, 0x5b, 0x83, 0x89, 0x85, 0x1a, 0x56, 0xe1, 0xf4, 0xb1, + 0xdf, 0xb6, 0xe0, 0x91, 0x2e, 0xd9, 0x15, 0x0b, 0xc7, 0x5f, 0x36, 0x61, 0xbc, 0x69, 0x56, 0x2d, + 0x1c, 0xce, 0x6d, 0x64, 0x73, 0x54, 0x3e, 0xf2, 0x19, 0x00, 0xce, 0x92, 0x5f, 0xfa, 0xd0, 0x0f, + 0x7f, 0x7c, 0xe6, 0x03, 0x3f, 0xfa, 0xf1, 0x99, 0x0f, 0xfc, 0xf1, 0x8f, 0xcf, 0x7c, 0xe0, 0xe7, + 0xf6, 0xcf, 0x58, 0x3f, 0xdc, 0x3f, 0x63, 0xfd, 0x68, 0xff, 0x8c, 0xf5, 0x67, 0xfb, 0x67, 0xac, + 0xaf, 0xfd, 0xe4, 0xcc, 0x07, 0xde, 0x2c, 0xed, 0xbc, 0xf0, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, + 0x5f, 0x32, 0x87, 0xa4, 0xbe, 0xc8, 0x00, 0x00, } diff --git a/pkg/api/v1/generated.proto b/pkg/api/v1/generated.proto index cc52ea4c..6fa50557 100644 --- a/pkg/api/v1/generated.proto +++ b/pkg/api/v1/generated.proto @@ -2140,6 +2140,10 @@ message PersistentVolumeSource { // PortworxVolume represents a portworx volume attached and mounted on kubelets host machine // +optional optional PortworxVolumeSource portworxVolume = 18; + + // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. + // +optional + optional ScaleIOVolumeSource scaleIO = 19; } // PersistentVolumeSpec is the specification of a persistent volume. @@ -3210,6 +3214,50 @@ message SELinuxOptions { optional string level = 4; } +// ScaleIOVolumeSource represents a persistent ScaleIO volume +message ScaleIOVolumeSource { + // The host address of the ScaleIO API Gateway. + optional string gateway = 1; + + // The name of the storage system as configured in ScaleIO. + optional string system = 2; + + // SecretRef references to the secret for ScaleIO user and other + // sensitive information. If this is not provided, Login operation will fail. + optional LocalObjectReference secretRef = 3; + + // Flag to enable/disable SSL communication with Gateway, default false + // +optional + optional bool sslEnabled = 4; + + // The name of the Protection Domain for the configured storage (defaults to "default"). + // +optional + optional string protectionDomain = 5; + + // The Storage Pool associated with the protection domain (defaults to "default"). + // +optional + optional string storagePool = 6; + + // Indicates whether the storage for a volume should be thick or thin (defaults to "thin"). + // +optional + optional string storageMode = 7; + + // The name of a volume already created in the ScaleIO system + // that is associated with this volume source. + optional string volumeName = 8; + + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + optional string fsType = 9; + + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + optional bool readOnly = 10; +} + // Secret holds secret data of a certain type. The total bytes of the values in // the Data field must be less than MaxSecretSize bytes. message Secret { @@ -3840,11 +3888,15 @@ message VolumeSource { optional PhotonPersistentDiskVolumeSource photonPersistentDisk = 23; // Items for all in one resources secrets, configmaps, and downward API - optional ProjectedVolumeSource projected = 25; + optional ProjectedVolumeSource projected = 26; // PortworxVolume represents a portworx volume attached and mounted on kubelets host machine // +optional optional PortworxVolumeSource portworxVolume = 24; + + // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. + // +optional + optional ScaleIOVolumeSource scaleIO = 25; } // Represents a vSphere volume resource. diff --git a/pkg/api/v1/types.generated.go b/pkg/api/v1/types.generated.go index 6fbb85a6..8eefc7c9 100644 --- a/pkg/api/v1/types.generated.go +++ b/pkg/api/v1/types.generated.go @@ -1222,7 +1222,7 @@ func (x *Volume) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [26]bool + var yyq2 [27]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[1] = x.VolumeSource.HostPath != nil && x.HostPath != nil @@ -1250,9 +1250,10 @@ func (x *Volume) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[23] = x.VolumeSource.PhotonPersistentDisk != nil && x.PhotonPersistentDisk != nil yyq2[24] = x.VolumeSource.Projected != nil && x.Projected != nil yyq2[25] = x.VolumeSource.PortworxVolume != nil && x.PortworxVolume != nil + yyq2[26] = x.VolumeSource.ScaleIO != nil && x.ScaleIO != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(26) + r.EncodeArrayStart(27) } else { yynn2 = 1 for _, b := range yyq2 { @@ -2207,6 +2208,43 @@ func (x *Volume) CodecEncodeSelf(e *codec1978.Encoder) { } } } + var yyn81 bool + if x.VolumeSource.ScaleIO == nil { + yyn81 = true + goto LABEL81 + } + LABEL81: + if yyr2 || yy2arr2 { + if yyn81 { + r.EncodeNil() + } else { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[26] { + if x.ScaleIO == nil { + r.EncodeNil() + } else { + x.ScaleIO.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } + } else { + if yyq2[26] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("scaleIO")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if yyn81 { + r.EncodeNil() + } else { + if x.ScaleIO == nil { + r.EncodeNil() + } else { + x.ScaleIO.CodecEncodeSelf(e) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -2630,6 +2668,20 @@ func (x *Volume) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } x.PortworxVolume.CodecDecodeSelf(d) } + case "scaleIO": + if x.VolumeSource.ScaleIO == nil { + x.VolumeSource.ScaleIO = new(ScaleIOVolumeSource) + } + if r.TryDecodeAsNil() { + if x.ScaleIO != nil { + x.ScaleIO = nil + } + } else { + if x.ScaleIO == nil { + x.ScaleIO = new(ScaleIOVolumeSource) + } + x.ScaleIO.CodecDecodeSelf(d) + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -2641,16 +2693,16 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj31 int - var yyb31 bool - var yyhl31 bool = l >= 0 - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + var yyj32 int + var yyb32 bool + var yyhl32 bool = l >= 0 + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2658,24 +2710,24 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Name = "" } else { - yyv32 := &x.Name - yym33 := z.DecBinary() - _ = yym33 + yyv33 := &x.Name + yym34 := z.DecBinary() + _ = yym34 if false { } else { - *((*string)(yyv32)) = r.DecodeString() + *((*string)(yyv33)) = r.DecodeString() } } if x.VolumeSource.HostPath == nil { x.VolumeSource.HostPath = new(HostPathVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2693,13 +2745,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.EmptyDir == nil { x.VolumeSource.EmptyDir = new(EmptyDirVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2717,13 +2769,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.GCEPersistentDisk == nil { x.VolumeSource.GCEPersistentDisk = new(GCEPersistentDiskVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2741,13 +2793,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.AWSElasticBlockStore == nil { x.VolumeSource.AWSElasticBlockStore = new(AWSElasticBlockStoreVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2765,13 +2817,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.GitRepo == nil { x.VolumeSource.GitRepo = new(GitRepoVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2789,13 +2841,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Secret == nil { x.VolumeSource.Secret = new(SecretVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2813,13 +2865,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.NFS == nil { x.VolumeSource.NFS = new(NFSVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2837,13 +2889,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.ISCSI == nil { x.VolumeSource.ISCSI = new(ISCSIVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2861,13 +2913,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Glusterfs == nil { x.VolumeSource.Glusterfs = new(GlusterfsVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2885,13 +2937,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.PersistentVolumeClaim == nil { x.VolumeSource.PersistentVolumeClaim = new(PersistentVolumeClaimVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2909,13 +2961,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.RBD == nil { x.VolumeSource.RBD = new(RBDVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2933,13 +2985,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.FlexVolume == nil { x.VolumeSource.FlexVolume = new(FlexVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2957,13 +3009,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Cinder == nil { x.VolumeSource.Cinder = new(CinderVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2981,13 +3033,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.CephFS == nil { x.VolumeSource.CephFS = new(CephFSVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3005,13 +3057,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Flocker == nil { x.VolumeSource.Flocker = new(FlockerVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3029,13 +3081,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.DownwardAPI == nil { x.VolumeSource.DownwardAPI = new(DownwardAPIVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3053,13 +3105,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.FC == nil { x.VolumeSource.FC = new(FCVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3077,13 +3129,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.AzureFile == nil { x.VolumeSource.AzureFile = new(AzureFileVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3101,13 +3153,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.ConfigMap == nil { x.VolumeSource.ConfigMap = new(ConfigMapVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3125,13 +3177,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.VsphereVolume == nil { x.VolumeSource.VsphereVolume = new(VsphereVirtualDiskVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3149,13 +3201,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Quobyte == nil { x.VolumeSource.Quobyte = new(QuobyteVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3173,13 +3225,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.AzureDisk == nil { x.VolumeSource.AzureDisk = new(AzureDiskVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3197,13 +3249,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.PhotonPersistentDisk == nil { x.VolumeSource.PhotonPersistentDisk = new(PhotonPersistentDiskVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3221,13 +3273,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Projected == nil { x.VolumeSource.Projected = new(ProjectedVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3245,13 +3297,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.PortworxVolume == nil { x.VolumeSource.PortworxVolume = new(PortworxVolumeSource) } - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb31 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb31 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3266,18 +3318,42 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PortworxVolume.CodecDecodeSelf(d) } - for { - yyj31++ - if yyhl31 { - yyb31 = yyj31 > l - } else { - yyb31 = r.CheckBreak() + if x.VolumeSource.ScaleIO == nil { + x.VolumeSource.ScaleIO = new(ScaleIOVolumeSource) + } + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l + } else { + yyb32 = r.CheckBreak() + } + if yyb32 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.ScaleIO != nil { + x.ScaleIO = nil } - if yyb31 { + } else { + if x.ScaleIO == nil { + x.ScaleIO = new(ScaleIOVolumeSource) + } + x.ScaleIO.CodecDecodeSelf(d) + } + for { + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l + } else { + yyb32 = r.CheckBreak() + } + if yyb32 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj31-1, "") + z.DecStructFieldNotFound(yyj32-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -3296,7 +3372,7 @@ func (x *VolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [25]bool + var yyq2 [26]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.HostPath != nil @@ -3324,9 +3400,10 @@ func (x *VolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[22] = x.PhotonPersistentDisk != nil yyq2[23] = x.Projected != nil yyq2[24] = x.PortworxVolume != nil + yyq2[25] = x.ScaleIO != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(25) + r.EncodeArrayStart(26) } else { yynn2 = 0 for _, b := range yyq2 { @@ -3912,6 +3989,29 @@ func (x *VolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[25] { + if x.ScaleIO == nil { + r.EncodeNil() + } else { + x.ScaleIO.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[25] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("scaleIO")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.ScaleIO == nil { + r.EncodeNil() + } else { + x.ScaleIO.CodecEncodeSelf(e) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -4248,6 +4348,17 @@ func (x *VolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } x.PortworxVolume.CodecDecodeSelf(d) } + case "scaleIO": + if r.TryDecodeAsNil() { + if x.ScaleIO != nil { + x.ScaleIO = nil + } + } else { + if x.ScaleIO == nil { + x.ScaleIO = new(ScaleIOVolumeSource) + } + x.ScaleIO.CodecDecodeSelf(d) + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -4259,16 +4370,16 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj29 int - var yyb29 bool - var yyhl29 bool = l >= 0 - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + var yyj30 int + var yyb30 bool + var yyhl30 bool = l >= 0 + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4283,13 +4394,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.HostPath.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4304,13 +4415,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.EmptyDir.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4325,13 +4436,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.GCEPersistentDisk.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4346,13 +4457,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.AWSElasticBlockStore.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4367,13 +4478,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.GitRepo.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4388,13 +4499,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Secret.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4409,13 +4520,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.NFS.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4430,13 +4541,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ISCSI.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4451,13 +4562,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Glusterfs.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4472,13 +4583,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PersistentVolumeClaim.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4493,13 +4604,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.RBD.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4514,13 +4625,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.FlexVolume.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4535,13 +4646,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Cinder.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4556,13 +4667,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.CephFS.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4577,13 +4688,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Flocker.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4598,13 +4709,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.DownwardAPI.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4619,13 +4730,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.FC.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4640,13 +4751,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.AzureFile.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4661,13 +4772,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ConfigMap.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4682,13 +4793,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.VsphereVolume.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4703,13 +4814,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Quobyte.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4724,13 +4835,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.AzureDisk.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4745,13 +4856,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PhotonPersistentDisk.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4766,13 +4877,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Projected.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4787,18 +4898,39 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PortworxVolume.CodecDecodeSelf(d) } - for { - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l - } else { - yyb29 = r.CheckBreak() + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.ScaleIO != nil { + x.ScaleIO = nil } - if yyb29 { + } else { + if x.ScaleIO == nil { + x.ScaleIO = new(ScaleIOVolumeSource) + } + x.ScaleIO.CodecDecodeSelf(d) + } + for { + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj29-1, "") + z.DecStructFieldNotFound(yyj30-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -5051,7 +5183,7 @@ func (x *PersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [18]bool + var yyq2 [19]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.GCEPersistentDisk != nil @@ -5072,9 +5204,10 @@ func (x *PersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[15] = x.AzureDisk != nil yyq2[16] = x.PhotonPersistentDisk != nil yyq2[17] = x.PortworxVolume != nil + yyq2[18] = x.ScaleIO != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(18) + r.EncodeArrayStart(19) } else { yynn2 = 0 for _, b := range yyq2 { @@ -5499,6 +5632,29 @@ func (x *PersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[18] { + if x.ScaleIO == nil { + r.EncodeNil() + } else { + x.ScaleIO.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[18] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("scaleIO")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.ScaleIO == nil { + r.EncodeNil() + } else { + x.ScaleIO.CodecEncodeSelf(e) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -5758,6 +5914,17 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Deco } x.PortworxVolume.CodecDecodeSelf(d) } + case "scaleIO": + if r.TryDecodeAsNil() { + if x.ScaleIO != nil { + x.ScaleIO = nil + } + } else { + if x.ScaleIO == nil { + x.ScaleIO = new(ScaleIOVolumeSource) + } + x.ScaleIO.CodecDecodeSelf(d) + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -5769,16 +5936,16 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj22 int - var yyb22 bool - var yyhl22 bool = l >= 0 - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + var yyj23 int + var yyb23 bool + var yyhl23 bool = l >= 0 + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5793,13 +5960,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.GCEPersistentDisk.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5814,13 +5981,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.AWSElasticBlockStore.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5835,13 +6002,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.HostPath.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5856,13 +6023,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Glusterfs.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5877,13 +6044,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.NFS.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5898,13 +6065,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.RBD.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5919,13 +6086,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.ISCSI.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5940,13 +6107,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Cinder.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5961,13 +6128,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.CephFS.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5982,13 +6149,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.FC.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6003,13 +6170,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Flocker.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6024,13 +6191,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.FlexVolume.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6045,13 +6212,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.AzureFile.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6066,13 +6233,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.VsphereVolume.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6087,13 +6254,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Quobyte.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6108,13 +6275,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.AzureDisk.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6129,13 +6296,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.PhotonPersistentDisk.CodecDecodeSelf(d) } - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l } else { - yyb22 = r.CheckBreak() + yyb23 = r.CheckBreak() } - if yyb22 { + if yyb23 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6150,18 +6317,39 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.PortworxVolume.CodecDecodeSelf(d) } - for { - yyj22++ - if yyhl22 { - yyb22 = yyj22 > l - } else { - yyb22 = r.CheckBreak() + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.ScaleIO != nil { + x.ScaleIO = nil } - if yyb22 { + } else { + if x.ScaleIO == nil { + x.ScaleIO = new(ScaleIOVolumeSource) + } + x.ScaleIO.CodecDecodeSelf(d) + } + for { + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj22-1, "") + z.DecStructFieldNotFound(yyj23-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -6571,7 +6759,7 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [23]bool + var yyq2 [24]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = len(x.Capacity) != 0 @@ -6593,13 +6781,14 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[16] = x.PersistentVolumeSource.AzureDisk != nil && x.AzureDisk != nil yyq2[17] = x.PersistentVolumeSource.PhotonPersistentDisk != nil && x.PhotonPersistentDisk != nil yyq2[18] = x.PersistentVolumeSource.PortworxVolume != nil && x.PortworxVolume != nil - yyq2[19] = len(x.AccessModes) != 0 - yyq2[20] = x.ClaimRef != nil - yyq2[21] = x.PersistentVolumeReclaimPolicy != "" - yyq2[22] = x.StorageClassName != "" + yyq2[19] = x.PersistentVolumeSource.ScaleIO != nil && x.ScaleIO != nil + yyq2[20] = len(x.AccessModes) != 0 + yyq2[21] = x.ClaimRef != nil + yyq2[22] = x.PersistentVolumeReclaimPolicy != "" + yyq2[23] = x.StorageClassName != "" var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(23) + r.EncodeArrayStart(24) } else { yynn2 = 0 for _, b := range yyq2 { @@ -7299,14 +7488,51 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + var yyn60 bool + if x.PersistentVolumeSource.ScaleIO == nil { + yyn60 = true + goto LABEL60 + } + LABEL60: + if yyr2 || yy2arr2 { + if yyn60 { + r.EncodeNil() + } else { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[19] { + if x.ScaleIO == nil { + r.EncodeNil() + } else { + x.ScaleIO.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } + } else { + if yyq2[19] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("scaleIO")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if yyn60 { + r.EncodeNil() + } else { + if x.ScaleIO == nil { + r.EncodeNil() + } else { + x.ScaleIO.CodecEncodeSelf(e) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[19] { + if yyq2[20] { if x.AccessModes == nil { r.EncodeNil() } else { - yym61 := z.EncBinary() - _ = yym61 + yym64 := z.EncBinary() + _ = yym64 if false { } else { h.encSlicePersistentVolumeAccessMode(([]PersistentVolumeAccessMode)(x.AccessModes), e) @@ -7316,15 +7542,15 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[19] { + if yyq2[20] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("accessModes")) z.EncSendContainerState(codecSelfer_containerMapValue1234) if x.AccessModes == nil { r.EncodeNil() } else { - yym62 := z.EncBinary() - _ = yym62 + yym65 := z.EncBinary() + _ = yym65 if false { } else { h.encSlicePersistentVolumeAccessMode(([]PersistentVolumeAccessMode)(x.AccessModes), e) @@ -7334,7 +7560,7 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[20] { + if yyq2[21] { if x.ClaimRef == nil { r.EncodeNil() } else { @@ -7344,7 +7570,7 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[20] { + if yyq2[21] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("claimRef")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -7357,13 +7583,13 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[21] { + if yyq2[22] { x.PersistentVolumeReclaimPolicy.CodecEncodeSelf(e) } else { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[21] { + if yyq2[22] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("persistentVolumeReclaimPolicy")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -7372,9 +7598,9 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[22] { - yym70 := z.EncBinary() - _ = yym70 + if yyq2[23] { + yym73 := z.EncBinary() + _ = yym73 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.StorageClassName)) @@ -7383,12 +7609,12 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[22] { + if yyq2[23] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("storageClassName")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym71 := z.EncBinary() - _ = yym71 + yym74 := z.EncBinary() + _ = yym74 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.StorageClassName)) @@ -7715,16 +7941,30 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decode } x.PortworxVolume.CodecDecodeSelf(d) } + case "scaleIO": + if x.PersistentVolumeSource.ScaleIO == nil { + x.PersistentVolumeSource.ScaleIO = new(ScaleIOVolumeSource) + } + if r.TryDecodeAsNil() { + if x.ScaleIO != nil { + x.ScaleIO = nil + } + } else { + if x.ScaleIO == nil { + x.ScaleIO = new(ScaleIOVolumeSource) + } + x.ScaleIO.CodecDecodeSelf(d) + } case "accessModes": if r.TryDecodeAsNil() { x.AccessModes = nil } else { - yyv23 := &x.AccessModes - yym24 := z.DecBinary() - _ = yym24 + yyv24 := &x.AccessModes + yym25 := z.DecBinary() + _ = yym25 if false { } else { - h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv23), d) + h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv24), d) } } case "claimRef": @@ -7742,19 +7982,19 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decode if r.TryDecodeAsNil() { x.PersistentVolumeReclaimPolicy = "" } else { - yyv26 := &x.PersistentVolumeReclaimPolicy - yyv26.CodecDecodeSelf(d) + yyv27 := &x.PersistentVolumeReclaimPolicy + yyv27.CodecDecodeSelf(d) } case "storageClassName": if r.TryDecodeAsNil() { x.StorageClassName = "" } else { - yyv27 := &x.StorageClassName - yym28 := z.DecBinary() - _ = yym28 + yyv28 := &x.StorageClassName + yym29 := z.DecBinary() + _ = yym29 if false { } else { - *((*string)(yyv27)) = r.DecodeString() + *((*string)(yyv28)) = r.DecodeString() } } default: @@ -7768,16 +8008,16 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj29 int - var yyb29 bool - var yyhl29 bool = l >= 0 - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + var yyj30 int + var yyb30 bool + var yyhl30 bool = l >= 0 + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7785,19 +8025,19 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.Capacity = nil } else { - yyv30 := &x.Capacity - yyv30.CodecDecodeSelf(d) + yyv31 := &x.Capacity + yyv31.CodecDecodeSelf(d) } if x.PersistentVolumeSource.GCEPersistentDisk == nil { x.PersistentVolumeSource.GCEPersistentDisk = new(GCEPersistentDiskVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7815,13 +8055,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.AWSElasticBlockStore == nil { x.PersistentVolumeSource.AWSElasticBlockStore = new(AWSElasticBlockStoreVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7839,13 +8079,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.HostPath == nil { x.PersistentVolumeSource.HostPath = new(HostPathVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7863,13 +8103,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Glusterfs == nil { x.PersistentVolumeSource.Glusterfs = new(GlusterfsVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7887,13 +8127,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.NFS == nil { x.PersistentVolumeSource.NFS = new(NFSVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7911,13 +8151,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.RBD == nil { x.PersistentVolumeSource.RBD = new(RBDVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7935,13 +8175,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.ISCSI == nil { x.PersistentVolumeSource.ISCSI = new(ISCSIVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7959,13 +8199,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Cinder == nil { x.PersistentVolumeSource.Cinder = new(CinderVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7983,13 +8223,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.CephFS == nil { x.PersistentVolumeSource.CephFS = new(CephFSVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8007,13 +8247,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.FC == nil { x.PersistentVolumeSource.FC = new(FCVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8031,13 +8271,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Flocker == nil { x.PersistentVolumeSource.Flocker = new(FlockerVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8055,13 +8295,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.FlexVolume == nil { x.PersistentVolumeSource.FlexVolume = new(FlexVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8079,13 +8319,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.AzureFile == nil { x.PersistentVolumeSource.AzureFile = new(AzureFileVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8103,13 +8343,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.VsphereVolume == nil { x.PersistentVolumeSource.VsphereVolume = new(VsphereVirtualDiskVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8127,13 +8367,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Quobyte == nil { x.PersistentVolumeSource.Quobyte = new(QuobyteVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8151,13 +8391,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.AzureDisk == nil { x.PersistentVolumeSource.AzureDisk = new(AzureDiskVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8175,13 +8415,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.PhotonPersistentDisk == nil { x.PersistentVolumeSource.PhotonPersistentDisk = new(PhotonPersistentDiskVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8199,13 +8439,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.PortworxVolume == nil { x.PersistentVolumeSource.PortworxVolume = new(PortworxVolumeSource) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8220,13 +8460,37 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco } x.PortworxVolume.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l - } else { - yyb29 = r.CheckBreak() + if x.PersistentVolumeSource.ScaleIO == nil { + x.PersistentVolumeSource.ScaleIO = new(ScaleIOVolumeSource) } - if yyb29 { + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.ScaleIO != nil { + x.ScaleIO = nil + } + } else { + if x.ScaleIO == nil { + x.ScaleIO = new(ScaleIOVolumeSource) + } + x.ScaleIO.CodecDecodeSelf(d) + } + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8234,21 +8498,21 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.AccessModes = nil } else { - yyv49 := &x.AccessModes - yym50 := z.DecBinary() - _ = yym50 + yyv51 := &x.AccessModes + yym52 := z.DecBinary() + _ = yym52 if false { } else { - h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv49), d) + h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv51), d) } } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8263,13 +8527,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco } x.ClaimRef.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8277,16 +8541,16 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.PersistentVolumeReclaimPolicy = "" } else { - yyv52 := &x.PersistentVolumeReclaimPolicy - yyv52.CodecDecodeSelf(d) + yyv54 := &x.PersistentVolumeReclaimPolicy + yyv54.CodecDecodeSelf(d) } - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8294,26 +8558,26 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.StorageClassName = "" } else { - yyv53 := &x.StorageClassName - yym54 := z.DecBinary() - _ = yym54 + yyv55 := &x.StorageClassName + yym56 := z.DecBinary() + _ = yym56 if false { } else { - *((*string)(yyv53)) = r.DecodeString() + *((*string)(yyv55)) = r.DecodeString() } } for { - yyj29++ - if yyhl29 { - yyb29 = yyj29 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb29 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb29 { + if yyb30 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj29-1, "") + z.DecStructFieldNotFound(yyj30-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -18097,6 +18361,702 @@ func (x *PortworxVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Deco z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x *ScaleIOVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [10]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[3] = x.SSLEnabled != false + yyq2[4] = x.ProtectionDomain != "" + yyq2[5] = x.StoragePool != "" + yyq2[6] = x.StorageMode != "" + yyq2[7] = x.VolumeName != "" + yyq2[8] = x.FSType != "" + yyq2[9] = x.ReadOnly != false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(10) + } else { + yynn2 = 3 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Gateway)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("gateway")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Gateway)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.System)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("system")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.System)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("secretRef")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeBool(bool(x.SSLEnabled)) + } + } else { + r.EncodeBool(false) + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("sslEnabled")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + r.EncodeBool(bool(x.SSLEnabled)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.ProtectionDomain)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("protectionDomain")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym17 := z.EncBinary() + _ = yym17 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.ProtectionDomain)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[5] { + yym19 := z.EncBinary() + _ = yym19 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePool)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[5] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storagePool")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym20 := z.EncBinary() + _ = yym20 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePool)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[6] { + yym22 := z.EncBinary() + _ = yym22 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StorageMode)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[6] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storageMode")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym23 := z.EncBinary() + _ = yym23 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StorageMode)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[7] { + yym25 := z.EncBinary() + _ = yym25 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[7] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("volumeName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym26 := z.EncBinary() + _ = yym26 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[8] { + yym28 := z.EncBinary() + _ = yym28 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[8] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("fsType")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym29 := z.EncBinary() + _ = yym29 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[9] { + yym31 := z.EncBinary() + _ = yym31 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } else { + r.EncodeBool(false) + } + } else { + if yyq2[9] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("readOnly")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym32 := z.EncBinary() + _ = yym32 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ScaleIOVolumeSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ScaleIOVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "gateway": + if r.TryDecodeAsNil() { + x.Gateway = "" + } else { + yyv4 := &x.Gateway + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "system": + if r.TryDecodeAsNil() { + x.System = "" + } else { + yyv6 := &x.System + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "secretRef": + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(LocalObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + case "sslEnabled": + if r.TryDecodeAsNil() { + x.SSLEnabled = false + } else { + yyv9 := &x.SSLEnabled + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *((*bool)(yyv9)) = r.DecodeBool() + } + } + case "protectionDomain": + if r.TryDecodeAsNil() { + x.ProtectionDomain = "" + } else { + yyv11 := &x.ProtectionDomain + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + case "storagePool": + if r.TryDecodeAsNil() { + x.StoragePool = "" + } else { + yyv13 := &x.StoragePool + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + case "storageMode": + if r.TryDecodeAsNil() { + x.StorageMode = "" + } else { + yyv15 := &x.StorageMode + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + case "volumeName": + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv17 := &x.VolumeName + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + *((*string)(yyv17)) = r.DecodeString() + } + } + case "fsType": + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv19 := &x.FSType + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + *((*string)(yyv19)) = r.DecodeString() + } + } + case "readOnly": + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv21 := &x.ReadOnly + yym22 := z.DecBinary() + _ = yym22 + if false { + } else { + *((*bool)(yyv21)) = r.DecodeBool() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ScaleIOVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj23 int + var yyb23 bool + var yyhl23 bool = l >= 0 + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Gateway = "" + } else { + yyv24 := &x.Gateway + yym25 := z.DecBinary() + _ = yym25 + if false { + } else { + *((*string)(yyv24)) = r.DecodeString() + } + } + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.System = "" + } else { + yyv26 := &x.System + yym27 := z.DecBinary() + _ = yym27 + if false { + } else { + *((*string)(yyv26)) = r.DecodeString() + } + } + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(LocalObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.SSLEnabled = false + } else { + yyv29 := &x.SSLEnabled + yym30 := z.DecBinary() + _ = yym30 + if false { + } else { + *((*bool)(yyv29)) = r.DecodeBool() + } + } + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ProtectionDomain = "" + } else { + yyv31 := &x.ProtectionDomain + yym32 := z.DecBinary() + _ = yym32 + if false { + } else { + *((*string)(yyv31)) = r.DecodeString() + } + } + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.StoragePool = "" + } else { + yyv33 := &x.StoragePool + yym34 := z.DecBinary() + _ = yym34 + if false { + } else { + *((*string)(yyv33)) = r.DecodeString() + } + } + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.StorageMode = "" + } else { + yyv35 := &x.StorageMode + yym36 := z.DecBinary() + _ = yym36 + if false { + } else { + *((*string)(yyv35)) = r.DecodeString() + } + } + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv37 := &x.VolumeName + yym38 := z.DecBinary() + _ = yym38 + if false { + } else { + *((*string)(yyv37)) = r.DecodeString() + } + } + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv39 := &x.FSType + yym40 := z.DecBinary() + _ = yym40 + if false { + } else { + *((*string)(yyv39)) = r.DecodeString() + } + } + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv41 := &x.ReadOnly + yym42 := z.DecBinary() + _ = yym42 + if false { + } else { + *((*bool)(yyv41)) = r.DecodeBool() + } + } + for { + yyj23++ + if yyhl23 { + yyb23 = yyj23 > l + } else { + yyb23 = r.CheckBreak() + } + if yyb23 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj23-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x *ConfigMapVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -66063,7 +67023,7 @@ func (x codecSelfer1234) decSlicePersistentVolume(v *[]PersistentVolume, d *code yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 520) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 528) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -67842,7 +68802,7 @@ func (x codecSelfer1234) decSliceVolume(v *[]Volume, d *codec1978.Decoder) { yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 216) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 224) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] diff --git a/pkg/api/v1/types.go b/pkg/api/v1/types.go index acbb1dfe..12adc933 100644 --- a/pkg/api/v1/types.go +++ b/pkg/api/v1/types.go @@ -331,6 +331,9 @@ type VolumeSource struct { // PortworxVolume represents a portworx volume attached and mounted on kubelets host machine // +optional PortworxVolume *PortworxVolumeSource `json:"portworxVolume,omitempty" protobuf:"bytes,24,opt,name=portworxVolume"` + // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. + // +optional + ScaleIO *ScaleIOVolumeSource `json:"scaleIO,omitempty" protobuf:"bytes,25,opt,name=scaleIO"` } // PersistentVolumeClaimVolumeSource references the user's PVC in the same namespace. @@ -419,6 +422,9 @@ type PersistentVolumeSource struct { // PortworxVolume represents a portworx volume attached and mounted on kubelets host machine // +optional PortworxVolume *PortworxVolumeSource `json:"portworxVolume,omitempty" protobuf:"bytes,18,opt,name=portworxVolume"` + // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. + // +optional + ScaleIO *ScaleIOVolumeSource `json:"scaleIO,omitempty" protobuf:"bytes,19,opt,name=scaleIO"` } const ( @@ -1138,6 +1144,41 @@ type PortworxVolumeSource struct { ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,3,opt,name=readOnly"` } +// ScaleIOVolumeSource represents a persistent ScaleIO volume +type ScaleIOVolumeSource struct { + // The host address of the ScaleIO API Gateway. + Gateway string `json:"gateway" protobuf:"bytes,1,opt,name=gateway"` + // The name of the storage system as configured in ScaleIO. + System string `json:"system" protobuf:"bytes,2,opt,name=system"` + // SecretRef references to the secret for ScaleIO user and other + // sensitive information. If this is not provided, Login operation will fail. + SecretRef *LocalObjectReference `json:"secretRef" protobuf:"bytes,3,opt,name=secretRef"` + // Flag to enable/disable SSL communication with Gateway, default false + // +optional + SSLEnabled bool `json:"sslEnabled,omitempty" protobuf:"varint,4,opt,name=sslEnabled"` + // The name of the Protection Domain for the configured storage (defaults to "default"). + // +optional + ProtectionDomain string `json:"protectionDomain,omitempty" protobuf:"bytes,5,opt,name=protectionDomain"` + // The Storage Pool associated with the protection domain (defaults to "default"). + // +optional + StoragePool string `json:"storagePool,omitempty" protobuf:"bytes,6,opt,name=storagePool"` + // Indicates whether the storage for a volume should be thick or thin (defaults to "thin"). + // +optional + StorageMode string `json:"storageMode,omitempty" protobuf:"bytes,7,opt,name=storageMode"` + // The name of a volume already created in the ScaleIO system + // that is associated with this volume source. + VolumeName string `json:"volumeName,omitempty" protobuf:"bytes,8,opt,name=volumeName"` + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string `json:"fsType,omitempty" protobuf:"bytes,9,opt,name=fsType"` + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,10,opt,name=readOnly"` +} + // Adapts a ConfigMap into a volume. // // The contents of the target ConfigMap's Data field will be presented in a diff --git a/pkg/api/v1/types_swagger_doc_generated.go b/pkg/api/v1/types_swagger_doc_generated.go index 3a12a42e..36740cc8 100644 --- a/pkg/api/v1/types_swagger_doc_generated.go +++ b/pkg/api/v1/types_swagger_doc_generated.go @@ -1124,6 +1124,7 @@ var map_PersistentVolumeSource = map[string]string{ "azureDisk": "AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod.", "photonPersistentDisk": "PhotonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine", "portworxVolume": "PortworxVolume represents a portworx volume attached and mounted on kubelets host machine", + "scaleIO": "ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.", } func (PersistentVolumeSource) SwaggerDoc() map[string]string { @@ -1640,6 +1641,24 @@ func (SELinuxOptions) SwaggerDoc() map[string]string { return map_SELinuxOptions } +var map_ScaleIOVolumeSource = map[string]string{ + "": "ScaleIOVolumeSource represents a persistent ScaleIO volume", + "gateway": "The host address of the ScaleIO API Gateway.", + "system": "The name of the storage system as configured in ScaleIO.", + "secretRef": "SecretRef references to the secret for ScaleIO user and other sensitive information. If this is not provided, Login operation will fail.", + "sslEnabled": "Flag to enable/disable SSL communication with Gateway, default false", + "protectionDomain": "The name of the Protection Domain for the configured storage (defaults to \"default\").", + "storagePool": "The Storage Pool associated with the protection domain (defaults to \"default\").", + "storageMode": "Indicates whether the storage for a volume should be thick or thin (defaults to \"thin\").", + "volumeName": "The name of a volume already created in the ScaleIO system that is associated with this volume source.", + "fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.", + "readOnly": "Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.", +} + +func (ScaleIOVolumeSource) SwaggerDoc() map[string]string { + return map_ScaleIOVolumeSource +} + var map_Secret = map[string]string{ "": "Secret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.", "metadata": "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -1911,6 +1930,7 @@ var map_VolumeSource = map[string]string{ "photonPersistentDisk": "PhotonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine", "projected": "Items for all in one resources secrets, configmaps, and downward API", "portworxVolume": "PortworxVolume represents a portworx volume attached and mounted on kubelets host machine", + "scaleIO": "ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.", } func (VolumeSource) SwaggerDoc() map[string]string { diff --git a/pkg/api/v1/zz_generated.conversion.go b/pkg/api/v1/zz_generated.conversion.go index 96ee3181..c57c8cc2 100644 --- a/pkg/api/v1/zz_generated.conversion.go +++ b/pkg/api/v1/zz_generated.conversion.go @@ -317,6 +317,8 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_api_ResourceRequirements_To_v1_ResourceRequirements, Convert_v1_SELinuxOptions_To_api_SELinuxOptions, Convert_api_SELinuxOptions_To_v1_SELinuxOptions, + Convert_v1_ScaleIOVolumeSource_To_api_ScaleIOVolumeSource, + Convert_api_ScaleIOVolumeSource_To_v1_ScaleIOVolumeSource, Convert_v1_Secret_To_api_Secret, Convert_api_Secret_To_v1_Secret, Convert_v1_SecretEnvSource_To_api_SecretEnvSource, @@ -2711,6 +2713,7 @@ func autoConvert_v1_PersistentVolumeSource_To_api_PersistentVolumeSource(in *Per out.AzureDisk = (*api.AzureDiskVolumeSource)(unsafe.Pointer(in.AzureDisk)) out.PhotonPersistentDisk = (*api.PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) out.PortworxVolume = (*api.PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) + out.ScaleIO = (*api.ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) return nil } @@ -2737,6 +2740,7 @@ func autoConvert_api_PersistentVolumeSource_To_v1_PersistentVolumeSource(in *api out.AzureDisk = (*AzureDiskVolumeSource)(unsafe.Pointer(in.AzureDisk)) out.PhotonPersistentDisk = (*PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) out.PortworxVolume = (*PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) + out.ScaleIO = (*ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) return nil } @@ -3887,6 +3891,42 @@ func Convert_api_SELinuxOptions_To_v1_SELinuxOptions(in *api.SELinuxOptions, out return autoConvert_api_SELinuxOptions_To_v1_SELinuxOptions(in, out, s) } +func autoConvert_v1_ScaleIOVolumeSource_To_api_ScaleIOVolumeSource(in *ScaleIOVolumeSource, out *api.ScaleIOVolumeSource, s conversion.Scope) error { + out.Gateway = in.Gateway + out.System = in.System + out.SecretRef = (*api.LocalObjectReference)(unsafe.Pointer(in.SecretRef)) + out.SSLEnabled = in.SSLEnabled + out.ProtectionDomain = in.ProtectionDomain + out.StoragePool = in.StoragePool + out.StorageMode = in.StorageMode + out.VolumeName = in.VolumeName + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + return nil +} + +func Convert_v1_ScaleIOVolumeSource_To_api_ScaleIOVolumeSource(in *ScaleIOVolumeSource, out *api.ScaleIOVolumeSource, s conversion.Scope) error { + return autoConvert_v1_ScaleIOVolumeSource_To_api_ScaleIOVolumeSource(in, out, s) +} + +func autoConvert_api_ScaleIOVolumeSource_To_v1_ScaleIOVolumeSource(in *api.ScaleIOVolumeSource, out *ScaleIOVolumeSource, s conversion.Scope) error { + out.Gateway = in.Gateway + out.System = in.System + out.SecretRef = (*LocalObjectReference)(unsafe.Pointer(in.SecretRef)) + out.SSLEnabled = in.SSLEnabled + out.ProtectionDomain = in.ProtectionDomain + out.StoragePool = in.StoragePool + out.StorageMode = in.StorageMode + out.VolumeName = in.VolumeName + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + return nil +} + +func Convert_api_ScaleIOVolumeSource_To_v1_ScaleIOVolumeSource(in *api.ScaleIOVolumeSource, out *ScaleIOVolumeSource, s conversion.Scope) error { + return autoConvert_api_ScaleIOVolumeSource_To_v1_ScaleIOVolumeSource(in, out, s) +} + func autoConvert_v1_Secret_To_api_Secret(in *Secret, out *api.Secret, s conversion.Scope) error { out.ObjectMeta = in.ObjectMeta out.Data = *(*map[string][]byte)(unsafe.Pointer(&in.Data)) @@ -4487,6 +4527,7 @@ func autoConvert_v1_VolumeSource_To_api_VolumeSource(in *VolumeSource, out *api. out.PhotonPersistentDisk = (*api.PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) out.Projected = (*api.ProjectedVolumeSource)(unsafe.Pointer(in.Projected)) out.PortworxVolume = (*api.PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) + out.ScaleIO = (*api.ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) return nil } @@ -4520,6 +4561,7 @@ func autoConvert_api_VolumeSource_To_v1_VolumeSource(in *api.VolumeSource, out * out.PhotonPersistentDisk = (*PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) out.Projected = (*ProjectedVolumeSource)(unsafe.Pointer(in.Projected)) out.PortworxVolume = (*PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) + out.ScaleIO = (*ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) return nil } diff --git a/pkg/api/v1/zz_generated.deepcopy.go b/pkg/api/v1/zz_generated.deepcopy.go index 76fa3888..463e9468 100644 --- a/pkg/api/v1/zz_generated.deepcopy.go +++ b/pkg/api/v1/zz_generated.deepcopy.go @@ -176,6 +176,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceQuotaStatus, InType: reflect.TypeOf(&ResourceQuotaStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceRequirements, InType: reflect.TypeOf(&ResourceRequirements{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SELinuxOptions, InType: reflect.TypeOf(&SELinuxOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ScaleIOVolumeSource, InType: reflect.TypeOf(&ScaleIOVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Secret, InType: reflect.TypeOf(&Secret{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SecretEnvSource, InType: reflect.TypeOf(&SecretEnvSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SecretKeySelector, InType: reflect.TypeOf(&SecretKeySelector{})}, @@ -2026,6 +2027,13 @@ func DeepCopy_v1_PersistentVolumeSource(in interface{}, out interface{}, c *conv *out = new(PortworxVolumeSource) **out = **in } + if in.ScaleIO != nil { + in, out := &in.ScaleIO, &out.ScaleIO + *out = new(ScaleIOVolumeSource) + if err := DeepCopy_v1_ScaleIOVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } @@ -2872,6 +2880,20 @@ func DeepCopy_v1_SELinuxOptions(in interface{}, out interface{}, c *conversion.C } } +func DeepCopy_v1_ScaleIOVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ScaleIOVolumeSource) + out := out.(*ScaleIOVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(LocalObjectReference) + **out = **in + } + return nil + } +} + func DeepCopy_v1_Secret(in interface{}, out interface{}, c *conversion.Cloner) error { { in := in.(*Secret) @@ -3445,6 +3467,13 @@ func DeepCopy_v1_VolumeSource(in interface{}, out interface{}, c *conversion.Clo *out = new(PortworxVolumeSource) **out = **in } + if in.ScaleIO != nil { + in, out := &in.ScaleIO, &out.ScaleIO + *out = new(ScaleIOVolumeSource) + if err := DeepCopy_v1_ScaleIOVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } diff --git a/pkg/api/v1/zz_generated.defaults.go b/pkg/api/v1/zz_generated.defaults.go index 981734f1..121b3918 100644 --- a/pkg/api/v1/zz_generated.defaults.go +++ b/pkg/api/v1/zz_generated.defaults.go @@ -137,6 +137,9 @@ func SetObjectDefaults_PersistentVolume(in *PersistentVolume) { if in.Spec.PersistentVolumeSource.AzureDisk != nil { SetDefaults_AzureDiskVolumeSource(in.Spec.PersistentVolumeSource.AzureDisk) } + if in.Spec.PersistentVolumeSource.ScaleIO != nil { + SetDefaults_ScaleIOVolumeSource(in.Spec.PersistentVolumeSource.ScaleIO) + } } func SetObjectDefaults_PersistentVolumeClaim(in *PersistentVolumeClaim) { @@ -204,6 +207,9 @@ func SetObjectDefaults_Pod(in *Pod) { } } } + if a.VolumeSource.ScaleIO != nil { + SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.InitContainers { a := &in.Spec.InitContainers[i] @@ -349,6 +355,9 @@ func SetObjectDefaults_PodTemplate(in *PodTemplate) { } } } + if a.VolumeSource.ScaleIO != nil { + SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Template.Spec.InitContainers { a := &in.Template.Spec.InitContainers[i] @@ -488,6 +497,9 @@ func SetObjectDefaults_ReplicationController(in *ReplicationController) { } } } + if a.VolumeSource.ScaleIO != nil { + SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.Template.Spec.InitContainers { a := &in.Spec.Template.Spec.InitContainers[i] diff --git a/pkg/api/zz_generated.deepcopy.go b/pkg/api/zz_generated.deepcopy.go index 2d56e395..c018bcc4 100644 --- a/pkg/api/zz_generated.deepcopy.go +++ b/pkg/api/zz_generated.deepcopy.go @@ -179,6 +179,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceQuotaStatus, InType: reflect.TypeOf(&ResourceQuotaStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceRequirements, InType: reflect.TypeOf(&ResourceRequirements{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SELinuxOptions, InType: reflect.TypeOf(&SELinuxOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ScaleIOVolumeSource, InType: reflect.TypeOf(&ScaleIOVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Secret, InType: reflect.TypeOf(&Secret{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretEnvSource, InType: reflect.TypeOf(&SecretEnvSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretKeySelector, InType: reflect.TypeOf(&SecretKeySelector{})}, @@ -2070,6 +2071,13 @@ func DeepCopy_api_PersistentVolumeSource(in interface{}, out interface{}, c *con *out = new(PortworxVolumeSource) **out = **in } + if in.ScaleIO != nil { + in, out := &in.ScaleIO, &out.ScaleIO + *out = new(ScaleIOVolumeSource) + if err := DeepCopy_api_ScaleIOVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } @@ -2911,6 +2919,20 @@ func DeepCopy_api_SELinuxOptions(in interface{}, out interface{}, c *conversion. } } +func DeepCopy_api_ScaleIOVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ScaleIOVolumeSource) + out := out.(*ScaleIOVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(LocalObjectReference) + **out = **in + } + return nil + } +} + func DeepCopy_api_Secret(in interface{}, out interface{}, c *conversion.Cloner) error { { in := in.(*Secret) @@ -3472,6 +3494,13 @@ func DeepCopy_api_VolumeSource(in interface{}, out interface{}, c *conversion.Cl *out = new(PortworxVolumeSource) **out = **in } + if in.ScaleIO != nil { + in, out := &in.ScaleIO, &out.ScaleIO + *out = new(ScaleIOVolumeSource) + if err := DeepCopy_api_ScaleIOVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } diff --git a/pkg/apis/apps/v1beta1/zz_generated.defaults.go b/pkg/apis/apps/v1beta1/zz_generated.defaults.go index 0876cddf..9b822c84 100644 --- a/pkg/apis/apps/v1beta1/zz_generated.defaults.go +++ b/pkg/apis/apps/v1beta1/zz_generated.defaults.go @@ -80,6 +80,9 @@ func SetObjectDefaults_Deployment(in *Deployment) { } } } + if a.VolumeSource.ScaleIO != nil { + v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.Template.Spec.InitContainers { a := &in.Spec.Template.Spec.InitContainers[i] @@ -218,6 +221,9 @@ func SetObjectDefaults_StatefulSet(in *StatefulSet) { } } } + if a.VolumeSource.ScaleIO != nil { + v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.Template.Spec.InitContainers { a := &in.Spec.Template.Spec.InitContainers[i] diff --git a/pkg/apis/batch/v1/zz_generated.defaults.go b/pkg/apis/batch/v1/zz_generated.defaults.go index 746355f4..417024f6 100644 --- a/pkg/apis/batch/v1/zz_generated.defaults.go +++ b/pkg/apis/batch/v1/zz_generated.defaults.go @@ -78,6 +78,9 @@ func SetObjectDefaults_Job(in *Job) { } } } + if a.VolumeSource.ScaleIO != nil { + api_v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.Template.Spec.InitContainers { a := &in.Spec.Template.Spec.InitContainers[i] diff --git a/pkg/apis/batch/v2alpha1/zz_generated.defaults.go b/pkg/apis/batch/v2alpha1/zz_generated.defaults.go index a0496024..d9e84bb5 100644 --- a/pkg/apis/batch/v2alpha1/zz_generated.defaults.go +++ b/pkg/apis/batch/v2alpha1/zz_generated.defaults.go @@ -81,6 +81,9 @@ func SetObjectDefaults_CronJob(in *CronJob) { } } } + if a.VolumeSource.ScaleIO != nil { + v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.JobTemplate.Spec.Template.Spec.InitContainers { a := &in.Spec.JobTemplate.Spec.Template.Spec.InitContainers[i] @@ -219,6 +222,9 @@ func SetObjectDefaults_Job(in *Job) { } } } + if a.VolumeSource.ScaleIO != nil { + v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.Template.Spec.InitContainers { a := &in.Spec.Template.Spec.InitContainers[i] @@ -356,6 +362,9 @@ func SetObjectDefaults_JobTemplate(in *JobTemplate) { } } } + if a.VolumeSource.ScaleIO != nil { + v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Template.Spec.Template.Spec.InitContainers { a := &in.Template.Spec.Template.Spec.InitContainers[i] diff --git a/pkg/apis/extensions/types.go b/pkg/apis/extensions/types.go index f071d81f..096ef159 100644 --- a/pkg/apis/extensions/types.go +++ b/pkg/apis/extensions/types.go @@ -918,6 +918,7 @@ var ( PhotonPersistentDisk FSType = "photonPersistentDisk" Projected FSType = "projected" PortworxVolume FSType = "portworxVolume" + ScaleIO FSType = "scaleIO" All FSType = "*" ) diff --git a/pkg/apis/extensions/v1beta1/zz_generated.defaults.go b/pkg/apis/extensions/v1beta1/zz_generated.defaults.go index 4dd2ef8f..770faa51 100644 --- a/pkg/apis/extensions/v1beta1/zz_generated.defaults.go +++ b/pkg/apis/extensions/v1beta1/zz_generated.defaults.go @@ -84,6 +84,9 @@ func SetObjectDefaults_DaemonSet(in *DaemonSet) { } } } + if a.VolumeSource.ScaleIO != nil { + v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.Template.Spec.InitContainers { a := &in.Spec.Template.Spec.InitContainers[i] @@ -222,6 +225,9 @@ func SetObjectDefaults_Deployment(in *Deployment) { } } } + if a.VolumeSource.ScaleIO != nil { + v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.Template.Spec.InitContainers { a := &in.Spec.Template.Spec.InitContainers[i] @@ -371,6 +377,9 @@ func SetObjectDefaults_ReplicaSet(in *ReplicaSet) { } } } + if a.VolumeSource.ScaleIO != nil { + v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } for i := range in.Spec.Template.Spec.InitContainers { a := &in.Spec.Template.Spec.InitContainers[i] diff --git a/pkg/apis/settings/v1alpha1/zz_generated.defaults.go b/pkg/apis/settings/v1alpha1/zz_generated.defaults.go index 15626f1a..c178a307 100644 --- a/pkg/apis/settings/v1alpha1/zz_generated.defaults.go +++ b/pkg/apis/settings/v1alpha1/zz_generated.defaults.go @@ -84,6 +84,9 @@ func SetObjectDefaults_PodPreset(in *PodPreset) { } } } + if a.VolumeSource.ScaleIO != nil { + v1.SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) + } } }