From 02f0a3ee91e43d39da80df926f552b8934a4646d Mon Sep 17 00:00:00 2001 From: kerthcet Date: Tue, 10 May 2022 12:54:49 +0800 Subject: [PATCH] feat: add NodeInclusionPolicy to TopologySpreadConstraint in PodSpec Signed-off-by: kerthcet --- api/openapi-spec/swagger.json | 10 +- api/openapi-spec/v3/api__v1_openapi.json | 10 +- .../v3/apis__apps__v1_openapi.json | 10 +- .../v3/apis__batch__v1_openapi.json | 10 +- .../v3/apis__batch__v1beta1_openapi.json | 10 +- pkg/api/pod/util.go | 46 + pkg/api/pod/util_test.go | 244 +++ pkg/apis/core/types.go | 33 +- pkg/apis/core/v1/zz_generated.conversion.go | 4 + pkg/apis/core/validation/validation.go | 22 + pkg/apis/core/validation/validation_test.go | 49 + pkg/apis/core/zz_generated.deepcopy.go | 10 + pkg/features/kube_features.go | 10 + pkg/generated/openapi/zz_generated.openapi.go | 16 +- .../config/v1beta3/default_plugins_test.go | 2 +- .../src/k8s.io/api/core/v1/generated.pb.go | 1879 +++++++++-------- .../src/k8s.io/api/core/v1/generated.proto | 24 +- staging/src/k8s.io/api/core/v1/types.go | 33 +- .../core/v1/types_swagger_doc_generated.go | 14 +- .../api/core/v1/zz_generated.deepcopy.go | 10 + .../api/testdata/HEAD/apps.v1.DaemonSet.json | 4 +- .../api/testdata/HEAD/apps.v1.DaemonSet.pb | Bin 9823 -> 9872 bytes .../api/testdata/HEAD/apps.v1.DaemonSet.yaml | 2 + .../api/testdata/HEAD/apps.v1.Deployment.json | 4 +- .../api/testdata/HEAD/apps.v1.Deployment.pb | Bin 9836 -> 9885 bytes .../api/testdata/HEAD/apps.v1.Deployment.yaml | 2 + .../api/testdata/HEAD/apps.v1.ReplicaSet.json | 4 +- .../api/testdata/HEAD/apps.v1.ReplicaSet.pb | Bin 9753 -> 9802 bytes .../api/testdata/HEAD/apps.v1.ReplicaSet.yaml | 2 + .../testdata/HEAD/apps.v1.StatefulSet.json | 4 +- .../api/testdata/HEAD/apps.v1.StatefulSet.pb | Bin 10735 -> 10784 bytes .../testdata/HEAD/apps.v1.StatefulSet.yaml | 2 + .../HEAD/apps.v1beta1.Deployment.json | 4 +- .../testdata/HEAD/apps.v1beta1.Deployment.pb | Bin 9845 -> 9894 bytes .../HEAD/apps.v1beta1.Deployment.yaml | 2 + .../HEAD/apps.v1beta1.StatefulSet.json | 4 +- .../testdata/HEAD/apps.v1beta1.StatefulSet.pb | Bin 10740 -> 10789 bytes .../HEAD/apps.v1beta1.StatefulSet.yaml | 2 + .../testdata/HEAD/apps.v1beta2.DaemonSet.json | 4 +- .../testdata/HEAD/apps.v1beta2.DaemonSet.pb | Bin 9828 -> 9877 bytes .../testdata/HEAD/apps.v1beta2.DaemonSet.yaml | 2 + .../HEAD/apps.v1beta2.Deployment.json | 4 +- .../testdata/HEAD/apps.v1beta2.Deployment.pb | Bin 9841 -> 9890 bytes .../HEAD/apps.v1beta2.Deployment.yaml | 2 + .../HEAD/apps.v1beta2.ReplicaSet.json | 4 +- .../testdata/HEAD/apps.v1beta2.ReplicaSet.pb | Bin 9758 -> 9807 bytes .../HEAD/apps.v1beta2.ReplicaSet.yaml | 2 + .../HEAD/apps.v1beta2.StatefulSet.json | 4 +- .../testdata/HEAD/apps.v1beta2.StatefulSet.pb | Bin 10740 -> 10789 bytes .../HEAD/apps.v1beta2.StatefulSet.yaml | 2 + .../api/testdata/HEAD/batch.v1.CronJob.json | 4 +- .../api/testdata/HEAD/batch.v1.CronJob.pb | Bin 10257 -> 10306 bytes .../api/testdata/HEAD/batch.v1.CronJob.yaml | 2 + .../api/testdata/HEAD/batch.v1.Job.json | 4 +- .../k8s.io/api/testdata/HEAD/batch.v1.Job.pb | Bin 9861 -> 9910 bytes .../api/testdata/HEAD/batch.v1.Job.yaml | 2 + .../testdata/HEAD/batch.v1beta1.CronJob.json | 4 +- .../testdata/HEAD/batch.v1beta1.CronJob.pb | Bin 10262 -> 10311 bytes .../testdata/HEAD/batch.v1beta1.CronJob.yaml | 2 + .../HEAD/batch.v1beta1.JobTemplate.json | 4 +- .../HEAD/batch.v1beta1.JobTemplate.pb | Bin 10074 -> 10123 bytes .../HEAD/batch.v1beta1.JobTemplate.yaml | 2 + .../k8s.io/api/testdata/HEAD/core.v1.Pod.json | 4 +- .../k8s.io/api/testdata/HEAD/core.v1.Pod.pb | Bin 10299 -> 10348 bytes .../k8s.io/api/testdata/HEAD/core.v1.Pod.yaml | 2 + .../testdata/HEAD/core.v1.PodTemplate.json | 4 +- .../api/testdata/HEAD/core.v1.PodTemplate.pb | Bin 9589 -> 9638 bytes .../testdata/HEAD/core.v1.PodTemplate.yaml | 2 + .../HEAD/core.v1.ReplicationController.json | 4 +- .../HEAD/core.v1.ReplicationController.pb | Bin 9711 -> 9760 bytes .../HEAD/core.v1.ReplicationController.yaml | 2 + .../HEAD/extensions.v1beta1.DaemonSet.json | 4 +- .../HEAD/extensions.v1beta1.DaemonSet.pb | Bin 9836 -> 9885 bytes .../HEAD/extensions.v1beta1.DaemonSet.yaml | 2 + .../HEAD/extensions.v1beta1.Deployment.json | 4 +- .../HEAD/extensions.v1beta1.Deployment.pb | Bin 9851 -> 9900 bytes .../HEAD/extensions.v1beta1.Deployment.yaml | 2 + .../HEAD/extensions.v1beta1.ReplicaSet.json | 4 +- .../HEAD/extensions.v1beta1.ReplicaSet.pb | Bin 9764 -> 9813 bytes .../HEAD/extensions.v1beta1.ReplicaSet.yaml | 2 + .../core/v1/topologyspreadconstraint.go | 28 +- .../applyconfigurations/internal/internal.go | 6 + 82 files changed, 1666 insertions(+), 934 deletions(-) diff --git a/api/openapi-spec/swagger.json b/api/openapi-spec/swagger.json index 9e5e0e9946b..2cfd282fc9f 100644 --- a/api/openapi-spec/swagger.json +++ b/api/openapi-spec/swagger.json @@ -10328,8 +10328,16 @@ "format": "int32", "type": "integer" }, + "nodeAffinityPolicy": { + "description": "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\nIf this value is nil, the behavior is equivalent to the Honor policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, + "nodeTaintsPolicy": { + "description": "NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included.\n\nIf this value is nil, the behavior is equivalent to the Ignore policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, "topologyKey": { - "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes match the node selector. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", + "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", "type": "string" }, "whenUnsatisfiable": { diff --git a/api/openapi-spec/v3/api__v1_openapi.json b/api/openapi-spec/v3/api__v1_openapi.json index 9c929d1952a..a1a23c203aa 100644 --- a/api/openapi-spec/v3/api__v1_openapi.json +++ b/api/openapi-spec/v3/api__v1_openapi.json @@ -7262,9 +7262,17 @@ "format": "int32", "type": "integer" }, + "nodeAffinityPolicy": { + "description": "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\nIf this value is nil, the behavior is equivalent to the Honor policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, + "nodeTaintsPolicy": { + "description": "NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included.\n\nIf this value is nil, the behavior is equivalent to the Ignore policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, "topologyKey": { "default": "", - "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes match the node selector. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", + "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", "type": "string" }, "whenUnsatisfiable": { diff --git a/api/openapi-spec/v3/apis__apps__v1_openapi.json b/api/openapi-spec/v3/apis__apps__v1_openapi.json index d0c004ef90a..284460c18ef 100644 --- a/api/openapi-spec/v3/apis__apps__v1_openapi.json +++ b/api/openapi-spec/v3/apis__apps__v1_openapi.json @@ -4359,9 +4359,17 @@ "format": "int32", "type": "integer" }, + "nodeAffinityPolicy": { + "description": "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\nIf this value is nil, the behavior is equivalent to the Honor policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, + "nodeTaintsPolicy": { + "description": "NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included.\n\nIf this value is nil, the behavior is equivalent to the Ignore policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, "topologyKey": { "default": "", - "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes match the node selector. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", + "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", "type": "string" }, "whenUnsatisfiable": { diff --git a/api/openapi-spec/v3/apis__batch__v1_openapi.json b/api/openapi-spec/v3/apis__batch__v1_openapi.json index fbd35583ee2..f0305881b62 100644 --- a/api/openapi-spec/v3/apis__batch__v1_openapi.json +++ b/api/openapi-spec/v3/apis__batch__v1_openapi.json @@ -3438,9 +3438,17 @@ "format": "int32", "type": "integer" }, + "nodeAffinityPolicy": { + "description": "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\nIf this value is nil, the behavior is equivalent to the Honor policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, + "nodeTaintsPolicy": { + "description": "NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included.\n\nIf this value is nil, the behavior is equivalent to the Ignore policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, "topologyKey": { "default": "", - "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes match the node selector. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", + "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", "type": "string" }, "whenUnsatisfiable": { diff --git a/api/openapi-spec/v3/apis__batch__v1beta1_openapi.json b/api/openapi-spec/v3/apis__batch__v1beta1_openapi.json index e7790056abe..bb4dff76b8f 100644 --- a/api/openapi-spec/v3/apis__batch__v1beta1_openapi.json +++ b/api/openapi-spec/v3/apis__batch__v1beta1_openapi.json @@ -3206,9 +3206,17 @@ "format": "int32", "type": "integer" }, + "nodeAffinityPolicy": { + "description": "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\nIf this value is nil, the behavior is equivalent to the Honor policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, + "nodeTaintsPolicy": { + "description": "NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included.\n\nIf this value is nil, the behavior is equivalent to the Ignore policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "type": "string" + }, "topologyKey": { "default": "", - "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes match the node selector. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", + "description": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", "type": "string" }, "whenUnsatisfiable": { diff --git a/pkg/api/pod/util.go b/pkg/api/pod/util.go index 68043397543..b617d1d8dfa 100644 --- a/pkg/api/pod/util.go +++ b/pkg/api/pod/util.go @@ -580,6 +580,7 @@ func dropDisabledFields( } dropDisabledTopologySpreadConstraintsFields(podSpec, oldPodSpec) + dropDisabledNodeInclusionPolicyFields(podSpec, oldPodSpec) } // dropDisabledTopologySpreadConstraintsFields removes disabled fields from PodSpec related @@ -647,6 +648,51 @@ func dropDisabledCSIVolumeSourceAlphaFields(podSpec, oldPodSpec *api.PodSpec) { } } +// dropDisabledNodeInclusionPolicyFields removes disabled fields from PodSpec related +// to NodeInclusionPolicy only if it is not used by the old spec. +func dropDisabledNodeInclusionPolicyFields(podSpec, oldPodSpec *api.PodSpec) { + if !utilfeature.DefaultFeatureGate.Enabled(features.NodeInclusionPolicyInPodTopologySpread) && podSpec != nil { + if !nodeTaintsPolicyInUse(oldPodSpec) { + for i := range podSpec.TopologySpreadConstraints { + podSpec.TopologySpreadConstraints[i].NodeTaintsPolicy = nil + } + } + if !nodeAffinityPolicyInUse(oldPodSpec) { + for i := range podSpec.TopologySpreadConstraints { + podSpec.TopologySpreadConstraints[i].NodeAffinityPolicy = nil + } + } + } +} + +// nodeAffinityPolicyInUse returns true if the pod spec is non-nil and has NodeAffinityPolicy field set +// in TopologySpreadConstraints +func nodeAffinityPolicyInUse(podSpec *api.PodSpec) bool { + if podSpec == nil { + return false + } + for _, c := range podSpec.TopologySpreadConstraints { + if c.NodeAffinityPolicy != nil { + return true + } + } + return false +} + +// nodeTaintsPolicyInUse returns true if the pod spec is non-nil and has NodeTaintsPolicy field set +// in TopologySpreadConstraints +func nodeTaintsPolicyInUse(podSpec *api.PodSpec) bool { + if podSpec == nil { + return false + } + for _, c := range podSpec.TopologySpreadConstraints { + if c.NodeTaintsPolicy != nil { + return true + } + } + return false +} + func ephemeralContainersInUse(podSpec *api.PodSpec) bool { if podSpec == nil { return false diff --git a/pkg/api/pod/util_test.go b/pkg/api/pod/util_test.go index e011da17325..1eaa2b15178 100644 --- a/pkg/api/pod/util_test.go +++ b/pkg/api/pod/util_test.go @@ -1768,3 +1768,247 @@ func TestDropOSField(t *testing.T) { } } } + +func TestDropNodeInclusionPolicyFields(t *testing.T) { + ignore := api.NodeInclusionPolicyIgnore + honor := api.NodeInclusionPolicyHonor + + tests := []struct { + name string + enabled bool + podSpec *api.PodSpec + oldPodSpec *api.PodSpec + wantPodSpec *api.PodSpec + }{ + { + name: "feature disabled, both pods don't use the fields", + enabled: false, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + }, + { + name: "feature disabled, only old pod use NodeAffinityPolicy field", + enabled: false, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeAffinityPolicy: &honor}, + }, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + }, + { + name: "feature disabled, only old pod use NodeTaintsPolicy field", + enabled: false, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeTaintsPolicy: &ignore}, + }, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + }, + { + name: "feature disabled, only current pod use NodeAffinityPolicy field", + enabled: false, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeAffinityPolicy: &honor}, + }, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{{ + NodeAffinityPolicy: nil, + }}, + }, + }, + { + name: "feature disabled, only current pod use NodeTaintsPolicy field", + enabled: false, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeTaintsPolicy: &ignore}, + }, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeTaintsPolicy: nil}, + }, + }, + }, + { + name: "feature disabled, both pods use NodeAffinityPolicy fields", + enabled: false, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeAffinityPolicy: &honor}, + }, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeAffinityPolicy: &ignore}, + }, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeAffinityPolicy: &ignore}, + }, + }, + }, + { + name: "feature disabled, both pods use NodeTaintsPolicy fields", + enabled: false, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeTaintsPolicy: &ignore}, + }, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeTaintsPolicy: &honor}, + }, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + {NodeTaintsPolicy: &honor}, + }, + }, + }, + { + name: "feature enabled, both pods use the fields", + enabled: true, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + { + NodeAffinityPolicy: &ignore, + NodeTaintsPolicy: &honor, + }, + }, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + { + NodeAffinityPolicy: &honor, + NodeTaintsPolicy: &ignore, + }, + }, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + { + NodeAffinityPolicy: &honor, + NodeTaintsPolicy: &ignore, + }, + }, + }, + }, + { + name: "feature enabled, only old pod use NodeAffinityPolicy field", + enabled: true, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + { + NodeAffinityPolicy: &honor, + }, + }, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + }, + { + name: "feature enabled, only old pod use NodeTaintsPolicy field", + enabled: true, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + { + NodeTaintsPolicy: &ignore, + }, + }, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + }, + { + name: "feature enabled, only current pod use NodeAffinityPolicy field", + enabled: true, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + { + NodeAffinityPolicy: &ignore, + }, + }, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + { + NodeAffinityPolicy: &ignore, + }, + }, + }, + }, + { + name: "feature enabled, only current pod use NodeTaintsPolicy field", + enabled: true, + oldPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{}, + }, + podSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + { + NodeTaintsPolicy: &honor, + }, + }, + }, + wantPodSpec: &api.PodSpec{ + TopologySpreadConstraints: []api.TopologySpreadConstraint{ + { + NodeTaintsPolicy: &honor, + }, + }, + }, + }, + } + + for _, test := range tests { + t.Run(test.name, func(t *testing.T) { + defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.NodeInclusionPolicyInPodTopologySpread, test.enabled)() + + dropDisabledFields(test.podSpec, nil, test.oldPodSpec, nil) + if diff := cmp.Diff(test.wantPodSpec, test.podSpec); diff != "" { + t.Errorf("unexpected pod spec (-want, +got):\n%s", diff) + } + }) + } +} diff --git a/pkg/apis/core/types.go b/pkg/apis/core/types.go index 756dc92ea64..d0aeb7058f4 100644 --- a/pkg/apis/core/types.go +++ b/pkg/apis/core/types.go @@ -5616,6 +5616,17 @@ const ( ScheduleAnyway UnsatisfiableConstraintAction = "ScheduleAnyway" ) +// NodeInclusionPolicy defines the type of node inclusion policy +// +enum +type NodeInclusionPolicy string + +const ( + // NodeInclusionPolicyIgnore means ignore this scheduling directive when calculating pod topology spread skew. + NodeInclusionPolicyIgnore NodeInclusionPolicy = "Ignore" + // NodeInclusionPolicyHonor means use this scheduling policy when calculating pod topology spread skew. + NodeInclusionPolicyHonor NodeInclusionPolicy = "Honor" +) + // TopologySpreadConstraint specifies how to spread matching pods among the given topology. type TopologySpreadConstraint struct { // MaxSkew describes the degree to which pods may be unevenly distributed. @@ -5644,7 +5655,8 @@ type TopologySpreadConstraint struct { // We consider each as a "bucket", and try to put balanced number // of pods into each bucket. // We define a domain as a particular instance of a topology. - // Also, we define an eligible domain as a domain whose nodes match the node selector. + // Also, we define an eligible domain as a domain whose nodes meet the requirements of + // nodeAffinityPolicy and nodeTaintsPolicy. // e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology. // And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology. // It's a required field. @@ -5702,6 +5714,25 @@ type TopologySpreadConstraint struct { // This is an alpha field and requires enabling MinDomainsInPodTopologySpread feature gate. // +optional MinDomains *int32 + // NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector + // when calculating pod topology spread skew. Options are: + // - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. + // - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. + // + // If this value is nil, the behavior is equivalent to the Honor policy. + // This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. + // +optional + NodeAffinityPolicy *NodeInclusionPolicy + // NodeTaintsPolicy indicates how we will treat node taints when calculating + // pod topology spread skew. Options are: + // - Honor: nodes without taints, along with tainted nodes for which the incoming pod + // has a toleration, are included. + // - Ignore: node taints are ignored. All nodes are included. + // + // If this value is nil, the behavior is equivalent to the Ignore policy. + // This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. + // +optional + NodeTaintsPolicy *NodeInclusionPolicy } // These are the built-in errors for PortStatus. diff --git a/pkg/apis/core/v1/zz_generated.conversion.go b/pkg/apis/core/v1/zz_generated.conversion.go index c1415f4546a..007b0325288 100644 --- a/pkg/apis/core/v1/zz_generated.conversion.go +++ b/pkg/apis/core/v1/zz_generated.conversion.go @@ -7997,6 +7997,8 @@ func autoConvert_v1_TopologySpreadConstraint_To_core_TopologySpreadConstraint(in out.WhenUnsatisfiable = core.UnsatisfiableConstraintAction(in.WhenUnsatisfiable) out.LabelSelector = (*metav1.LabelSelector)(unsafe.Pointer(in.LabelSelector)) out.MinDomains = (*int32)(unsafe.Pointer(in.MinDomains)) + out.NodeAffinityPolicy = (*core.NodeInclusionPolicy)(unsafe.Pointer(in.NodeAffinityPolicy)) + out.NodeTaintsPolicy = (*core.NodeInclusionPolicy)(unsafe.Pointer(in.NodeTaintsPolicy)) return nil } @@ -8011,6 +8013,8 @@ func autoConvert_core_TopologySpreadConstraint_To_v1_TopologySpreadConstraint(in out.WhenUnsatisfiable = v1.UnsatisfiableConstraintAction(in.WhenUnsatisfiable) out.LabelSelector = (*metav1.LabelSelector)(unsafe.Pointer(in.LabelSelector)) out.MinDomains = (*int32)(unsafe.Pointer(in.MinDomains)) + out.NodeAffinityPolicy = (*v1.NodeInclusionPolicy)(unsafe.Pointer(in.NodeAffinityPolicy)) + out.NodeTaintsPolicy = (*v1.NodeInclusionPolicy)(unsafe.Pointer(in.NodeTaintsPolicy)) return nil } diff --git a/pkg/apis/core/validation/validation.go b/pkg/apis/core/validation/validation.go index bfda6a76f0a..0e07a8e2a95 100644 --- a/pkg/apis/core/validation/validation.go +++ b/pkg/apis/core/validation/validation.go @@ -6490,6 +6490,12 @@ func validateTopologySpreadConstraints(constraints []core.TopologySpreadConstrai allErrs = append(allErrs, err) } allErrs = append(allErrs, validateMinDomains(subFldPath.Child("minDomains"), constraint.MinDomains, constraint.WhenUnsatisfiable)...) + if err := validateNodeInclusionPolicy(subFldPath.Child("nodeAffinityPolicy"), constraint.NodeAffinityPolicy); err != nil { + allErrs = append(allErrs, err) + } + if err := validateNodeInclusionPolicy(subFldPath.Child("nodeTaintsPolicy"), constraint.NodeTaintsPolicy); err != nil { + allErrs = append(allErrs, err) + } } return allErrs @@ -6547,6 +6553,22 @@ func ValidateSpreadConstraintNotRepeat(fldPath *field.Path, constraint core.Topo return nil } +var ( + supportedPodTopologySpreadNodePolicies = sets.NewString(string(core.NodeInclusionPolicyIgnore), string(core.NodeInclusionPolicyHonor)) +) + +// validateNodeAffinityPolicy tests that the argument is a valid NodeInclusionPolicy. +func validateNodeInclusionPolicy(fldPath *field.Path, policy *core.NodeInclusionPolicy) *field.Error { + if policy == nil { + return nil + } + + if !supportedPodTopologySpreadNodePolicies.Has(string(*policy)) { + return field.NotSupported(fldPath, policy, supportedPodTopologySpreadNodePolicies.List()) + } + return nil +} + // ValidateServiceClusterIPsRelatedFields validates .spec.ClusterIPs,, // .spec.IPFamilies, .spec.ipFamilyPolicy. This is exported because it is used // during IP init and allocation. diff --git a/pkg/apis/core/validation/validation_test.go b/pkg/apis/core/validation/validation_test.go index 0739887718e..166abd47b4c 100644 --- a/pkg/apis/core/validation/validation_test.go +++ b/pkg/apis/core/validation/validation_test.go @@ -18926,6 +18926,12 @@ func TestValidateTopologySpreadConstraints(t *testing.T) { fieldPathTopologyKey := subFldPath0.Child("topologyKey") fieldPathWhenUnsatisfiable := subFldPath0.Child("whenUnsatisfiable") fieldPathTopologyKeyAndWhenUnsatisfiable := subFldPath0.Child("{topologyKey, whenUnsatisfiable}") + nodeAffinityField := subFldPath0.Child("nodeAffinityPolicy") + nodeTaintsField := subFldPath0.Child("nodeTaintsPolicy") + unknown := core.NodeInclusionPolicy("Unknown") + ignore := core.NodeInclusionPolicyIgnore + honor := core.NodeInclusionPolicyHonor + testCases := []struct { name string constraints []core.TopologySpreadConstraint @@ -19055,6 +19061,49 @@ func TestValidateTopologySpreadConstraints(t *testing.T) { field.Duplicate(fieldPathTopologyKeyAndWhenUnsatisfiable, fmt.Sprintf("{%v, %v}", "k8s.io/zone", core.DoNotSchedule)), }, }, + { + name: "supported policy name set on NodeAffinityPolicy and NodeTaintsPolicy", + constraints: []core.TopologySpreadConstraint{ + { + MaxSkew: 1, + TopologyKey: "k8s.io/zone", + WhenUnsatisfiable: core.DoNotSchedule, + NodeAffinityPolicy: &honor, + NodeTaintsPolicy: &ignore, + }, + }, + wantFieldErrors: []*field.Error{}, + }, + { + name: "unsupported policy name set on NodeAffinityPolicy", + constraints: []core.TopologySpreadConstraint{ + { + MaxSkew: 1, + TopologyKey: "k8s.io/zone", + WhenUnsatisfiable: core.DoNotSchedule, + NodeAffinityPolicy: &unknown, + NodeTaintsPolicy: &ignore, + }, + }, + wantFieldErrors: []*field.Error{ + field.NotSupported(nodeAffinityField, &unknown, supportedPodTopologySpreadNodePolicies.List()), + }, + }, + { + name: "unsupported policy name set on NodeTaintsPolicy", + constraints: []core.TopologySpreadConstraint{ + { + MaxSkew: 1, + TopologyKey: "k8s.io/zone", + WhenUnsatisfiable: core.DoNotSchedule, + NodeAffinityPolicy: &honor, + NodeTaintsPolicy: &unknown, + }, + }, + wantFieldErrors: []*field.Error{ + field.NotSupported(nodeTaintsField, &unknown, supportedPodTopologySpreadNodePolicies.List()), + }, + }, } for _, tc := range testCases { diff --git a/pkg/apis/core/zz_generated.deepcopy.go b/pkg/apis/core/zz_generated.deepcopy.go index 40821535e93..2aba47590f6 100644 --- a/pkg/apis/core/zz_generated.deepcopy.go +++ b/pkg/apis/core/zz_generated.deepcopy.go @@ -5639,6 +5639,16 @@ func (in *TopologySpreadConstraint) DeepCopyInto(out *TopologySpreadConstraint) *out = new(int32) **out = **in } + if in.NodeAffinityPolicy != nil { + in, out := &in.NodeAffinityPolicy, &out.NodeAffinityPolicy + *out = new(NodeInclusionPolicy) + **out = **in + } + if in.NodeTaintsPolicy != nil { + in, out := &in.NodeTaintsPolicy, &out.NodeTaintsPolicy + *out = new(NodeInclusionPolicy) + **out = **in + } return } diff --git a/pkg/features/kube_features.go b/pkg/features/kube_features.go index e6829a9a328..ec32657903b 100644 --- a/pkg/features/kube_features.go +++ b/pkg/features/kube_features.go @@ -803,6 +803,14 @@ const ( // // Enables support for 'HostProcess' containers on Windows nodes. WindowsHostProcessContainers featuregate.Feature = "WindowsHostProcessContainers" + + // owner: @kerthcet + // kep: http://kep.k8s.io/3094 + // alpha: v1.25 + // + // Allow users to specify whether to take nodeAffinity/nodeTaint into consideration when + // calculating pod topology spread skew. + NodeInclusionPolicyInPodTopologySpread featuregate.Feature = "NodeInclusionPolicyInPodTopologySpread" ) func init() { @@ -1030,6 +1038,8 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS WindowsHostProcessContainers: {Default: true, PreRelease: featuregate.Beta}, + NodeInclusionPolicyInPodTopologySpread: {Default: false, PreRelease: featuregate.Alpha}, + // inherited features from generic apiserver, relisted here to get a conflict if it is changed // unintentionally on either side: diff --git a/pkg/generated/openapi/zz_generated.openapi.go b/pkg/generated/openapi/zz_generated.openapi.go index e1aa631aecf..a2dc407f3c1 100644 --- a/pkg/generated/openapi/zz_generated.openapi.go +++ b/pkg/generated/openapi/zz_generated.openapi.go @@ -25417,7 +25417,7 @@ func schema_k8sio_api_core_v1_TopologySpreadConstraint(ref common.ReferenceCallb }, "topologyKey": { SchemaProps: spec.SchemaProps{ - Description: "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes match the node selector. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", + Description: "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", Default: "", Type: []string{"string"}, Format: "", @@ -25444,6 +25444,20 @@ func schema_k8sio_api_core_v1_TopologySpreadConstraint(ref common.ReferenceCallb Format: "int32", }, }, + "nodeAffinityPolicy": { + SchemaProps: spec.SchemaProps{ + Description: "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\nIf this value is nil, the behavior is equivalent to the Honor policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + Type: []string{"string"}, + Format: "", + }, + }, + "nodeTaintsPolicy": { + SchemaProps: spec.SchemaProps{ + Description: "NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included.\n\nIf this value is nil, the behavior is equivalent to the Ignore policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + Type: []string{"string"}, + Format: "", + }, + }, }, Required: []string{"maxSkew", "topologyKey", "whenUnsatisfiable"}, }, diff --git a/pkg/scheduler/apis/config/v1beta3/default_plugins_test.go b/pkg/scheduler/apis/config/v1beta3/default_plugins_test.go index 30c32761c4d..05d0a33d5d3 100644 --- a/pkg/scheduler/apis/config/v1beta3/default_plugins_test.go +++ b/pkg/scheduler/apis/config/v1beta3/default_plugins_test.go @@ -17,13 +17,13 @@ limitations under the License. package v1beta3 import ( - "k8s.io/kube-scheduler/config/v1beta3" "testing" "github.com/google/go-cmp/cmp" "k8s.io/apiserver/pkg/util/feature" "k8s.io/component-base/featuregate" featuregatetesting "k8s.io/component-base/featuregate/testing" + "k8s.io/kube-scheduler/config/v1beta3" "k8s.io/kubernetes/pkg/scheduler/framework/plugins/names" "k8s.io/utils/pointer" ) diff --git a/staging/src/k8s.io/api/core/v1/generated.pb.go b/staging/src/k8s.io/api/core/v1/generated.pb.go index 9ec95250350..efdf2cde0c2 100644 --- a/staging/src/k8s.io/api/core/v1/generated.pb.go +++ b/staging/src/k8s.io/api/core/v1/generated.pb.go @@ -6175,900 +6175,903 @@ func init() { } var fileDescriptor_83c10c24ec417dc9 = []byte{ - // 14279 bytes of a gzipped FileDescriptorProto + // 14336 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x6b, 0x70, 0x1c, 0xc9, - 0x79, 0x98, 0x66, 0x17, 0xaf, 0xfd, 0xf0, 0x6e, 0x90, 0x3c, 0x10, 0x77, 0x24, 0x78, 0x43, 0x89, - 0xc7, 0xd3, 0xdd, 0x01, 0xe2, 0x3d, 0xa4, 0xf3, 0x9d, 0x74, 0x16, 0x80, 0x05, 0x48, 0x1c, 0x09, - 0x70, 0xaf, 0x17, 0x24, 0x25, 0xf9, 0xa4, 0xd2, 0x60, 0xb7, 0x01, 0x8c, 0xb0, 0x3b, 0xb3, 0x37, - 0x33, 0x0b, 0x12, 0x8c, 0x5c, 0x71, 0xe4, 0xa7, 0x6c, 0x27, 0xa5, 0x4a, 0x39, 0x8f, 0x92, 0x5d, - 0xae, 0x94, 0xe3, 0xc4, 0x56, 0x94, 0x97, 0x23, 0xc7, 0x76, 0x2c, 0x27, 0x76, 0xde, 0x4e, 0x7e, - 0xd8, 0x8e, 0xab, 0x62, 0xb9, 0xca, 0x15, 0xc4, 0xa6, 0x53, 0xe5, 0x52, 0x55, 0x62, 0x3b, 0x71, - 0xf2, 0x23, 0x88, 0x13, 0xa7, 0xfa, 0x39, 0xdd, 0xf3, 0xd8, 0x5d, 0xf0, 0x40, 0xe8, 0xa4, 0xba, - 0x7f, 0xbb, 0xfd, 0x7d, 0xfd, 0x75, 0x4f, 0x3f, 0xbf, 0xfe, 0x9e, 0xf0, 0xea, 0xee, 0xcb, 0xe1, - 0x9c, 0xeb, 0xcf, 0xef, 0xb6, 0x37, 0x49, 0xe0, 0x91, 0x88, 0x84, 0xf3, 0x7b, 0xc4, 0xab, 0xfb, - 0xc1, 0xbc, 0x00, 0x38, 0x2d, 0x77, 0xbe, 0xe6, 0x07, 0x64, 0x7e, 0xef, 0xca, 0xfc, 0x36, 0xf1, - 0x48, 0xe0, 0x44, 0xa4, 0x3e, 0xd7, 0x0a, 0xfc, 0xc8, 0x47, 0x88, 0xe3, 0xcc, 0x39, 0x2d, 0x77, - 0x8e, 0xe2, 0xcc, 0xed, 0x5d, 0x99, 0x79, 0x6e, 0xdb, 0x8d, 0x76, 0xda, 0x9b, 0x73, 0x35, 0xbf, - 0x39, 0xbf, 0xed, 0x6f, 0xfb, 0xf3, 0x0c, 0x75, 0xb3, 0xbd, 0xc5, 0xfe, 0xb1, 0x3f, 0xec, 0x17, - 0x27, 0x31, 0xf3, 0x62, 0xdc, 0x4c, 0xd3, 0xa9, 0xed, 0xb8, 0x1e, 0x09, 0xf6, 0xe7, 0x5b, 0xbb, - 0xdb, 0xac, 0xdd, 0x80, 0x84, 0x7e, 0x3b, 0xa8, 0x91, 0x64, 0xc3, 0x1d, 0x6b, 0x85, 0xf3, 0x4d, - 0x12, 0x39, 0x19, 0xdd, 0x9d, 0x99, 0xcf, 0xab, 0x15, 0xb4, 0xbd, 0xc8, 0x6d, 0xa6, 0x9b, 0xf9, - 0x60, 0xb7, 0x0a, 0x61, 0x6d, 0x87, 0x34, 0x9d, 0x54, 0xbd, 0x17, 0xf2, 0xea, 0xb5, 0x23, 0xb7, - 0x31, 0xef, 0x7a, 0x51, 0x18, 0x05, 0xc9, 0x4a, 0xf6, 0xd7, 0x2c, 0xb8, 0xb0, 0x70, 0xa7, 0xba, - 0xdc, 0x70, 0xc2, 0xc8, 0xad, 0x2d, 0x36, 0xfc, 0xda, 0x6e, 0x35, 0xf2, 0x03, 0x72, 0xdb, 0x6f, - 0xb4, 0x9b, 0xa4, 0xca, 0x06, 0x02, 0x3d, 0x0b, 0x43, 0x7b, 0xec, 0xff, 0x6a, 0x79, 0xda, 0xba, - 0x60, 0x5d, 0x2e, 0x2d, 0x4e, 0xfc, 0xea, 0xc1, 0xec, 0x7b, 0x1e, 0x1c, 0xcc, 0x0e, 0xdd, 0x16, - 0xe5, 0x58, 0x61, 0xa0, 0x4b, 0x30, 0xb0, 0x15, 0x6e, 0xec, 0xb7, 0xc8, 0x74, 0x81, 0xe1, 0x8e, - 0x09, 0xdc, 0x81, 0x95, 0x2a, 0x2d, 0xc5, 0x02, 0x8a, 0xe6, 0xa1, 0xd4, 0x72, 0x82, 0xc8, 0x8d, - 0x5c, 0xdf, 0x9b, 0x2e, 0x5e, 0xb0, 0x2e, 0xf7, 0x2f, 0x4e, 0x0a, 0xd4, 0x52, 0x45, 0x02, 0x70, - 0x8c, 0x43, 0xbb, 0x11, 0x10, 0xa7, 0x7e, 0xd3, 0x6b, 0xec, 0x4f, 0xf7, 0x5d, 0xb0, 0x2e, 0x0f, - 0xc5, 0xdd, 0xc0, 0xa2, 0x1c, 0x2b, 0x0c, 0xfb, 0x8b, 0x05, 0x18, 0x5a, 0xd8, 0xda, 0x72, 0x3d, - 0x37, 0xda, 0x47, 0xb7, 0x61, 0xc4, 0xf3, 0xeb, 0x44, 0xfe, 0x67, 0x5f, 0x31, 0xfc, 0xfc, 0x85, - 0xb9, 0xf4, 0x52, 0x9a, 0x5b, 0xd7, 0xf0, 0x16, 0x27, 0x1e, 0x1c, 0xcc, 0x8e, 0xe8, 0x25, 0xd8, - 0xa0, 0x83, 0x30, 0x0c, 0xb7, 0xfc, 0xba, 0x22, 0x5b, 0x60, 0x64, 0x67, 0xb3, 0xc8, 0x56, 0x62, - 0xb4, 0xc5, 0xf1, 0x07, 0x07, 0xb3, 0xc3, 0x5a, 0x01, 0xd6, 0x89, 0xa0, 0x4d, 0x18, 0xa7, 0x7f, - 0xbd, 0xc8, 0x55, 0x74, 0x8b, 0x8c, 0xee, 0xc5, 0x3c, 0xba, 0x1a, 0xea, 0xe2, 0xd4, 0x83, 0x83, - 0xd9, 0xf1, 0x44, 0x21, 0x4e, 0x12, 0xb4, 0xef, 0xc3, 0xd8, 0x42, 0x14, 0x39, 0xb5, 0x1d, 0x52, - 0xe7, 0x33, 0x88, 0x5e, 0x84, 0x3e, 0xcf, 0x69, 0x12, 0x31, 0xbf, 0x17, 0xc4, 0xc0, 0xf6, 0xad, - 0x3b, 0x4d, 0x72, 0x78, 0x30, 0x3b, 0x71, 0xcb, 0x73, 0xdf, 0x6a, 0x8b, 0x55, 0x41, 0xcb, 0x30, - 0xc3, 0x46, 0xcf, 0x03, 0xd4, 0xc9, 0x9e, 0x5b, 0x23, 0x15, 0x27, 0xda, 0x11, 0xf3, 0x8d, 0x44, - 0x5d, 0x28, 0x2b, 0x08, 0xd6, 0xb0, 0xec, 0x7b, 0x50, 0x5a, 0xd8, 0xf3, 0xdd, 0x7a, 0xc5, 0xaf, - 0x87, 0x68, 0x17, 0xc6, 0x5b, 0x01, 0xd9, 0x22, 0x81, 0x2a, 0x9a, 0xb6, 0x2e, 0x14, 0x2f, 0x0f, - 0x3f, 0x7f, 0x39, 0xf3, 0x63, 0x4d, 0xd4, 0x65, 0x2f, 0x0a, 0xf6, 0x17, 0x1f, 0x13, 0xed, 0x8d, - 0x27, 0xa0, 0x38, 0x49, 0xd9, 0xfe, 0x57, 0x05, 0x38, 0xbd, 0x70, 0xbf, 0x1d, 0x90, 0xb2, 0x1b, - 0xee, 0x26, 0x57, 0x78, 0xdd, 0x0d, 0x77, 0xd7, 0xe3, 0x11, 0x50, 0x4b, 0xab, 0x2c, 0xca, 0xb1, - 0xc2, 0x40, 0xcf, 0xc1, 0x20, 0xfd, 0x7d, 0x0b, 0xaf, 0x8a, 0x4f, 0x9e, 0x12, 0xc8, 0xc3, 0x65, - 0x27, 0x72, 0xca, 0x1c, 0x84, 0x25, 0x0e, 0x5a, 0x83, 0xe1, 0x1a, 0xdb, 0x90, 0xdb, 0x6b, 0x7e, - 0x9d, 0xb0, 0xc9, 0x2c, 0x2d, 0x3e, 0x43, 0xd1, 0x97, 0xe2, 0xe2, 0xc3, 0x83, 0xd9, 0x69, 0xde, - 0x37, 0x41, 0x42, 0x83, 0x61, 0xbd, 0x3e, 0xb2, 0xd5, 0xfe, 0xea, 0x63, 0x94, 0x20, 0x63, 0x6f, - 0x5d, 0xd6, 0xb6, 0x4a, 0x3f, 0xdb, 0x2a, 0x23, 0xd9, 0xdb, 0x04, 0x5d, 0x81, 0xbe, 0x5d, 0xd7, - 0xab, 0x4f, 0x0f, 0x30, 0x5a, 0xe7, 0xe8, 0x9c, 0x5f, 0x77, 0xbd, 0xfa, 0xe1, 0xc1, 0xec, 0xa4, - 0xd1, 0x1d, 0x5a, 0x88, 0x19, 0xaa, 0xfd, 0x27, 0x16, 0xcc, 0x32, 0xd8, 0x8a, 0xdb, 0x20, 0x15, - 0x12, 0x84, 0x6e, 0x18, 0x11, 0x2f, 0x32, 0x06, 0xf4, 0x79, 0x80, 0x90, 0xd4, 0x02, 0x12, 0x69, - 0x43, 0xaa, 0x16, 0x46, 0x55, 0x41, 0xb0, 0x86, 0x45, 0x0f, 0x84, 0x70, 0xc7, 0x09, 0xd8, 0xfa, - 0x12, 0x03, 0xab, 0x0e, 0x84, 0xaa, 0x04, 0xe0, 0x18, 0xc7, 0x38, 0x10, 0x8a, 0xdd, 0x0e, 0x04, - 0xf4, 0x11, 0x18, 0x8f, 0x1b, 0x0b, 0x5b, 0x4e, 0x4d, 0x0e, 0x20, 0xdb, 0x32, 0x55, 0x13, 0x84, - 0x93, 0xb8, 0xf6, 0xdf, 0xb1, 0xc4, 0xe2, 0xa1, 0x5f, 0xfd, 0x0e, 0xff, 0x56, 0xfb, 0x17, 0x2c, - 0x18, 0x5c, 0x74, 0xbd, 0xba, 0xeb, 0x6d, 0xa3, 0x4f, 0xc3, 0x10, 0xbd, 0x9b, 0xea, 0x4e, 0xe4, - 0x88, 0x73, 0xef, 0x03, 0xda, 0xde, 0x52, 0x57, 0xc5, 0x5c, 0x6b, 0x77, 0x9b, 0x16, 0x84, 0x73, - 0x14, 0x9b, 0xee, 0xb6, 0x9b, 0x9b, 0x9f, 0x21, 0xb5, 0x68, 0x8d, 0x44, 0x4e, 0xfc, 0x39, 0x71, - 0x19, 0x56, 0x54, 0xd1, 0x75, 0x18, 0x88, 0x9c, 0x60, 0x9b, 0x44, 0xe2, 0x00, 0xcc, 0x3c, 0xa8, - 0x78, 0x4d, 0x4c, 0x77, 0x24, 0xf1, 0x6a, 0x24, 0xbe, 0x16, 0x36, 0x58, 0x55, 0x2c, 0x48, 0xd8, - 0xff, 0x77, 0x10, 0xce, 0x2e, 0x55, 0x57, 0x73, 0xd6, 0xd5, 0x25, 0x18, 0xa8, 0x07, 0xee, 0x1e, - 0x09, 0xc4, 0x38, 0x2b, 0x2a, 0x65, 0x56, 0x8a, 0x05, 0x14, 0xbd, 0x0c, 0x23, 0xfc, 0x42, 0xba, - 0xe6, 0x78, 0xf5, 0x86, 0x1c, 0xe2, 0x53, 0x02, 0x7b, 0xe4, 0xb6, 0x06, 0xc3, 0x06, 0xe6, 0x11, - 0x17, 0xd5, 0xa5, 0xc4, 0x66, 0xcc, 0xbb, 0xec, 0x3e, 0x6f, 0xc1, 0x04, 0x6f, 0x66, 0x21, 0x8a, - 0x02, 0x77, 0xb3, 0x1d, 0x91, 0x70, 0xba, 0x9f, 0x9d, 0x74, 0x4b, 0x59, 0xa3, 0x95, 0x3b, 0x02, - 0x73, 0xb7, 0x13, 0x54, 0xf8, 0x21, 0x38, 0x2d, 0xda, 0x9d, 0x48, 0x82, 0x71, 0xaa, 0x59, 0xf4, - 0xdd, 0x16, 0xcc, 0xd4, 0x7c, 0x2f, 0x0a, 0xfc, 0x46, 0x83, 0x04, 0x95, 0xf6, 0x66, 0xc3, 0x0d, - 0x77, 0xf8, 0x3a, 0xc5, 0x64, 0x8b, 0x9d, 0x04, 0x39, 0x73, 0xa8, 0x90, 0xc4, 0x1c, 0x9e, 0x7f, - 0x70, 0x30, 0x3b, 0xb3, 0x94, 0x4b, 0x0a, 0x77, 0x68, 0x06, 0xed, 0x02, 0xa2, 0x57, 0x69, 0x35, - 0x72, 0xb6, 0x49, 0xdc, 0xf8, 0x60, 0xef, 0x8d, 0x9f, 0x79, 0x70, 0x30, 0x8b, 0xd6, 0x53, 0x24, - 0x70, 0x06, 0x59, 0xf4, 0x16, 0x9c, 0xa2, 0xa5, 0xa9, 0x6f, 0x1d, 0xea, 0xbd, 0xb9, 0xe9, 0x07, - 0x07, 0xb3, 0xa7, 0xd6, 0x33, 0x88, 0xe0, 0x4c, 0xd2, 0xe8, 0xbb, 0x2c, 0x38, 0x1b, 0x7f, 0xfe, - 0xf2, 0xbd, 0x96, 0xe3, 0xd5, 0xe3, 0x86, 0x4b, 0xbd, 0x37, 0x4c, 0xcf, 0xe4, 0xb3, 0x4b, 0x79, - 0x94, 0x70, 0x7e, 0x23, 0xc8, 0x83, 0x29, 0xda, 0xb5, 0x64, 0xdb, 0xd0, 0x7b, 0xdb, 0x8f, 0x3d, - 0x38, 0x98, 0x9d, 0x5a, 0x4f, 0xd3, 0xc0, 0x59, 0x84, 0x67, 0x96, 0xe0, 0x74, 0xe6, 0xea, 0x44, - 0x13, 0x50, 0xdc, 0x25, 0x9c, 0xeb, 0x2a, 0x61, 0xfa, 0x13, 0x9d, 0x82, 0xfe, 0x3d, 0xa7, 0xd1, - 0x16, 0x1b, 0x13, 0xf3, 0x3f, 0xaf, 0x14, 0x5e, 0xb6, 0xec, 0x7f, 0x5d, 0x84, 0xf1, 0xa5, 0xea, - 0xea, 0x43, 0xed, 0x7a, 0xfd, 0xda, 0x2b, 0x74, 0xbc, 0xf6, 0xe2, 0x4b, 0xb4, 0x98, 0x7b, 0x89, - 0xfe, 0xf9, 0x8c, 0x2d, 0xdb, 0xc7, 0xb6, 0xec, 0xb7, 0xe5, 0x6c, 0xd9, 0x63, 0xde, 0xa8, 0x7b, - 0x39, 0xab, 0xb6, 0x9f, 0x4d, 0x60, 0x26, 0x87, 0x74, 0xc3, 0xaf, 0x39, 0x8d, 0xe4, 0x51, 0x7b, - 0xc4, 0xa5, 0x7b, 0x3c, 0xf3, 0x58, 0x83, 0x91, 0x25, 0xa7, 0xe5, 0x6c, 0xba, 0x0d, 0x37, 0x72, - 0x49, 0x88, 0x9e, 0x82, 0xa2, 0x53, 0xaf, 0x33, 0xee, 0xae, 0xb4, 0x78, 0xfa, 0xc1, 0xc1, 0x6c, - 0x71, 0xa1, 0x4e, 0xd9, 0x0c, 0x50, 0x58, 0xfb, 0x98, 0x62, 0xa0, 0xf7, 0x43, 0x5f, 0x3d, 0xf0, - 0x5b, 0xd3, 0x05, 0x86, 0x49, 0x77, 0x79, 0x5f, 0x39, 0xf0, 0x5b, 0x09, 0x54, 0x86, 0x63, 0xff, - 0x4a, 0x01, 0x9e, 0x58, 0x22, 0xad, 0x9d, 0x95, 0x6a, 0xce, 0x7d, 0x71, 0x19, 0x86, 0x9a, 0xbe, - 0xe7, 0x46, 0x7e, 0x10, 0x8a, 0xa6, 0xd9, 0x8a, 0x58, 0x13, 0x65, 0x58, 0x41, 0xd1, 0x05, 0xe8, - 0x6b, 0xc5, 0x4c, 0xec, 0x88, 0x64, 0x80, 0x19, 0xfb, 0xca, 0x20, 0x14, 0xa3, 0x1d, 0x92, 0x40, - 0xac, 0x18, 0x85, 0x71, 0x2b, 0x24, 0x01, 0x66, 0x90, 0x98, 0x13, 0xa0, 0x3c, 0x82, 0xb8, 0x11, - 0x12, 0x9c, 0x00, 0x85, 0x60, 0x0d, 0x0b, 0x55, 0xa0, 0x14, 0x26, 0x66, 0xb6, 0xa7, 0xad, 0x39, - 0xca, 0x58, 0x05, 0x35, 0x93, 0x31, 0x11, 0xe3, 0x06, 0x1b, 0xe8, 0xca, 0x2a, 0x7c, 0xb5, 0x00, - 0x88, 0x0f, 0xe1, 0x37, 0xd9, 0xc0, 0xdd, 0x4a, 0x0f, 0x5c, 0xef, 0x5b, 0xe2, 0xb8, 0x46, 0xef, - 0x7f, 0x5a, 0xf0, 0xc4, 0x92, 0xeb, 0xd5, 0x49, 0x90, 0xb3, 0x00, 0x1f, 0xcd, 0xdb, 0xf9, 0x68, - 0x4c, 0x8a, 0xb1, 0xc4, 0xfa, 0x8e, 0x61, 0x89, 0xd9, 0x7f, 0x64, 0x01, 0xe2, 0x9f, 0xfd, 0x8e, - 0xfb, 0xd8, 0x5b, 0xe9, 0x8f, 0x3d, 0x86, 0x65, 0x61, 0xdf, 0x80, 0xb1, 0xa5, 0x86, 0x4b, 0xbc, - 0x68, 0xb5, 0xb2, 0xe4, 0x7b, 0x5b, 0xee, 0x36, 0x7a, 0x05, 0xc6, 0x22, 0xb7, 0x49, 0xfc, 0x76, - 0x54, 0x25, 0x35, 0xdf, 0x63, 0x2f, 0x57, 0xeb, 0x72, 0xff, 0x22, 0x7a, 0x70, 0x30, 0x3b, 0xb6, - 0x61, 0x40, 0x70, 0x02, 0xd3, 0xfe, 0x1d, 0x3a, 0x7e, 0x7e, 0xb3, 0xe5, 0x7b, 0xc4, 0x8b, 0x96, - 0x7c, 0xaf, 0xce, 0x25, 0x1c, 0xaf, 0x40, 0x5f, 0x44, 0xc7, 0x83, 0x8f, 0xdd, 0x25, 0xb9, 0x51, - 0xe8, 0x28, 0x1c, 0x1e, 0xcc, 0x9e, 0x49, 0xd7, 0x60, 0xe3, 0xc4, 0xea, 0xa0, 0x6f, 0x83, 0x81, - 0x30, 0x72, 0xa2, 0x76, 0x28, 0x46, 0xf3, 0x49, 0x39, 0x9a, 0x55, 0x56, 0x7a, 0x78, 0x30, 0x3b, - 0xae, 0xaa, 0xf1, 0x22, 0x2c, 0x2a, 0xa0, 0xa7, 0x61, 0xb0, 0x49, 0xc2, 0xd0, 0xd9, 0x96, 0xb7, - 0xe1, 0xb8, 0xa8, 0x3b, 0xb8, 0xc6, 0x8b, 0xb1, 0x84, 0xa3, 0x8b, 0xd0, 0x4f, 0x82, 0xc0, 0x0f, - 0xc4, 0x1e, 0x1d, 0x15, 0x88, 0xfd, 0xcb, 0xb4, 0x10, 0x73, 0x98, 0xfd, 0xeb, 0x16, 0x8c, 0xab, - 0xbe, 0xf2, 0xb6, 0x4e, 0xe0, 0x15, 0xf2, 0x09, 0x80, 0x9a, 0xfc, 0xc0, 0x90, 0xdd, 0x1e, 0xc3, - 0xcf, 0x5f, 0xca, 0xbc, 0xa8, 0x53, 0xc3, 0x18, 0x53, 0x56, 0x45, 0x21, 0xd6, 0xa8, 0xd9, 0xff, - 0xd4, 0x82, 0xa9, 0xc4, 0x17, 0xdd, 0x70, 0xc3, 0x08, 0xbd, 0x99, 0xfa, 0xaa, 0xb9, 0xde, 0xbe, - 0x8a, 0xd6, 0x66, 0xdf, 0xa4, 0x96, 0xb2, 0x2c, 0xd1, 0xbe, 0xe8, 0x1a, 0xf4, 0xbb, 0x11, 0x69, - 0xca, 0x8f, 0xb9, 0xd8, 0xf1, 0x63, 0x78, 0xaf, 0xe2, 0x19, 0x59, 0xa5, 0x35, 0x31, 0x27, 0x60, - 0xff, 0x4a, 0x11, 0x4a, 0x7c, 0xd9, 0xae, 0x39, 0xad, 0x13, 0x98, 0x8b, 0x67, 0xa0, 0xe4, 0x36, - 0x9b, 0xed, 0xc8, 0xd9, 0x14, 0xc7, 0xf9, 0x10, 0xdf, 0x5a, 0xab, 0xb2, 0x10, 0xc7, 0x70, 0xb4, - 0x0a, 0x7d, 0xac, 0x2b, 0xfc, 0x2b, 0x9f, 0xca, 0xfe, 0x4a, 0xd1, 0xf7, 0xb9, 0xb2, 0x13, 0x39, - 0x9c, 0x93, 0x52, 0xf7, 0x08, 0x2d, 0xc2, 0x8c, 0x04, 0x72, 0x00, 0x36, 0x5d, 0xcf, 0x09, 0xf6, - 0x69, 0xd9, 0x74, 0x91, 0x11, 0x7c, 0xae, 0x33, 0xc1, 0x45, 0x85, 0xcf, 0xc9, 0xaa, 0x0f, 0x8b, - 0x01, 0x58, 0x23, 0x3a, 0xf3, 0x21, 0x28, 0x29, 0xe4, 0xa3, 0x30, 0x44, 0x33, 0x1f, 0x81, 0xf1, - 0x44, 0x5b, 0xdd, 0xaa, 0x8f, 0xe8, 0xfc, 0xd4, 0x2f, 0xb2, 0x23, 0x43, 0xf4, 0x7a, 0xd9, 0xdb, - 0x13, 0x47, 0xee, 0x7d, 0x38, 0xd5, 0xc8, 0x38, 0xc9, 0xc4, 0xbc, 0xf6, 0x7e, 0xf2, 0x3d, 0x21, - 0x3e, 0xfb, 0x54, 0x16, 0x14, 0x67, 0xb6, 0x41, 0x79, 0x04, 0xbf, 0x45, 0x37, 0x88, 0xd3, 0xd0, - 0xd9, 0xed, 0x9b, 0xa2, 0x0c, 0x2b, 0x28, 0x3d, 0xef, 0x4e, 0xa9, 0xce, 0x5f, 0x27, 0xfb, 0x55, - 0xd2, 0x20, 0xb5, 0xc8, 0x0f, 0xbe, 0xa1, 0xdd, 0x3f, 0xc7, 0x47, 0x9f, 0x1f, 0x97, 0xc3, 0x82, - 0x40, 0xf1, 0x3a, 0xd9, 0xe7, 0x53, 0xa1, 0x7f, 0x5d, 0xb1, 0xe3, 0xd7, 0xfd, 0x8c, 0x05, 0xa3, - 0xea, 0xeb, 0x4e, 0xe0, 0x5c, 0x58, 0x34, 0xcf, 0x85, 0x73, 0x1d, 0x17, 0x78, 0xce, 0x89, 0xf0, - 0xd5, 0x02, 0x9c, 0x55, 0x38, 0xf4, 0x6d, 0xc0, 0xff, 0x88, 0x55, 0x35, 0x0f, 0x25, 0x4f, 0x49, - 0xc9, 0x2c, 0x53, 0x3c, 0x15, 0xcb, 0xc8, 0x62, 0x1c, 0xca, 0xe2, 0x79, 0xb1, 0x28, 0x6b, 0x44, - 0x17, 0x1f, 0x0b, 0x51, 0xf1, 0x22, 0x14, 0xdb, 0x6e, 0x5d, 0x5c, 0x30, 0x1f, 0x90, 0xa3, 0x7d, - 0x6b, 0xb5, 0x7c, 0x78, 0x30, 0xfb, 0x64, 0x9e, 0xea, 0x82, 0xde, 0x6c, 0xe1, 0xdc, 0xad, 0xd5, - 0x32, 0xa6, 0x95, 0xd1, 0x02, 0x8c, 0x4b, 0xed, 0xcc, 0x6d, 0xca, 0x6e, 0xf9, 0x9e, 0xb8, 0x87, - 0x94, 0x0c, 0x18, 0x9b, 0x60, 0x9c, 0xc4, 0x47, 0x65, 0x98, 0xd8, 0x6d, 0x6f, 0x92, 0x06, 0x89, - 0xf8, 0x07, 0x5f, 0x27, 0x5c, 0x42, 0x5a, 0x8a, 0x5f, 0x66, 0xd7, 0x13, 0x70, 0x9c, 0xaa, 0x61, - 0xff, 0x19, 0xbb, 0x0f, 0xc4, 0xe8, 0x55, 0x02, 0x9f, 0x2e, 0x2c, 0x4a, 0xfd, 0x1b, 0xb9, 0x9c, - 0x7b, 0x59, 0x15, 0xd7, 0xc9, 0xfe, 0x86, 0x4f, 0x39, 0xf3, 0xec, 0x55, 0x61, 0xac, 0xf9, 0xbe, - 0x8e, 0x6b, 0xfe, 0x67, 0x0b, 0x70, 0x5a, 0x8d, 0x80, 0xc1, 0x04, 0x7e, 0xb3, 0x8f, 0xc1, 0x15, - 0x18, 0xae, 0x93, 0x2d, 0xa7, 0xdd, 0x88, 0x94, 0xb8, 0xbe, 0x9f, 0xab, 0x6c, 0xca, 0x71, 0x31, - 0xd6, 0x71, 0x8e, 0x30, 0x6c, 0xff, 0x6b, 0x98, 0x5d, 0xc4, 0x91, 0x43, 0xd7, 0xb8, 0xda, 0x35, - 0x56, 0xee, 0xae, 0xb9, 0x08, 0xfd, 0x6e, 0x93, 0x32, 0x66, 0x05, 0x93, 0xdf, 0x5a, 0xa5, 0x85, - 0x98, 0xc3, 0xd0, 0xfb, 0x60, 0xb0, 0xe6, 0x37, 0x9b, 0x8e, 0x57, 0x67, 0x57, 0x5e, 0x69, 0x71, - 0x98, 0xf2, 0x6e, 0x4b, 0xbc, 0x08, 0x4b, 0x18, 0x7a, 0x02, 0xfa, 0x9c, 0x60, 0x9b, 0xcb, 0x30, - 0x4a, 0x8b, 0x43, 0xb4, 0xa5, 0x85, 0x60, 0x3b, 0xc4, 0xac, 0x94, 0x3e, 0xc1, 0xee, 0xfa, 0xc1, - 0xae, 0xeb, 0x6d, 0x97, 0xdd, 0x40, 0x6c, 0x09, 0x75, 0x17, 0xde, 0x51, 0x10, 0xac, 0x61, 0xa1, - 0x15, 0xe8, 0x6f, 0xf9, 0x41, 0x14, 0x4e, 0x0f, 0xb0, 0xe1, 0x7e, 0x32, 0xe7, 0x20, 0xe2, 0x5f, - 0x5b, 0xf1, 0x83, 0x28, 0xfe, 0x00, 0xfa, 0x2f, 0xc4, 0xbc, 0x3a, 0xba, 0x01, 0x83, 0xc4, 0xdb, - 0x5b, 0x09, 0xfc, 0xe6, 0xf4, 0x54, 0x3e, 0xa5, 0x65, 0x8e, 0xc2, 0x97, 0x59, 0xcc, 0xa3, 0x8a, - 0x62, 0x2c, 0x49, 0xa0, 0x6f, 0x83, 0x22, 0xf1, 0xf6, 0xa6, 0x07, 0x19, 0xa5, 0x99, 0x1c, 0x4a, - 0xb7, 0x9d, 0x20, 0x3e, 0xf3, 0x97, 0xbd, 0x3d, 0x4c, 0xeb, 0xa0, 0x8f, 0x43, 0x49, 0x1e, 0x18, - 0xa1, 0x10, 0x0e, 0x66, 0x2e, 0x58, 0x79, 0xcc, 0x60, 0xf2, 0x56, 0xdb, 0x0d, 0x48, 0x93, 0x78, - 0x51, 0x18, 0x9f, 0x90, 0x12, 0x1a, 0xe2, 0x98, 0x1a, 0xfa, 0xb8, 0x94, 0x48, 0xaf, 0xf9, 0x6d, - 0x2f, 0x0a, 0xa7, 0x4b, 0xac, 0x7b, 0x99, 0xba, 0xc2, 0xdb, 0x31, 0x5e, 0x52, 0x64, 0xcd, 0x2b, - 0x63, 0x83, 0x14, 0xfa, 0x24, 0x8c, 0xf2, 0xff, 0x5c, 0xe3, 0x16, 0x4e, 0x9f, 0x66, 0xb4, 0x2f, - 0xe4, 0xd3, 0xe6, 0x88, 0x8b, 0xa7, 0x05, 0xf1, 0x51, 0xbd, 0x34, 0xc4, 0x26, 0x35, 0x84, 0x61, - 0xb4, 0xe1, 0xee, 0x11, 0x8f, 0x84, 0x61, 0x25, 0xf0, 0x37, 0x89, 0x10, 0x20, 0x9e, 0xcd, 0xd6, - 0xd0, 0xf9, 0x9b, 0x64, 0x71, 0x92, 0xd2, 0xbc, 0xa1, 0xd7, 0xc1, 0x26, 0x09, 0x74, 0x0b, 0xc6, - 0xe8, 0x8b, 0xcd, 0x8d, 0x89, 0x0e, 0x77, 0x23, 0xca, 0xde, 0x55, 0xd8, 0xa8, 0x84, 0x13, 0x44, - 0xd0, 0x4d, 0x18, 0x09, 0x23, 0x27, 0x88, 0xda, 0x2d, 0x4e, 0xf4, 0x4c, 0x37, 0xa2, 0x4c, 0xc1, - 0x5b, 0xd5, 0xaa, 0x60, 0x83, 0x00, 0x7a, 0x1d, 0x4a, 0x0d, 0x77, 0x8b, 0xd4, 0xf6, 0x6b, 0x0d, - 0x32, 0x3d, 0xc2, 0xa8, 0x65, 0x1e, 0x2a, 0x37, 0x24, 0x12, 0xe7, 0x73, 0xd5, 0x5f, 0x1c, 0x57, - 0x47, 0xb7, 0xe1, 0x4c, 0x44, 0x82, 0xa6, 0xeb, 0x39, 0xf4, 0x30, 0x10, 0x4f, 0x2b, 0xa6, 0x38, - 0x1d, 0x65, 0xbb, 0xed, 0xbc, 0x98, 0x8d, 0x33, 0x1b, 0x99, 0x58, 0x38, 0xa7, 0x36, 0xba, 0x07, - 0xd3, 0x19, 0x10, 0xbf, 0xe1, 0xd6, 0xf6, 0xa7, 0x4f, 0x31, 0xca, 0x1f, 0x16, 0x94, 0xa7, 0x37, - 0x72, 0xf0, 0x0e, 0x3b, 0xc0, 0x70, 0x2e, 0x75, 0x74, 0x13, 0xc6, 0xd9, 0x09, 0x54, 0x69, 0x37, - 0x1a, 0xa2, 0xc1, 0x31, 0xd6, 0xe0, 0xfb, 0xe4, 0x7d, 0xbc, 0x6a, 0x82, 0x0f, 0x0f, 0x66, 0x21, - 0xfe, 0x87, 0x93, 0xb5, 0xd1, 0x26, 0xd3, 0xd1, 0xb5, 0x03, 0x37, 0xda, 0xa7, 0xe7, 0x06, 0xb9, - 0x17, 0x4d, 0x8f, 0x77, 0x94, 0x57, 0xe8, 0xa8, 0x4a, 0x91, 0xa7, 0x17, 0xe2, 0x24, 0x41, 0x7a, - 0xa4, 0x86, 0x51, 0xdd, 0xf5, 0xa6, 0x27, 0xf8, 0xbb, 0x44, 0x9e, 0x48, 0x55, 0x5a, 0x88, 0x39, - 0x8c, 0xe9, 0xe7, 0xe8, 0x8f, 0x9b, 0xf4, 0xe6, 0x9a, 0x64, 0x88, 0xb1, 0x7e, 0x4e, 0x02, 0x70, - 0x8c, 0x43, 0x99, 0xc9, 0x28, 0xda, 0x9f, 0x46, 0x0c, 0x55, 0x1d, 0x2c, 0x1b, 0x1b, 0x1f, 0xc7, - 0xb4, 0xdc, 0xde, 0x84, 0x31, 0x75, 0x10, 0xb2, 0x31, 0x41, 0xb3, 0xd0, 0xcf, 0xd8, 0x27, 0x21, - 0x5d, 0x2b, 0xd1, 0x2e, 0x30, 0xd6, 0x0a, 0xf3, 0x72, 0xd6, 0x05, 0xf7, 0x3e, 0x59, 0xdc, 0x8f, - 0x08, 0x7f, 0xd3, 0x17, 0xb5, 0x2e, 0x48, 0x00, 0x8e, 0x71, 0xec, 0xff, 0xc7, 0xd9, 0xd0, 0xf8, - 0xb4, 0xed, 0xe1, 0x7e, 0x79, 0x16, 0x86, 0x76, 0xfc, 0x30, 0xa2, 0xd8, 0xac, 0x8d, 0xfe, 0x98, - 0xf1, 0xbc, 0x26, 0xca, 0xb1, 0xc2, 0x40, 0xaf, 0xc2, 0x68, 0x4d, 0x6f, 0x40, 0x5c, 0x8e, 0xea, - 0x18, 0x31, 0x5a, 0xc7, 0x26, 0x2e, 0x7a, 0x19, 0x86, 0x98, 0xcd, 0x49, 0xcd, 0x6f, 0x08, 0xae, - 0x4d, 0xde, 0xf0, 0x43, 0x15, 0x51, 0x7e, 0xa8, 0xfd, 0xc6, 0x0a, 0x1b, 0x5d, 0x82, 0x01, 0xda, - 0x85, 0xd5, 0x8a, 0xb8, 0x96, 0x94, 0xa0, 0xe8, 0x1a, 0x2b, 0xc5, 0x02, 0x6a, 0xff, 0xe5, 0x82, - 0x36, 0xca, 0xf4, 0x3d, 0x4c, 0x50, 0x05, 0x06, 0xef, 0x3a, 0x6e, 0xe4, 0x7a, 0xdb, 0x82, 0xff, - 0x78, 0xba, 0xe3, 0x1d, 0xc5, 0x2a, 0xdd, 0xe1, 0x15, 0xf8, 0x2d, 0x2a, 0xfe, 0x60, 0x49, 0x86, - 0x52, 0x0c, 0xda, 0x9e, 0x47, 0x29, 0x16, 0x7a, 0xa5, 0x88, 0x79, 0x05, 0x4e, 0x51, 0xfc, 0xc1, - 0x92, 0x0c, 0x7a, 0x13, 0x40, 0xee, 0x30, 0x52, 0x17, 0xb6, 0x1e, 0xcf, 0x76, 0x27, 0xba, 0xa1, - 0xea, 0x2c, 0x8e, 0xd1, 0x3b, 0x3a, 0xfe, 0x8f, 0x35, 0x7a, 0x76, 0xc4, 0xf8, 0xb4, 0x74, 0x67, - 0xd0, 0x77, 0xd0, 0x25, 0xee, 0x04, 0x11, 0xa9, 0x2f, 0x44, 0x62, 0x70, 0xde, 0xdf, 0xdb, 0x23, - 0x65, 0xc3, 0x6d, 0x12, 0x7d, 0x3b, 0x08, 0x22, 0x38, 0xa6, 0x67, 0xff, 0x7c, 0x11, 0xa6, 0xf3, - 0xba, 0x4b, 0x17, 0x1d, 0xb9, 0xe7, 0x46, 0x4b, 0x94, 0xbd, 0xb2, 0xcc, 0x45, 0xb7, 0x2c, 0xca, - 0xb1, 0xc2, 0xa0, 0xb3, 0x1f, 0xba, 0xdb, 0xf2, 0x8d, 0xd9, 0x1f, 0xcf, 0x7e, 0x95, 0x95, 0x62, - 0x01, 0xa5, 0x78, 0x01, 0x71, 0x42, 0x61, 0x4c, 0xa4, 0xad, 0x12, 0xcc, 0x4a, 0xb1, 0x80, 0xea, - 0xd2, 0xae, 0xbe, 0x2e, 0xd2, 0x2e, 0x63, 0x88, 0xfa, 0x8f, 0x77, 0x88, 0xd0, 0xa7, 0x00, 0xb6, - 0x5c, 0xcf, 0x0d, 0x77, 0x18, 0xf5, 0x81, 0x23, 0x53, 0x57, 0xcc, 0xd9, 0x8a, 0xa2, 0x82, 0x35, - 0x8a, 0xe8, 0x25, 0x18, 0x56, 0x1b, 0x70, 0xb5, 0xcc, 0x34, 0xab, 0x9a, 0xa5, 0x4a, 0x7c, 0x1a, - 0x95, 0xb1, 0x8e, 0x67, 0x7f, 0x26, 0xb9, 0x5e, 0xc4, 0x0e, 0xd0, 0xc6, 0xd7, 0xea, 0x75, 0x7c, - 0x0b, 0x9d, 0xc7, 0xd7, 0xfe, 0x7a, 0x11, 0xc6, 0x8d, 0xc6, 0xda, 0x61, 0x0f, 0x67, 0xd6, 0x55, - 0x7a, 0x80, 0x3b, 0x11, 0x11, 0xfb, 0xcf, 0xee, 0xbe, 0x55, 0xf4, 0x43, 0x9e, 0xee, 0x00, 0x5e, - 0x1f, 0x7d, 0x0a, 0x4a, 0x0d, 0x27, 0x64, 0x92, 0x33, 0x22, 0xf6, 0x5d, 0x2f, 0xc4, 0xe2, 0x87, - 0x89, 0x13, 0x46, 0xda, 0xad, 0xc9, 0x69, 0xc7, 0x24, 0xe9, 0x4d, 0x43, 0xf9, 0x13, 0x69, 0xad, - 0xa6, 0x3a, 0x41, 0x99, 0x98, 0x7d, 0xcc, 0x61, 0xe8, 0x65, 0x18, 0x09, 0x08, 0x5b, 0x15, 0x4b, - 0x94, 0x9b, 0x63, 0xcb, 0xac, 0x3f, 0x66, 0xfb, 0xb0, 0x06, 0xc3, 0x06, 0x66, 0xfc, 0x36, 0x18, - 0xe8, 0xf0, 0x36, 0x78, 0x1a, 0x06, 0xd9, 0x0f, 0xb5, 0x02, 0xd4, 0x6c, 0xac, 0xf2, 0x62, 0x2c, - 0xe1, 0xc9, 0x05, 0x33, 0xd4, 0xdb, 0x82, 0xa1, 0xaf, 0x0f, 0xb1, 0xa8, 0x99, 0x56, 0x7b, 0x88, - 0x9f, 0x72, 0x62, 0xc9, 0x63, 0x09, 0xb3, 0xdf, 0x0f, 0x63, 0x65, 0x87, 0x34, 0x7d, 0x6f, 0xd9, - 0xab, 0xb7, 0x7c, 0xd7, 0x8b, 0xd0, 0x34, 0xf4, 0xb1, 0x4b, 0x84, 0x1f, 0x01, 0x7d, 0xb4, 0x21, - 0xcc, 0x4a, 0xec, 0x6d, 0x38, 0x5d, 0xf6, 0xef, 0x7a, 0x77, 0x9d, 0xa0, 0xbe, 0x50, 0x59, 0xd5, - 0xde, 0xd7, 0xeb, 0xf2, 0x7d, 0xc7, 0x8d, 0xc4, 0x32, 0x8f, 0x5e, 0xad, 0x26, 0x67, 0x6b, 0x57, - 0xdc, 0x06, 0xc9, 0x91, 0x82, 0xfc, 0xb5, 0x82, 0xd1, 0x52, 0x8c, 0xaf, 0xb4, 0x5a, 0x56, 0xae, - 0x56, 0xeb, 0x0d, 0x18, 0xda, 0x72, 0x49, 0xa3, 0x8e, 0xc9, 0x96, 0x58, 0x89, 0x4f, 0xe5, 0xdb, - 0xbd, 0xac, 0x50, 0x4c, 0x29, 0xf5, 0xe2, 0xaf, 0xc3, 0x15, 0x51, 0x19, 0x2b, 0x32, 0x68, 0x17, - 0x26, 0xe4, 0x83, 0x41, 0x42, 0xc5, 0xba, 0x7c, 0xba, 0xd3, 0x2b, 0xc4, 0x24, 0x7e, 0xea, 0xc1, - 0xc1, 0xec, 0x04, 0x4e, 0x90, 0xc1, 0x29, 0xc2, 0xf4, 0x39, 0xd8, 0xa4, 0x27, 0x70, 0x1f, 0x1b, - 0x7e, 0xf6, 0x1c, 0x64, 0x2f, 0x5b, 0x56, 0x6a, 0xff, 0x98, 0x05, 0x8f, 0xa5, 0x46, 0x46, 0xbc, - 0xf0, 0x8f, 0x79, 0x16, 0x92, 0x2f, 0xee, 0x42, 0xf7, 0x17, 0xb7, 0xfd, 0x77, 0x2d, 0x38, 0xb5, - 0xdc, 0x6c, 0x45, 0xfb, 0x65, 0xd7, 0x54, 0x41, 0x7d, 0x08, 0x06, 0x9a, 0xa4, 0xee, 0xb6, 0x9b, - 0x62, 0xe6, 0x66, 0xe5, 0x29, 0xb5, 0xc6, 0x4a, 0x0f, 0x0f, 0x66, 0x47, 0xab, 0x91, 0x1f, 0x38, - 0xdb, 0x84, 0x17, 0x60, 0x81, 0xce, 0xce, 0x7a, 0xf7, 0x3e, 0xb9, 0xe1, 0x36, 0x5d, 0x69, 0xc7, - 0xd4, 0x51, 0x66, 0x37, 0x27, 0x07, 0x74, 0xee, 0x8d, 0xb6, 0xe3, 0x45, 0x6e, 0xb4, 0x2f, 0xb4, - 0x47, 0x92, 0x08, 0x8e, 0xe9, 0xd9, 0x5f, 0xb3, 0x60, 0x5c, 0xae, 0xfb, 0x85, 0x7a, 0x3d, 0x20, - 0x61, 0x88, 0x66, 0xa0, 0xe0, 0xb6, 0x44, 0x2f, 0x41, 0xf4, 0xb2, 0xb0, 0x5a, 0xc1, 0x05, 0xb7, - 0x25, 0xd9, 0x32, 0x76, 0x10, 0x16, 0x4d, 0x45, 0xda, 0x35, 0x51, 0x8e, 0x15, 0x06, 0xba, 0x0c, - 0x43, 0x9e, 0x5f, 0xe7, 0xb6, 0x64, 0xfc, 0x4a, 0x63, 0x0b, 0x6c, 0x5d, 0x94, 0x61, 0x05, 0x45, - 0x15, 0x28, 0x71, 0x33, 0xab, 0x78, 0xd1, 0xf6, 0x64, 0xac, 0xc5, 0xbe, 0x6c, 0x43, 0xd6, 0xc4, - 0x31, 0x11, 0xfb, 0x97, 0x2d, 0x18, 0x91, 0x5f, 0xd6, 0x23, 0xcf, 0x49, 0xb7, 0x56, 0xcc, 0x6f, - 0xc6, 0x5b, 0x8b, 0xf2, 0x8c, 0x0c, 0x62, 0xb0, 0x8a, 0xc5, 0x23, 0xb1, 0x8a, 0x57, 0x60, 0xd8, - 0x69, 0xb5, 0x2a, 0x26, 0x9f, 0xc9, 0x96, 0xd2, 0x42, 0x5c, 0x8c, 0x75, 0x1c, 0xfb, 0x47, 0x0b, - 0x30, 0x26, 0xbf, 0xa0, 0xda, 0xde, 0x0c, 0x49, 0x84, 0x36, 0xa0, 0xe4, 0xf0, 0x59, 0x22, 0x72, - 0x91, 0x5f, 0xcc, 0x96, 0x23, 0x18, 0x53, 0x1a, 0x5f, 0xf8, 0x0b, 0xb2, 0x36, 0x8e, 0x09, 0xa1, - 0x06, 0x4c, 0x7a, 0x7e, 0xc4, 0x0e, 0x7f, 0x05, 0xef, 0xa4, 0xda, 0x49, 0x52, 0x3f, 0x2b, 0xa8, - 0x4f, 0xae, 0x27, 0xa9, 0xe0, 0x34, 0x61, 0xb4, 0x2c, 0x65, 0x33, 0xc5, 0x7c, 0x61, 0x80, 0x3e, - 0x71, 0xd9, 0xa2, 0x19, 0xfb, 0x97, 0x2c, 0x28, 0x49, 0xb4, 0x93, 0xd0, 0xe2, 0xad, 0xc1, 0x60, - 0xc8, 0x26, 0x41, 0x0e, 0x8d, 0xdd, 0xa9, 0xe3, 0x7c, 0xbe, 0xe2, 0x3b, 0x8d, 0xff, 0x0f, 0xb1, - 0xa4, 0xc1, 0x44, 0xf3, 0xaa, 0xfb, 0xef, 0x10, 0xd1, 0xbc, 0xea, 0x4f, 0xce, 0xa5, 0xf4, 0x07, - 0xac, 0xcf, 0x9a, 0xac, 0x8b, 0xb2, 0x5e, 0xad, 0x80, 0x6c, 0xb9, 0xf7, 0x92, 0xac, 0x57, 0x85, - 0x95, 0x62, 0x01, 0x45, 0x6f, 0xc2, 0x48, 0x4d, 0xca, 0x64, 0xe3, 0x1d, 0x7e, 0xa9, 0xa3, 0x7e, - 0x40, 0xa9, 0x92, 0xb8, 0x2c, 0x64, 0x49, 0xab, 0x8f, 0x0d, 0x6a, 0xa6, 0x19, 0x41, 0xb1, 0x9b, - 0x19, 0x41, 0x4c, 0x37, 0x5f, 0xa9, 0xfe, 0xe3, 0x16, 0x0c, 0x70, 0x59, 0x5c, 0x6f, 0xa2, 0x50, - 0x4d, 0xb3, 0x16, 0x8f, 0xdd, 0x6d, 0x5a, 0x28, 0x34, 0x65, 0x68, 0x0d, 0x4a, 0xec, 0x07, 0x93, - 0x25, 0x16, 0xf3, 0xad, 0xfc, 0x79, 0xab, 0x7a, 0x07, 0x6f, 0xcb, 0x6a, 0x38, 0xa6, 0x60, 0xff, - 0x48, 0x91, 0x9e, 0x6e, 0x31, 0xaa, 0x71, 0xe9, 0x5b, 0x8f, 0xee, 0xd2, 0x2f, 0x3c, 0xaa, 0x4b, - 0x7f, 0x1b, 0xc6, 0x6b, 0x9a, 0x1e, 0x2e, 0x9e, 0xc9, 0xcb, 0x1d, 0x17, 0x89, 0xa6, 0xb2, 0xe3, - 0x52, 0x96, 0x25, 0x93, 0x08, 0x4e, 0x52, 0x45, 0xdf, 0x01, 0x23, 0x7c, 0x9e, 0x45, 0x2b, 0xdc, - 0x12, 0xe3, 0x7d, 0xf9, 0xeb, 0x45, 0x6f, 0x82, 0x4b, 0xe5, 0xb4, 0xea, 0xd8, 0x20, 0x66, 0xff, - 0xb1, 0x05, 0x68, 0xb9, 0xb5, 0x43, 0x9a, 0x24, 0x70, 0x1a, 0xb1, 0x38, 0xfd, 0x07, 0x2d, 0x98, - 0x26, 0xa9, 0xe2, 0x25, 0xbf, 0xd9, 0x14, 0x8f, 0x96, 0x9c, 0x77, 0xf5, 0x72, 0x4e, 0x1d, 0xe5, - 0x06, 0x31, 0x9d, 0x87, 0x81, 0x73, 0xdb, 0x43, 0x6b, 0x30, 0xc5, 0x6f, 0x49, 0x05, 0xd0, 0x6c, - 0xbd, 0x1f, 0x17, 0x84, 0xa7, 0x36, 0xd2, 0x28, 0x38, 0xab, 0x9e, 0xfd, 0x3d, 0x23, 0x90, 0xdb, - 0x8b, 0x77, 0xf5, 0x08, 0xef, 0xea, 0x11, 0xde, 0xd5, 0x23, 0xbc, 0xab, 0x47, 0x78, 0x57, 0x8f, - 0xf0, 0x2d, 0xaf, 0x47, 0xf8, 0x2b, 0x16, 0x9c, 0x56, 0xd7, 0x80, 0xf1, 0xf0, 0xfd, 0x2c, 0x4c, - 0xf1, 0xed, 0xb6, 0xd4, 0x70, 0xdc, 0xe6, 0x06, 0x69, 0xb6, 0x1a, 0x4e, 0x24, 0xb5, 0xee, 0x57, - 0x32, 0x57, 0x6e, 0xc2, 0x62, 0xd5, 0xa8, 0xc8, 0x4d, 0xff, 0x33, 0x00, 0x38, 0xab, 0x19, 0xfb, - 0xe7, 0x87, 0xa0, 0x7f, 0x79, 0x8f, 0x78, 0xd1, 0x09, 0x3c, 0x11, 0x6a, 0x30, 0xe6, 0x7a, 0x7b, - 0x7e, 0x63, 0x8f, 0xd4, 0x39, 0xfc, 0x28, 0x2f, 0xd9, 0x33, 0x82, 0xf4, 0xd8, 0xaa, 0x41, 0x02, - 0x27, 0x48, 0x3e, 0x0a, 0x69, 0xf2, 0x55, 0x18, 0xe0, 0x87, 0xb8, 0x10, 0x25, 0x67, 0x9e, 0xd9, - 0x6c, 0x10, 0xc5, 0xd5, 0x14, 0x4b, 0xba, 0xf9, 0x25, 0x21, 0xaa, 0xa3, 0xcf, 0xc0, 0xd8, 0x96, - 0x1b, 0x84, 0xd1, 0x86, 0xdb, 0x24, 0x61, 0xe4, 0x34, 0x5b, 0x0f, 0x21, 0x3d, 0x56, 0xe3, 0xb0, - 0x62, 0x50, 0xc2, 0x09, 0xca, 0x68, 0x1b, 0x46, 0x1b, 0x8e, 0xde, 0xd4, 0xe0, 0x91, 0x9b, 0x52, - 0xb7, 0xc3, 0x0d, 0x9d, 0x10, 0x36, 0xe9, 0xd2, 0xed, 0x54, 0x63, 0x02, 0xd0, 0x21, 0x26, 0x16, - 0x50, 0xdb, 0x89, 0x4b, 0x3e, 0x39, 0x8c, 0x32, 0x3a, 0xcc, 0x40, 0xb6, 0x64, 0x32, 0x3a, 0x9a, - 0x19, 0xec, 0xa7, 0xa1, 0x44, 0xe8, 0x10, 0x52, 0xc2, 0xe2, 0x82, 0x99, 0xef, 0xad, 0xaf, 0x6b, - 0x6e, 0x2d, 0xf0, 0x4d, 0xb9, 0xfd, 0xb2, 0xa4, 0x84, 0x63, 0xa2, 0x68, 0x09, 0x06, 0x42, 0x12, - 0xb8, 0x24, 0x14, 0x57, 0x4d, 0x87, 0x69, 0x64, 0x68, 0xdc, 0xb7, 0x84, 0xff, 0xc6, 0xa2, 0x2a, - 0x5d, 0x5e, 0x0e, 0x13, 0x69, 0xb2, 0xcb, 0x40, 0x5b, 0x5e, 0x0b, 0xac, 0x14, 0x0b, 0x28, 0x7a, - 0x1d, 0x06, 0x03, 0xd2, 0x60, 0x8a, 0xa1, 0xd1, 0xde, 0x17, 0x39, 0xd7, 0x33, 0xf1, 0x7a, 0x58, - 0x12, 0x40, 0xd7, 0x01, 0x05, 0x84, 0x32, 0x4a, 0xae, 0xb7, 0xad, 0xcc, 0x46, 0xc5, 0x41, 0xab, - 0x18, 0x52, 0x1c, 0x63, 0x48, 0xb7, 0x22, 0x9c, 0x51, 0x0d, 0x5d, 0x85, 0x49, 0x55, 0xba, 0xea, - 0x85, 0x91, 0x43, 0x0f, 0xb8, 0x71, 0x46, 0x4b, 0xc9, 0x29, 0x70, 0x12, 0x01, 0xa7, 0xeb, 0xd8, - 0x5f, 0xb2, 0x80, 0x8f, 0xf3, 0x09, 0xbc, 0xce, 0x5f, 0x33, 0x5f, 0xe7, 0x67, 0x73, 0x67, 0x2e, - 0xe7, 0x65, 0xfe, 0x25, 0x0b, 0x86, 0xb5, 0x99, 0x8d, 0xd7, 0xac, 0xd5, 0x61, 0xcd, 0xb6, 0x61, - 0x82, 0xae, 0xf4, 0x9b, 0x9b, 0x21, 0x09, 0xf6, 0x48, 0x9d, 0x2d, 0xcc, 0xc2, 0xc3, 0x2d, 0x4c, - 0x65, 0xa2, 0x76, 0x23, 0x41, 0x10, 0xa7, 0x9a, 0xb0, 0x3f, 0x2d, 0xbb, 0xaa, 0x2c, 0xfa, 0x6a, - 0x6a, 0xce, 0x13, 0x16, 0x7d, 0x6a, 0x56, 0x71, 0x8c, 0x43, 0xb7, 0xda, 0x8e, 0x1f, 0x46, 0x49, - 0x8b, 0xbe, 0x6b, 0x7e, 0x18, 0x61, 0x06, 0xb1, 0x5f, 0x00, 0x58, 0xbe, 0x47, 0x6a, 0x7c, 0xc5, - 0xea, 0x8f, 0x07, 0x2b, 0xff, 0xf1, 0x60, 0xff, 0xa6, 0x05, 0x63, 0x2b, 0x4b, 0xc6, 0xcd, 0x35, - 0x07, 0xc0, 0x5f, 0x3c, 0x77, 0xee, 0xac, 0x4b, 0x75, 0x38, 0xd7, 0x68, 0xaa, 0x52, 0xac, 0x61, - 0xa0, 0xb3, 0x50, 0x6c, 0xb4, 0x3d, 0x21, 0x3e, 0x1c, 0xa4, 0xd7, 0xe3, 0x8d, 0xb6, 0x87, 0x69, - 0x99, 0xe6, 0x52, 0x50, 0xec, 0xd9, 0xa5, 0xa0, 0x6b, 0x28, 0x01, 0x34, 0x0b, 0xfd, 0x77, 0xef, - 0xba, 0x75, 0xee, 0xb0, 0x29, 0x54, 0xf5, 0x77, 0xee, 0xac, 0x96, 0x43, 0xcc, 0xcb, 0xed, 0x2f, - 0x14, 0x61, 0x66, 0xa5, 0x41, 0xee, 0xbd, 0x4d, 0xa7, 0xd5, 0x5e, 0x1d, 0x22, 0x8e, 0x26, 0x88, - 0x39, 0xaa, 0xd3, 0x4b, 0xf7, 0xf1, 0xd8, 0x82, 0x41, 0x6e, 0xd0, 0x26, 0x5d, 0x58, 0x5f, 0xcd, - 0x6a, 0x3d, 0x7f, 0x40, 0xe6, 0xb8, 0x61, 0x9c, 0xf0, 0x88, 0x53, 0x17, 0xa6, 0x28, 0xc5, 0x92, - 0xf8, 0xcc, 0x2b, 0x30, 0xa2, 0x63, 0x1e, 0xc9, 0xfd, 0xec, 0x2f, 0x14, 0x61, 0x82, 0xf6, 0xe0, - 0x91, 0x4e, 0xc4, 0xad, 0xf4, 0x44, 0x1c, 0xb7, 0x0b, 0x52, 0xf7, 0xd9, 0x78, 0x33, 0x39, 0x1b, - 0x57, 0xf2, 0x66, 0xe3, 0xa4, 0xe7, 0xe0, 0xbb, 0x2d, 0x98, 0x5a, 0x69, 0xf8, 0xb5, 0xdd, 0x84, - 0x9b, 0xd0, 0x4b, 0x30, 0x4c, 0x8f, 0xe3, 0xd0, 0xf0, 0x98, 0x37, 0x62, 0x28, 0x08, 0x10, 0xd6, - 0xf1, 0xb4, 0x6a, 0xb7, 0x6e, 0xad, 0x96, 0xb3, 0x42, 0x2f, 0x08, 0x10, 0xd6, 0xf1, 0xec, 0x5f, - 0xb3, 0xe0, 0xdc, 0xd5, 0xa5, 0xe5, 0x78, 0x29, 0xa6, 0xa2, 0x3f, 0x5c, 0x82, 0x81, 0x56, 0x5d, - 0xeb, 0x4a, 0x2c, 0x5e, 0x2d, 0xb3, 0x5e, 0x08, 0xe8, 0x3b, 0x25, 0xb2, 0xc9, 0x2d, 0x80, 0xab, - 0xb8, 0xb2, 0x24, 0xce, 0x5d, 0xa9, 0x4d, 0xb1, 0x72, 0xb5, 0x29, 0xef, 0x83, 0x41, 0x7a, 0x2f, - 0xb8, 0x35, 0xd9, 0x6f, 0xae, 0xa0, 0xe5, 0x45, 0x58, 0xc2, 0xec, 0x9f, 0xb6, 0x60, 0xea, 0xaa, - 0x1b, 0xd1, 0x4b, 0x3b, 0x19, 0xde, 0x80, 0xde, 0xda, 0xa1, 0x1b, 0xf9, 0xc1, 0x7e, 0x32, 0xbc, - 0x01, 0x56, 0x10, 0xac, 0x61, 0xf1, 0x0f, 0xda, 0x73, 0x99, 0x85, 0x76, 0xc1, 0xd4, 0x5f, 0x61, - 0x51, 0x8e, 0x15, 0x06, 0x1d, 0xaf, 0xba, 0x1b, 0x30, 0xd1, 0xdf, 0xbe, 0x38, 0xb8, 0xd5, 0x78, - 0x95, 0x25, 0x00, 0xc7, 0x38, 0xf6, 0x1f, 0x5a, 0x30, 0x7b, 0xb5, 0xd1, 0x0e, 0x23, 0x12, 0x6c, - 0x85, 0x39, 0x87, 0xee, 0x0b, 0x50, 0x22, 0x52, 0xd0, 0x2e, 0x7a, 0xad, 0x18, 0x51, 0x25, 0x81, - 0xe7, 0x51, 0x16, 0x14, 0x5e, 0x0f, 0xbe, 0x8c, 0x47, 0x73, 0x46, 0x5b, 0x01, 0x44, 0xf4, 0xb6, - 0xf4, 0xb0, 0x13, 0xcc, 0x7f, 0x7d, 0x39, 0x05, 0xc5, 0x19, 0x35, 0xec, 0x1f, 0xb3, 0xe0, 0xb4, - 0xfa, 0xe0, 0x77, 0xdc, 0x67, 0xda, 0x5f, 0x29, 0xc0, 0xe8, 0xb5, 0x8d, 0x8d, 0xca, 0x55, 0x12, - 0x69, 0xab, 0xb2, 0xb3, 0xfa, 0x1c, 0x6b, 0x5a, 0xc0, 0x4e, 0x6f, 0xc4, 0x76, 0xe4, 0x36, 0xe6, - 0x78, 0xf4, 0xa2, 0xb9, 0x55, 0x2f, 0xba, 0x19, 0x54, 0xa3, 0xc0, 0xf5, 0xb6, 0x33, 0x57, 0xba, - 0xe4, 0x59, 0x8a, 0x79, 0x3c, 0x0b, 0x7a, 0x01, 0x06, 0x58, 0xf8, 0x24, 0x39, 0x09, 0x8f, 0xab, - 0x27, 0x16, 0x2b, 0x3d, 0x3c, 0x98, 0x2d, 0xdd, 0xc2, 0xab, 0xfc, 0x0f, 0x16, 0xa8, 0xe8, 0x16, - 0x0c, 0xef, 0x44, 0x51, 0xeb, 0x1a, 0x71, 0xea, 0x24, 0x90, 0xa7, 0xec, 0xf9, 0xac, 0x53, 0x96, - 0x0e, 0x02, 0x47, 0x8b, 0x0f, 0xa6, 0xb8, 0x2c, 0xc4, 0x3a, 0x1d, 0xbb, 0x0a, 0x10, 0xc3, 0x8e, - 0x49, 0x01, 0x62, 0x6f, 0x40, 0x89, 0x7e, 0xee, 0x42, 0xc3, 0x75, 0x3a, 0xab, 0x98, 0x9f, 0x81, - 0x92, 0x54, 0x20, 0x87, 0xc2, 0xd7, 0x9a, 0xdd, 0x48, 0x52, 0xbf, 0x1c, 0xe2, 0x18, 0x6e, 0x6f, - 0xc1, 0x29, 0x66, 0x0e, 0xe8, 0x44, 0x3b, 0xc6, 0xea, 0xeb, 0x3e, 0xcd, 0xcf, 0x8a, 0x17, 0x1b, - 0xef, 0xf3, 0xb4, 0xe6, 0xce, 0x38, 0x22, 0x29, 0xc6, 0xaf, 0x37, 0xfb, 0xeb, 0x7d, 0xf0, 0xf8, - 0x6a, 0x35, 0x3f, 0xfc, 0xc7, 0xcb, 0x30, 0xc2, 0x19, 0x41, 0x3a, 0xe9, 0x4e, 0x43, 0xb4, 0xab, - 0x64, 0x9b, 0x1b, 0x1a, 0x0c, 0x1b, 0x98, 0xe8, 0x1c, 0x14, 0xdd, 0xb7, 0xbc, 0xa4, 0xb3, 0xcf, - 0xea, 0x1b, 0xeb, 0x98, 0x96, 0x53, 0x30, 0xe5, 0x29, 0xf9, 0x61, 0xad, 0xc0, 0x8a, 0xaf, 0x7c, - 0x0d, 0xc6, 0xdc, 0xb0, 0x16, 0xba, 0xab, 0x1e, 0xdd, 0x81, 0xda, 0x1e, 0x56, 0xd2, 0x04, 0xda, - 0x69, 0x05, 0xc5, 0x09, 0x6c, 0xed, 0xe6, 0xe8, 0xef, 0x99, 0x2f, 0xed, 0xea, 0x7c, 0x4c, 0x0f, - 0xf6, 0x16, 0xfb, 0xba, 0x90, 0x09, 0xa9, 0xc5, 0xc1, 0xce, 0x3f, 0x38, 0xc4, 0x12, 0x46, 0x9f, - 0x6a, 0xb5, 0x1d, 0xa7, 0xb5, 0xd0, 0x8e, 0x76, 0xca, 0x6e, 0x58, 0xf3, 0xf7, 0x48, 0xb0, 0xcf, - 0x5e, 0xd9, 0x43, 0xf1, 0x53, 0x4d, 0x01, 0x96, 0xae, 0x2d, 0x54, 0x28, 0x26, 0x4e, 0xd7, 0x41, - 0x0b, 0x30, 0x2e, 0x0b, 0xab, 0x24, 0x64, 0x87, 0xfb, 0x30, 0x23, 0xa3, 0xdc, 0x6f, 0x44, 0xb1, - 0x22, 0x92, 0xc4, 0x37, 0x59, 0x57, 0x38, 0x0e, 0xd6, 0xf5, 0x43, 0x30, 0xea, 0x7a, 0x6e, 0xe4, - 0x3a, 0x91, 0xcf, 0x35, 0x2c, 0xfc, 0x41, 0xcd, 0x44, 0xc7, 0xab, 0x3a, 0x00, 0x9b, 0x78, 0xf6, - 0x7f, 0xe9, 0x83, 0x49, 0x36, 0x6d, 0xef, 0xae, 0xb0, 0x6f, 0xa5, 0x15, 0x76, 0x2b, 0xbd, 0xc2, - 0x8e, 0x83, 0x27, 0x7f, 0xe8, 0x65, 0xf6, 0x19, 0x28, 0x29, 0x8f, 0x23, 0xe9, 0x72, 0x68, 0xe5, - 0xb8, 0x1c, 0x76, 0xbf, 0x97, 0xa5, 0xd1, 0x56, 0x31, 0xd3, 0x68, 0xeb, 0xcb, 0x16, 0xc4, 0x2a, - 0x03, 0xf4, 0x06, 0x94, 0x5a, 0x3e, 0xb3, 0x45, 0x0c, 0xa4, 0x81, 0xef, 0x7b, 0x3b, 0xea, 0x1c, - 0x78, 0x04, 0xa4, 0x80, 0x8f, 0x42, 0x45, 0x56, 0xc5, 0x31, 0x15, 0x74, 0x1d, 0x06, 0x5b, 0x01, - 0xa9, 0x46, 0x2c, 0x3c, 0x47, 0xef, 0x04, 0xf9, 0xaa, 0xe1, 0x15, 0xb1, 0xa4, 0x60, 0xff, 0x57, - 0x0b, 0x26, 0x92, 0xa8, 0xe8, 0xc3, 0xd0, 0x47, 0xee, 0x91, 0x9a, 0xe8, 0x6f, 0xe6, 0x25, 0x1b, - 0x0b, 0x1d, 0xf8, 0x00, 0xd0, 0xff, 0x98, 0xd5, 0x42, 0xd7, 0x60, 0x90, 0xde, 0xb0, 0x57, 0x55, - 0x28, 0xaa, 0x27, 0xf3, 0x6e, 0x69, 0xc5, 0xaa, 0xf0, 0xce, 0x89, 0x22, 0x2c, 0xab, 0x33, 0x4b, - 0xa9, 0x5a, 0xab, 0x4a, 0x1f, 0x2f, 0x51, 0xa7, 0x37, 0xf6, 0xc6, 0x52, 0x85, 0x23, 0x09, 0x6a, - 0xdc, 0x52, 0x4a, 0x16, 0xe2, 0x98, 0x88, 0xfd, 0xb3, 0x16, 0x00, 0x37, 0x0c, 0x73, 0xbc, 0x6d, - 0x72, 0x02, 0x72, 0xf2, 0x32, 0xf4, 0x85, 0x2d, 0x52, 0xeb, 0x64, 0x26, 0x1b, 0xf7, 0xa7, 0xda, - 0x22, 0xb5, 0x78, 0xc5, 0xd1, 0x7f, 0x98, 0xd5, 0xb6, 0xbf, 0x17, 0x60, 0x2c, 0x46, 0x5b, 0x8d, - 0x48, 0x13, 0x3d, 0x67, 0x84, 0x29, 0x38, 0x9b, 0x08, 0x53, 0x50, 0x62, 0xd8, 0x9a, 0x48, 0xf6, - 0x33, 0x50, 0x6c, 0x3a, 0xf7, 0x84, 0xcc, 0xed, 0x99, 0xce, 0xdd, 0xa0, 0xf4, 0xe7, 0xd6, 0x9c, - 0x7b, 0xfc, 0x59, 0xfa, 0x8c, 0xdc, 0x21, 0x6b, 0xce, 0xbd, 0x43, 0x6e, 0x0c, 0xcb, 0x4e, 0xe9, - 0x1b, 0x6e, 0x18, 0x7d, 0xee, 0x3f, 0xc7, 0xff, 0xd9, 0xbe, 0xa3, 0x8d, 0xb0, 0xb6, 0x5c, 0x4f, - 0xd8, 0x3c, 0xf5, 0xd4, 0x96, 0xeb, 0x25, 0xdb, 0x72, 0xbd, 0x1e, 0xda, 0x72, 0x3d, 0x74, 0x1f, - 0x06, 0x85, 0x49, 0xa2, 0x08, 0x0b, 0x34, 0xdf, 0x43, 0x7b, 0xc2, 0xa2, 0x91, 0xb7, 0x39, 0x2f, - 0x9f, 0xdd, 0xa2, 0xb4, 0x6b, 0xbb, 0xb2, 0x41, 0xf4, 0x57, 0x2d, 0x18, 0x13, 0xbf, 0x31, 0x79, - 0xab, 0x4d, 0xc2, 0x48, 0xb0, 0xa5, 0x1f, 0xec, 0xbd, 0x0f, 0xa2, 0x22, 0xef, 0xca, 0x07, 0xe5, - 0x3d, 0x63, 0x02, 0xbb, 0xf6, 0x28, 0xd1, 0x0b, 0xf4, 0xf7, 0x2d, 0x38, 0xd5, 0x74, 0xee, 0xf1, - 0x16, 0x79, 0x19, 0x76, 0x22, 0xd7, 0x17, 0xaa, 0xfd, 0x0f, 0xf7, 0x36, 0xfd, 0xa9, 0xea, 0xbc, - 0x93, 0x52, 0xff, 0x78, 0x2a, 0x0b, 0xa5, 0x6b, 0x57, 0x33, 0xfb, 0x35, 0xb3, 0x05, 0x43, 0x72, - 0xbd, 0x65, 0x08, 0x37, 0xca, 0x3a, 0xcf, 0x7d, 0x64, 0x8b, 0x50, 0xdd, 0xfd, 0x9f, 0xb6, 0x23, - 0xd6, 0xda, 0x23, 0x6d, 0xe7, 0x33, 0x30, 0xa2, 0xaf, 0xb1, 0x47, 0xda, 0xd6, 0x5b, 0x30, 0x95, - 0xb1, 0x96, 0x1e, 0x69, 0x93, 0x77, 0xe1, 0x6c, 0xee, 0xfa, 0x78, 0x94, 0x0d, 0xdb, 0x5f, 0xb1, - 0xf4, 0x73, 0xf0, 0x04, 0x94, 0x15, 0x4b, 0xa6, 0xb2, 0xe2, 0x7c, 0xe7, 0x9d, 0x93, 0xa3, 0xb1, - 0x78, 0x53, 0xef, 0x34, 0x3d, 0xd5, 0xd1, 0xeb, 0x30, 0xd0, 0xa0, 0x25, 0xd2, 0xb0, 0xd5, 0xee, - 0xbe, 0x23, 0x63, 0x66, 0x92, 0x95, 0x87, 0x58, 0x50, 0xb0, 0x7f, 0xc1, 0x82, 0xbe, 0x13, 0x18, - 0x09, 0x6c, 0x8e, 0xc4, 0x73, 0xb9, 0xa4, 0x45, 0x84, 0xe4, 0x39, 0xec, 0xdc, 0x5d, 0xbe, 0x17, - 0x11, 0x2f, 0x64, 0x37, 0x72, 0xe6, 0xc0, 0xfc, 0xa4, 0x05, 0x53, 0x37, 0x7c, 0xa7, 0xbe, 0xe8, - 0x34, 0x1c, 0xaf, 0x46, 0x82, 0x55, 0x6f, 0xfb, 0x48, 0x56, 0xd9, 0x85, 0xae, 0x56, 0xd9, 0x4b, - 0xd2, 0xa8, 0xa9, 0x2f, 0x7f, 0xfe, 0x28, 0x27, 0x9d, 0x0c, 0xdc, 0x62, 0x98, 0xdf, 0xee, 0x00, - 0xd2, 0x7b, 0x29, 0x7c, 0x64, 0x30, 0x0c, 0xba, 0xbc, 0xbf, 0x62, 0x12, 0x9f, 0xca, 0xe6, 0x70, - 0x53, 0x9f, 0xa7, 0x79, 0x7f, 0xf0, 0x02, 0x2c, 0x09, 0xd9, 0x2f, 0x43, 0xa6, 0xa3, 0x7d, 0x77, - 0xb9, 0x84, 0xfd, 0x71, 0x98, 0x64, 0x35, 0x8f, 0x28, 0x19, 0xb0, 0x13, 0xd2, 0xd4, 0x8c, 0x10, - 0x7c, 0xf6, 0xe7, 0x2d, 0x18, 0x5f, 0x4f, 0x44, 0x26, 0xbb, 0xc4, 0xf4, 0xaf, 0x19, 0x42, 0xfc, - 0x2a, 0x2b, 0xc5, 0x02, 0x7a, 0xec, 0x42, 0xae, 0x3f, 0xb3, 0x20, 0x8e, 0x7d, 0x71, 0x02, 0xec, - 0xdb, 0x92, 0xc1, 0xbe, 0x65, 0x32, 0xb2, 0xaa, 0x3b, 0x79, 0xdc, 0x1b, 0xba, 0xae, 0xa2, 0x42, - 0x75, 0xe0, 0x61, 0x63, 0x32, 0x7c, 0x29, 0x8e, 0x99, 0xa1, 0xa3, 0x64, 0x9c, 0x28, 0xfb, 0xb7, - 0x0a, 0x80, 0x14, 0x6e, 0xcf, 0x51, 0xab, 0xd2, 0x35, 0x8e, 0x27, 0x6a, 0xd5, 0x1e, 0x20, 0x66, - 0x41, 0x10, 0x38, 0x5e, 0xc8, 0xc9, 0xba, 0x42, 0xac, 0x77, 0x34, 0xf3, 0x84, 0x19, 0xd1, 0x24, - 0xba, 0x91, 0xa2, 0x86, 0x33, 0x5a, 0xd0, 0x2c, 0x43, 0xfa, 0x7b, 0xb5, 0x0c, 0x19, 0xe8, 0xe2, - 0x07, 0xf7, 0x33, 0x16, 0x8c, 0xaa, 0x61, 0x7a, 0x87, 0x58, 0xa9, 0xab, 0xfe, 0xe4, 0x1c, 0xa0, - 0x15, 0xad, 0xcb, 0xec, 0x62, 0xf9, 0x76, 0xe6, 0xcf, 0xe8, 0x34, 0xdc, 0xfb, 0x44, 0xc5, 0x0c, - 0x9c, 0x15, 0xfe, 0x89, 0xa2, 0xf4, 0xf0, 0x60, 0x76, 0x54, 0xfd, 0xe3, 0x31, 0x91, 0xe3, 0x2a, - 0xf4, 0x48, 0x1e, 0x4f, 0x2c, 0x45, 0xf4, 0x12, 0xf4, 0xb7, 0x76, 0x9c, 0x90, 0x24, 0xbc, 0x79, - 0xfa, 0x2b, 0xb4, 0xf0, 0xf0, 0x60, 0x76, 0x4c, 0x55, 0x60, 0x25, 0x98, 0x63, 0xf7, 0x1e, 0x0b, - 0x2c, 0xbd, 0x38, 0xbb, 0xc6, 0x02, 0xfb, 0x63, 0x0b, 0xfa, 0xd6, 0xfd, 0xfa, 0x49, 0x1c, 0x01, - 0xaf, 0x19, 0x47, 0xc0, 0x13, 0x79, 0xe1, 0xea, 0x73, 0x77, 0xff, 0x4a, 0x62, 0xf7, 0x9f, 0xcf, - 0xa5, 0xd0, 0x79, 0xe3, 0x37, 0x61, 0x98, 0x05, 0xc1, 0x17, 0x9e, 0x4b, 0x2f, 0x18, 0x1b, 0x7e, - 0x36, 0xb1, 0xe1, 0xc7, 0x35, 0x54, 0x6d, 0xa7, 0x3f, 0x0d, 0x83, 0xc2, 0x15, 0x26, 0xe9, 0x16, - 0x2a, 0x70, 0xb1, 0x84, 0xdb, 0x3f, 0x5e, 0x04, 0x23, 0xe8, 0x3e, 0xfa, 0x25, 0x0b, 0xe6, 0x02, - 0x6e, 0x22, 0x5b, 0x2f, 0xb7, 0x03, 0xd7, 0xdb, 0xae, 0xd6, 0x76, 0x48, 0xbd, 0xdd, 0x70, 0xbd, - 0xed, 0xd5, 0x6d, 0xcf, 0x57, 0xc5, 0xcb, 0xf7, 0x48, 0xad, 0xcd, 0xd4, 0x6e, 0x5d, 0x22, 0xfc, - 0x2b, 0x53, 0xf3, 0xe7, 0x1f, 0x1c, 0xcc, 0xce, 0xe1, 0x23, 0xd1, 0xc6, 0x47, 0xec, 0x0b, 0xfa, - 0x35, 0x0b, 0xe6, 0x79, 0x2c, 0xfa, 0xde, 0xfb, 0xdf, 0xe1, 0xb5, 0x5c, 0x91, 0xa4, 0x62, 0x22, - 0x1b, 0x24, 0x68, 0x2e, 0x7e, 0x48, 0x0c, 0xe8, 0x7c, 0xe5, 0x68, 0x6d, 0xe1, 0xa3, 0x76, 0xce, - 0xfe, 0xe7, 0x45, 0x18, 0x15, 0x31, 0xa3, 0xc4, 0x1d, 0xf0, 0x92, 0xb1, 0x24, 0x9e, 0x4c, 0x2c, - 0x89, 0x49, 0x03, 0xf9, 0x78, 0x8e, 0xff, 0x10, 0x26, 0xe9, 0xe1, 0x7c, 0x8d, 0x38, 0x41, 0xb4, - 0x49, 0x1c, 0x6e, 0xf0, 0x55, 0x3c, 0xf2, 0xe9, 0xaf, 0xe4, 0x93, 0x37, 0x92, 0xc4, 0x70, 0x9a, - 0xfe, 0xb7, 0xd2, 0x9d, 0xe3, 0xc1, 0x44, 0x2a, 0xec, 0xd7, 0x27, 0xa0, 0xa4, 0xfc, 0x38, 0xc4, - 0xa1, 0xd3, 0x39, 0x7a, 0x5e, 0x92, 0x02, 0x17, 0x7f, 0xc5, 0x3e, 0x44, 0x31, 0x39, 0xfb, 0x1f, - 0x16, 0x8c, 0x06, 0xf9, 0x24, 0xae, 0xc3, 0x90, 0x13, 0x86, 0xee, 0xb6, 0x47, 0xea, 0x9d, 0x24, - 0x94, 0xa9, 0x66, 0x98, 0x2f, 0xcd, 0x82, 0xa8, 0x89, 0x15, 0x0d, 0x74, 0x8d, 0x9b, 0xd5, 0xed, - 0x91, 0x4e, 0xe2, 0xc9, 0x14, 0x35, 0x90, 0x86, 0x77, 0x7b, 0x04, 0x8b, 0xfa, 0xe8, 0x93, 0xdc, - 0xee, 0xf1, 0xba, 0xe7, 0xdf, 0xf5, 0xae, 0xfa, 0xbe, 0x8c, 0xcb, 0xd0, 0x1b, 0xc1, 0x49, 0x69, - 0xed, 0xa8, 0xaa, 0x63, 0x93, 0x5a, 0x6f, 0x71, 0x34, 0x3f, 0x0b, 0x2c, 0xf6, 0xb6, 0xe9, 0x36, - 0x1d, 0x22, 0x02, 0xe3, 0x22, 0x20, 0x99, 0x2c, 0x13, 0x63, 0x97, 0xf9, 0x94, 0x33, 0x6b, 0xc7, - 0x82, 0xf4, 0xeb, 0x26, 0x09, 0x9c, 0xa4, 0x69, 0xff, 0x94, 0x05, 0xcc, 0x85, 0xf4, 0x04, 0xf8, - 0x91, 0x8f, 0x98, 0xfc, 0xc8, 0x74, 0xde, 0x20, 0xe7, 0xb0, 0x22, 0x2f, 0xf2, 0x95, 0x55, 0x09, - 0xfc, 0x7b, 0xfb, 0xc2, 0x58, 0xa5, 0xfb, 0xfb, 0xc3, 0xfe, 0x3f, 0x16, 0x3f, 0xc4, 0x94, 0x97, - 0x05, 0xfa, 0x4e, 0x18, 0xaa, 0x39, 0x2d, 0xa7, 0xc6, 0x33, 0xc4, 0xe4, 0x4a, 0xf4, 0x8c, 0x4a, - 0x73, 0x4b, 0xa2, 0x06, 0x97, 0x50, 0xc9, 0xc0, 0x76, 0x43, 0xb2, 0xb8, 0xab, 0x54, 0x4a, 0x35, - 0x39, 0xb3, 0x0b, 0xa3, 0x06, 0xb1, 0x47, 0x2a, 0xce, 0xf8, 0x4e, 0x7e, 0xc5, 0xaa, 0x40, 0x8c, - 0x4d, 0x98, 0xf4, 0xb4, 0xff, 0xf4, 0x42, 0x91, 0x8f, 0xcb, 0xf7, 0x76, 0xbb, 0x44, 0xd9, 0xed, - 0xa3, 0x79, 0xa7, 0x26, 0xc8, 0xe0, 0x34, 0x65, 0xfb, 0x27, 0x2c, 0x78, 0x4c, 0x47, 0xd4, 0x1c, - 0x60, 0xba, 0x29, 0x49, 0xca, 0x30, 0xe4, 0xb7, 0x48, 0xe0, 0x44, 0x7e, 0x20, 0x6e, 0x8d, 0xcb, - 0x72, 0xd0, 0x6f, 0x8a, 0xf2, 0x43, 0x11, 0xef, 0x5c, 0x52, 0x97, 0xe5, 0x58, 0xd5, 0xa4, 0xaf, - 0x4f, 0x36, 0x18, 0xa1, 0x70, 0x75, 0x62, 0x67, 0x00, 0xd3, 0xa4, 0x87, 0x58, 0x40, 0xec, 0xaf, - 0x5b, 0x7c, 0x61, 0xe9, 0x5d, 0x47, 0x6f, 0xc1, 0x44, 0xd3, 0x89, 0x6a, 0x3b, 0xcb, 0xf7, 0x5a, - 0x01, 0x57, 0x39, 0xc9, 0x71, 0x7a, 0xa6, 0xdb, 0x38, 0x69, 0x1f, 0x19, 0x9b, 0x72, 0xae, 0x25, - 0x88, 0xe1, 0x14, 0x79, 0xb4, 0x09, 0xc3, 0xac, 0x8c, 0x79, 0xf1, 0x85, 0x9d, 0x58, 0x83, 0xbc, - 0xd6, 0x94, 0x31, 0xc2, 0x5a, 0x4c, 0x07, 0xeb, 0x44, 0xed, 0x2f, 0x17, 0xf9, 0x6e, 0x67, 0xac, - 0xfc, 0xd3, 0x30, 0xd8, 0xf2, 0xeb, 0x4b, 0xab, 0x65, 0x2c, 0x66, 0x41, 0x5d, 0x23, 0x15, 0x5e, - 0x8c, 0x25, 0x1c, 0x5d, 0x86, 0x21, 0xf1, 0x53, 0xaa, 0x08, 0xd9, 0xd9, 0x2c, 0xf0, 0x42, 0xac, - 0xa0, 0xe8, 0x79, 0x80, 0x56, 0xe0, 0xef, 0xb9, 0x75, 0x16, 0x5d, 0xa2, 0x68, 0xda, 0x11, 0x55, - 0x14, 0x04, 0x6b, 0x58, 0xe8, 0x55, 0x18, 0x6d, 0x7b, 0x21, 0x67, 0x47, 0xb4, 0x58, 0xb2, 0xca, - 0xc2, 0xe5, 0x96, 0x0e, 0xc4, 0x26, 0x2e, 0x5a, 0x80, 0x81, 0xc8, 0x61, 0x76, 0x31, 0xfd, 0xf9, - 0xe6, 0xbe, 0x1b, 0x14, 0x43, 0x4f, 0x46, 0x42, 0x2b, 0x60, 0x51, 0x11, 0x7d, 0x42, 0x3a, 0xd4, - 0xf2, 0x83, 0x5d, 0xd8, 0xd9, 0xf7, 0x76, 0x09, 0x68, 0xee, 0xb4, 0xc2, 0x7e, 0xdf, 0xa0, 0x85, - 0x5e, 0x01, 0x20, 0xf7, 0x22, 0x12, 0x78, 0x4e, 0x43, 0x59, 0xb3, 0x29, 0xbe, 0xa0, 0xec, 0xaf, - 0xfb, 0xd1, 0xad, 0x90, 0x2c, 0x2b, 0x0c, 0xac, 0x61, 0xdb, 0xbf, 0x56, 0x02, 0x88, 0xf9, 0x76, - 0x74, 0x3f, 0x75, 0x70, 0x3d, 0xdb, 0x99, 0xd3, 0x3f, 0xbe, 0x53, 0x0b, 0x7d, 0x9f, 0x05, 0xc3, - 0x4e, 0xa3, 0xe1, 0xd7, 0x1c, 0x1e, 0xed, 0xb7, 0xd0, 0xf9, 0xe0, 0x14, 0xed, 0x2f, 0xc4, 0x35, - 0x78, 0x17, 0x5e, 0x90, 0x2b, 0x54, 0x83, 0x74, 0xed, 0x85, 0xde, 0x30, 0xfa, 0x80, 0x7c, 0x2a, - 0x16, 0x8d, 0xa1, 0x54, 0x4f, 0xc5, 0x12, 0xbb, 0x23, 0xf4, 0x57, 0xe2, 0x2d, 0xe3, 0x95, 0xd8, - 0x97, 0xef, 0x31, 0x68, 0xb0, 0xaf, 0xdd, 0x1e, 0x88, 0xa8, 0xa2, 0x47, 0x0f, 0xe8, 0xcf, 0x77, - 0xcf, 0xd3, 0xde, 0x49, 0x5d, 0x22, 0x07, 0x7c, 0x06, 0xc6, 0xeb, 0x26, 0x13, 0x20, 0x56, 0xe2, - 0x53, 0x79, 0x74, 0x13, 0x3c, 0x43, 0x7c, 0xed, 0x27, 0x00, 0x38, 0x49, 0x18, 0x55, 0x78, 0x30, - 0x89, 0x55, 0x6f, 0xcb, 0x17, 0xbe, 0x1e, 0x76, 0xee, 0x5c, 0xee, 0x87, 0x11, 0x69, 0x52, 0xcc, - 0xf8, 0x76, 0x5f, 0x17, 0x75, 0xb1, 0xa2, 0x82, 0x5e, 0x87, 0x01, 0xe6, 0x9f, 0x15, 0x4e, 0x0f, - 0xe5, 0x4b, 0x9c, 0xcd, 0xe8, 0x68, 0xf1, 0x86, 0x64, 0x7f, 0x43, 0x2c, 0x28, 0xa0, 0x6b, 0xd2, - 0xfb, 0x31, 0x5c, 0xf5, 0x6e, 0x85, 0x84, 0x79, 0x3f, 0x96, 0x16, 0xdf, 0x1b, 0x3b, 0x36, 0xf2, - 0xf2, 0xcc, 0x94, 0x65, 0x46, 0x4d, 0xca, 0x45, 0x89, 0xff, 0x32, 0x13, 0xda, 0x34, 0xe4, 0x77, - 0xcf, 0xcc, 0x96, 0x16, 0x0f, 0xe7, 0x6d, 0x93, 0x04, 0x4e, 0xd2, 0xa4, 0x1c, 0x29, 0xdf, 0xf5, - 0xc2, 0x5b, 0xa4, 0xdb, 0xd9, 0xc1, 0x1f, 0xe2, 0xec, 0x36, 0xe2, 0x25, 0x58, 0xd4, 0x3f, 0x51, - 0xf6, 0x60, 0xc6, 0x83, 0x89, 0xe4, 0x16, 0x7d, 0xa4, 0xec, 0xc8, 0xef, 0xf7, 0xc1, 0x98, 0xb9, - 0xa4, 0xd0, 0x3c, 0x94, 0x04, 0x11, 0x95, 0x4d, 0x40, 0xed, 0x92, 0x35, 0x09, 0xc0, 0x31, 0x0e, - 0x4b, 0x22, 0xc1, 0xaa, 0x6b, 0xe6, 0xc1, 0x71, 0x12, 0x09, 0x05, 0xc1, 0x1a, 0x16, 0x7d, 0x58, - 0x6d, 0xfa, 0x7e, 0xa4, 0x2e, 0x24, 0xb5, 0xee, 0x16, 0x59, 0x29, 0x16, 0x50, 0x7a, 0x11, 0xed, - 0x92, 0xc0, 0x23, 0x0d, 0x33, 0xee, 0xb0, 0xba, 0x88, 0xae, 0xeb, 0x40, 0x6c, 0xe2, 0xd2, 0xeb, - 0xd4, 0x0f, 0xd9, 0x42, 0x16, 0xcf, 0xb7, 0xd8, 0xdc, 0xba, 0xca, 0x1d, 0xb0, 0x25, 0x1c, 0x7d, - 0x1c, 0x1e, 0x53, 0xb1, 0x95, 0x30, 0xd7, 0x66, 0xc8, 0x16, 0x07, 0x0c, 0x69, 0xcb, 0x63, 0x4b, - 0xd9, 0x68, 0x38, 0xaf, 0x3e, 0x7a, 0x0d, 0xc6, 0x04, 0x8b, 0x2f, 0x29, 0x0e, 0x9a, 0x16, 0x46, - 0xd7, 0x0d, 0x28, 0x4e, 0x60, 0xcb, 0xc8, 0xc9, 0x8c, 0xcb, 0x96, 0x14, 0x86, 0xd2, 0x91, 0x93, - 0x75, 0x38, 0x4e, 0xd5, 0x40, 0x0b, 0x30, 0xce, 0x79, 0x30, 0xd7, 0xdb, 0xe6, 0x73, 0x22, 0x9c, - 0xb9, 0xd4, 0x96, 0xba, 0x69, 0x82, 0x71, 0x12, 0x1f, 0xbd, 0x0c, 0x23, 0x4e, 0x50, 0xdb, 0x71, - 0x23, 0x52, 0x8b, 0xda, 0x01, 0xf7, 0xf2, 0xd2, 0x4c, 0xb4, 0x16, 0x34, 0x18, 0x36, 0x30, 0xed, - 0xfb, 0x30, 0x95, 0x11, 0x99, 0x81, 0x2e, 0x1c, 0xa7, 0xe5, 0xca, 0x6f, 0x4a, 0x58, 0x38, 0x2f, - 0x54, 0x56, 0xe5, 0xd7, 0x68, 0x58, 0x74, 0x75, 0xb2, 0x08, 0x0e, 0x5a, 0xe2, 0x43, 0xb5, 0x3a, - 0x57, 0x24, 0x00, 0xc7, 0x38, 0xf6, 0xff, 0x28, 0xc0, 0x78, 0x86, 0x6e, 0x85, 0x25, 0xdf, 0x4b, - 0x3c, 0x52, 0xe2, 0x5c, 0x7b, 0x66, 0x20, 0xee, 0xc2, 0x11, 0x02, 0x71, 0x17, 0xbb, 0x05, 0xe2, - 0xee, 0x7b, 0x3b, 0x81, 0xb8, 0xcd, 0x11, 0xeb, 0xef, 0x69, 0xc4, 0x32, 0x82, 0x77, 0x0f, 0x1c, - 0x31, 0x78, 0xb7, 0x31, 0xe8, 0x83, 0x3d, 0x0c, 0xfa, 0x8f, 0x14, 0x60, 0x22, 0x69, 0x4a, 0x7a, - 0x02, 0x72, 0xdb, 0xd7, 0x0d, 0xb9, 0xed, 0xe5, 0x5e, 0x9c, 0x6f, 0x73, 0x65, 0xb8, 0x38, 0x21, - 0xc3, 0x7d, 0x7f, 0x4f, 0xd4, 0x3a, 0xcb, 0x73, 0xff, 0x66, 0x01, 0x4e, 0x67, 0x7a, 0xff, 0x9e, - 0xc0, 0xd8, 0xdc, 0x34, 0xc6, 0xe6, 0xb9, 0x9e, 0x1d, 0x93, 0x73, 0x07, 0xe8, 0x4e, 0x62, 0x80, - 0xe6, 0x7b, 0x27, 0xd9, 0x79, 0x94, 0xbe, 0x56, 0x84, 0xf3, 0x99, 0xf5, 0x62, 0xb1, 0xe7, 0x8a, - 0x21, 0xf6, 0x7c, 0x3e, 0x21, 0xf6, 0xb4, 0x3b, 0xd7, 0x3e, 0x1e, 0x39, 0xa8, 0x70, 0xd0, 0x65, - 0x61, 0x06, 0x1e, 0x52, 0x06, 0x6a, 0x38, 0xe8, 0x2a, 0x42, 0xd8, 0xa4, 0xfb, 0xad, 0x24, 0xfb, - 0xfc, 0x77, 0x16, 0x9c, 0xcd, 0x9c, 0x9b, 0x13, 0x90, 0x75, 0xad, 0x9b, 0xb2, 0xae, 0xa7, 0x7b, - 0x5e, 0xad, 0x39, 0xc2, 0xaf, 0x2f, 0xf7, 0xe7, 0x7c, 0x0b, 0x7b, 0xc9, 0xdf, 0x84, 0x61, 0xa7, - 0x56, 0x23, 0x61, 0xb8, 0xe6, 0xd7, 0x55, 0xac, 0xe1, 0xe7, 0xd8, 0x3b, 0x2b, 0x2e, 0x3e, 0x3c, - 0x98, 0x9d, 0x49, 0x92, 0x88, 0xc1, 0x58, 0xa7, 0x80, 0x3e, 0x09, 0x43, 0xa1, 0xb8, 0x37, 0xc5, - 0xdc, 0xbf, 0xd0, 0xe3, 0xe0, 0x38, 0x9b, 0xa4, 0x61, 0x06, 0x43, 0x52, 0x92, 0x0a, 0x45, 0xd2, - 0x0c, 0x9c, 0x52, 0x38, 0xd6, 0xc0, 0x29, 0xcf, 0x03, 0xec, 0xa9, 0xc7, 0x40, 0x52, 0xfe, 0xa0, - 0x3d, 0x13, 0x34, 0x2c, 0xf4, 0x51, 0x98, 0x08, 0x79, 0xb4, 0xc0, 0xa5, 0x86, 0x13, 0x32, 0x3f, - 0x1a, 0xb1, 0x0a, 0x59, 0xc0, 0xa5, 0x6a, 0x02, 0x86, 0x53, 0xd8, 0x68, 0x45, 0xb6, 0xca, 0x42, - 0x1b, 0xf2, 0x85, 0x79, 0x29, 0x6e, 0x51, 0xa4, 0xfe, 0x3d, 0x95, 0x1c, 0x7e, 0x36, 0xf0, 0x5a, - 0x4d, 0xf4, 0x49, 0x00, 0xba, 0x7c, 0x84, 0x1c, 0x62, 0x30, 0xff, 0xf0, 0xa4, 0xa7, 0x4a, 0x3d, - 0xd3, 0xb8, 0x99, 0xf9, 0xd4, 0x96, 0x15, 0x11, 0xac, 0x11, 0x44, 0x5b, 0x30, 0x1a, 0xff, 0x8b, - 0x33, 0x63, 0x1e, 0xb1, 0x05, 0x26, 0xf7, 0x2e, 0xeb, 0x74, 0xb0, 0x49, 0xd6, 0xfe, 0xb1, 0x41, - 0x78, 0xbc, 0xc3, 0x59, 0x8c, 0x16, 0x4c, 0x7d, 0xef, 0x33, 0xc9, 0x47, 0xfc, 0x4c, 0x66, 0x65, - 0xe3, 0x55, 0x9f, 0x58, 0xf2, 0x85, 0xb7, 0xbd, 0xe4, 0x7f, 0xc8, 0xd2, 0xc4, 0x2b, 0xdc, 0xb2, - 0xf4, 0x23, 0x47, 0xbc, 0x63, 0x8e, 0x51, 0xde, 0xb2, 0x95, 0x21, 0xb4, 0x78, 0xbe, 0xe7, 0xee, - 0xf4, 0x2e, 0xc5, 0xf8, 0x8a, 0x05, 0x48, 0x88, 0x57, 0x48, 0x5d, 0x6d, 0x28, 0x21, 0xcf, 0xb8, - 0x7a, 0xd4, 0xef, 0x5f, 0x48, 0x51, 0xe2, 0x23, 0xf1, 0x8a, 0xbc, 0x0c, 0xd2, 0x08, 0x5d, 0xc7, - 0x24, 0xa3, 0x7b, 0xe8, 0xe3, 0x2c, 0x9a, 0xae, 0x7b, 0x5f, 0x70, 0x40, 0x62, 0xc3, 0xbd, 0x24, - 0x22, 0xe9, 0xaa, 0x72, 0xca, 0xea, 0x66, 0x76, 0x57, 0x47, 0xc2, 0x06, 0xa9, 0x93, 0x7d, 0x7f, - 0xb7, 0xe1, 0xb1, 0x9c, 0x21, 0x7b, 0xa4, 0xcf, 0xf0, 0xdf, 0xb4, 0xe0, 0x5c, 0xc7, 0xb0, 0x30, - 0xdf, 0x84, 0x0c, 0xa2, 0xfd, 0x39, 0x0b, 0xb2, 0x27, 0xdb, 0x30, 0x2b, 0x9b, 0x87, 0x52, 0x8d, - 0x16, 0x6a, 0x7e, 0xc0, 0x71, 0x80, 0x04, 0x09, 0xc0, 0x31, 0x8e, 0x61, 0x3d, 0x56, 0xe8, 0x6a, - 0x3d, 0xf6, 0xcb, 0x16, 0xa4, 0x0e, 0xf9, 0x13, 0xe0, 0x36, 0x56, 0x4d, 0x6e, 0xe3, 0xbd, 0xbd, - 0x8c, 0x66, 0x0e, 0xa3, 0xf1, 0x47, 0xe3, 0x70, 0x26, 0xc7, 0x2d, 0x6f, 0x0f, 0x26, 0xb7, 0x6b, - 0xc4, 0xf4, 0xb0, 0xee, 0x14, 0x79, 0xa8, 0xa3, 0x3b, 0x36, 0x4b, 0x0e, 0x3b, 0x99, 0x42, 0xc1, - 0xe9, 0x26, 0xd0, 0xe7, 0x2c, 0x38, 0xe5, 0xdc, 0x0d, 0x97, 0x29, 0xd7, 0xe8, 0xd6, 0x16, 0x1b, - 0x7e, 0x6d, 0x97, 0x5e, 0xc9, 0x72, 0x23, 0xbc, 0x98, 0x29, 0xc9, 0xbb, 0x53, 0x4d, 0xe1, 0x1b, - 0xcd, 0xb3, 0x6c, 0xb9, 0x59, 0x58, 0x38, 0xb3, 0x2d, 0x84, 0x45, 0x0a, 0x05, 0xfa, 0x26, 0xed, - 0x10, 0x03, 0x20, 0xcb, 0x7f, 0x92, 0xb3, 0x41, 0x12, 0x82, 0x15, 0x1d, 0xf4, 0x69, 0x28, 0x6d, - 0x4b, 0x77, 0xdf, 0x0c, 0x36, 0x2b, 0x1e, 0xc8, 0xce, 0x4e, 0xd0, 0x5c, 0x1d, 0xaf, 0x90, 0x70, - 0x4c, 0x14, 0xbd, 0x06, 0x45, 0x6f, 0x2b, 0xec, 0x94, 0x70, 0x36, 0x61, 0x77, 0xc9, 0x23, 0x6d, - 0xac, 0xaf, 0x54, 0x31, 0xad, 0x88, 0xae, 0x41, 0x31, 0xd8, 0xac, 0x0b, 0x31, 0x74, 0xe6, 0x26, - 0xc5, 0x8b, 0xe5, 0x9c, 0x5e, 0x31, 0x4a, 0x78, 0xb1, 0x8c, 0x29, 0x09, 0x54, 0x81, 0x7e, 0xe6, - 0xcb, 0x26, 0x98, 0x9a, 0xcc, 0xe7, 0x5b, 0x07, 0x9f, 0x50, 0x1e, 0x8e, 0x83, 0x21, 0x60, 0x4e, - 0x08, 0x6d, 0xc0, 0x40, 0x8d, 0x25, 0x27, 0x15, 0x5c, 0xcc, 0x07, 0x32, 0x05, 0xce, 0x1d, 0xb2, - 0xb6, 0x0a, 0xf9, 0x2b, 0xc3, 0xc0, 0x82, 0x16, 0xa3, 0x4a, 0x5a, 0x3b, 0x5b, 0xa1, 0x48, 0xde, - 0x9d, 0x4d, 0xb5, 0x43, 0x32, 0x62, 0x41, 0x95, 0x61, 0x60, 0x41, 0x0b, 0xbd, 0x02, 0x85, 0xad, - 0x9a, 0xf0, 0x53, 0xcb, 0x94, 0x3c, 0x9b, 0xc1, 0x52, 0x16, 0x07, 0x1e, 0x1c, 0xcc, 0x16, 0x56, - 0x96, 0x70, 0x61, 0xab, 0x86, 0xd6, 0x61, 0x70, 0x8b, 0x87, 0x57, 0x10, 0xc2, 0xe5, 0xa7, 0xb2, - 0x23, 0x3f, 0xa4, 0x22, 0x30, 0x70, 0x9f, 0x27, 0x01, 0xc0, 0x92, 0x08, 0xcb, 0x48, 0xa0, 0xc2, - 0x44, 0x88, 0x28, 0x75, 0x73, 0x47, 0x0b, 0xed, 0xc1, 0x99, 0xcc, 0x38, 0xd8, 0x04, 0xd6, 0x28, - 0xd2, 0x55, 0xed, 0xdc, 0x6f, 0x07, 0x2c, 0x14, 0xb8, 0x08, 0x67, 0x94, 0xb9, 0xaa, 0x17, 0x24, - 0x52, 0xa7, 0x55, 0xad, 0x90, 0x70, 0x4c, 0x14, 0xed, 0xc2, 0xe8, 0x5e, 0xd8, 0xda, 0x21, 0x72, - 0x4b, 0xb3, 0xe8, 0x46, 0x39, 0xfc, 0xd1, 0x6d, 0x81, 0xe8, 0x06, 0x51, 0xdb, 0x69, 0xa4, 0x4e, - 0x21, 0xc6, 0xcb, 0xde, 0xd6, 0x89, 0x61, 0x93, 0x36, 0x1d, 0xfe, 0xb7, 0xda, 0xfe, 0xe6, 0x7e, - 0x44, 0x44, 0x70, 0xb9, 0xcc, 0xe1, 0x7f, 0x83, 0xa3, 0xa4, 0x87, 0x5f, 0x00, 0xb0, 0x24, 0x82, - 0x6e, 0x8b, 0xe1, 0x61, 0xa7, 0xe7, 0x44, 0x7e, 0x04, 0xd8, 0x05, 0x89, 0x94, 0x33, 0x28, 0xec, - 0xb4, 0x8c, 0x49, 0xb1, 0x53, 0xb2, 0xb5, 0xe3, 0x47, 0xbe, 0x97, 0x38, 0xa1, 0x27, 0xf3, 0x4f, - 0xc9, 0x4a, 0x06, 0x7e, 0xfa, 0x94, 0xcc, 0xc2, 0xc2, 0x99, 0x6d, 0xa1, 0x3a, 0x8c, 0xb5, 0xfc, - 0x20, 0xba, 0xeb, 0x07, 0x72, 0x7d, 0xa1, 0x0e, 0xc2, 0x31, 0x03, 0x53, 0xb4, 0xc8, 0xe2, 0x36, - 0x9a, 0x10, 0x9c, 0xa0, 0x89, 0x3e, 0x06, 0x83, 0x61, 0xcd, 0x69, 0x90, 0xd5, 0x9b, 0xd3, 0x53, - 0xf9, 0xd7, 0x4f, 0x95, 0xa3, 0xe4, 0xac, 0x2e, 0x1e, 0x1d, 0x83, 0xa3, 0x60, 0x49, 0x0e, 0xad, - 0x40, 0x3f, 0xcb, 0x38, 0xc7, 0x22, 0x21, 0xe6, 0x04, 0xb2, 0x4d, 0x59, 0xc1, 0xf3, 0xb3, 0x89, - 0x15, 0x63, 0x5e, 0x9d, 0xee, 0x01, 0xf1, 0x46, 0xf4, 0xc3, 0xe9, 0xd3, 0xf9, 0x7b, 0x40, 0x3c, - 0x2d, 0x6f, 0x56, 0x3b, 0xed, 0x01, 0x85, 0x84, 0x63, 0xa2, 0xf4, 0x64, 0xa6, 0xa7, 0xe9, 0x99, - 0x0e, 0xe6, 0x5b, 0xb9, 0x67, 0x29, 0x3b, 0x99, 0xe9, 0x49, 0x4a, 0x49, 0xd8, 0xbf, 0x3b, 0x98, - 0xe6, 0x59, 0x98, 0x54, 0xe1, 0x7b, 0xac, 0x94, 0xc2, 0xf9, 0x83, 0xbd, 0x0a, 0x39, 0x8f, 0xf1, - 0x29, 0xf4, 0x39, 0x0b, 0xce, 0xb4, 0x32, 0x3f, 0x44, 0x30, 0x00, 0xbd, 0xc9, 0x4a, 0xf9, 0xa7, - 0xab, 0xa8, 0x99, 0xd9, 0x70, 0x9c, 0xd3, 0x52, 0xf2, 0xb9, 0x59, 0x7c, 0xdb, 0xcf, 0xcd, 0x35, - 0x18, 0xaa, 0xf1, 0xa7, 0x48, 0xc7, 0x64, 0xdd, 0xc9, 0xb7, 0x37, 0x63, 0x25, 0xc4, 0x1b, 0x66, - 0x0b, 0x2b, 0x12, 0xe8, 0x87, 0x2d, 0x38, 0x97, 0xec, 0x3a, 0x26, 0x0c, 0x2c, 0x42, 0x6d, 0x72, - 0x81, 0xc6, 0x8a, 0xf8, 0xfe, 0x14, 0xff, 0x6f, 0x20, 0x1f, 0x76, 0x43, 0xc0, 0x9d, 0x1b, 0x43, - 0xe5, 0x0c, 0x89, 0xca, 0x80, 0xa9, 0x45, 0xea, 0x41, 0xaa, 0xf2, 0x22, 0x8c, 0x34, 0xfd, 0xb6, - 0x17, 0x09, 0x6b, 0x2f, 0x61, 0x79, 0xc2, 0x2c, 0x2e, 0xd6, 0xb4, 0x72, 0x6c, 0x60, 0x25, 0x64, - 0x31, 0x43, 0x0f, 0x2d, 0x8b, 0x79, 0x13, 0x46, 0x3c, 0xcd, 0x3c, 0x59, 0xf0, 0x03, 0x97, 0xf2, - 0xc3, 0xe4, 0xea, 0xc6, 0xcc, 0xbc, 0x97, 0x7a, 0x09, 0x36, 0xa8, 0x9d, 0xac, 0x19, 0xd8, 0x97, - 0xac, 0x0c, 0xa6, 0x9e, 0x8b, 0x62, 0x3e, 0x6c, 0x8a, 0x62, 0x2e, 0x25, 0x45, 0x31, 0x29, 0x0d, - 0x82, 0x21, 0x85, 0xe9, 0x3d, 0x0b, 0x50, 0xaf, 0xa1, 0x36, 0xed, 0x06, 0x5c, 0xe8, 0x76, 0x2d, - 0x31, 0xb3, 0xbf, 0xba, 0xd2, 0x17, 0xc7, 0x66, 0x7f, 0xf5, 0xd5, 0x32, 0x66, 0x90, 0x5e, 0x83, - 0x38, 0xd9, 0xff, 0xcd, 0x82, 0x62, 0xc5, 0xaf, 0x9f, 0xc0, 0x83, 0xf7, 0x23, 0xc6, 0x83, 0xf7, - 0xf1, 0xec, 0x0b, 0xb1, 0x9e, 0xab, 0xff, 0x58, 0x4e, 0xe8, 0x3f, 0xce, 0xe5, 0x11, 0xe8, 0xac, - 0xed, 0xf8, 0xc9, 0x22, 0x0c, 0x57, 0xfc, 0xba, 0xb2, 0xb9, 0xff, 0x97, 0x0f, 0x63, 0x73, 0x9f, - 0x9b, 0xcb, 0x42, 0xa3, 0xcc, 0xac, 0x05, 0xa5, 0xbb, 0xf1, 0x37, 0x99, 0xe9, 0xfd, 0x1d, 0xe2, - 0x6e, 0xef, 0x44, 0xa4, 0x9e, 0xfc, 0x9c, 0x93, 0x33, 0xbd, 0xff, 0xdd, 0x02, 0x8c, 0x27, 0x5a, - 0x47, 0x0d, 0x18, 0x6d, 0xe8, 0xd2, 0x75, 0xb1, 0x4e, 0x1f, 0x4a, 0x30, 0x2f, 0x4c, 0x97, 0xb5, - 0x22, 0x6c, 0x12, 0x47, 0x73, 0x00, 0x4a, 0xdd, 0x2c, 0xc5, 0xab, 0x8c, 0xeb, 0x57, 0xfa, 0xe8, - 0x10, 0x6b, 0x18, 0xe8, 0x25, 0x18, 0x8e, 0xfc, 0x96, 0xdf, 0xf0, 0xb7, 0xf7, 0xaf, 0x13, 0x19, - 0xdf, 0x4b, 0x19, 0x24, 0x6e, 0xc4, 0x20, 0xac, 0xe3, 0xa1, 0x7b, 0x30, 0xa9, 0x88, 0x54, 0x8f, - 0x41, 0xe3, 0xc0, 0xa4, 0x0a, 0xeb, 0x49, 0x8a, 0x38, 0xdd, 0x88, 0xfd, 0xd3, 0x45, 0x3e, 0xc4, - 0x5e, 0xe4, 0xbe, 0xbb, 0x1b, 0xde, 0xd9, 0xbb, 0xe1, 0x6b, 0x16, 0x4c, 0xd0, 0xd6, 0x99, 0xb5, - 0x95, 0xbc, 0xe6, 0x55, 0x60, 0x6e, 0xab, 0x43, 0x60, 0xee, 0x4b, 0xf4, 0xd4, 0xac, 0xfb, 0xed, - 0x48, 0xc8, 0xee, 0xb4, 0x63, 0x91, 0x96, 0x62, 0x01, 0x15, 0x78, 0x24, 0x08, 0x84, 0x87, 0xa8, - 0x8e, 0x47, 0x82, 0x00, 0x0b, 0xa8, 0x8c, 0xdb, 0xdd, 0x97, 0x1d, 0xb7, 0x9b, 0x87, 0x5f, 0x15, - 0x76, 0x39, 0x82, 0xe1, 0xd2, 0xc2, 0xaf, 0x4a, 0x83, 0x9d, 0x18, 0xc7, 0xfe, 0x4a, 0x11, 0x46, - 0x2a, 0x7e, 0x3d, 0x56, 0x35, 0xbf, 0x68, 0xa8, 0x9a, 0x2f, 0x24, 0x54, 0xcd, 0x13, 0x3a, 0xee, - 0xbb, 0x8a, 0xe5, 0x6f, 0x94, 0x62, 0xf9, 0x9f, 0x59, 0x6c, 0xd6, 0xca, 0xeb, 0x55, 0x6e, 0xbc, - 0x87, 0xae, 0xc0, 0x30, 0x3b, 0x60, 0x98, 0x4b, 0xb2, 0xd4, 0xbf, 0xb2, 0x7c, 0x54, 0xeb, 0x71, - 0x31, 0xd6, 0x71, 0xd0, 0x65, 0x18, 0x0a, 0x89, 0x13, 0xd4, 0x76, 0xd4, 0xe9, 0x2a, 0x94, 0xa5, - 0xbc, 0x0c, 0x2b, 0x28, 0x7a, 0x23, 0x8e, 0xfc, 0x59, 0xcc, 0x77, 0x71, 0xd4, 0xfb, 0xc3, 0xb7, - 0x48, 0x7e, 0xb8, 0x4f, 0xfb, 0x0e, 0xa0, 0x34, 0x7e, 0x0f, 0xb1, 0xe9, 0x66, 0xcd, 0xd8, 0x74, - 0xa5, 0x54, 0x5c, 0xba, 0x3f, 0xb5, 0x60, 0xac, 0xe2, 0xd7, 0xe9, 0xd6, 0xfd, 0x56, 0xda, 0xa7, - 0x7a, 0xd8, 0xe3, 0x81, 0x0e, 0x61, 0x8f, 0x2f, 0x42, 0x7f, 0xc5, 0xaf, 0xaf, 0x56, 0x3a, 0xc5, - 0x17, 0xb0, 0xff, 0x96, 0x05, 0x83, 0x15, 0xbf, 0x7e, 0x02, 0x6a, 0x81, 0x0f, 0x9b, 0x6a, 0x81, - 0xc7, 0x72, 0xd6, 0x4d, 0x8e, 0x26, 0xe0, 0x6f, 0xf4, 0xc1, 0x28, 0xed, 0xa7, 0xbf, 0x2d, 0xa7, - 0xd2, 0x18, 0x36, 0xab, 0x87, 0x61, 0xa3, 0x5c, 0xb8, 0xdf, 0x68, 0xf8, 0x77, 0x93, 0xd3, 0xba, - 0xc2, 0x4a, 0xb1, 0x80, 0xa2, 0x67, 0x61, 0xa8, 0x15, 0x90, 0x3d, 0xd7, 0x17, 0xec, 0xad, 0xa6, - 0x64, 0xa9, 0x88, 0x72, 0xac, 0x30, 0xe8, 0xb3, 0x30, 0x74, 0x3d, 0x7a, 0x95, 0xd7, 0x7c, 0xaf, - 0xce, 0x25, 0xe7, 0x45, 0x91, 0x9b, 0x43, 0x2b, 0xc7, 0x06, 0x16, 0xba, 0x03, 0x25, 0xf6, 0x9f, - 0x1d, 0x3b, 0x47, 0xcf, 0xf2, 0x2a, 0xb2, 0xfe, 0x09, 0x02, 0x38, 0xa6, 0x85, 0x9e, 0x07, 0x88, - 0x64, 0x7c, 0xfb, 0x50, 0x44, 0x5b, 0x53, 0x4f, 0x01, 0x15, 0xf9, 0x3e, 0xc4, 0x1a, 0x16, 0x7a, - 0x06, 0x4a, 0x91, 0xe3, 0x36, 0x6e, 0xb8, 0x1e, 0x09, 0x99, 0x44, 0xbc, 0x28, 0x93, 0xef, 0x89, - 0x42, 0x1c, 0xc3, 0x29, 0x2b, 0xc6, 0x22, 0x71, 0xf0, 0x1c, 0xd1, 0x43, 0x0c, 0x9b, 0xb1, 0x62, - 0x37, 0x54, 0x29, 0xd6, 0x30, 0xd0, 0x0e, 0x3c, 0xe1, 0x7a, 0x2c, 0x8f, 0x05, 0xa9, 0xee, 0xba, - 0xad, 0x8d, 0x1b, 0xd5, 0xdb, 0x24, 0x70, 0xb7, 0xf6, 0x17, 0x9d, 0xda, 0x2e, 0xf1, 0x64, 0xfe, - 0xce, 0xf7, 0x8a, 0x2e, 0x3e, 0xb1, 0xda, 0x01, 0x17, 0x77, 0xa4, 0x64, 0xbf, 0xc0, 0xd6, 0xfb, - 0xcd, 0x2a, 0x7a, 0xbf, 0x71, 0x74, 0x9c, 0xd1, 0x8f, 0x8e, 0xc3, 0x83, 0xd9, 0x81, 0x9b, 0x55, - 0x2d, 0x90, 0xc4, 0xcb, 0x70, 0xba, 0xe2, 0xd7, 0x2b, 0x7e, 0x10, 0xad, 0xf8, 0xc1, 0x5d, 0x27, - 0xa8, 0xcb, 0xe5, 0x35, 0x2b, 0x43, 0x69, 0xd0, 0xf3, 0xb3, 0x9f, 0x9f, 0x2e, 0x46, 0x98, 0x8c, - 0x17, 0x18, 0xc7, 0x76, 0x44, 0x07, 0xb0, 0x1a, 0xe3, 0x1d, 0x54, 0x26, 0x98, 0xab, 0x4e, 0x44, - 0xd0, 0x4d, 0x96, 0xe1, 0x3a, 0xbe, 0x46, 0x45, 0xf5, 0xa7, 0xb5, 0x0c, 0xd7, 0x31, 0x30, 0xf3, - 0xde, 0x35, 0xeb, 0xdb, 0xff, 0xbd, 0x9f, 0x9d, 0xa8, 0x89, 0x6c, 0x22, 0xe8, 0x53, 0x30, 0x16, - 0x92, 0x1b, 0xae, 0xd7, 0xbe, 0x27, 0x45, 0x18, 0x1d, 0x5c, 0xf8, 0xaa, 0xcb, 0x3a, 0x26, 0x17, - 0x84, 0x9a, 0x65, 0x38, 0x41, 0x0d, 0x35, 0x61, 0xec, 0xae, 0xeb, 0xd5, 0xfd, 0xbb, 0xa1, 0xa4, - 0x3f, 0x94, 0x2f, 0x0f, 0xbd, 0xc3, 0x31, 0x13, 0x7d, 0x34, 0x9a, 0xbb, 0x63, 0x10, 0xc3, 0x09, - 0xe2, 0x74, 0xd5, 0x06, 0x6d, 0x6f, 0x21, 0xbc, 0x15, 0x92, 0x40, 0xe4, 0x2a, 0x67, 0xab, 0x16, - 0xcb, 0x42, 0x1c, 0xc3, 0xe9, 0xaa, 0x65, 0x7f, 0xae, 0x06, 0x7e, 0x9b, 0xa7, 0xae, 0x10, 0xab, - 0x16, 0xab, 0x52, 0xac, 0x61, 0xd0, 0x5d, 0xcd, 0xfe, 0xad, 0xfb, 0x1e, 0xf6, 0xfd, 0x48, 0x9e, - 0x03, 0x4c, 0xa7, 0xaf, 0x95, 0x63, 0x03, 0x0b, 0xad, 0x00, 0x0a, 0xdb, 0xad, 0x56, 0x83, 0xd9, - 0x06, 0x39, 0x0d, 0x46, 0x8a, 0xdb, 0x4b, 0x14, 0x79, 0xe8, 0xdd, 0x6a, 0x0a, 0x8a, 0x33, 0x6a, - 0xd0, 0x03, 0x7e, 0x4b, 0x74, 0xb5, 0x9f, 0x75, 0x95, 0xeb, 0x4e, 0xaa, 0xbc, 0x9f, 0x12, 0x86, - 0x96, 0x61, 0x30, 0xdc, 0x0f, 0x6b, 0x91, 0x88, 0x94, 0x98, 0x93, 0x30, 0xaa, 0xca, 0x50, 0xb4, - 0x7c, 0x85, 0xbc, 0x0a, 0x96, 0x75, 0x51, 0x0d, 0xa6, 0x04, 0xc5, 0xa5, 0x1d, 0xc7, 0x53, 0xe9, - 0x77, 0xb8, 0x89, 0xf4, 0x95, 0x07, 0x07, 0xb3, 0x53, 0xa2, 0x65, 0x1d, 0x7c, 0x78, 0x30, 0x7b, - 0xa6, 0xe2, 0xd7, 0x33, 0x20, 0x38, 0x8b, 0x1a, 0x5f, 0x7c, 0xb5, 0x9a, 0xdf, 0x6c, 0x55, 0x02, - 0x7f, 0xcb, 0x6d, 0x90, 0x4e, 0xfa, 0xa7, 0xaa, 0x81, 0x29, 0x16, 0x9f, 0x51, 0x86, 0x13, 0xd4, - 0xec, 0xef, 0x64, 0x4c, 0x10, 0x4b, 0xcf, 0x1d, 0xb5, 0x03, 0x82, 0x9a, 0x30, 0xda, 0x62, 0xdb, - 0x44, 0x24, 0x94, 0x10, 0x6b, 0xfd, 0xc5, 0x1e, 0xe5, 0x28, 0x77, 0xe9, 0xdd, 0x61, 0xda, 0x18, - 0x55, 0x74, 0x72, 0xd8, 0xa4, 0x6e, 0xff, 0xfa, 0x63, 0xec, 0x1a, 0xad, 0x72, 0xe1, 0xc8, 0xa0, - 0xf0, 0xc8, 0x10, 0xef, 0xb1, 0x99, 0x7c, 0x29, 0x5d, 0x3c, 0x2d, 0xc2, 0xab, 0x03, 0xcb, 0xba, - 0xe8, 0x93, 0x30, 0x46, 0x9f, 0x37, 0xea, 0x2a, 0x0b, 0xa7, 0x4f, 0xe5, 0x47, 0xce, 0x50, 0x58, - 0x7a, 0xb2, 0x19, 0xbd, 0x32, 0x4e, 0x10, 0x43, 0x6f, 0x30, 0x9b, 0x1e, 0x49, 0xba, 0xd0, 0x0b, - 0x69, 0xdd, 0x7c, 0x47, 0x92, 0xd5, 0x88, 0xa0, 0x36, 0x4c, 0xa5, 0x53, 0xd3, 0x85, 0xd3, 0x76, - 0x3e, 0x9f, 0x98, 0xce, 0x2e, 0x17, 0x67, 0x05, 0x49, 0xc3, 0x42, 0x9c, 0x45, 0x1f, 0xdd, 0x80, - 0x51, 0x91, 0xa3, 0x5a, 0xac, 0xdc, 0xa2, 0x21, 0x3c, 0x1c, 0xc5, 0x3a, 0xf0, 0x30, 0x59, 0x80, - 0xcd, 0xca, 0x68, 0x1b, 0xce, 0x69, 0x39, 0xa3, 0xae, 0x06, 0x0e, 0xb3, 0x00, 0x70, 0xd9, 0x71, - 0xaa, 0x5d, 0xf0, 0x4f, 0x3e, 0x38, 0x98, 0x3d, 0xb7, 0xd1, 0x09, 0x11, 0x77, 0xa6, 0x83, 0x6e, - 0xc2, 0x69, 0xee, 0xf7, 0x5d, 0x26, 0x4e, 0xbd, 0xe1, 0x7a, 0x8a, 0x83, 0xe0, 0x5b, 0xfe, 0xec, - 0x83, 0x83, 0xd9, 0xd3, 0x0b, 0x59, 0x08, 0x38, 0xbb, 0x1e, 0xfa, 0x30, 0x94, 0xea, 0x5e, 0x28, - 0xc6, 0x60, 0xc0, 0x48, 0xcb, 0x55, 0x2a, 0xaf, 0x57, 0xd5, 0xf7, 0xc7, 0x7f, 0x70, 0x5c, 0x01, - 0x6d, 0x73, 0x01, 0xb3, 0x12, 0x7b, 0x0c, 0xa6, 0xe2, 0x5e, 0x25, 0x25, 0x83, 0x86, 0xe7, 0x27, - 0xd7, 0xac, 0x28, 0x87, 0x08, 0xc3, 0x29, 0xd4, 0x20, 0x8c, 0x5e, 0x07, 0x24, 0xc2, 0xbf, 0x2f, - 0xd4, 0x58, 0xb6, 0x12, 0x26, 0x8f, 0x1f, 0x32, 0x7d, 0x11, 0xab, 0x29, 0x0c, 0x9c, 0x51, 0x0b, - 0x5d, 0xa3, 0xa7, 0x8a, 0x5e, 0x2a, 0x4e, 0x2d, 0x95, 0x44, 0xb1, 0x4c, 0x5a, 0x01, 0x61, 0x16, - 0x4d, 0x26, 0x45, 0x9c, 0xa8, 0x87, 0xea, 0xf0, 0x84, 0xd3, 0x8e, 0x7c, 0x26, 0xbb, 0x37, 0x51, - 0x37, 0xfc, 0x5d, 0xe2, 0x31, 0xb5, 0xd9, 0xd0, 0xe2, 0x05, 0xca, 0xa2, 0x2c, 0x74, 0xc0, 0xc3, - 0x1d, 0xa9, 0x50, 0xd6, 0x52, 0x65, 0x4d, 0x06, 0x33, 0x9a, 0x57, 0x46, 0xe6, 0xe4, 0x97, 0x60, - 0x78, 0xc7, 0x0f, 0xa3, 0x75, 0x12, 0xdd, 0xf5, 0x83, 0x5d, 0x11, 0x95, 0x36, 0x8e, 0xf1, 0x1d, - 0x83, 0xb0, 0x8e, 0x47, 0xdf, 0x8e, 0xcc, 0xa8, 0x63, 0xb5, 0xcc, 0xf4, 0xe9, 0x43, 0xf1, 0x19, - 0x73, 0x8d, 0x17, 0x63, 0x09, 0x97, 0xa8, 0xab, 0x95, 0x25, 0xa6, 0x1b, 0x4f, 0xa0, 0xae, 0x56, - 0x96, 0xb0, 0x84, 0xd3, 0xe5, 0x1a, 0xee, 0x38, 0x01, 0xa9, 0x04, 0x7e, 0x8d, 0x84, 0x5a, 0x64, - 0xf9, 0xc7, 0x79, 0xcc, 0x5d, 0xba, 0x5c, 0xab, 0x59, 0x08, 0x38, 0xbb, 0x1e, 0x22, 0xe9, 0x7c, - 0x69, 0x63, 0xf9, 0x4a, 0x8d, 0x34, 0x3f, 0xd3, 0x63, 0xca, 0x34, 0x0f, 0x26, 0x54, 0xa6, 0x36, - 0x1e, 0x65, 0x37, 0x9c, 0x1e, 0x67, 0x6b, 0xbb, 0xf7, 0x10, 0xbd, 0x4a, 0x4d, 0xb4, 0x9a, 0xa0, - 0x84, 0x53, 0xb4, 0x8d, 0x80, 0x6d, 0x13, 0x5d, 0x03, 0xb6, 0xcd, 0x43, 0x29, 0x6c, 0x6f, 0xd6, - 0xfd, 0xa6, 0xe3, 0x7a, 0x4c, 0x37, 0xae, 0x3d, 0x62, 0xaa, 0x12, 0x80, 0x63, 0x1c, 0xb4, 0x02, - 0x43, 0x8e, 0xd4, 0x01, 0xa1, 0xfc, 0x10, 0x3d, 0x4a, 0xf3, 0xc3, 0xa3, 0x56, 0x48, 0xad, 0x8f, - 0xaa, 0x8b, 0x5e, 0x85, 0x51, 0xe1, 0xb7, 0x2c, 0x92, 0x84, 0x4e, 0x99, 0xce, 0x65, 0x55, 0x1d, - 0x88, 0x4d, 0x5c, 0x74, 0x0b, 0x86, 0x23, 0xbf, 0xc1, 0x3c, 0xa4, 0x28, 0x9b, 0x77, 0x26, 0x3f, - 0xd8, 0xdc, 0x86, 0x42, 0xd3, 0xc5, 0xaf, 0xaa, 0x2a, 0xd6, 0xe9, 0xa0, 0x0d, 0xbe, 0xde, 0x59, - 0x1c, 0x79, 0x12, 0x4e, 0x3f, 0x96, 0x7f, 0x27, 0xa9, 0x70, 0xf3, 0xe6, 0x76, 0x10, 0x35, 0xb1, - 0x4e, 0x06, 0x5d, 0x85, 0xc9, 0x56, 0xe0, 0xfa, 0x6c, 0x4d, 0x28, 0xf5, 0xdf, 0xb4, 0x99, 0x35, - 0xaa, 0x92, 0x44, 0xc0, 0xe9, 0x3a, 0xcc, 0xed, 0x5c, 0x14, 0x4e, 0x9f, 0xe5, 0x99, 0x2f, 0xf8, - 0x9b, 0x90, 0x97, 0x61, 0x05, 0x45, 0x6b, 0xec, 0x24, 0xe6, 0xe2, 0x8c, 0xe9, 0x99, 0xfc, 0xa8, - 0x40, 0xba, 0xd8, 0x83, 0x33, 0xaf, 0xea, 0x2f, 0x8e, 0x29, 0xa0, 0xba, 0x96, 0x70, 0x92, 0xbe, - 0x18, 0xc2, 0xe9, 0x27, 0x3a, 0x58, 0xd6, 0x25, 0x9e, 0x17, 0x31, 0x43, 0x60, 0x14, 0x87, 0x38, - 0x41, 0x13, 0x7d, 0x14, 0x26, 0x44, 0x2c, 0xc3, 0x78, 0x98, 0xce, 0xc5, 0x76, 0xe7, 0x38, 0x01, - 0xc3, 0x29, 0x6c, 0x9e, 0x79, 0xc2, 0xd9, 0x6c, 0x10, 0x71, 0xf4, 0xdd, 0x70, 0xbd, 0xdd, 0x70, - 0xfa, 0x3c, 0x3b, 0x1f, 0x44, 0xe6, 0x89, 0x24, 0x14, 0x67, 0xd4, 0x40, 0x1b, 0x30, 0xd1, 0x0a, - 0x08, 0x69, 0x32, 0x46, 0x5f, 0xdc, 0x67, 0xb3, 0x3c, 0xea, 0x02, 0xed, 0x49, 0x25, 0x01, 0x3b, - 0xcc, 0x28, 0xc3, 0x29, 0x0a, 0xe8, 0x2e, 0x0c, 0xf9, 0x7b, 0x24, 0xd8, 0x21, 0x4e, 0x7d, 0xfa, - 0x42, 0x07, 0x3f, 0x08, 0x71, 0xb9, 0xdd, 0x14, 0xb8, 0x09, 0x93, 0x01, 0x59, 0xdc, 0xdd, 0x64, - 0x40, 0x36, 0x86, 0xfe, 0xa2, 0x05, 0x67, 0xa5, 0x96, 0xa1, 0xda, 0xa2, 0xa3, 0xbe, 0xe4, 0x7b, - 0x61, 0x14, 0xf0, 0x38, 0x01, 0x4f, 0xe6, 0xfb, 0xce, 0x6f, 0xe4, 0x54, 0x52, 0x12, 0xd5, 0xb3, - 0x79, 0x18, 0x21, 0xce, 0x6f, 0x11, 0x2d, 0xc1, 0x64, 0x48, 0x22, 0x79, 0x18, 0x2d, 0x84, 0x2b, - 0x6f, 0x94, 0xd7, 0xa7, 0x2f, 0xf2, 0x20, 0x07, 0x74, 0x33, 0x54, 0x93, 0x40, 0x9c, 0xc6, 0x47, - 0x57, 0xa0, 0xe0, 0x87, 0xd3, 0xef, 0xed, 0x90, 0xa3, 0x94, 0x3e, 0xc5, 0xb9, 0xe9, 0xd8, 0xcd, - 0x2a, 0x2e, 0xf8, 0xe1, 0xcc, 0xb7, 0xc3, 0x64, 0x8a, 0x63, 0x38, 0x4a, 0x6e, 0x9f, 0x99, 0x5d, - 0x18, 0x35, 0x66, 0xe5, 0x91, 0x6a, 0xa9, 0xff, 0xcd, 0x20, 0x94, 0x94, 0x06, 0x13, 0xcd, 0x9b, - 0x8a, 0xe9, 0xb3, 0x49, 0xc5, 0xf4, 0x50, 0xc5, 0xaf, 0x1b, 0xba, 0xe8, 0x8d, 0x8c, 0x68, 0x70, - 0x79, 0x67, 0x40, 0xef, 0x06, 0xf2, 0x9a, 0x58, 0xb8, 0xd8, 0xb3, 0x86, 0xbb, 0xaf, 0xa3, 0xa4, - 0xf9, 0x2a, 0x4c, 0x7a, 0x3e, 0x63, 0x53, 0x49, 0x5d, 0xf2, 0x20, 0x8c, 0xd5, 0x28, 0xe9, 0xe1, - 0x55, 0x12, 0x08, 0x38, 0x5d, 0x87, 0x36, 0xc8, 0x79, 0x85, 0xa4, 0x68, 0x9b, 0xb3, 0x12, 0x58, - 0x40, 0xd1, 0x45, 0xe8, 0x6f, 0xf9, 0xf5, 0xd5, 0x8a, 0x60, 0x51, 0xb5, 0x18, 0xa4, 0xf5, 0xd5, - 0x0a, 0xe6, 0x30, 0xb4, 0x00, 0x03, 0xec, 0x47, 0x38, 0x3d, 0x92, 0x1f, 0x47, 0x83, 0xd5, 0xd0, - 0x32, 0x27, 0xb1, 0x0a, 0x58, 0x54, 0x64, 0x22, 0x36, 0xca, 0xd7, 0x33, 0x11, 0xdb, 0xe0, 0x43, - 0x8a, 0xd8, 0x24, 0x01, 0x1c, 0xd3, 0x42, 0xf7, 0xe0, 0xb4, 0xf1, 0x96, 0xe2, 0x4b, 0x84, 0x84, - 0xc2, 0x97, 0xff, 0x62, 0xc7, 0x47, 0x94, 0xd0, 0x88, 0x9f, 0x13, 0x9d, 0x3e, 0xbd, 0x9a, 0x45, - 0x09, 0x67, 0x37, 0x80, 0x1a, 0x30, 0x59, 0x4b, 0xb5, 0x3a, 0xd4, 0x7b, 0xab, 0x6a, 0x42, 0xd3, - 0x2d, 0xa6, 0x09, 0xa3, 0x57, 0x61, 0xe8, 0x2d, 0x3f, 0x64, 0xc7, 0xbb, 0x60, 0xab, 0xa5, 0x23, - 0xf8, 0xd0, 0x1b, 0x37, 0xab, 0xac, 0xfc, 0xf0, 0x60, 0x76, 0xb8, 0xe2, 0xd7, 0xe5, 0x5f, 0xac, - 0x2a, 0xa0, 0xef, 0xb7, 0x60, 0x26, 0xfd, 0x58, 0x53, 0x9d, 0x1e, 0xed, 0xbd, 0xd3, 0xb6, 0x68, - 0x74, 0x66, 0x39, 0x97, 0x1c, 0xee, 0xd0, 0x94, 0xfd, 0x8b, 0x16, 0x13, 0xd4, 0x09, 0x4d, 0x13, - 0x09, 0xdb, 0x8d, 0x93, 0x48, 0x18, 0xbb, 0x6c, 0x28, 0xc1, 0x1e, 0xda, 0x42, 0xe2, 0x5f, 0x58, - 0xcc, 0x42, 0xe2, 0x04, 0x5d, 0x21, 0xde, 0x80, 0xa1, 0x48, 0x26, 0xf2, 0xed, 0x90, 0xe3, 0x56, - 0xeb, 0x14, 0xb3, 0x12, 0x51, 0x4c, 0xae, 0xca, 0xd9, 0xab, 0xc8, 0xd8, 0xff, 0x98, 0xcf, 0x80, - 0x84, 0x9c, 0x80, 0xae, 0xa1, 0x6c, 0xea, 0x1a, 0x66, 0xbb, 0x7c, 0x41, 0x8e, 0xce, 0xe1, 0x1f, - 0x99, 0xfd, 0x66, 0xc2, 0x9d, 0x77, 0xba, 0x69, 0x8e, 0xfd, 0x79, 0x0b, 0x20, 0x0e, 0xf1, 0xdc, - 0x43, 0xaa, 0xb6, 0x97, 0x29, 0x5b, 0xeb, 0x47, 0x7e, 0xcd, 0x6f, 0x08, 0x4d, 0xda, 0x13, 0xb1, - 0xba, 0x83, 0x97, 0x1f, 0x6a, 0xbf, 0xb1, 0xc2, 0x46, 0xb3, 0x32, 0xa0, 0x5c, 0x31, 0x56, 0xc0, - 0x19, 0xc1, 0xe4, 0xbe, 0x68, 0xc1, 0xa9, 0x2c, 0xbb, 0x5a, 0xfa, 0x48, 0xe2, 0x62, 0x2e, 0x65, - 0x36, 0xa5, 0x66, 0xf3, 0xb6, 0x28, 0xc7, 0x0a, 0xa3, 0xe7, 0x1c, 0x78, 0x47, 0x8b, 0xad, 0x7c, - 0x13, 0x46, 0x2b, 0x01, 0xd1, 0x2e, 0xd7, 0xd7, 0x78, 0x90, 0x02, 0xde, 0x9f, 0x67, 0x8f, 0x1c, - 0xa0, 0xc0, 0xfe, 0x72, 0x01, 0x4e, 0x71, 0xeb, 0x83, 0x85, 0x3d, 0xdf, 0xad, 0x57, 0xfc, 0xba, - 0xf0, 0x9e, 0xfa, 0x04, 0x8c, 0xb4, 0x34, 0xd9, 0x64, 0xa7, 0x38, 0xa1, 0xba, 0x0c, 0x33, 0x96, - 0xa6, 0xe8, 0xa5, 0xd8, 0xa0, 0x85, 0xea, 0x30, 0x42, 0xf6, 0xdc, 0x9a, 0x52, 0x61, 0x17, 0x8e, - 0x7c, 0xd1, 0xa9, 0x56, 0x96, 0x35, 0x3a, 0xd8, 0xa0, 0xfa, 0x08, 0x32, 0x53, 0xdb, 0x3f, 0x6a, - 0xc1, 0x63, 0x39, 0x51, 0x45, 0x69, 0x73, 0x77, 0x99, 0x9d, 0x87, 0x58, 0xb6, 0xaa, 0x39, 0x6e, - 0xfd, 0x81, 0x05, 0x14, 0x7d, 0x0c, 0x80, 0x5b, 0x6f, 0xd0, 0x57, 0x7a, 0xb7, 0xf0, 0x8b, 0x46, - 0xe4, 0x38, 0x2d, 0x08, 0x98, 0xac, 0x8f, 0x35, 0x5a, 0xf6, 0x17, 0xfb, 0xa0, 0x9f, 0x67, 0xd1, - 0xaf, 0xc0, 0xe0, 0x0e, 0xcf, 0x13, 0xd3, 0x71, 0xde, 0x28, 0xae, 0x4c, 0x3d, 0x13, 0xcf, 0x9b, - 0x56, 0x8a, 0x25, 0x19, 0xb4, 0x06, 0x53, 0x3c, 0x5d, 0x4f, 0xa3, 0x4c, 0x1a, 0xce, 0xbe, 0x14, - 0xfb, 0xf1, 0xdc, 0xb2, 0x4a, 0xfc, 0xb9, 0x9a, 0x46, 0xc1, 0x59, 0xf5, 0xd0, 0x6b, 0x30, 0x46, - 0x9f, 0x61, 0x7e, 0x3b, 0x92, 0x94, 0x78, 0xa2, 0x1e, 0xf5, 0xee, 0xdb, 0x30, 0xa0, 0x38, 0x81, - 0x8d, 0x5e, 0x85, 0xd1, 0x56, 0x4a, 0xc0, 0xd9, 0x1f, 0x4b, 0x02, 0x4c, 0xa1, 0xa6, 0x89, 0xcb, - 0x4c, 0x6b, 0xdb, 0xcc, 0x90, 0x78, 0x63, 0x27, 0x20, 0xe1, 0x8e, 0xdf, 0xa8, 0x33, 0xf6, 0xaf, - 0x5f, 0x33, 0xad, 0x4d, 0xc0, 0x71, 0xaa, 0x06, 0xa5, 0xb2, 0xe5, 0xb8, 0x8d, 0x76, 0x40, 0x62, - 0x2a, 0x03, 0x26, 0x95, 0x95, 0x04, 0x1c, 0xa7, 0x6a, 0x74, 0x97, 0xdc, 0x0e, 0x1e, 0x8f, 0xe4, - 0xd6, 0xfe, 0xdb, 0x05, 0x30, 0xa6, 0xf6, 0x5b, 0x37, 0x81, 0x10, 0xfd, 0xb2, 0xed, 0xa0, 0x55, - 0x13, 0x96, 0x31, 0x99, 0x5f, 0x16, 0xe7, 0x05, 0xe5, 0x5f, 0x46, 0xff, 0x63, 0x56, 0x8b, 0xee, - 0xf1, 0xd3, 0x95, 0xc0, 0xa7, 0x97, 0x9c, 0x0c, 0x63, 0xa5, 0x2c, 0xd8, 0x07, 0xa5, 0x77, 0x6f, - 0x87, 0x80, 0x8f, 0xc2, 0xc6, 0x97, 0x53, 0x30, 0x8c, 0x48, 0xaa, 0xc2, 0xd7, 0x5e, 0x52, 0x41, - 0x57, 0x60, 0x58, 0x64, 0x85, 0x61, 0x86, 0xd6, 0x7c, 0x33, 0x31, 0xa3, 0x97, 0x72, 0x5c, 0x8c, - 0x75, 0x1c, 0xfb, 0x07, 0x0a, 0x30, 0x95, 0xe1, 0x29, 0xc3, 0xaf, 0x91, 0x6d, 0x37, 0x8c, 0x54, - 0xea, 0x51, 0xed, 0x1a, 0xe1, 0xe5, 0x58, 0x61, 0xd0, 0xb3, 0x8a, 0x5f, 0x54, 0xc9, 0xcb, 0x49, - 0x58, 0xa2, 0x0b, 0xe8, 0x11, 0x93, 0x78, 0x5e, 0x80, 0xbe, 0x76, 0x48, 0x64, 0xa8, 0x56, 0x75, - 0x6d, 0x33, 0xb5, 0x26, 0x83, 0xd0, 0x67, 0xd4, 0xb6, 0xd2, 0x10, 0x6a, 0xcf, 0x28, 0xae, 0x23, - 0xe4, 0x30, 0xda, 0xb9, 0x88, 0x78, 0x8e, 0x17, 0x89, 0xc7, 0x56, 0x1c, 0x73, 0x90, 0x95, 0x62, - 0x01, 0xb5, 0xbf, 0x50, 0x84, 0xb3, 0xb9, 0xbe, 0x73, 0xb4, 0xeb, 0x4d, 0xdf, 0x73, 0x23, 0x5f, - 0x59, 0x13, 0xf1, 0x38, 0x83, 0xa4, 0xb5, 0xb3, 0x26, 0xca, 0xb1, 0xc2, 0x40, 0x97, 0xa0, 0x9f, - 0x09, 0x45, 0x53, 0x49, 0x58, 0x17, 0xcb, 0x3c, 0xf0, 0x14, 0x07, 0xf7, 0x9c, 0x37, 0xfb, 0x22, - 0xe5, 0x60, 0xfc, 0x46, 0xf2, 0x42, 0xa1, 0xdd, 0xf5, 0xfd, 0x06, 0x66, 0x40, 0xf4, 0x3e, 0x31, - 0x5e, 0x09, 0xf3, 0x19, 0xec, 0xd4, 0xfd, 0x50, 0x1b, 0xb4, 0xa7, 0x61, 0x70, 0x97, 0xec, 0x07, - 0xae, 0xb7, 0x9d, 0x34, 0xab, 0xba, 0xce, 0x8b, 0xb1, 0x84, 0x9b, 0x59, 0x03, 0x07, 0x8f, 0x3b, - 0xe1, 0xf5, 0x50, 0x57, 0xf6, 0xe4, 0x87, 0x8a, 0x30, 0x8e, 0x17, 0xcb, 0xef, 0x4e, 0xc4, 0xad, - 0xf4, 0x44, 0x1c, 0x77, 0xc2, 0xeb, 0xee, 0xb3, 0xf1, 0x73, 0x16, 0x8c, 0xb3, 0xdc, 0x34, 0xc2, - 0x43, 0xde, 0xf5, 0xbd, 0x13, 0x78, 0x0a, 0x5c, 0x84, 0xfe, 0x80, 0x36, 0x9a, 0xcc, 0xbe, 0xca, - 0x7a, 0x82, 0x39, 0x0c, 0x3d, 0x01, 0x7d, 0xac, 0x0b, 0x74, 0xf2, 0x46, 0xf8, 0x11, 0x5c, 0x76, - 0x22, 0x07, 0xb3, 0x52, 0x16, 0x76, 0x09, 0x93, 0x56, 0xc3, 0xe5, 0x9d, 0x8e, 0x55, 0xd6, 0xef, - 0x0c, 0xaf, 0xfa, 0xcc, 0xae, 0xbd, 0xbd, 0xb0, 0x4b, 0xd9, 0x24, 0x3b, 0x3f, 0xb3, 0xff, 0xb0, - 0x00, 0xe7, 0x33, 0xeb, 0xf5, 0x1c, 0x76, 0xa9, 0x73, 0xed, 0x47, 0x99, 0x7d, 0xa4, 0x78, 0x82, - 0x46, 0xab, 0x7d, 0xbd, 0x72, 0xff, 0xfd, 0x3d, 0x44, 0x43, 0xca, 0x1c, 0xb2, 0x77, 0x48, 0x34, - 0xa4, 0xcc, 0xbe, 0xe5, 0x88, 0x09, 0xfe, 0xac, 0x90, 0xf3, 0x2d, 0x4c, 0x60, 0x70, 0x99, 0x9e, - 0x33, 0x0c, 0x18, 0xca, 0x47, 0x38, 0x3f, 0x63, 0x78, 0x19, 0x56, 0x50, 0xb4, 0x00, 0xe3, 0x4d, - 0xd7, 0xa3, 0x87, 0xcf, 0xbe, 0xc9, 0x8a, 0xab, 0x60, 0x75, 0x6b, 0x26, 0x18, 0x27, 0xf1, 0x91, - 0xab, 0x45, 0x4a, 0xe2, 0x5f, 0xf7, 0xea, 0x91, 0x76, 0xdd, 0x9c, 0xa9, 0xce, 0x57, 0xa3, 0x98, - 0x11, 0x35, 0x69, 0x4d, 0x93, 0x13, 0x15, 0x7b, 0x97, 0x13, 0x8d, 0x64, 0xcb, 0x88, 0x66, 0x5e, - 0x85, 0xd1, 0x87, 0x56, 0x0c, 0xd8, 0x5f, 0x2b, 0xc2, 0xe3, 0x1d, 0xb6, 0x3d, 0x3f, 0xeb, 0x8d, - 0x39, 0xd0, 0xce, 0xfa, 0xd4, 0x3c, 0x54, 0xe0, 0xd4, 0x56, 0xbb, 0xd1, 0xd8, 0x67, 0xbe, 0x1c, - 0xa4, 0x2e, 0x31, 0x04, 0x4f, 0x29, 0x85, 0x23, 0xa7, 0x56, 0x32, 0x70, 0x70, 0x66, 0x4d, 0xfa, - 0xc4, 0xa2, 0x37, 0xc9, 0xbe, 0x22, 0x95, 0x78, 0x62, 0x61, 0x1d, 0x88, 0x4d, 0x5c, 0x74, 0x15, - 0x26, 0x9d, 0x3d, 0xc7, 0xe5, 0xe1, 0xa6, 0x25, 0x01, 0xfe, 0xc6, 0x52, 0xf2, 0xdc, 0x85, 0x24, - 0x02, 0x4e, 0xd7, 0x41, 0xaf, 0x03, 0xf2, 0x37, 0x99, 0xc5, 0x77, 0xfd, 0x2a, 0xf1, 0x84, 0xd6, - 0x95, 0xcd, 0x5d, 0x31, 0x3e, 0x12, 0x6e, 0xa6, 0x30, 0x70, 0x46, 0xad, 0x44, 0x44, 0xa0, 0x81, - 0xfc, 0x88, 0x40, 0x9d, 0xcf, 0xc5, 0xae, 0x89, 0x6f, 0xfe, 0x93, 0x45, 0xaf, 0x2f, 0xce, 0xe4, - 0x9b, 0x01, 0x34, 0x5f, 0x65, 0x56, 0x93, 0x5c, 0xd6, 0xab, 0xc5, 0x4f, 0x39, 0xad, 0x59, 0x4d, - 0xc6, 0x40, 0x6c, 0xe2, 0xf2, 0x05, 0x11, 0xc6, 0x6e, 0xbb, 0x06, 0x8b, 0x2f, 0xa2, 0x7c, 0x29, - 0x0c, 0xf4, 0x71, 0x18, 0xac, 0xbb, 0x7b, 0x6e, 0x28, 0x24, 0x5d, 0x47, 0x56, 0x2b, 0xc5, 0xe7, - 0x60, 0x99, 0x93, 0xc1, 0x92, 0x9e, 0xfd, 0x43, 0x05, 0x18, 0x95, 0x2d, 0xbe, 0xd1, 0xf6, 0x23, - 0xe7, 0x04, 0xae, 0xe5, 0xab, 0xc6, 0xb5, 0xfc, 0xbe, 0x4e, 0xa1, 0xce, 0x58, 0x97, 0x72, 0xaf, - 0xe3, 0x9b, 0x89, 0xeb, 0xf8, 0xa9, 0xee, 0xa4, 0x3a, 0x5f, 0xc3, 0xff, 0xc4, 0x82, 0x49, 0x03, - 0xff, 0x04, 0x6e, 0x83, 0x15, 0xf3, 0x36, 0x78, 0xb2, 0xeb, 0x37, 0xe4, 0xdc, 0x02, 0xdf, 0x5b, - 0x4c, 0xf4, 0x9d, 0x9d, 0xfe, 0x6f, 0x41, 0xdf, 0x8e, 0x13, 0xd4, 0x3b, 0xa5, 0x76, 0x48, 0x55, - 0x9a, 0xbb, 0xe6, 0x04, 0x42, 0xed, 0xfc, 0xac, 0x1c, 0x75, 0x5a, 0xd4, 0x55, 0xe5, 0xcc, 0x9a, - 0x42, 0x2f, 0xc3, 0x40, 0x58, 0xf3, 0x5b, 0xca, 0x93, 0xe3, 0x02, 0x1b, 0x68, 0x56, 0x72, 0x78, - 0x30, 0x8b, 0xcc, 0xe6, 0x68, 0x31, 0x16, 0xf8, 0xe8, 0x13, 0x30, 0xca, 0x7e, 0x29, 0x1b, 0xb0, - 0x62, 0xbe, 0x38, 0xa2, 0xaa, 0x23, 0x72, 0x03, 0x49, 0xa3, 0x08, 0x9b, 0xa4, 0x66, 0xb6, 0xa1, - 0xa4, 0x3e, 0xeb, 0x91, 0xea, 0x6d, 0xff, 0x43, 0x11, 0xa6, 0x32, 0xd6, 0x1c, 0x0a, 0x8d, 0x99, - 0xb8, 0xd2, 0xe3, 0x52, 0x7d, 0x9b, 0x73, 0x11, 0xb2, 0xd7, 0x50, 0x5d, 0xac, 0xad, 0x9e, 0x1b, - 0xbd, 0x15, 0x92, 0x64, 0xa3, 0xb4, 0xa8, 0x7b, 0xa3, 0xb4, 0xb1, 0x13, 0x1b, 0x6a, 0xda, 0x90, - 0xea, 0xe9, 0x23, 0x9d, 0xd3, 0x3f, 0x29, 0xc2, 0xa9, 0xac, 0xe8, 0x8b, 0xe8, 0xb3, 0x89, 0xc4, - 0xa2, 0x2f, 0xf6, 0x1a, 0xb7, 0x91, 0x67, 0x1b, 0x15, 0x01, 0xe1, 0xe6, 0xcc, 0x54, 0xa3, 0x5d, - 0x87, 0x59, 0xb4, 0xc9, 0x42, 0x52, 0x04, 0x3c, 0x21, 0xac, 0x3c, 0x3e, 0x3e, 0xd8, 0x73, 0x07, - 0x44, 0x26, 0xd9, 0x30, 0x61, 0x5f, 0x22, 0x8b, 0xbb, 0xdb, 0x97, 0xc8, 0x96, 0x67, 0x5c, 0x18, - 0xd6, 0xbe, 0xe6, 0x91, 0xce, 0xf8, 0x2e, 0xbd, 0xad, 0xb4, 0x7e, 0x3f, 0xd2, 0x59, 0xff, 0x51, - 0x0b, 0x12, 0x2e, 0x07, 0x4a, 0x2c, 0x66, 0xe5, 0x8a, 0xc5, 0x2e, 0x40, 0x5f, 0xe0, 0x37, 0x48, - 0x32, 0x03, 0x27, 0xf6, 0x1b, 0x04, 0x33, 0x08, 0xc5, 0x88, 0x62, 0x61, 0xc7, 0x88, 0xfe, 0x90, - 0x13, 0x4f, 0xb4, 0x8b, 0xd0, 0xdf, 0x20, 0x7b, 0xa4, 0x91, 0x4c, 0x94, 0x74, 0x83, 0x16, 0x62, - 0x0e, 0xb3, 0x7f, 0xae, 0x0f, 0xce, 0x75, 0x0c, 0xea, 0x42, 0x9f, 0x43, 0xdb, 0x4e, 0x44, 0xee, - 0x3a, 0xfb, 0xc9, 0x8c, 0x26, 0x57, 0x79, 0x31, 0x96, 0x70, 0xe6, 0x49, 0xc6, 0x03, 0x93, 0x27, - 0x84, 0x88, 0x22, 0x1e, 0xb9, 0x80, 0x9a, 0x42, 0xa9, 0xe2, 0x71, 0x08, 0xa5, 0x9e, 0x07, 0x08, - 0xc3, 0x06, 0x37, 0xcc, 0xaa, 0x0b, 0x17, 0xb5, 0x38, 0x80, 0x7d, 0xf5, 0x86, 0x80, 0x60, 0x0d, - 0x0b, 0x95, 0x61, 0xa2, 0x15, 0xf8, 0x11, 0x97, 0xc9, 0x96, 0xb9, 0xed, 0x62, 0xbf, 0x19, 0x4f, - 0xa3, 0x92, 0x80, 0xe3, 0x54, 0x0d, 0xf4, 0x12, 0x0c, 0x8b, 0x18, 0x1b, 0x15, 0xdf, 0x6f, 0x08, - 0x31, 0x90, 0x32, 0xe7, 0xab, 0xc6, 0x20, 0xac, 0xe3, 0x69, 0xd5, 0x98, 0xa0, 0x77, 0x30, 0xb3, - 0x1a, 0x17, 0xf6, 0x6a, 0x78, 0x89, 0x48, 0xac, 0x43, 0x3d, 0x45, 0x62, 0x8d, 0x05, 0x63, 0xa5, - 0x9e, 0xf5, 0x8e, 0xd0, 0x55, 0x94, 0xf4, 0x33, 0x7d, 0x30, 0x25, 0x16, 0xce, 0xa3, 0x5e, 0x2e, - 0xb7, 0xd2, 0xcb, 0xe5, 0x38, 0x44, 0x67, 0xef, 0xae, 0x99, 0x93, 0x5e, 0x33, 0x3f, 0x6c, 0x81, - 0xc9, 0x5e, 0xa1, 0x3f, 0x97, 0x9b, 0x12, 0xea, 0xa5, 0x5c, 0x76, 0x4d, 0x45, 0xf5, 0x7c, 0x9b, - 0xc9, 0xa1, 0xec, 0xff, 0x68, 0xc1, 0x93, 0x5d, 0x29, 0xa2, 0x65, 0x28, 0x31, 0x1e, 0x50, 0x7b, - 0x9d, 0x3d, 0xa5, 0x6c, 0x9b, 0x25, 0x20, 0x87, 0x25, 0x8d, 0x6b, 0xa2, 0xe5, 0x54, 0xee, 0xad, - 0xa7, 0x33, 0x72, 0x6f, 0x9d, 0x36, 0x86, 0xe7, 0x21, 0x93, 0x6f, 0xfd, 0x20, 0xbd, 0x71, 0x0c, - 0xbf, 0x22, 0xf4, 0x41, 0x43, 0xec, 0x67, 0x27, 0xc4, 0x7e, 0xc8, 0xc4, 0xd6, 0xee, 0x90, 0x8f, - 0xc2, 0x04, 0x0b, 0xbe, 0xc5, 0x2c, 0xed, 0x85, 0xc7, 0x53, 0x21, 0xb6, 0xa6, 0xbd, 0x91, 0x80, - 0xe1, 0x14, 0xb6, 0xfd, 0x07, 0x45, 0x18, 0xe0, 0xdb, 0xef, 0x04, 0xde, 0x84, 0xcf, 0x40, 0xc9, - 0x6d, 0x36, 0xdb, 0x3c, 0x9d, 0x52, 0x3f, 0xf7, 0x8d, 0xa6, 0xf3, 0xb4, 0x2a, 0x0b, 0x71, 0x0c, - 0x47, 0x2b, 0x42, 0xe2, 0xdc, 0x21, 0xbe, 0x27, 0xef, 0xf8, 0x5c, 0xd9, 0x89, 0x1c, 0xce, 0xe0, - 0xa8, 0x7b, 0x36, 0x96, 0x4d, 0xa3, 0x4f, 0x01, 0x84, 0x51, 0xe0, 0x7a, 0xdb, 0xb4, 0x4c, 0x84, - 0x15, 0x7e, 0x7f, 0x07, 0x6a, 0x55, 0x85, 0xcc, 0x69, 0xc6, 0x67, 0x8e, 0x02, 0x60, 0x8d, 0x22, - 0x9a, 0x33, 0x6e, 0xfa, 0x99, 0xc4, 0xdc, 0x01, 0xa7, 0x1a, 0xcf, 0xd9, 0xcc, 0x87, 0xa0, 0xa4, - 0x88, 0x77, 0x93, 0x3f, 0x8d, 0xe8, 0x6c, 0xd1, 0x47, 0x60, 0x3c, 0xd1, 0xb7, 0x23, 0x89, 0xaf, - 0x7e, 0xde, 0x82, 0x71, 0xde, 0x99, 0x65, 0x6f, 0x4f, 0xdc, 0x06, 0xf7, 0xe1, 0x54, 0x23, 0xe3, - 0x54, 0x16, 0xd3, 0xdf, 0xfb, 0x29, 0xae, 0xc4, 0x55, 0x59, 0x50, 0x9c, 0xd9, 0x06, 0xba, 0x4c, - 0x77, 0x1c, 0x3d, 0x75, 0x9d, 0x86, 0x70, 0x95, 0x1e, 0xe1, 0xbb, 0x8d, 0x97, 0x61, 0x05, 0xb5, - 0x7f, 0xdb, 0x82, 0x49, 0xde, 0xf3, 0xeb, 0x64, 0x5f, 0x9d, 0x4d, 0xdf, 0xc8, 0xbe, 0x8b, 0x44, - 0x7e, 0x85, 0x9c, 0x44, 0x7e, 0xfa, 0xa7, 0x15, 0x3b, 0x7e, 0xda, 0x97, 0x2d, 0x10, 0x2b, 0xe4, - 0x04, 0x84, 0x10, 0xdf, 0x6e, 0x0a, 0x21, 0x66, 0xf2, 0x37, 0x41, 0x8e, 0xf4, 0xe1, 0x4f, 0x2d, - 0x98, 0xe0, 0x08, 0xb1, 0xb6, 0xfc, 0x1b, 0x3a, 0x0f, 0xbd, 0xa4, 0xfb, 0xbe, 0x4e, 0xf6, 0x37, - 0xfc, 0x8a, 0x13, 0xed, 0x64, 0x7f, 0x94, 0x31, 0x59, 0x7d, 0x1d, 0x27, 0xab, 0x2e, 0x37, 0x90, - 0x91, 0xe7, 0xa6, 0x4b, 0xfc, 0x88, 0xa3, 0xe6, 0xb9, 0xb1, 0xbf, 0x6e, 0x01, 0xe2, 0xcd, 0x18, - 0x8c, 0x1b, 0x65, 0x87, 0x58, 0xa9, 0x76, 0xd1, 0xc5, 0x47, 0x93, 0x82, 0x60, 0x0d, 0xeb, 0x58, - 0x86, 0x27, 0x61, 0xf2, 0x50, 0xec, 0x6e, 0xf2, 0x70, 0x84, 0x11, 0xfd, 0xb7, 0x03, 0x90, 0xf4, - 0xad, 0x42, 0xb7, 0x61, 0xa4, 0xe6, 0xb4, 0x9c, 0x4d, 0xb7, 0xe1, 0x46, 0x2e, 0x09, 0x3b, 0xd9, - 0x43, 0x2d, 0x69, 0x78, 0x42, 0x49, 0xad, 0x95, 0x60, 0x83, 0x0e, 0x9a, 0x03, 0x68, 0x05, 0xee, - 0x9e, 0xdb, 0x20, 0xdb, 0x4c, 0x56, 0xc2, 0x82, 0x33, 0x70, 0xe3, 0x2c, 0x59, 0x8a, 0x35, 0x8c, - 0x0c, 0x47, 0xf6, 0xe2, 0x23, 0x76, 0x64, 0x87, 0x13, 0x73, 0x64, 0xef, 0x3b, 0x92, 0x23, 0xfb, - 0xd0, 0x91, 0x1d, 0xd9, 0xfb, 0x7b, 0x72, 0x64, 0xc7, 0x70, 0x46, 0xf2, 0x9e, 0xf4, 0xff, 0x8a, - 0xdb, 0x20, 0xe2, 0xc1, 0xc1, 0x23, 0x4a, 0xcc, 0x3c, 0x38, 0x98, 0x3d, 0x83, 0x33, 0x31, 0x70, - 0x4e, 0x4d, 0xf4, 0x31, 0x98, 0x76, 0x1a, 0x0d, 0xff, 0xae, 0x9a, 0xd4, 0xe5, 0xb0, 0xe6, 0x34, - 0xb8, 0x12, 0x62, 0x90, 0x51, 0x7d, 0xe2, 0xc1, 0xc1, 0xec, 0xf4, 0x42, 0x0e, 0x0e, 0xce, 0xad, - 0x8d, 0x3e, 0x0c, 0xa5, 0x56, 0xe0, 0xd7, 0xd6, 0x34, 0x07, 0xd0, 0xf3, 0x74, 0x00, 0x2b, 0xb2, - 0xf0, 0xf0, 0x60, 0x76, 0x54, 0xfd, 0x61, 0x17, 0x7e, 0x5c, 0x21, 0xc3, 0x33, 0x7d, 0xf8, 0x58, - 0x3d, 0xd3, 0x77, 0x61, 0xaa, 0x4a, 0x02, 0xd7, 0x69, 0xb8, 0xf7, 0x29, 0xbf, 0x2c, 0xcf, 0xa7, - 0x0d, 0x28, 0x05, 0x89, 0x13, 0xb9, 0xa7, 0x98, 0x9b, 0x5a, 0xc2, 0x11, 0x79, 0x02, 0xc7, 0x84, - 0xec, 0xff, 0x6d, 0xc1, 0xa0, 0xf0, 0xa5, 0x3a, 0x01, 0xae, 0x71, 0xc1, 0xd0, 0x24, 0xcc, 0x66, - 0x0f, 0x18, 0xeb, 0x4c, 0xae, 0x0e, 0x61, 0x35, 0xa1, 0x43, 0x78, 0xb2, 0x13, 0x91, 0xce, 0xda, - 0x83, 0xbf, 0x5e, 0xa4, 0xdc, 0xbb, 0xe1, 0xd5, 0xfb, 0xe8, 0x87, 0x60, 0x1d, 0x06, 0x43, 0xe1, - 0x55, 0x5a, 0xc8, 0xf7, 0x69, 0x48, 0x4e, 0x62, 0x6c, 0xc7, 0x26, 0xfc, 0x48, 0x25, 0x91, 0x4c, - 0x77, 0xd5, 0xe2, 0x23, 0x74, 0x57, 0xed, 0xe6, 0xf7, 0xdc, 0x77, 0x1c, 0x7e, 0xcf, 0xf6, 0x57, - 0xd9, 0xcd, 0xa9, 0x97, 0x9f, 0x00, 0x53, 0x75, 0xd5, 0xbc, 0x63, 0xed, 0x0e, 0x2b, 0x4b, 0x74, - 0x2a, 0x87, 0xb9, 0xfa, 0x59, 0x0b, 0xce, 0x65, 0x7c, 0x95, 0xc6, 0x69, 0x3d, 0x0b, 0x43, 0x4e, - 0xbb, 0xee, 0xaa, 0xbd, 0xac, 0xe9, 0x13, 0x17, 0x44, 0x39, 0x56, 0x18, 0x68, 0x09, 0x26, 0xc9, - 0xbd, 0x96, 0xcb, 0x55, 0xa9, 0xba, 0xf9, 0x6f, 0x91, 0x3b, 0xe0, 0x2d, 0x27, 0x81, 0x38, 0x8d, - 0xaf, 0x62, 0xcd, 0x14, 0x73, 0x63, 0xcd, 0xfc, 0x3d, 0x0b, 0x86, 0x95, 0x5f, 0xe5, 0x23, 0x1f, - 0xed, 0x8f, 0x9a, 0xa3, 0xfd, 0x78, 0x87, 0xd1, 0xce, 0x19, 0xe6, 0xdf, 0x2c, 0xa8, 0xfe, 0x56, - 0xfc, 0x20, 0xea, 0x81, 0x83, 0x7b, 0x78, 0xd7, 0x85, 0x2b, 0x30, 0xec, 0xb4, 0x5a, 0x12, 0x20, - 0x6d, 0xd0, 0x58, 0x04, 0xe5, 0xb8, 0x18, 0xeb, 0x38, 0xca, 0x93, 0xa2, 0x98, 0xeb, 0x49, 0x51, - 0x07, 0x88, 0x9c, 0x60, 0x9b, 0x44, 0xb4, 0x4c, 0x98, 0xcc, 0xe6, 0x9f, 0x37, 0xed, 0xc8, 0x6d, - 0xcc, 0xb9, 0x5e, 0x14, 0x46, 0xc1, 0xdc, 0xaa, 0x17, 0xdd, 0x0c, 0xf8, 0x13, 0x52, 0x8b, 0xd6, - 0xa4, 0x68, 0x61, 0x8d, 0xae, 0x8c, 0x21, 0xc0, 0xda, 0xe8, 0x37, 0x8d, 0x19, 0xd6, 0x45, 0x39, - 0x56, 0x18, 0xf6, 0x87, 0xd8, 0xed, 0xc3, 0xc6, 0xf4, 0x68, 0x91, 0x8a, 0xfe, 0xc1, 0x88, 0x9a, - 0x0d, 0xa6, 0xc9, 0x2c, 0xeb, 0xf1, 0x90, 0x3a, 0x1f, 0xf6, 0xb4, 0x61, 0xdd, 0xaf, 0x2f, 0x0e, - 0x9a, 0x84, 0xbe, 0x23, 0x65, 0xa0, 0xf2, 0x5c, 0x97, 0x5b, 0xe3, 0x08, 0x26, 0x29, 0x2c, 0x9d, - 0x0a, 0x4b, 0x36, 0xb1, 0x5a, 0x11, 0xfb, 0x42, 0x4b, 0xa7, 0x22, 0x00, 0x38, 0xc6, 0xa1, 0xcc, - 0x94, 0xfa, 0x13, 0x4e, 0xa3, 0x38, 0xac, 0xa8, 0xc2, 0x0e, 0xb1, 0x86, 0x81, 0xe6, 0x85, 0x40, - 0x81, 0xeb, 0x05, 0x1e, 0x4f, 0x08, 0x14, 0xe4, 0x70, 0x69, 0x52, 0xa0, 0x2b, 0x30, 0xac, 0x32, - 0x68, 0x57, 0x78, 0x22, 0x23, 0xb1, 0xcc, 0x96, 0xe3, 0x62, 0xac, 0xe3, 0xa0, 0x0d, 0x18, 0x0f, - 0xb9, 0x9c, 0x4d, 0xc5, 0x7a, 0xe6, 0xf2, 0xca, 0xf7, 0x4b, 0x2b, 0xa0, 0xaa, 0x09, 0x3e, 0x64, - 0x45, 0xfc, 0x74, 0x92, 0x7e, 0xfe, 0x49, 0x12, 0xe8, 0x35, 0x18, 0x6b, 0xf8, 0x4e, 0x7d, 0xd1, - 0x69, 0x38, 0x5e, 0x8d, 0x8d, 0xcf, 0x90, 0x99, 0x88, 0xf5, 0x86, 0x01, 0xc5, 0x09, 0x6c, 0xca, - 0xbc, 0xe9, 0x25, 0x22, 0x3e, 0xb9, 0xe3, 0x6d, 0x93, 0x50, 0xe4, 0x43, 0x66, 0xcc, 0xdb, 0x8d, - 0x1c, 0x1c, 0x9c, 0x5b, 0x1b, 0xbd, 0x0c, 0x23, 0xf2, 0xf3, 0xb5, 0xb0, 0x18, 0xb1, 0x53, 0x8a, - 0x06, 0xc3, 0x06, 0x26, 0xba, 0x0b, 0xa7, 0xe5, 0xff, 0x8d, 0xc0, 0xd9, 0xda, 0x72, 0x6b, 0xc2, - 0x57, 0x9c, 0x7b, 0xaf, 0x2e, 0x48, 0x17, 0xcb, 0xe5, 0x2c, 0xa4, 0xc3, 0x83, 0xd9, 0x0b, 0x62, - 0xd4, 0x32, 0xe1, 0x6c, 0x12, 0xb3, 0xe9, 0xa3, 0x35, 0x98, 0xda, 0x21, 0x4e, 0x23, 0xda, 0x59, - 0xda, 0x21, 0xb5, 0x5d, 0xb9, 0xe9, 0x58, 0xb0, 0x0d, 0xcd, 0x81, 0xe3, 0x5a, 0x1a, 0x05, 0x67, - 0xd5, 0x43, 0x6f, 0xc2, 0x74, 0xab, 0xbd, 0xd9, 0x70, 0xc3, 0x9d, 0x75, 0x3f, 0x62, 0xa6, 0x40, - 0x2a, 0x21, 0xb7, 0x88, 0xca, 0xa1, 0xc2, 0x99, 0x54, 0x72, 0xf0, 0x70, 0x2e, 0x05, 0x74, 0x1f, - 0x4e, 0x27, 0x16, 0x83, 0x88, 0x4b, 0x30, 0x96, 0x9f, 0xed, 0xa1, 0x9a, 0x55, 0x41, 0x84, 0xf8, - 0xc8, 0x02, 0xe1, 0xec, 0x26, 0xd0, 0x2b, 0x00, 0x6e, 0x6b, 0xc5, 0x69, 0xba, 0x0d, 0xfa, 0x5c, - 0x9c, 0x62, 0xeb, 0x84, 0x3e, 0x1d, 0x60, 0xb5, 0x22, 0x4b, 0xe9, 0xf9, 0x2c, 0xfe, 0xed, 0x63, - 0x0d, 0x1b, 0x55, 0x60, 0x4c, 0xfc, 0xdb, 0x17, 0xd3, 0x3a, 0xa9, 0x42, 0x00, 0x8c, 0xc9, 0x1a, - 0x6a, 0x2e, 0x91, 0x59, 0xc2, 0x66, 0x2f, 0x51, 0x1f, 0x6d, 0xc3, 0x39, 0x99, 0xbd, 0x4b, 0x5f, - 0xa7, 0x72, 0x1e, 0x42, 0x96, 0x66, 0x61, 0x88, 0xfb, 0x87, 0x2c, 0x74, 0x42, 0xc4, 0x9d, 0xe9, - 0xd0, 0xfb, 0x5d, 0x5f, 0xee, 0xdc, 0x83, 0xf6, 0x34, 0x37, 0x4f, 0xa2, 0xf7, 0xfb, 0x8d, 0x24, - 0x10, 0xa7, 0xf1, 0x51, 0x08, 0xa7, 0x5d, 0x2f, 0x6b, 0x75, 0x9f, 0x61, 0x84, 0x3e, 0xc2, 0x9d, - 0x87, 0x3b, 0xaf, 0xec, 0x4c, 0x38, 0x5f, 0xd9, 0x99, 0xb4, 0xdf, 0x9e, 0x15, 0xde, 0x6f, 0x59, - 0xb4, 0xb6, 0xc6, 0xa9, 0xa3, 0x4f, 0xc3, 0x88, 0xfe, 0x61, 0x82, 0xeb, 0xb8, 0x94, 0xcd, 0xc8, - 0x6a, 0xe7, 0x03, 0xe7, 0xf3, 0xd5, 0x19, 0xa0, 0xc3, 0xb0, 0x41, 0x11, 0xd5, 0x32, 0xdc, 0xec, - 0xe7, 0x7b, 0xe3, 0x6a, 0x7a, 0x37, 0x42, 0x23, 0x90, 0xbd, 0xec, 0xd1, 0x0d, 0x18, 0xaa, 0x35, - 0x5c, 0xe2, 0x45, 0xab, 0x95, 0x4e, 0xb1, 0xf4, 0x96, 0x04, 0x8e, 0xd8, 0x47, 0x22, 0x6b, 0x02, - 0x2f, 0xc3, 0x8a, 0x82, 0xfd, 0x2b, 0x05, 0x98, 0xed, 0x92, 0x82, 0x23, 0xa1, 0x92, 0xb2, 0x7a, - 0x52, 0x49, 0x2d, 0xc8, 0xac, 0xf3, 0xeb, 0x09, 0x69, 0x57, 0x22, 0xa3, 0x7c, 0x2c, 0xf3, 0x4a, - 0xe2, 0xf7, 0xec, 0x22, 0xa0, 0x6b, 0xb5, 0xfa, 0xba, 0x3a, 0xb9, 0x18, 0xda, 0xec, 0xfe, 0xde, - 0x9f, 0xc0, 0xb9, 0x9a, 0x49, 0xfb, 0xab, 0x05, 0x38, 0xad, 0x86, 0xf0, 0x5b, 0x77, 0xe0, 0x6e, - 0xa5, 0x07, 0xee, 0x18, 0xf4, 0xba, 0xf6, 0x4d, 0x18, 0xe0, 0xc1, 0x01, 0x7b, 0x60, 0xbd, 0x2f, - 0x9a, 0xc1, 0x77, 0x15, 0xb7, 0x67, 0x04, 0xe0, 0xfd, 0x7e, 0x0b, 0xc6, 0x13, 0xbe, 0x66, 0x08, - 0x6b, 0x0e, 0xc9, 0x0f, 0xc3, 0x1e, 0x67, 0x31, 0xde, 0x17, 0xa0, 0x6f, 0xc7, 0x0f, 0xa3, 0xa4, - 0xd1, 0xc7, 0x35, 0x3f, 0x8c, 0x30, 0x83, 0xd8, 0xbf, 0x63, 0x41, 0xff, 0x86, 0xe3, 0x7a, 0x91, - 0x54, 0x10, 0x58, 0x39, 0x0a, 0x82, 0x5e, 0xbe, 0x0b, 0xbd, 0x04, 0x03, 0x64, 0x6b, 0x8b, 0xd4, - 0x22, 0x31, 0xab, 0x32, 0x9a, 0xc3, 0xc0, 0x32, 0x2b, 0xa5, 0xbc, 0x20, 0x6b, 0x8c, 0xff, 0xc5, - 0x02, 0x19, 0xdd, 0x81, 0x52, 0xe4, 0x36, 0xc9, 0x42, 0xbd, 0x2e, 0xd4, 0xe6, 0x0f, 0x11, 0x91, - 0x62, 0x43, 0x12, 0xc0, 0x31, 0x2d, 0xfb, 0x0b, 0x05, 0x80, 0x38, 0xaa, 0x52, 0xb7, 0x4f, 0x5c, - 0x4c, 0x29, 0x54, 0x2f, 0x65, 0x28, 0x54, 0x51, 0x4c, 0x30, 0x43, 0x9b, 0xaa, 0x86, 0xa9, 0xd8, - 0xd3, 0x30, 0xf5, 0x1d, 0x65, 0x98, 0x96, 0x60, 0x32, 0x8e, 0x0a, 0x65, 0x06, 0xc5, 0x63, 0xd7, - 0xe7, 0x46, 0x12, 0x88, 0xd3, 0xf8, 0x36, 0x81, 0x0b, 0x2a, 0x38, 0x8e, 0xb8, 0xd1, 0x98, 0x55, - 0xb6, 0xae, 0xa0, 0xee, 0x32, 0x4e, 0xb1, 0xc6, 0xb8, 0x90, 0xab, 0x31, 0xfe, 0x09, 0x0b, 0x4e, - 0x25, 0xdb, 0x61, 0x2e, 0xcc, 0x9f, 0xb7, 0xe0, 0x34, 0xd3, 0x9b, 0xb3, 0x56, 0xd3, 0x5a, 0xfa, - 0x17, 0x3b, 0x06, 0xfc, 0xc9, 0xe9, 0x71, 0x1c, 0x36, 0x64, 0x2d, 0x8b, 0x34, 0xce, 0x6e, 0xd1, - 0xfe, 0x9e, 0x22, 0x4c, 0xe7, 0x45, 0x0a, 0x62, 0x4e, 0x1b, 0xce, 0xbd, 0xea, 0x2e, 0xb9, 0x2b, - 0x4c, 0xe3, 0x63, 0xa7, 0x0d, 0x5e, 0x8c, 0x25, 0x3c, 0x99, 0x55, 0xa1, 0xd0, 0x63, 0x56, 0x85, - 0x1d, 0x98, 0xbc, 0xbb, 0x43, 0xbc, 0x5b, 0x5e, 0xe8, 0x44, 0x6e, 0xb8, 0xe5, 0x32, 0x1d, 0x33, - 0x5f, 0x37, 0x32, 0x15, 0xeb, 0xe4, 0x9d, 0x24, 0xc2, 0xe1, 0xc1, 0xec, 0x39, 0xa3, 0x20, 0xee, - 0x32, 0x3f, 0x48, 0x70, 0x9a, 0x68, 0x3a, 0x29, 0x45, 0xdf, 0x23, 0x4e, 0x4a, 0xd1, 0x74, 0x85, - 0x65, 0x8a, 0xb4, 0xc8, 0x67, 0xaf, 0xc7, 0x35, 0x55, 0x8a, 0x35, 0x0c, 0xfb, 0xf3, 0x16, 0x9c, - 0xcd, 0xcd, 0x63, 0x8c, 0x2e, 0xc3, 0x90, 0xd3, 0x72, 0xb9, 0x58, 0x5f, 0x1c, 0xbb, 0x4c, 0x7c, - 0x54, 0x59, 0xe5, 0x42, 0x7d, 0x05, 0xa5, 0xa7, 0xdd, 0xae, 0xeb, 0xd5, 0x93, 0xa7, 0xdd, 0x75, - 0xd7, 0xab, 0x63, 0x06, 0x51, 0xc7, 0x77, 0x31, 0xef, 0xf8, 0xb6, 0xbf, 0xcf, 0x02, 0xe1, 0xa0, - 0xda, 0xc3, 0x59, 0xff, 0x09, 0x18, 0xd9, 0x4b, 0x27, 0xba, 0xba, 0x90, 0xef, 0xb1, 0x2b, 0xd2, - 0x5b, 0x29, 0x06, 0xce, 0x48, 0x6a, 0x65, 0xd0, 0xb2, 0xeb, 0x20, 0xa0, 0x65, 0xc2, 0x84, 0xd6, - 0xdd, 0x7b, 0xf3, 0x3c, 0x40, 0x9d, 0xe1, 0xb2, 0xec, 0x97, 0x05, 0xf3, 0x26, 0x2f, 0x2b, 0x08, - 0xd6, 0xb0, 0xec, 0x7f, 0x5f, 0x80, 0x61, 0x99, 0x58, 0xa9, 0xed, 0xf5, 0x22, 0x5a, 0x3a, 0x52, - 0xa6, 0x55, 0x34, 0x0f, 0x25, 0x26, 0xfb, 0xac, 0xc4, 0x12, 0x39, 0x25, 0x79, 0x58, 0x93, 0x00, - 0x1c, 0xe3, 0xd0, 0x5d, 0x17, 0xb6, 0x37, 0x19, 0x7a, 0xc2, 0x9d, 0xb2, 0xca, 0x8b, 0xb1, 0x84, - 0xa3, 0x8f, 0xc1, 0x04, 0xaf, 0x17, 0xf8, 0x2d, 0x67, 0x9b, 0xeb, 0x4b, 0xfa, 0x55, 0x8c, 0x8a, - 0x89, 0xb5, 0x04, 0xec, 0xf0, 0x60, 0xf6, 0x54, 0xb2, 0x8c, 0x29, 0x02, 0x53, 0x54, 0x98, 0x59, - 0x14, 0x6f, 0x84, 0x9e, 0x16, 0x29, 0x6b, 0xaa, 0x18, 0x84, 0x75, 0x3c, 0xfb, 0xd3, 0x80, 0xd2, - 0x29, 0xa6, 0xd0, 0xeb, 0xdc, 0x16, 0xd6, 0x0d, 0x48, 0xbd, 0x93, 0x62, 0x50, 0x8f, 0xc4, 0x20, - 0x3d, 0xa1, 0x78, 0x2d, 0xac, 0xea, 0xdb, 0x7f, 0xa9, 0x08, 0x13, 0x49, 0xdf, 0x6f, 0x74, 0x0d, - 0x06, 0x38, 0xab, 0x22, 0xc8, 0x77, 0xb0, 0x3b, 0xd1, 0x3c, 0xc6, 0xd9, 0xa1, 0x2d, 0xb8, 0x1d, - 0x51, 0x1f, 0xbd, 0x09, 0xc3, 0x75, 0xff, 0xae, 0x77, 0xd7, 0x09, 0xea, 0x0b, 0x95, 0x55, 0xb1, - 0x9c, 0x33, 0x1f, 0xc2, 0xe5, 0x18, 0x4d, 0xf7, 0x42, 0x67, 0x3a, 0xd6, 0x18, 0x84, 0x75, 0x72, - 0x68, 0x83, 0xc5, 0xa5, 0xdf, 0x72, 0xb7, 0xd7, 0x9c, 0x56, 0x27, 0xc7, 0x88, 0x25, 0x89, 0xa4, - 0x51, 0x1e, 0x15, 0xc1, 0xeb, 0x39, 0x00, 0xc7, 0x84, 0xd0, 0x67, 0x61, 0x2a, 0xcc, 0x11, 0xcf, - 0xe7, 0x65, 0x1c, 0xec, 0x24, 0xb1, 0x5e, 0x7c, 0xec, 0xc1, 0xc1, 0xec, 0x54, 0x96, 0x20, 0x3f, - 0xab, 0x19, 0xfb, 0x8b, 0xa7, 0xc0, 0xd8, 0xc4, 0x46, 0x02, 0x5a, 0xeb, 0x98, 0x12, 0xd0, 0x62, - 0x18, 0x22, 0xcd, 0x56, 0xb4, 0x5f, 0x76, 0x83, 0x4e, 0x69, 0xf8, 0x97, 0x05, 0x4e, 0x9a, 0xa6, - 0x84, 0x60, 0x45, 0x27, 0x3b, 0x4b, 0x70, 0xf1, 0x1b, 0x98, 0x25, 0xb8, 0xef, 0x04, 0xb3, 0x04, - 0xaf, 0xc3, 0xe0, 0xb6, 0x1b, 0x61, 0xd2, 0xf2, 0xc5, 0x23, 0x21, 0x73, 0x1d, 0x5e, 0xe5, 0x28, - 0xe9, 0x7c, 0x94, 0x02, 0x80, 0x25, 0x11, 0xf4, 0xba, 0xda, 0x81, 0x03, 0xf9, 0x0f, 0xf9, 0xb4, - 0x81, 0x44, 0xe6, 0x1e, 0x14, 0xb9, 0x80, 0x07, 0x1f, 0x36, 0x17, 0xf0, 0x8a, 0xcc, 0xe0, 0x3b, - 0x94, 0xef, 0xc5, 0xc4, 0x12, 0xf4, 0x76, 0xc9, 0xdb, 0x7b, 0x5b, 0xcf, 0x7a, 0x5c, 0xca, 0x3f, - 0x09, 0x54, 0x42, 0xe3, 0x1e, 0x73, 0x1d, 0x7f, 0x9f, 0x05, 0xa7, 0x5b, 0x59, 0x09, 0xc0, 0x85, - 0x2d, 0xc1, 0x4b, 0x3d, 0xe7, 0x18, 0x37, 0x1a, 0x64, 0x32, 0xb8, 0xec, 0x2c, 0xf2, 0xd9, 0xcd, - 0xd1, 0x81, 0x0e, 0x36, 0xeb, 0x42, 0xa7, 0x7d, 0x31, 0x27, 0x69, 0x72, 0x87, 0x54, 0xc9, 0x1b, - 0x19, 0x09, 0x7a, 0xdf, 0x9b, 0x97, 0xa0, 0xb7, 0xe7, 0xb4, 0xbc, 0xaf, 0xab, 0x74, 0xc9, 0xa3, - 0xf9, 0x4b, 0x89, 0x27, 0x43, 0xee, 0x9a, 0x24, 0xf9, 0x75, 0x95, 0x24, 0xb9, 0x43, 0xfc, 0x60, - 0x9e, 0x02, 0xb9, 0x6b, 0x6a, 0x64, 0x2d, 0xbd, 0xf1, 0xf8, 0xf1, 0xa4, 0x37, 0x36, 0xae, 0x1a, - 0x9e, 0x61, 0xf7, 0x99, 0x2e, 0x57, 0x8d, 0x41, 0xb7, 0xf3, 0x65, 0xc3, 0x53, 0x39, 0x4f, 0x3e, - 0x54, 0x2a, 0xe7, 0xdb, 0x7a, 0x6a, 0x64, 0xd4, 0x25, 0xf7, 0x2f, 0x45, 0xea, 0x31, 0x21, 0xf2, - 0x6d, 0xfd, 0x02, 0x9c, 0xca, 0xa7, 0xab, 0xee, 0xb9, 0x34, 0xdd, 0xcc, 0x2b, 0x30, 0x95, 0x68, - 0xf9, 0xd4, 0xc9, 0x24, 0x5a, 0x3e, 0x7d, 0xec, 0x89, 0x96, 0xcf, 0x9c, 0x40, 0xa2, 0xe5, 0xc7, - 0x4e, 0x30, 0xd1, 0xf2, 0x6d, 0x66, 0x80, 0xc3, 0xc3, 0xfc, 0x88, 0x78, 0xc7, 0x4f, 0xe7, 0x44, - 0xc9, 0x4a, 0xc7, 0x02, 0xe2, 0x1f, 0xa7, 0x40, 0x38, 0x26, 0x95, 0x91, 0xc0, 0x79, 0xfa, 0x11, - 0x24, 0x70, 0x5e, 0x8f, 0x13, 0x38, 0x9f, 0xcd, 0x9f, 0xea, 0x0c, 0x97, 0x8d, 0x9c, 0xb4, 0xcd, - 0xb7, 0xf5, 0x74, 0xcb, 0x8f, 0x77, 0xd0, 0xb2, 0x64, 0x09, 0x2a, 0x3b, 0x24, 0x59, 0x7e, 0x8d, - 0x27, 0x59, 0x7e, 0x22, 0xff, 0x24, 0x4f, 0x5e, 0x77, 0x46, 0x6a, 0x65, 0xda, 0x2f, 0x15, 0x26, - 0x93, 0x45, 0x76, 0xce, 0xe9, 0x97, 0x8a, 0xb3, 0x99, 0xee, 0x97, 0x02, 0xe1, 0x98, 0x94, 0xfd, - 0x03, 0x05, 0x38, 0xdf, 0x79, 0xbf, 0xc5, 0xd2, 0xd7, 0x4a, 0xac, 0x74, 0x4e, 0x48, 0x5f, 0xf9, - 0x9b, 0x2d, 0xc6, 0xea, 0x39, 0xea, 0xdf, 0x55, 0x98, 0x54, 0xbe, 0x1e, 0x0d, 0xb7, 0xb6, 0xbf, - 0x1e, 0xbf, 0x7c, 0x95, 0x7f, 0x7c, 0x35, 0x89, 0x80, 0xd3, 0x75, 0xd0, 0x02, 0x8c, 0x1b, 0x85, - 0xab, 0x65, 0xf1, 0x36, 0x53, 0xe2, 0xde, 0xaa, 0x09, 0xc6, 0x49, 0x7c, 0xfb, 0x4b, 0x16, 0x3c, - 0x96, 0x93, 0xa1, 0xb0, 0xe7, 0xa0, 0x76, 0x5b, 0x30, 0xde, 0x32, 0xab, 0x76, 0x89, 0xc3, 0x69, - 0xe4, 0x41, 0x54, 0x7d, 0x4d, 0x00, 0x70, 0x92, 0xa8, 0xfd, 0x53, 0x05, 0x38, 0xd7, 0xd1, 0x78, - 0x11, 0x61, 0x38, 0xb3, 0xdd, 0x0c, 0x9d, 0xa5, 0x80, 0xd4, 0x89, 0x17, 0xb9, 0x4e, 0xa3, 0xda, - 0x22, 0x35, 0x4d, 0x7e, 0xce, 0xac, 0x00, 0xaf, 0xae, 0x55, 0x17, 0xd2, 0x18, 0x38, 0xa7, 0x26, - 0x5a, 0x01, 0x94, 0x86, 0x88, 0x19, 0x66, 0x31, 0xc2, 0xd3, 0xf4, 0x70, 0x46, 0x0d, 0xf4, 0x21, - 0x18, 0x55, 0x46, 0x91, 0xda, 0x8c, 0xb3, 0x83, 0x1d, 0xeb, 0x00, 0x6c, 0xe2, 0xa1, 0x2b, 0x3c, - 0xc8, 0xbc, 0x48, 0x47, 0x20, 0x84, 0xed, 0xe3, 0x32, 0x82, 0xbc, 0x28, 0xc6, 0x3a, 0xce, 0xe2, - 0xcb, 0xbf, 0xfa, 0x7b, 0xe7, 0xdf, 0xf3, 0x1b, 0xbf, 0x77, 0xfe, 0x3d, 0xbf, 0xfd, 0x7b, 0xe7, - 0xdf, 0xf3, 0x5d, 0x0f, 0xce, 0x5b, 0xbf, 0xfa, 0xe0, 0xbc, 0xf5, 0x1b, 0x0f, 0xce, 0x5b, 0xbf, - 0xfd, 0xe0, 0xbc, 0xf5, 0xbb, 0x0f, 0xce, 0x5b, 0x5f, 0xf8, 0xfd, 0xf3, 0xef, 0xf9, 0x04, 0x8a, - 0xc3, 0x44, 0xce, 0xd3, 0xd9, 0x99, 0xdf, 0xbb, 0xf2, 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0x65, - 0xfb, 0x66, 0x78, 0x75, 0x08, 0x01, 0x00, + 0x79, 0x98, 0x66, 0x17, 0xaf, 0xfd, 0xf0, 0x6e, 0x90, 0x3c, 0x10, 0x77, 0xe4, 0xf2, 0xe6, 0x24, + 0x1e, 0x4f, 0x77, 0x07, 0x8a, 0xf7, 0x90, 0xce, 0x77, 0xd2, 0x59, 0x00, 0x16, 0x20, 0x71, 0x24, + 0xc0, 0xbd, 0x5e, 0x90, 0x94, 0xe4, 0x93, 0x4a, 0x83, 0xdd, 0x06, 0x30, 0xc2, 0xee, 0xcc, 0xde, + 0xcc, 0x2c, 0x48, 0x5c, 0xe4, 0x8a, 0x23, 0x3f, 0x65, 0x3b, 0x29, 0x55, 0xca, 0x79, 0x94, 0xec, + 0x72, 0xa5, 0x1c, 0x27, 0xb6, 0xa2, 0xbc, 0x1c, 0x39, 0xb6, 0x63, 0x39, 0xb1, 0xf3, 0x76, 0xf2, + 0xc3, 0x76, 0x5c, 0x15, 0xcb, 0x55, 0xae, 0x20, 0x36, 0x9d, 0x2a, 0x97, 0xaa, 0x12, 0xdb, 0x89, + 0x93, 0x1f, 0x41, 0x9c, 0x38, 0xd5, 0xcf, 0xe9, 0x9e, 0xc7, 0xee, 0x82, 0x07, 0x42, 0x27, 0xd5, + 0xfd, 0xdb, 0xed, 0xef, 0xeb, 0xaf, 0x7b, 0xfa, 0xf9, 0xf5, 0xf7, 0x84, 0x57, 0x76, 0x5f, 0x0a, + 0xe7, 0x5d, 0xff, 0xf2, 0x6e, 0x67, 0x93, 0x04, 0x1e, 0x89, 0x48, 0x78, 0x79, 0x8f, 0x78, 0x0d, + 0x3f, 0xb8, 0x2c, 0x00, 0x4e, 0xdb, 0xbd, 0x5c, 0xf7, 0x03, 0x72, 0x79, 0xef, 0xca, 0xe5, 0x6d, + 0xe2, 0x91, 0xc0, 0x89, 0x48, 0x63, 0xbe, 0x1d, 0xf8, 0x91, 0x8f, 0x10, 0xc7, 0x99, 0x77, 0xda, + 0xee, 0x3c, 0xc5, 0x99, 0xdf, 0xbb, 0x32, 0xf7, 0xec, 0xb6, 0x1b, 0xed, 0x74, 0x36, 0xe7, 0xeb, + 0x7e, 0xeb, 0xf2, 0xb6, 0xbf, 0xed, 0x5f, 0x66, 0xa8, 0x9b, 0x9d, 0x2d, 0xf6, 0x8f, 0xfd, 0x61, + 0xbf, 0x38, 0x89, 0xb9, 0x17, 0xe2, 0x66, 0x5a, 0x4e, 0x7d, 0xc7, 0xf5, 0x48, 0xb0, 0x7f, 0xb9, + 0xbd, 0xbb, 0xcd, 0xda, 0x0d, 0x48, 0xe8, 0x77, 0x82, 0x3a, 0x49, 0x36, 0xdc, 0xb5, 0x56, 0x78, + 0xb9, 0x45, 0x22, 0x27, 0xa3, 0xbb, 0x73, 0x97, 0xf3, 0x6a, 0x05, 0x1d, 0x2f, 0x72, 0x5b, 0xe9, + 0x66, 0x3e, 0xd8, 0xab, 0x42, 0x58, 0xdf, 0x21, 0x2d, 0x27, 0x55, 0xef, 0xf9, 0xbc, 0x7a, 0x9d, + 0xc8, 0x6d, 0x5e, 0x76, 0xbd, 0x28, 0x8c, 0x82, 0x64, 0x25, 0xfb, 0x6b, 0x16, 0x5c, 0x58, 0xb8, + 0x53, 0x5b, 0x6e, 0x3a, 0x61, 0xe4, 0xd6, 0x17, 0x9b, 0x7e, 0x7d, 0xb7, 0x16, 0xf9, 0x01, 0xb9, + 0xed, 0x37, 0x3b, 0x2d, 0x52, 0x63, 0x03, 0x81, 0x9e, 0x81, 0x91, 0x3d, 0xf6, 0x7f, 0xb5, 0x32, + 0x6b, 0x5d, 0xb0, 0x2e, 0x95, 0x16, 0xa7, 0x7e, 0xf5, 0xa0, 0xfc, 0x9e, 0xfb, 0x07, 0xe5, 0x91, + 0xdb, 0xa2, 0x1c, 0x2b, 0x0c, 0x74, 0x11, 0x86, 0xb6, 0xc2, 0x8d, 0xfd, 0x36, 0x99, 0x2d, 0x30, + 0xdc, 0x09, 0x81, 0x3b, 0xb4, 0x52, 0xa3, 0xa5, 0x58, 0x40, 0xd1, 0x65, 0x28, 0xb5, 0x9d, 0x20, + 0x72, 0x23, 0xd7, 0xf7, 0x66, 0x8b, 0x17, 0xac, 0x4b, 0x83, 0x8b, 0xd3, 0x02, 0xb5, 0x54, 0x95, + 0x00, 0x1c, 0xe3, 0xd0, 0x6e, 0x04, 0xc4, 0x69, 0xdc, 0xf4, 0x9a, 0xfb, 0xb3, 0x03, 0x17, 0xac, + 0x4b, 0x23, 0x71, 0x37, 0xb0, 0x28, 0xc7, 0x0a, 0xc3, 0xfe, 0x62, 0x01, 0x46, 0x16, 0xb6, 0xb6, + 0x5c, 0xcf, 0x8d, 0xf6, 0xd1, 0x6d, 0x18, 0xf3, 0xfc, 0x06, 0x91, 0xff, 0xd9, 0x57, 0x8c, 0x3e, + 0x77, 0x61, 0x3e, 0xbd, 0x94, 0xe6, 0xd7, 0x35, 0xbc, 0xc5, 0xa9, 0xfb, 0x07, 0xe5, 0x31, 0xbd, + 0x04, 0x1b, 0x74, 0x10, 0x86, 0xd1, 0xb6, 0xdf, 0x50, 0x64, 0x0b, 0x8c, 0x6c, 0x39, 0x8b, 0x6c, + 0x35, 0x46, 0x5b, 0x9c, 0xbc, 0x7f, 0x50, 0x1e, 0xd5, 0x0a, 0xb0, 0x4e, 0x04, 0x6d, 0xc2, 0x24, + 0xfd, 0xeb, 0x45, 0xae, 0xa2, 0x5b, 0x64, 0x74, 0x9f, 0xc8, 0xa3, 0xab, 0xa1, 0x2e, 0xce, 0xdc, + 0x3f, 0x28, 0x4f, 0x26, 0x0a, 0x71, 0x92, 0xa0, 0xfd, 0x16, 0x4c, 0x2c, 0x44, 0x91, 0x53, 0xdf, + 0x21, 0x0d, 0x3e, 0x83, 0xe8, 0x05, 0x18, 0xf0, 0x9c, 0x16, 0x11, 0xf3, 0x7b, 0x41, 0x0c, 0xec, + 0xc0, 0xba, 0xd3, 0x22, 0x87, 0x07, 0xe5, 0xa9, 0x5b, 0x9e, 0xfb, 0x66, 0x47, 0xac, 0x0a, 0x5a, + 0x86, 0x19, 0x36, 0x7a, 0x0e, 0xa0, 0x41, 0xf6, 0xdc, 0x3a, 0xa9, 0x3a, 0xd1, 0x8e, 0x98, 0x6f, + 0x24, 0xea, 0x42, 0x45, 0x41, 0xb0, 0x86, 0x65, 0xdf, 0x83, 0xd2, 0xc2, 0x9e, 0xef, 0x36, 0xaa, + 0x7e, 0x23, 0x44, 0xbb, 0x30, 0xd9, 0x0e, 0xc8, 0x16, 0x09, 0x54, 0xd1, 0xac, 0x75, 0xa1, 0x78, + 0x69, 0xf4, 0xb9, 0x4b, 0x99, 0x1f, 0x6b, 0xa2, 0x2e, 0x7b, 0x51, 0xb0, 0xbf, 0xf8, 0x88, 0x68, + 0x6f, 0x32, 0x01, 0xc5, 0x49, 0xca, 0xf6, 0xbf, 0x2a, 0xc0, 0xe9, 0x85, 0xb7, 0x3a, 0x01, 0xa9, + 0xb8, 0xe1, 0x6e, 0x72, 0x85, 0x37, 0xdc, 0x70, 0x77, 0x3d, 0x1e, 0x01, 0xb5, 0xb4, 0x2a, 0xa2, + 0x1c, 0x2b, 0x0c, 0xf4, 0x2c, 0x0c, 0xd3, 0xdf, 0xb7, 0xf0, 0xaa, 0xf8, 0xe4, 0x19, 0x81, 0x3c, + 0x5a, 0x71, 0x22, 0xa7, 0xc2, 0x41, 0x58, 0xe2, 0xa0, 0x35, 0x18, 0xad, 0xb3, 0x0d, 0xb9, 0xbd, + 0xe6, 0x37, 0x08, 0x9b, 0xcc, 0xd2, 0xe2, 0xd3, 0x14, 0x7d, 0x29, 0x2e, 0x3e, 0x3c, 0x28, 0xcf, + 0xf2, 0xbe, 0x09, 0x12, 0x1a, 0x0c, 0xeb, 0xf5, 0x91, 0xad, 0xf6, 0xd7, 0x00, 0xa3, 0x04, 0x19, + 0x7b, 0xeb, 0x92, 0xb6, 0x55, 0x06, 0xd9, 0x56, 0x19, 0xcb, 0xde, 0x26, 0xe8, 0x0a, 0x0c, 0xec, + 0xba, 0x5e, 0x63, 0x76, 0x88, 0xd1, 0x3a, 0x47, 0xe7, 0xfc, 0xba, 0xeb, 0x35, 0x0e, 0x0f, 0xca, + 0xd3, 0x46, 0x77, 0x68, 0x21, 0x66, 0xa8, 0xf6, 0x9f, 0x58, 0x50, 0x66, 0xb0, 0x15, 0xb7, 0x49, + 0xaa, 0x24, 0x08, 0xdd, 0x30, 0x22, 0x5e, 0x64, 0x0c, 0xe8, 0x73, 0x00, 0x21, 0xa9, 0x07, 0x24, + 0xd2, 0x86, 0x54, 0x2d, 0x8c, 0x9a, 0x82, 0x60, 0x0d, 0x8b, 0x1e, 0x08, 0xe1, 0x8e, 0x13, 0xb0, + 0xf5, 0x25, 0x06, 0x56, 0x1d, 0x08, 0x35, 0x09, 0xc0, 0x31, 0x8e, 0x71, 0x20, 0x14, 0x7b, 0x1d, + 0x08, 0xe8, 0x23, 0x30, 0x19, 0x37, 0x16, 0xb6, 0x9d, 0xba, 0x1c, 0x40, 0xb6, 0x65, 0x6a, 0x26, + 0x08, 0x27, 0x71, 0xed, 0xbf, 0x63, 0x89, 0xc5, 0x43, 0xbf, 0xfa, 0x1d, 0xfe, 0xad, 0xf6, 0x2f, + 0x58, 0x30, 0xbc, 0xe8, 0x7a, 0x0d, 0xd7, 0xdb, 0x46, 0x9f, 0x86, 0x11, 0x7a, 0x37, 0x35, 0x9c, + 0xc8, 0x11, 0xe7, 0xde, 0x07, 0xb4, 0xbd, 0xa5, 0xae, 0x8a, 0xf9, 0xf6, 0xee, 0x36, 0x2d, 0x08, + 0xe7, 0x29, 0x36, 0xdd, 0x6d, 0x37, 0x37, 0x3f, 0x43, 0xea, 0xd1, 0x1a, 0x89, 0x9c, 0xf8, 0x73, + 0xe2, 0x32, 0xac, 0xa8, 0xa2, 0xeb, 0x30, 0x14, 0x39, 0xc1, 0x36, 0x89, 0xc4, 0x01, 0x98, 0x79, + 0x50, 0xf1, 0x9a, 0x98, 0xee, 0x48, 0xe2, 0xd5, 0x49, 0x7c, 0x2d, 0x6c, 0xb0, 0xaa, 0x58, 0x90, + 0xb0, 0xff, 0xef, 0x30, 0x9c, 0x5d, 0xaa, 0xad, 0xe6, 0xac, 0xab, 0x8b, 0x30, 0xd4, 0x08, 0xdc, + 0x3d, 0x12, 0x88, 0x71, 0x56, 0x54, 0x2a, 0xac, 0x14, 0x0b, 0x28, 0x7a, 0x09, 0xc6, 0xf8, 0x85, + 0x74, 0xcd, 0xf1, 0x1a, 0x4d, 0x39, 0xc4, 0xa7, 0x04, 0xf6, 0xd8, 0x6d, 0x0d, 0x86, 0x0d, 0xcc, + 0x23, 0x2e, 0xaa, 0x8b, 0x89, 0xcd, 0x98, 0x77, 0xd9, 0x7d, 0xde, 0x82, 0x29, 0xde, 0xcc, 0x42, + 0x14, 0x05, 0xee, 0x66, 0x27, 0x22, 0xe1, 0xec, 0x20, 0x3b, 0xe9, 0x96, 0xb2, 0x46, 0x2b, 0x77, + 0x04, 0xe6, 0x6f, 0x27, 0xa8, 0xf0, 0x43, 0x70, 0x56, 0xb4, 0x3b, 0x95, 0x04, 0xe3, 0x54, 0xb3, + 0xe8, 0xbb, 0x2d, 0x98, 0xab, 0xfb, 0x5e, 0x14, 0xf8, 0xcd, 0x26, 0x09, 0xaa, 0x9d, 0xcd, 0xa6, + 0x1b, 0xee, 0xf0, 0x75, 0x8a, 0xc9, 0x16, 0x3b, 0x09, 0x72, 0xe6, 0x50, 0x21, 0x89, 0x39, 0x3c, + 0x7f, 0xff, 0xa0, 0x3c, 0xb7, 0x94, 0x4b, 0x0a, 0x77, 0x69, 0x06, 0xed, 0x02, 0xa2, 0x57, 0x69, + 0x2d, 0x72, 0xb6, 0x49, 0xdc, 0xf8, 0x70, 0xff, 0x8d, 0x9f, 0xb9, 0x7f, 0x50, 0x46, 0xeb, 0x29, + 0x12, 0x38, 0x83, 0x2c, 0x7a, 0x13, 0x4e, 0xd1, 0xd2, 0xd4, 0xb7, 0x8e, 0xf4, 0xdf, 0xdc, 0xec, + 0xfd, 0x83, 0xf2, 0xa9, 0xf5, 0x0c, 0x22, 0x38, 0x93, 0x34, 0xfa, 0x2e, 0x0b, 0xce, 0xc6, 0x9f, + 0xbf, 0x7c, 0xaf, 0xed, 0x78, 0x8d, 0xb8, 0xe1, 0x52, 0xff, 0x0d, 0xd3, 0x33, 0xf9, 0xec, 0x52, + 0x1e, 0x25, 0x9c, 0xdf, 0x08, 0xf2, 0x60, 0x86, 0x76, 0x2d, 0xd9, 0x36, 0xf4, 0xdf, 0xf6, 0x23, + 0xf7, 0x0f, 0xca, 0x33, 0xeb, 0x69, 0x1a, 0x38, 0x8b, 0xf0, 0xdc, 0x12, 0x9c, 0xce, 0x5c, 0x9d, + 0x68, 0x0a, 0x8a, 0xbb, 0x84, 0x73, 0x5d, 0x25, 0x4c, 0x7f, 0xa2, 0x53, 0x30, 0xb8, 0xe7, 0x34, + 0x3b, 0x62, 0x63, 0x62, 0xfe, 0xe7, 0xe5, 0xc2, 0x4b, 0x96, 0xfd, 0xaf, 0x8b, 0x30, 0xb9, 0x54, + 0x5b, 0x7d, 0xa0, 0x5d, 0xaf, 0x5f, 0x7b, 0x85, 0xae, 0xd7, 0x5e, 0x7c, 0x89, 0x16, 0x73, 0x2f, + 0xd1, 0x3f, 0x9f, 0xb1, 0x65, 0x07, 0xd8, 0x96, 0xfd, 0xb6, 0x9c, 0x2d, 0x7b, 0xcc, 0x1b, 0x75, + 0x2f, 0x67, 0xd5, 0x0e, 0xb2, 0x09, 0xcc, 0xe4, 0x90, 0x6e, 0xf8, 0x75, 0xa7, 0x99, 0x3c, 0x6a, + 0x8f, 0xb8, 0x74, 0x8f, 0x67, 0x1e, 0xeb, 0x30, 0xb6, 0xe4, 0xb4, 0x9d, 0x4d, 0xb7, 0xe9, 0x46, + 0x2e, 0x09, 0xd1, 0x93, 0x50, 0x74, 0x1a, 0x0d, 0xc6, 0xdd, 0x95, 0x16, 0x4f, 0xdf, 0x3f, 0x28, + 0x17, 0x17, 0x1a, 0x94, 0xcd, 0x00, 0x85, 0xb5, 0x8f, 0x29, 0x06, 0x7a, 0x3f, 0x0c, 0x34, 0x02, + 0xbf, 0x3d, 0x5b, 0x60, 0x98, 0x74, 0x97, 0x0f, 0x54, 0x02, 0xbf, 0x9d, 0x40, 0x65, 0x38, 0xf6, + 0xaf, 0x14, 0xe0, 0xb1, 0x25, 0xd2, 0xde, 0x59, 0xa9, 0xe5, 0xdc, 0x17, 0x97, 0x60, 0xa4, 0xe5, + 0x7b, 0x6e, 0xe4, 0x07, 0xa1, 0x68, 0x9a, 0xad, 0x88, 0x35, 0x51, 0x86, 0x15, 0x14, 0x5d, 0x80, + 0x81, 0x76, 0xcc, 0xc4, 0x8e, 0x49, 0x06, 0x98, 0xb1, 0xaf, 0x0c, 0x42, 0x31, 0x3a, 0x21, 0x09, + 0xc4, 0x8a, 0x51, 0x18, 0xb7, 0x42, 0x12, 0x60, 0x06, 0x89, 0x39, 0x01, 0xca, 0x23, 0x88, 0x1b, + 0x21, 0xc1, 0x09, 0x50, 0x08, 0xd6, 0xb0, 0x50, 0x15, 0x4a, 0x61, 0x62, 0x66, 0xfb, 0xda, 0x9a, + 0xe3, 0x8c, 0x55, 0x50, 0x33, 0x19, 0x13, 0x31, 0x6e, 0xb0, 0xa1, 0x9e, 0xac, 0xc2, 0x57, 0x0b, + 0x80, 0xf8, 0x10, 0x7e, 0x93, 0x0d, 0xdc, 0xad, 0xf4, 0xc0, 0xf5, 0xbf, 0x25, 0x8e, 0x6b, 0xf4, + 0xfe, 0xa7, 0x05, 0x8f, 0x2d, 0xb9, 0x5e, 0x83, 0x04, 0x39, 0x0b, 0xf0, 0xe1, 0xbc, 0x9d, 0x8f, + 0xc6, 0xa4, 0x18, 0x4b, 0x6c, 0xe0, 0x18, 0x96, 0x98, 0xfd, 0x47, 0x16, 0x20, 0xfe, 0xd9, 0xef, + 0xb8, 0x8f, 0xbd, 0x95, 0xfe, 0xd8, 0x63, 0x58, 0x16, 0xf6, 0x0d, 0x98, 0x58, 0x6a, 0xba, 0xc4, + 0x8b, 0x56, 0xab, 0x4b, 0xbe, 0xb7, 0xe5, 0x6e, 0xa3, 0x97, 0x61, 0x22, 0x72, 0x5b, 0xc4, 0xef, + 0x44, 0x35, 0x52, 0xf7, 0x3d, 0xf6, 0x72, 0xb5, 0x2e, 0x0d, 0x2e, 0xa2, 0xfb, 0x07, 0xe5, 0x89, + 0x0d, 0x03, 0x82, 0x13, 0x98, 0xf6, 0xef, 0xd0, 0xf1, 0xf3, 0x5b, 0x6d, 0xdf, 0x23, 0x5e, 0xb4, + 0xe4, 0x7b, 0x0d, 0x2e, 0xe1, 0x78, 0x19, 0x06, 0x22, 0x3a, 0x1e, 0x7c, 0xec, 0x2e, 0xca, 0x8d, + 0x42, 0x47, 0xe1, 0xf0, 0xa0, 0x7c, 0x26, 0x5d, 0x83, 0x8d, 0x13, 0xab, 0x83, 0xbe, 0x0d, 0x86, + 0xc2, 0xc8, 0x89, 0x3a, 0xa1, 0x18, 0xcd, 0xc7, 0xe5, 0x68, 0xd6, 0x58, 0xe9, 0xe1, 0x41, 0x79, + 0x52, 0x55, 0xe3, 0x45, 0x58, 0x54, 0x40, 0x4f, 0xc1, 0x70, 0x8b, 0x84, 0xa1, 0xb3, 0x2d, 0x6f, + 0xc3, 0x49, 0x51, 0x77, 0x78, 0x8d, 0x17, 0x63, 0x09, 0x47, 0x4f, 0xc0, 0x20, 0x09, 0x02, 0x3f, + 0x10, 0x7b, 0x74, 0x5c, 0x20, 0x0e, 0x2e, 0xd3, 0x42, 0xcc, 0x61, 0xf6, 0xaf, 0x5b, 0x30, 0xa9, + 0xfa, 0xca, 0xdb, 0x3a, 0x81, 0x57, 0xc8, 0x27, 0x00, 0xea, 0xf2, 0x03, 0x43, 0x76, 0x7b, 0x8c, + 0x3e, 0x77, 0x31, 0xf3, 0xa2, 0x4e, 0x0d, 0x63, 0x4c, 0x59, 0x15, 0x85, 0x58, 0xa3, 0x66, 0xff, + 0x53, 0x0b, 0x66, 0x12, 0x5f, 0x74, 0xc3, 0x0d, 0x23, 0xf4, 0x46, 0xea, 0xab, 0xe6, 0xfb, 0xfb, + 0x2a, 0x5a, 0x9b, 0x7d, 0x93, 0x5a, 0xca, 0xb2, 0x44, 0xfb, 0xa2, 0x6b, 0x30, 0xe8, 0x46, 0xa4, + 0x25, 0x3f, 0xe6, 0x89, 0xae, 0x1f, 0xc3, 0x7b, 0x15, 0xcf, 0xc8, 0x2a, 0xad, 0x89, 0x39, 0x01, + 0xfb, 0x57, 0x8a, 0x50, 0xe2, 0xcb, 0x76, 0xcd, 0x69, 0x9f, 0xc0, 0x5c, 0x3c, 0x0d, 0x25, 0xb7, + 0xd5, 0xea, 0x44, 0xce, 0xa6, 0x38, 0xce, 0x47, 0xf8, 0xd6, 0x5a, 0x95, 0x85, 0x38, 0x86, 0xa3, + 0x55, 0x18, 0x60, 0x5d, 0xe1, 0x5f, 0xf9, 0x64, 0xf6, 0x57, 0x8a, 0xbe, 0xcf, 0x57, 0x9c, 0xc8, + 0xe1, 0x9c, 0x94, 0xba, 0x47, 0x68, 0x11, 0x66, 0x24, 0x90, 0x03, 0xb0, 0xe9, 0x7a, 0x4e, 0xb0, + 0x4f, 0xcb, 0x66, 0x8b, 0x8c, 0xe0, 0xb3, 0xdd, 0x09, 0x2e, 0x2a, 0x7c, 0x4e, 0x56, 0x7d, 0x58, + 0x0c, 0xc0, 0x1a, 0xd1, 0xb9, 0x0f, 0x41, 0x49, 0x21, 0x1f, 0x85, 0x21, 0x9a, 0xfb, 0x08, 0x4c, + 0x26, 0xda, 0xea, 0x55, 0x7d, 0x4c, 0xe7, 0xa7, 0x7e, 0x91, 0x1d, 0x19, 0xa2, 0xd7, 0xcb, 0xde, + 0x9e, 0x38, 0x72, 0xdf, 0x82, 0x53, 0xcd, 0x8c, 0x93, 0x4c, 0xcc, 0x6b, 0xff, 0x27, 0xdf, 0x63, + 0xe2, 0xb3, 0x4f, 0x65, 0x41, 0x71, 0x66, 0x1b, 0x94, 0x47, 0xf0, 0xdb, 0x74, 0x83, 0x38, 0x4d, + 0x9d, 0xdd, 0xbe, 0x29, 0xca, 0xb0, 0x82, 0xd2, 0xf3, 0xee, 0x94, 0xea, 0xfc, 0x75, 0xb2, 0x5f, + 0x23, 0x4d, 0x52, 0x8f, 0xfc, 0xe0, 0x1b, 0xda, 0xfd, 0x73, 0x7c, 0xf4, 0xf9, 0x71, 0x39, 0x2a, + 0x08, 0x14, 0xaf, 0x93, 0x7d, 0x3e, 0x15, 0xfa, 0xd7, 0x15, 0xbb, 0x7e, 0xdd, 0xcf, 0x58, 0x30, + 0xae, 0xbe, 0xee, 0x04, 0xce, 0x85, 0x45, 0xf3, 0x5c, 0x38, 0xd7, 0x75, 0x81, 0xe7, 0x9c, 0x08, + 0x5f, 0x2d, 0xc0, 0x59, 0x85, 0x43, 0xdf, 0x06, 0xfc, 0x8f, 0x58, 0x55, 0x97, 0xa1, 0xe4, 0x29, + 0x29, 0x99, 0x65, 0x8a, 0xa7, 0x62, 0x19, 0x59, 0x8c, 0x43, 0x59, 0x3c, 0x2f, 0x16, 0x65, 0x8d, + 0xe9, 0xe2, 0x63, 0x21, 0x2a, 0x5e, 0x84, 0x62, 0xc7, 0x6d, 0x88, 0x0b, 0xe6, 0x03, 0x72, 0xb4, + 0x6f, 0xad, 0x56, 0x0e, 0x0f, 0xca, 0x8f, 0xe7, 0xa9, 0x2e, 0xe8, 0xcd, 0x16, 0xce, 0xdf, 0x5a, + 0xad, 0x60, 0x5a, 0x19, 0x2d, 0xc0, 0xa4, 0xd4, 0xce, 0xdc, 0xa6, 0xec, 0x96, 0xef, 0x89, 0x7b, + 0x48, 0xc9, 0x80, 0xb1, 0x09, 0xc6, 0x49, 0x7c, 0x54, 0x81, 0xa9, 0xdd, 0xce, 0x26, 0x69, 0x92, + 0x88, 0x7f, 0xf0, 0x75, 0xc2, 0x25, 0xa4, 0xa5, 0xf8, 0x65, 0x76, 0x3d, 0x01, 0xc7, 0xa9, 0x1a, + 0xf6, 0x9f, 0xb1, 0xfb, 0x40, 0x8c, 0x5e, 0x35, 0xf0, 0xe9, 0xc2, 0xa2, 0xd4, 0xbf, 0x91, 0xcb, + 0xb9, 0x9f, 0x55, 0x71, 0x9d, 0xec, 0x6f, 0xf8, 0x94, 0x33, 0xcf, 0x5e, 0x15, 0xc6, 0x9a, 0x1f, + 0xe8, 0xba, 0xe6, 0x7f, 0xb6, 0x00, 0xa7, 0xd5, 0x08, 0x18, 0x4c, 0xe0, 0x37, 0xfb, 0x18, 0x5c, + 0x81, 0xd1, 0x06, 0xd9, 0x72, 0x3a, 0xcd, 0x48, 0x89, 0xeb, 0x07, 0xb9, 0xca, 0xa6, 0x12, 0x17, + 0x63, 0x1d, 0xe7, 0x08, 0xc3, 0xf6, 0xbf, 0x46, 0xd9, 0x45, 0x1c, 0x39, 0x74, 0x8d, 0xab, 0x5d, + 0x63, 0xe5, 0xee, 0x9a, 0x27, 0x60, 0xd0, 0x6d, 0x51, 0xc6, 0xac, 0x60, 0xf2, 0x5b, 0xab, 0xb4, + 0x10, 0x73, 0x18, 0x7a, 0x1f, 0x0c, 0xd7, 0xfd, 0x56, 0xcb, 0xf1, 0x1a, 0xec, 0xca, 0x2b, 0x2d, + 0x8e, 0x52, 0xde, 0x6d, 0x89, 0x17, 0x61, 0x09, 0x43, 0x8f, 0xc1, 0x80, 0x13, 0x6c, 0x73, 0x19, + 0x46, 0x69, 0x71, 0x84, 0xb6, 0xb4, 0x10, 0x6c, 0x87, 0x98, 0x95, 0xd2, 0x27, 0xd8, 0x5d, 0x3f, + 0xd8, 0x75, 0xbd, 0xed, 0x8a, 0x1b, 0x88, 0x2d, 0xa1, 0xee, 0xc2, 0x3b, 0x0a, 0x82, 0x35, 0x2c, + 0xb4, 0x02, 0x83, 0x6d, 0x3f, 0x88, 0xc2, 0xd9, 0x21, 0x36, 0xdc, 0x8f, 0xe7, 0x1c, 0x44, 0xfc, + 0x6b, 0xab, 0x7e, 0x10, 0xc5, 0x1f, 0x40, 0xff, 0x85, 0x98, 0x57, 0x47, 0x37, 0x60, 0x98, 0x78, + 0x7b, 0x2b, 0x81, 0xdf, 0x9a, 0x9d, 0xc9, 0xa7, 0xb4, 0xcc, 0x51, 0xf8, 0x32, 0x8b, 0x79, 0x54, + 0x51, 0x8c, 0x25, 0x09, 0xf4, 0x6d, 0x50, 0x24, 0xde, 0xde, 0xec, 0x30, 0xa3, 0x34, 0x97, 0x43, + 0xe9, 0xb6, 0x13, 0xc4, 0x67, 0xfe, 0xb2, 0xb7, 0x87, 0x69, 0x1d, 0xf4, 0x71, 0x28, 0xc9, 0x03, + 0x23, 0x14, 0xc2, 0xc1, 0xcc, 0x05, 0x2b, 0x8f, 0x19, 0x4c, 0xde, 0xec, 0xb8, 0x01, 0x69, 0x11, + 0x2f, 0x0a, 0xe3, 0x13, 0x52, 0x42, 0x43, 0x1c, 0x53, 0x43, 0x1f, 0x97, 0x12, 0xe9, 0x35, 0xbf, + 0xe3, 0x45, 0xe1, 0x6c, 0x89, 0x75, 0x2f, 0x53, 0x57, 0x78, 0x3b, 0xc6, 0x4b, 0x8a, 0xac, 0x79, + 0x65, 0x6c, 0x90, 0x42, 0x9f, 0x84, 0x71, 0xfe, 0x9f, 0x6b, 0xdc, 0xc2, 0xd9, 0xd3, 0x8c, 0xf6, + 0x85, 0x7c, 0xda, 0x1c, 0x71, 0xf1, 0xb4, 0x20, 0x3e, 0xae, 0x97, 0x86, 0xd8, 0xa4, 0x86, 0x30, + 0x8c, 0x37, 0xdd, 0x3d, 0xe2, 0x91, 0x30, 0xac, 0x06, 0xfe, 0x26, 0x11, 0x02, 0xc4, 0xb3, 0xd9, + 0x1a, 0x3a, 0x7f, 0x93, 0x2c, 0x4e, 0x53, 0x9a, 0x37, 0xf4, 0x3a, 0xd8, 0x24, 0x81, 0x6e, 0xc1, + 0x04, 0x7d, 0xb1, 0xb9, 0x31, 0xd1, 0xd1, 0x5e, 0x44, 0xd9, 0xbb, 0x0a, 0x1b, 0x95, 0x70, 0x82, + 0x08, 0xba, 0x09, 0x63, 0x61, 0xe4, 0x04, 0x51, 0xa7, 0xcd, 0x89, 0x9e, 0xe9, 0x45, 0x94, 0x29, + 0x78, 0x6b, 0x5a, 0x15, 0x6c, 0x10, 0x40, 0xaf, 0x41, 0xa9, 0xe9, 0x6e, 0x91, 0xfa, 0x7e, 0xbd, + 0x49, 0x66, 0xc7, 0x18, 0xb5, 0xcc, 0x43, 0xe5, 0x86, 0x44, 0xe2, 0x7c, 0xae, 0xfa, 0x8b, 0xe3, + 0xea, 0xe8, 0x36, 0x9c, 0x89, 0x48, 0xd0, 0x72, 0x3d, 0x87, 0x1e, 0x06, 0xe2, 0x69, 0xc5, 0x14, + 0xa7, 0xe3, 0x6c, 0xb7, 0x9d, 0x17, 0xb3, 0x71, 0x66, 0x23, 0x13, 0x0b, 0xe7, 0xd4, 0x46, 0xf7, + 0x60, 0x36, 0x03, 0xe2, 0x37, 0xdd, 0xfa, 0xfe, 0xec, 0x29, 0x46, 0xf9, 0xc3, 0x82, 0xf2, 0xec, + 0x46, 0x0e, 0xde, 0x61, 0x17, 0x18, 0xce, 0xa5, 0x8e, 0x6e, 0xc2, 0x24, 0x3b, 0x81, 0xaa, 0x9d, + 0x66, 0x53, 0x34, 0x38, 0xc1, 0x1a, 0x7c, 0x9f, 0xbc, 0x8f, 0x57, 0x4d, 0xf0, 0xe1, 0x41, 0x19, + 0xe2, 0x7f, 0x38, 0x59, 0x1b, 0x6d, 0x32, 0x1d, 0x5d, 0x27, 0x70, 0xa3, 0x7d, 0x7a, 0x6e, 0x90, + 0x7b, 0xd1, 0xec, 0x64, 0x57, 0x79, 0x85, 0x8e, 0xaa, 0x14, 0x79, 0x7a, 0x21, 0x4e, 0x12, 0xa4, + 0x47, 0x6a, 0x18, 0x35, 0x5c, 0x6f, 0x76, 0x8a, 0xbf, 0x4b, 0xe4, 0x89, 0x54, 0xa3, 0x85, 0x98, + 0xc3, 0x98, 0x7e, 0x8e, 0xfe, 0xb8, 0x49, 0x6f, 0xae, 0x69, 0x86, 0x18, 0xeb, 0xe7, 0x24, 0x00, + 0xc7, 0x38, 0x94, 0x99, 0x8c, 0xa2, 0xfd, 0x59, 0xc4, 0x50, 0xd5, 0xc1, 0xb2, 0xb1, 0xf1, 0x71, + 0x4c, 0xcb, 0xed, 0x4d, 0x98, 0x50, 0x07, 0x21, 0x1b, 0x13, 0x54, 0x86, 0x41, 0xc6, 0x3e, 0x09, + 0xe9, 0x5a, 0x89, 0x76, 0x81, 0xb1, 0x56, 0x98, 0x97, 0xb3, 0x2e, 0xb8, 0x6f, 0x91, 0xc5, 0xfd, + 0x88, 0xf0, 0x37, 0x7d, 0x51, 0xeb, 0x82, 0x04, 0xe0, 0x18, 0xc7, 0xfe, 0x7f, 0x9c, 0x0d, 0x8d, + 0x4f, 0xdb, 0x3e, 0xee, 0x97, 0x67, 0x60, 0x64, 0xc7, 0x0f, 0x23, 0x8a, 0xcd, 0xda, 0x18, 0x8c, + 0x19, 0xcf, 0x6b, 0xa2, 0x1c, 0x2b, 0x0c, 0xf4, 0x0a, 0x8c, 0xd7, 0xf5, 0x06, 0xc4, 0xe5, 0xa8, + 0x8e, 0x11, 0xa3, 0x75, 0x6c, 0xe2, 0xa2, 0x97, 0x60, 0x84, 0xd9, 0x9c, 0xd4, 0xfd, 0xa6, 0xe0, + 0xda, 0xe4, 0x0d, 0x3f, 0x52, 0x15, 0xe5, 0x87, 0xda, 0x6f, 0xac, 0xb0, 0xd1, 0x45, 0x18, 0xa2, + 0x5d, 0x58, 0xad, 0x8a, 0x6b, 0x49, 0x09, 0x8a, 0xae, 0xb1, 0x52, 0x2c, 0xa0, 0xf6, 0x5f, 0x2e, + 0x68, 0xa3, 0x4c, 0xdf, 0xc3, 0x04, 0x55, 0x61, 0xf8, 0xae, 0xe3, 0x46, 0xae, 0xb7, 0x2d, 0xf8, + 0x8f, 0xa7, 0xba, 0xde, 0x51, 0xac, 0xd2, 0x1d, 0x5e, 0x81, 0xdf, 0xa2, 0xe2, 0x0f, 0x96, 0x64, + 0x28, 0xc5, 0xa0, 0xe3, 0x79, 0x94, 0x62, 0xa1, 0x5f, 0x8a, 0x98, 0x57, 0xe0, 0x14, 0xc5, 0x1f, + 0x2c, 0xc9, 0xa0, 0x37, 0x00, 0xe4, 0x0e, 0x23, 0x0d, 0x61, 0xeb, 0xf1, 0x4c, 0x6f, 0xa2, 0x1b, + 0xaa, 0xce, 0xe2, 0x04, 0xbd, 0xa3, 0xe3, 0xff, 0x58, 0xa3, 0x67, 0x47, 0x8c, 0x4f, 0x4b, 0x77, + 0x06, 0x7d, 0x07, 0x5d, 0xe2, 0x4e, 0x10, 0x91, 0xc6, 0x42, 0x24, 0x06, 0xe7, 0xfd, 0xfd, 0x3d, + 0x52, 0x36, 0xdc, 0x16, 0xd1, 0xb7, 0x83, 0x20, 0x82, 0x63, 0x7a, 0xf6, 0xcf, 0x17, 0x61, 0x36, + 0xaf, 0xbb, 0x74, 0xd1, 0x91, 0x7b, 0x6e, 0xb4, 0x44, 0xd9, 0x2b, 0xcb, 0x5c, 0x74, 0xcb, 0xa2, + 0x1c, 0x2b, 0x0c, 0x3a, 0xfb, 0xa1, 0xbb, 0x2d, 0xdf, 0x98, 0x83, 0xf1, 0xec, 0xd7, 0x58, 0x29, + 0x16, 0x50, 0x8a, 0x17, 0x10, 0x27, 0x14, 0xc6, 0x44, 0xda, 0x2a, 0xc1, 0xac, 0x14, 0x0b, 0xa8, + 0x2e, 0xed, 0x1a, 0xe8, 0x21, 0xed, 0x32, 0x86, 0x68, 0xf0, 0x78, 0x87, 0x08, 0x7d, 0x0a, 0x60, + 0xcb, 0xf5, 0xdc, 0x70, 0x87, 0x51, 0x1f, 0x3a, 0x32, 0x75, 0xc5, 0x9c, 0xad, 0x28, 0x2a, 0x58, + 0xa3, 0x88, 0x5e, 0x84, 0x51, 0xb5, 0x01, 0x57, 0x2b, 0x4c, 0xb3, 0xaa, 0x59, 0xaa, 0xc4, 0xa7, + 0x51, 0x05, 0xeb, 0x78, 0xf6, 0x67, 0x92, 0xeb, 0x45, 0xec, 0x00, 0x6d, 0x7c, 0xad, 0x7e, 0xc7, + 0xb7, 0xd0, 0x7d, 0x7c, 0xed, 0xaf, 0x17, 0x61, 0xd2, 0x68, 0xac, 0x13, 0xf6, 0x71, 0x66, 0x5d, + 0xa5, 0x07, 0xb8, 0x13, 0x11, 0xb1, 0xff, 0xec, 0xde, 0x5b, 0x45, 0x3f, 0xe4, 0xe9, 0x0e, 0xe0, + 0xf5, 0xd1, 0xa7, 0xa0, 0xd4, 0x74, 0x42, 0x26, 0x39, 0x23, 0x62, 0xdf, 0xf5, 0x43, 0x2c, 0x7e, + 0x98, 0x38, 0x61, 0xa4, 0xdd, 0x9a, 0x9c, 0x76, 0x4c, 0x92, 0xde, 0x34, 0x94, 0x3f, 0x91, 0xd6, + 0x6a, 0xaa, 0x13, 0x94, 0x89, 0xd9, 0xc7, 0x1c, 0x86, 0x5e, 0x82, 0xb1, 0x80, 0xb0, 0x55, 0xb1, + 0x44, 0xb9, 0x39, 0xb6, 0xcc, 0x06, 0x63, 0xb6, 0x0f, 0x6b, 0x30, 0x6c, 0x60, 0xc6, 0x6f, 0x83, + 0xa1, 0x2e, 0x6f, 0x83, 0xa7, 0x60, 0x98, 0xfd, 0x50, 0x2b, 0x40, 0xcd, 0xc6, 0x2a, 0x2f, 0xc6, + 0x12, 0x9e, 0x5c, 0x30, 0x23, 0xfd, 0x2d, 0x18, 0xfa, 0xfa, 0x10, 0x8b, 0x9a, 0x69, 0xb5, 0x47, + 0xf8, 0x29, 0x27, 0x96, 0x3c, 0x96, 0x30, 0xfb, 0xfd, 0x30, 0x51, 0x71, 0x48, 0xcb, 0xf7, 0x96, + 0xbd, 0x46, 0xdb, 0x77, 0xbd, 0x08, 0xcd, 0xc2, 0x00, 0xbb, 0x44, 0xf8, 0x11, 0x30, 0x40, 0x1b, + 0xc2, 0xac, 0xc4, 0xde, 0x86, 0xd3, 0x15, 0xff, 0xae, 0x77, 0xd7, 0x09, 0x1a, 0x0b, 0xd5, 0x55, + 0xed, 0x7d, 0xbd, 0x2e, 0xdf, 0x77, 0xdc, 0x48, 0x2c, 0xf3, 0xe8, 0xd5, 0x6a, 0x72, 0xb6, 0x76, + 0xc5, 0x6d, 0x92, 0x1c, 0x29, 0xc8, 0x5f, 0x2b, 0x18, 0x2d, 0xc5, 0xf8, 0x4a, 0xab, 0x65, 0xe5, + 0x6a, 0xb5, 0x5e, 0x87, 0x91, 0x2d, 0x97, 0x34, 0x1b, 0x98, 0x6c, 0x89, 0x95, 0xf8, 0x64, 0xbe, + 0xdd, 0xcb, 0x0a, 0xc5, 0x94, 0x52, 0x2f, 0xfe, 0x3a, 0x5c, 0x11, 0x95, 0xb1, 0x22, 0x83, 0x76, + 0x61, 0x4a, 0x3e, 0x18, 0x24, 0x54, 0xac, 0xcb, 0xa7, 0xba, 0xbd, 0x42, 0x4c, 0xe2, 0xa7, 0xee, + 0x1f, 0x94, 0xa7, 0x70, 0x82, 0x0c, 0x4e, 0x11, 0xa6, 0xcf, 0xc1, 0x16, 0x3d, 0x81, 0x07, 0xd8, + 0xf0, 0xb3, 0xe7, 0x20, 0x7b, 0xd9, 0xb2, 0x52, 0xfb, 0xc7, 0x2c, 0x78, 0x24, 0x35, 0x32, 0xe2, + 0x85, 0x7f, 0xcc, 0xb3, 0x90, 0x7c, 0x71, 0x17, 0x7a, 0xbf, 0xb8, 0xed, 0xbf, 0x6b, 0xc1, 0xa9, + 0xe5, 0x56, 0x3b, 0xda, 0xaf, 0xb8, 0xa6, 0x0a, 0xea, 0x43, 0x30, 0xd4, 0x22, 0x0d, 0xb7, 0xd3, + 0x12, 0x33, 0x57, 0x96, 0xa7, 0xd4, 0x1a, 0x2b, 0x3d, 0x3c, 0x28, 0x8f, 0xd7, 0x22, 0x3f, 0x70, + 0xb6, 0x09, 0x2f, 0xc0, 0x02, 0x9d, 0x9d, 0xf5, 0xee, 0x5b, 0xe4, 0x86, 0xdb, 0x72, 0xa5, 0x1d, + 0x53, 0x57, 0x99, 0xdd, 0xbc, 0x1c, 0xd0, 0xf9, 0xd7, 0x3b, 0x8e, 0x17, 0xb9, 0xd1, 0xbe, 0xd0, + 0x1e, 0x49, 0x22, 0x38, 0xa6, 0x67, 0x7f, 0xcd, 0x82, 0x49, 0xb9, 0xee, 0x17, 0x1a, 0x8d, 0x80, + 0x84, 0x21, 0x9a, 0x83, 0x82, 0xdb, 0x16, 0xbd, 0x04, 0xd1, 0xcb, 0xc2, 0x6a, 0x15, 0x17, 0xdc, + 0xb6, 0x64, 0xcb, 0xd8, 0x41, 0x58, 0x34, 0x15, 0x69, 0xd7, 0x44, 0x39, 0x56, 0x18, 0xe8, 0x12, + 0x8c, 0x78, 0x7e, 0x83, 0xdb, 0x92, 0xf1, 0x2b, 0x8d, 0x2d, 0xb0, 0x75, 0x51, 0x86, 0x15, 0x14, + 0x55, 0xa1, 0xc4, 0xcd, 0xac, 0xe2, 0x45, 0xdb, 0x97, 0xb1, 0x16, 0xfb, 0xb2, 0x0d, 0x59, 0x13, + 0xc7, 0x44, 0xec, 0x5f, 0xb6, 0x60, 0x4c, 0x7e, 0x59, 0x9f, 0x3c, 0x27, 0xdd, 0x5a, 0x31, 0xbf, + 0x19, 0x6f, 0x2d, 0xca, 0x33, 0x32, 0x88, 0xc1, 0x2a, 0x16, 0x8f, 0xc4, 0x2a, 0x5e, 0x81, 0x51, + 0xa7, 0xdd, 0xae, 0x9a, 0x7c, 0x26, 0x5b, 0x4a, 0x0b, 0x71, 0x31, 0xd6, 0x71, 0xec, 0x1f, 0x2d, + 0xc0, 0x84, 0xfc, 0x82, 0x5a, 0x67, 0x33, 0x24, 0x11, 0xda, 0x80, 0x92, 0xc3, 0x67, 0x89, 0xc8, + 0x45, 0xfe, 0x44, 0xb6, 0x1c, 0xc1, 0x98, 0xd2, 0xf8, 0xc2, 0x5f, 0x90, 0xb5, 0x71, 0x4c, 0x08, + 0x35, 0x61, 0xda, 0xf3, 0x23, 0x76, 0xf8, 0x2b, 0x78, 0x37, 0xd5, 0x4e, 0x92, 0xfa, 0x59, 0x41, + 0x7d, 0x7a, 0x3d, 0x49, 0x05, 0xa7, 0x09, 0xa3, 0x65, 0x29, 0x9b, 0x29, 0xe6, 0x0b, 0x03, 0xf4, + 0x89, 0xcb, 0x16, 0xcd, 0xd8, 0xbf, 0x64, 0x41, 0x49, 0xa2, 0x9d, 0x84, 0x16, 0x6f, 0x0d, 0x86, + 0x43, 0x36, 0x09, 0x72, 0x68, 0xec, 0x6e, 0x1d, 0xe7, 0xf3, 0x15, 0xdf, 0x69, 0xfc, 0x7f, 0x88, + 0x25, 0x0d, 0x26, 0x9a, 0x57, 0xdd, 0x7f, 0x87, 0x88, 0xe6, 0x55, 0x7f, 0x72, 0x2e, 0xa5, 0x3f, + 0x60, 0x7d, 0xd6, 0x64, 0x5d, 0x94, 0xf5, 0x6a, 0x07, 0x64, 0xcb, 0xbd, 0x97, 0x64, 0xbd, 0xaa, + 0xac, 0x14, 0x0b, 0x28, 0x7a, 0x03, 0xc6, 0xea, 0x52, 0x26, 0x1b, 0xef, 0xf0, 0x8b, 0x5d, 0xf5, + 0x03, 0x4a, 0x95, 0xc4, 0x65, 0x21, 0x4b, 0x5a, 0x7d, 0x6c, 0x50, 0x33, 0xcd, 0x08, 0x8a, 0xbd, + 0xcc, 0x08, 0x62, 0xba, 0xf9, 0x4a, 0xf5, 0x1f, 0xb7, 0x60, 0x88, 0xcb, 0xe2, 0xfa, 0x13, 0x85, + 0x6a, 0x9a, 0xb5, 0x78, 0xec, 0x6e, 0xd3, 0x42, 0xa1, 0x29, 0x43, 0x6b, 0x50, 0x62, 0x3f, 0x98, + 0x2c, 0xb1, 0x98, 0x6f, 0xe5, 0xcf, 0x5b, 0xd5, 0x3b, 0x78, 0x5b, 0x56, 0xc3, 0x31, 0x05, 0xfb, + 0x47, 0x8a, 0xf4, 0x74, 0x8b, 0x51, 0x8d, 0x4b, 0xdf, 0x7a, 0x78, 0x97, 0x7e, 0xe1, 0x61, 0x5d, + 0xfa, 0xdb, 0x30, 0x59, 0xd7, 0xf4, 0x70, 0xf1, 0x4c, 0x5e, 0xea, 0xba, 0x48, 0x34, 0x95, 0x1d, + 0x97, 0xb2, 0x2c, 0x99, 0x44, 0x70, 0x92, 0x2a, 0xfa, 0x0e, 0x18, 0xe3, 0xf3, 0x2c, 0x5a, 0xe1, + 0x96, 0x18, 0xef, 0xcb, 0x5f, 0x2f, 0x7a, 0x13, 0x5c, 0x2a, 0xa7, 0x55, 0xc7, 0x06, 0x31, 0xfb, + 0x8f, 0x2d, 0x40, 0xcb, 0xed, 0x1d, 0xd2, 0x22, 0x81, 0xd3, 0x8c, 0xc5, 0xe9, 0x3f, 0x68, 0xc1, + 0x2c, 0x49, 0x15, 0x2f, 0xf9, 0xad, 0x96, 0x78, 0xb4, 0xe4, 0xbc, 0xab, 0x97, 0x73, 0xea, 0x28, + 0x37, 0x88, 0xd9, 0x3c, 0x0c, 0x9c, 0xdb, 0x1e, 0x5a, 0x83, 0x19, 0x7e, 0x4b, 0x2a, 0x80, 0x66, + 0xeb, 0xfd, 0xa8, 0x20, 0x3c, 0xb3, 0x91, 0x46, 0xc1, 0x59, 0xf5, 0xec, 0xef, 0x19, 0x83, 0xdc, + 0x5e, 0xbc, 0xab, 0x47, 0x78, 0x57, 0x8f, 0xf0, 0xae, 0x1e, 0xe1, 0x5d, 0x3d, 0xc2, 0xbb, 0x7a, + 0x84, 0x6f, 0x79, 0x3d, 0xc2, 0x5f, 0xb1, 0xe0, 0xb4, 0xba, 0x06, 0x8c, 0x87, 0xef, 0x67, 0x61, + 0x86, 0x6f, 0xb7, 0xa5, 0xa6, 0xe3, 0xb6, 0x36, 0x48, 0xab, 0xdd, 0x74, 0x22, 0xa9, 0x75, 0xbf, + 0x92, 0xb9, 0x72, 0x13, 0x16, 0xab, 0x46, 0x45, 0x6e, 0xfa, 0x9f, 0x01, 0xc0, 0x59, 0xcd, 0xd8, + 0x3f, 0x3f, 0x02, 0x83, 0xcb, 0x7b, 0xc4, 0x8b, 0x4e, 0xe0, 0x89, 0x50, 0x87, 0x09, 0xd7, 0xdb, + 0xf3, 0x9b, 0x7b, 0xa4, 0xc1, 0xe1, 0x47, 0x79, 0xc9, 0x9e, 0x11, 0xa4, 0x27, 0x56, 0x0d, 0x12, + 0x38, 0x41, 0xf2, 0x61, 0x48, 0x93, 0xaf, 0xc2, 0x10, 0x3f, 0xc4, 0x85, 0x28, 0x39, 0xf3, 0xcc, + 0x66, 0x83, 0x28, 0xae, 0xa6, 0x58, 0xd2, 0xcd, 0x2f, 0x09, 0x51, 0x1d, 0x7d, 0x06, 0x26, 0xb6, + 0xdc, 0x20, 0x8c, 0x36, 0xdc, 0x16, 0x09, 0x23, 0xa7, 0xd5, 0x7e, 0x00, 0xe9, 0xb1, 0x1a, 0x87, + 0x15, 0x83, 0x12, 0x4e, 0x50, 0x46, 0xdb, 0x30, 0xde, 0x74, 0xf4, 0xa6, 0x86, 0x8f, 0xdc, 0x94, + 0xba, 0x1d, 0x6e, 0xe8, 0x84, 0xb0, 0x49, 0x97, 0x6e, 0xa7, 0x3a, 0x13, 0x80, 0x8e, 0x30, 0xb1, + 0x80, 0xda, 0x4e, 0x5c, 0xf2, 0xc9, 0x61, 0x94, 0xd1, 0x61, 0x06, 0xb2, 0x25, 0x93, 0xd1, 0xd1, + 0xcc, 0x60, 0x3f, 0x0d, 0x25, 0x42, 0x87, 0x90, 0x12, 0x16, 0x17, 0xcc, 0xe5, 0xfe, 0xfa, 0xba, + 0xe6, 0xd6, 0x03, 0xdf, 0x94, 0xdb, 0x2f, 0x4b, 0x4a, 0x38, 0x26, 0x8a, 0x96, 0x60, 0x28, 0x24, + 0x81, 0x4b, 0x42, 0x71, 0xd5, 0x74, 0x99, 0x46, 0x86, 0xc6, 0x7d, 0x4b, 0xf8, 0x6f, 0x2c, 0xaa, + 0xd2, 0xe5, 0xe5, 0x30, 0x91, 0x26, 0xbb, 0x0c, 0xb4, 0xe5, 0xb5, 0xc0, 0x4a, 0xb1, 0x80, 0xa2, + 0xd7, 0x60, 0x38, 0x20, 0x4d, 0xa6, 0x18, 0x1a, 0xef, 0x7f, 0x91, 0x73, 0x3d, 0x13, 0xaf, 0x87, + 0x25, 0x01, 0x74, 0x1d, 0x50, 0x40, 0x28, 0xa3, 0xe4, 0x7a, 0xdb, 0xca, 0x6c, 0x54, 0x1c, 0xb4, + 0x8a, 0x21, 0xc5, 0x31, 0x86, 0x74, 0x2b, 0xc2, 0x19, 0xd5, 0xd0, 0x55, 0x98, 0x56, 0xa5, 0xab, + 0x5e, 0x18, 0x39, 0xf4, 0x80, 0x9b, 0x64, 0xb4, 0x94, 0x9c, 0x02, 0x27, 0x11, 0x70, 0xba, 0x8e, + 0xfd, 0x25, 0x0b, 0xf8, 0x38, 0x9f, 0xc0, 0xeb, 0xfc, 0x55, 0xf3, 0x75, 0x7e, 0x36, 0x77, 0xe6, + 0x72, 0x5e, 0xe6, 0x5f, 0xb2, 0x60, 0x54, 0x9b, 0xd9, 0x78, 0xcd, 0x5a, 0x5d, 0xd6, 0x6c, 0x07, + 0xa6, 0xe8, 0x4a, 0xbf, 0xb9, 0x19, 0x92, 0x60, 0x8f, 0x34, 0xd8, 0xc2, 0x2c, 0x3c, 0xd8, 0xc2, + 0x54, 0x26, 0x6a, 0x37, 0x12, 0x04, 0x71, 0xaa, 0x09, 0xfb, 0xd3, 0xb2, 0xab, 0xca, 0xa2, 0xaf, + 0xae, 0xe6, 0x3c, 0x61, 0xd1, 0xa7, 0x66, 0x15, 0xc7, 0x38, 0x74, 0xab, 0xed, 0xf8, 0x61, 0x94, + 0xb4, 0xe8, 0xbb, 0xe6, 0x87, 0x11, 0x66, 0x10, 0xfb, 0x79, 0x80, 0xe5, 0x7b, 0xa4, 0xce, 0x57, + 0xac, 0xfe, 0x78, 0xb0, 0xf2, 0x1f, 0x0f, 0xf6, 0x6f, 0x5a, 0x30, 0xb1, 0xb2, 0x64, 0xdc, 0x5c, + 0xf3, 0x00, 0xfc, 0xc5, 0x73, 0xe7, 0xce, 0xba, 0x54, 0x87, 0x73, 0x8d, 0xa6, 0x2a, 0xc5, 0x1a, + 0x06, 0x3a, 0x0b, 0xc5, 0x66, 0xc7, 0x13, 0xe2, 0xc3, 0x61, 0x7a, 0x3d, 0xde, 0xe8, 0x78, 0x98, + 0x96, 0x69, 0x2e, 0x05, 0xc5, 0xbe, 0x5d, 0x0a, 0x7a, 0x86, 0x12, 0x40, 0x65, 0x18, 0xbc, 0x7b, + 0xd7, 0x6d, 0x70, 0x87, 0x4d, 0xa1, 0xaa, 0xbf, 0x73, 0x67, 0xb5, 0x12, 0x62, 0x5e, 0x6e, 0x7f, + 0xa1, 0x08, 0x73, 0x2b, 0x4d, 0x72, 0xef, 0x6d, 0x3a, 0xad, 0xf6, 0xeb, 0x10, 0x71, 0x34, 0x41, + 0xcc, 0x51, 0x9d, 0x5e, 0x7a, 0x8f, 0xc7, 0x16, 0x0c, 0x73, 0x83, 0x36, 0xe9, 0xc2, 0xfa, 0x4a, + 0x56, 0xeb, 0xf9, 0x03, 0x32, 0xcf, 0x0d, 0xe3, 0x84, 0x47, 0x9c, 0xba, 0x30, 0x45, 0x29, 0x96, + 0xc4, 0xe7, 0x5e, 0x86, 0x31, 0x1d, 0xf3, 0x48, 0xee, 0x67, 0x7f, 0xa1, 0x08, 0x53, 0xb4, 0x07, + 0x0f, 0x75, 0x22, 0x6e, 0xa5, 0x27, 0xe2, 0xb8, 0x5d, 0x90, 0x7a, 0xcf, 0xc6, 0x1b, 0xc9, 0xd9, + 0xb8, 0x92, 0x37, 0x1b, 0x27, 0x3d, 0x07, 0xdf, 0x6d, 0xc1, 0xcc, 0x4a, 0xd3, 0xaf, 0xef, 0x26, + 0xdc, 0x84, 0x5e, 0x84, 0x51, 0x7a, 0x1c, 0x87, 0x86, 0xc7, 0xbc, 0x11, 0x43, 0x41, 0x80, 0xb0, + 0x8e, 0xa7, 0x55, 0xbb, 0x75, 0x6b, 0xb5, 0x92, 0x15, 0x7a, 0x41, 0x80, 0xb0, 0x8e, 0x67, 0xff, + 0x9a, 0x05, 0xe7, 0xae, 0x2e, 0x2d, 0xc7, 0x4b, 0x31, 0x15, 0xfd, 0xe1, 0x22, 0x0c, 0xb5, 0x1b, + 0x5a, 0x57, 0x62, 0xf1, 0x6a, 0x85, 0xf5, 0x42, 0x40, 0xdf, 0x29, 0x91, 0x4d, 0x6e, 0x01, 0x5c, + 0xc5, 0xd5, 0x25, 0x71, 0xee, 0x4a, 0x6d, 0x8a, 0x95, 0xab, 0x4d, 0x79, 0x1f, 0x0c, 0xd3, 0x7b, + 0xc1, 0xad, 0xcb, 0x7e, 0x73, 0x05, 0x2d, 0x2f, 0xc2, 0x12, 0x66, 0xff, 0xb4, 0x05, 0x33, 0x57, + 0xdd, 0x88, 0x5e, 0xda, 0xc9, 0xf0, 0x06, 0xf4, 0xd6, 0x0e, 0xdd, 0xc8, 0x0f, 0xf6, 0x93, 0xe1, + 0x0d, 0xb0, 0x82, 0x60, 0x0d, 0x8b, 0x7f, 0xd0, 0x9e, 0xcb, 0x2c, 0xb4, 0x0b, 0xa6, 0xfe, 0x0a, + 0x8b, 0x72, 0xac, 0x30, 0xe8, 0x78, 0x35, 0xdc, 0x80, 0x89, 0xfe, 0xf6, 0xc5, 0xc1, 0xad, 0xc6, + 0xab, 0x22, 0x01, 0x38, 0xc6, 0xb1, 0xff, 0xd0, 0x82, 0xf2, 0xd5, 0x66, 0x27, 0x8c, 0x48, 0xb0, + 0x15, 0xe6, 0x1c, 0xba, 0xcf, 0x43, 0x89, 0x48, 0x41, 0xbb, 0xe8, 0xb5, 0x62, 0x44, 0x95, 0x04, + 0x9e, 0x47, 0x59, 0x50, 0x78, 0x7d, 0xf8, 0x32, 0x1e, 0xcd, 0x19, 0x6d, 0x05, 0x10, 0xd1, 0xdb, + 0xd2, 0xc3, 0x4e, 0x30, 0xff, 0xf5, 0xe5, 0x14, 0x14, 0x67, 0xd4, 0xb0, 0x7f, 0xcc, 0x82, 0xd3, + 0xea, 0x83, 0xdf, 0x71, 0x9f, 0x69, 0x7f, 0xa5, 0x00, 0xe3, 0xd7, 0x36, 0x36, 0xaa, 0x57, 0x49, + 0xa4, 0xad, 0xca, 0xee, 0xea, 0x73, 0xac, 0x69, 0x01, 0xbb, 0xbd, 0x11, 0x3b, 0x91, 0xdb, 0x9c, + 0xe7, 0xd1, 0x8b, 0xe6, 0x57, 0xbd, 0xe8, 0x66, 0x50, 0x8b, 0x02, 0xd7, 0xdb, 0xce, 0x5c, 0xe9, + 0x92, 0x67, 0x29, 0xe6, 0xf1, 0x2c, 0xe8, 0x79, 0x18, 0x62, 0xe1, 0x93, 0xe4, 0x24, 0x3c, 0xaa, + 0x9e, 0x58, 0xac, 0xf4, 0xf0, 0xa0, 0x5c, 0xba, 0x85, 0x57, 0xf9, 0x1f, 0x2c, 0x50, 0xd1, 0x2d, + 0x18, 0xdd, 0x89, 0xa2, 0xf6, 0x35, 0xe2, 0x34, 0x48, 0x20, 0x4f, 0xd9, 0xf3, 0x59, 0xa7, 0x2c, + 0x1d, 0x04, 0x8e, 0x16, 0x1f, 0x4c, 0x71, 0x59, 0x88, 0x75, 0x3a, 0x76, 0x0d, 0x20, 0x86, 0x1d, + 0x93, 0x02, 0xc4, 0xde, 0x80, 0x12, 0xfd, 0xdc, 0x85, 0xa6, 0xeb, 0x74, 0x57, 0x31, 0x3f, 0x0d, + 0x25, 0xa9, 0x40, 0x0e, 0x85, 0xaf, 0x35, 0xbb, 0x91, 0xa4, 0x7e, 0x39, 0xc4, 0x31, 0xdc, 0xde, + 0x82, 0x53, 0xcc, 0x1c, 0xd0, 0x89, 0x76, 0x8c, 0xd5, 0xd7, 0x7b, 0x9a, 0x9f, 0x11, 0x2f, 0x36, + 0xde, 0xe7, 0x59, 0xcd, 0x9d, 0x71, 0x4c, 0x52, 0x8c, 0x5f, 0x6f, 0xf6, 0xd7, 0x07, 0xe0, 0xd1, + 0xd5, 0x5a, 0x7e, 0xf8, 0x8f, 0x97, 0x60, 0x8c, 0x33, 0x82, 0x74, 0xd2, 0x9d, 0xa6, 0x68, 0x57, + 0xc9, 0x36, 0x37, 0x34, 0x18, 0x36, 0x30, 0xd1, 0x39, 0x28, 0xba, 0x6f, 0x7a, 0x49, 0x67, 0x9f, + 0xd5, 0xd7, 0xd7, 0x31, 0x2d, 0xa7, 0x60, 0xca, 0x53, 0xf2, 0xc3, 0x5a, 0x81, 0x15, 0x5f, 0xf9, + 0x2a, 0x4c, 0xb8, 0x61, 0x3d, 0x74, 0x57, 0x3d, 0xba, 0x03, 0xb5, 0x3d, 0xac, 0xa4, 0x09, 0xb4, + 0xd3, 0x0a, 0x8a, 0x13, 0xd8, 0xda, 0xcd, 0x31, 0xd8, 0x37, 0x5f, 0xda, 0xd3, 0xf9, 0x98, 0x1e, + 0xec, 0x6d, 0xf6, 0x75, 0x21, 0x13, 0x52, 0x8b, 0x83, 0x9d, 0x7f, 0x70, 0x88, 0x25, 0x8c, 0x3e, + 0xd5, 0xea, 0x3b, 0x4e, 0x7b, 0xa1, 0x13, 0xed, 0x54, 0xdc, 0xb0, 0xee, 0xef, 0x91, 0x60, 0x9f, + 0xbd, 0xb2, 0x47, 0xe2, 0xa7, 0x9a, 0x02, 0x2c, 0x5d, 0x5b, 0xa8, 0x52, 0x4c, 0x9c, 0xae, 0x83, + 0x16, 0x60, 0x52, 0x16, 0xd6, 0x48, 0xc8, 0x0e, 0xf7, 0x51, 0x46, 0x46, 0xb9, 0xdf, 0x88, 0x62, + 0x45, 0x24, 0x89, 0x6f, 0xb2, 0xae, 0x70, 0x1c, 0xac, 0xeb, 0x87, 0x60, 0xdc, 0xf5, 0xdc, 0xc8, + 0x75, 0x22, 0x9f, 0x6b, 0x58, 0xf8, 0x83, 0x9a, 0x89, 0x8e, 0x57, 0x75, 0x00, 0x36, 0xf1, 0xec, + 0xff, 0x32, 0x00, 0xd3, 0x6c, 0xda, 0xde, 0x5d, 0x61, 0xdf, 0x4a, 0x2b, 0xec, 0x56, 0x7a, 0x85, + 0x1d, 0x07, 0x4f, 0xfe, 0xc0, 0xcb, 0xec, 0x33, 0x50, 0x52, 0x1e, 0x47, 0xd2, 0xe5, 0xd0, 0xca, + 0x71, 0x39, 0xec, 0x7d, 0x2f, 0x4b, 0xa3, 0xad, 0x62, 0xa6, 0xd1, 0xd6, 0x97, 0x2d, 0x88, 0x55, + 0x06, 0xe8, 0x75, 0x28, 0xb5, 0x7d, 0x66, 0x8b, 0x18, 0x48, 0x03, 0xdf, 0xf7, 0x76, 0xd5, 0x39, + 0xf0, 0x08, 0x48, 0x01, 0x1f, 0x85, 0xaa, 0xac, 0x8a, 0x63, 0x2a, 0xe8, 0x3a, 0x0c, 0xb7, 0x03, + 0x52, 0x8b, 0x58, 0x78, 0x8e, 0xfe, 0x09, 0xf2, 0x55, 0xc3, 0x2b, 0x62, 0x49, 0xc1, 0xfe, 0xaf, + 0x16, 0x4c, 0x25, 0x51, 0xd1, 0x87, 0x61, 0x80, 0xdc, 0x23, 0x75, 0xd1, 0xdf, 0xcc, 0x4b, 0x36, + 0x16, 0x3a, 0xf0, 0x01, 0xa0, 0xff, 0x31, 0xab, 0x85, 0xae, 0xc1, 0x30, 0xbd, 0x61, 0xaf, 0xaa, + 0x50, 0x54, 0x8f, 0xe7, 0xdd, 0xd2, 0x8a, 0x55, 0xe1, 0x9d, 0x13, 0x45, 0x58, 0x56, 0x67, 0x96, + 0x52, 0xf5, 0x76, 0x8d, 0x3e, 0x5e, 0xa2, 0x6e, 0x6f, 0xec, 0x8d, 0xa5, 0x2a, 0x47, 0x12, 0xd4, + 0xb8, 0xa5, 0x94, 0x2c, 0xc4, 0x31, 0x11, 0xfb, 0x67, 0x2d, 0x00, 0x6e, 0x18, 0xe6, 0x78, 0xdb, + 0xe4, 0x04, 0xe4, 0xe4, 0x15, 0x18, 0x08, 0xdb, 0xa4, 0xde, 0xcd, 0x4c, 0x36, 0xee, 0x4f, 0xad, + 0x4d, 0xea, 0xf1, 0x8a, 0xa3, 0xff, 0x30, 0xab, 0x6d, 0x7f, 0x2f, 0xc0, 0x44, 0x8c, 0xb6, 0x1a, + 0x91, 0x16, 0x7a, 0xd6, 0x08, 0x53, 0x70, 0x36, 0x11, 0xa6, 0xa0, 0xc4, 0xb0, 0x35, 0x91, 0xec, + 0x67, 0xa0, 0xd8, 0x72, 0xee, 0x09, 0x99, 0xdb, 0xd3, 0xdd, 0xbb, 0x41, 0xe9, 0xcf, 0xaf, 0x39, + 0xf7, 0xf8, 0xb3, 0xf4, 0x69, 0xb9, 0x43, 0xd6, 0x9c, 0x7b, 0x87, 0xdc, 0x18, 0x96, 0x9d, 0xd2, + 0x37, 0xdc, 0x30, 0xfa, 0xdc, 0x7f, 0x8e, 0xff, 0xb3, 0x7d, 0x47, 0x1b, 0x61, 0x6d, 0xb9, 0x9e, + 0xb0, 0x79, 0xea, 0xab, 0x2d, 0xd7, 0x4b, 0xb6, 0xe5, 0x7a, 0x7d, 0xb4, 0xe5, 0x7a, 0xe8, 0x2d, + 0x18, 0x16, 0x26, 0x89, 0x22, 0x2c, 0xd0, 0xe5, 0x3e, 0xda, 0x13, 0x16, 0x8d, 0xbc, 0xcd, 0xcb, + 0xf2, 0xd9, 0x2d, 0x4a, 0x7b, 0xb6, 0x2b, 0x1b, 0x44, 0x7f, 0xd5, 0x82, 0x09, 0xf1, 0x1b, 0x93, + 0x37, 0x3b, 0x24, 0x8c, 0x04, 0x5b, 0xfa, 0xc1, 0xfe, 0xfb, 0x20, 0x2a, 0xf2, 0xae, 0x7c, 0x50, + 0xde, 0x33, 0x26, 0xb0, 0x67, 0x8f, 0x12, 0xbd, 0x40, 0x7f, 0xdf, 0x82, 0x53, 0x2d, 0xe7, 0x1e, + 0x6f, 0x91, 0x97, 0x61, 0x27, 0x72, 0x7d, 0xa1, 0xda, 0xff, 0x70, 0x7f, 0xd3, 0x9f, 0xaa, 0xce, + 0x3b, 0x29, 0xf5, 0x8f, 0xa7, 0xb2, 0x50, 0x7a, 0x76, 0x35, 0xb3, 0x5f, 0x73, 0x5b, 0x30, 0x22, + 0xd7, 0x5b, 0x86, 0x70, 0xa3, 0xa2, 0xf3, 0xdc, 0x47, 0xb6, 0x08, 0xd5, 0xdd, 0xff, 0x69, 0x3b, + 0x62, 0xad, 0x3d, 0xd4, 0x76, 0x3e, 0x03, 0x63, 0xfa, 0x1a, 0x7b, 0xa8, 0x6d, 0xbd, 0x09, 0x33, + 0x19, 0x6b, 0xe9, 0xa1, 0x36, 0x79, 0x17, 0xce, 0xe6, 0xae, 0x8f, 0x87, 0xd9, 0xb0, 0xfd, 0x15, + 0x4b, 0x3f, 0x07, 0x4f, 0x40, 0x59, 0xb1, 0x64, 0x2a, 0x2b, 0xce, 0x77, 0xdf, 0x39, 0x39, 0x1a, + 0x8b, 0x37, 0xf4, 0x4e, 0xd3, 0x53, 0x1d, 0xbd, 0x06, 0x43, 0x4d, 0x5a, 0x22, 0x0d, 0x5b, 0xed, + 0xde, 0x3b, 0x32, 0x66, 0x26, 0x59, 0x79, 0x88, 0x05, 0x05, 0xfb, 0x17, 0x2c, 0x18, 0x38, 0x81, + 0x91, 0xc0, 0xe6, 0x48, 0x3c, 0x9b, 0x4b, 0x5a, 0x44, 0x48, 0x9e, 0xc7, 0xce, 0xdd, 0xe5, 0x7b, + 0x11, 0xf1, 0x42, 0x76, 0x23, 0x67, 0x0e, 0xcc, 0x4f, 0x5a, 0x30, 0x73, 0xc3, 0x77, 0x1a, 0x8b, + 0x4e, 0xd3, 0xf1, 0xea, 0x24, 0x58, 0xf5, 0xb6, 0x8f, 0x64, 0x95, 0x5d, 0xe8, 0x69, 0x95, 0xbd, + 0x24, 0x8d, 0x9a, 0x06, 0xf2, 0xe7, 0x8f, 0x72, 0xd2, 0xc9, 0xc0, 0x2d, 0x86, 0xf9, 0xed, 0x0e, + 0x20, 0xbd, 0x97, 0xc2, 0x47, 0x06, 0xc3, 0xb0, 0xcb, 0xfb, 0x2b, 0x26, 0xf1, 0xc9, 0x6c, 0x0e, + 0x37, 0xf5, 0x79, 0x9a, 0xf7, 0x07, 0x2f, 0xc0, 0x92, 0x90, 0xfd, 0x12, 0x64, 0x3a, 0xda, 0xf7, + 0x96, 0x4b, 0xd8, 0x1f, 0x87, 0x69, 0x56, 0xf3, 0x88, 0x92, 0x01, 0x3b, 0x21, 0x4d, 0xcd, 0x08, + 0xc1, 0x67, 0x7f, 0xde, 0x82, 0xc9, 0xf5, 0x44, 0x64, 0xb2, 0x8b, 0x4c, 0xff, 0x9a, 0x21, 0xc4, + 0xaf, 0xb1, 0x52, 0x2c, 0xa0, 0xc7, 0x2e, 0xe4, 0xfa, 0x33, 0x0b, 0xe2, 0xd8, 0x17, 0x27, 0xc0, + 0xbe, 0x2d, 0x19, 0xec, 0x5b, 0x26, 0x23, 0xab, 0xba, 0x93, 0xc7, 0xbd, 0xa1, 0xeb, 0x2a, 0x2a, + 0x54, 0x17, 0x1e, 0x36, 0x26, 0xc3, 0x97, 0xe2, 0x84, 0x19, 0x3a, 0x4a, 0xc6, 0x89, 0xb2, 0x7f, + 0xab, 0x00, 0x48, 0xe1, 0xf6, 0x1d, 0xb5, 0x2a, 0x5d, 0xe3, 0x78, 0xa2, 0x56, 0xed, 0x01, 0x62, + 0x16, 0x04, 0x81, 0xe3, 0x85, 0x9c, 0xac, 0x2b, 0xc4, 0x7a, 0x47, 0x33, 0x4f, 0x98, 0x13, 0x4d, + 0xa2, 0x1b, 0x29, 0x6a, 0x38, 0xa3, 0x05, 0xcd, 0x32, 0x64, 0xb0, 0x5f, 0xcb, 0x90, 0xa1, 0x1e, + 0x7e, 0x70, 0x3f, 0x63, 0xc1, 0xb8, 0x1a, 0xa6, 0x77, 0x88, 0x95, 0xba, 0xea, 0x4f, 0xce, 0x01, + 0x5a, 0xd5, 0xba, 0xcc, 0x2e, 0x96, 0x6f, 0x67, 0xfe, 0x8c, 0x4e, 0xd3, 0x7d, 0x8b, 0xa8, 0x98, + 0x81, 0x65, 0xe1, 0x9f, 0x28, 0x4a, 0x0f, 0x0f, 0xca, 0xe3, 0xea, 0x1f, 0x8f, 0x89, 0x1c, 0x57, + 0xa1, 0x47, 0xf2, 0x64, 0x62, 0x29, 0xa2, 0x17, 0x61, 0xb0, 0xbd, 0xe3, 0x84, 0x24, 0xe1, 0xcd, + 0x33, 0x58, 0xa5, 0x85, 0x87, 0x07, 0xe5, 0x09, 0x55, 0x81, 0x95, 0x60, 0x8e, 0xdd, 0x7f, 0x2c, + 0xb0, 0xf4, 0xe2, 0xec, 0x19, 0x0b, 0xec, 0x8f, 0x2d, 0x18, 0x58, 0xf7, 0x1b, 0x27, 0x71, 0x04, + 0xbc, 0x6a, 0x1c, 0x01, 0x8f, 0xe5, 0x85, 0xab, 0xcf, 0xdd, 0xfd, 0x2b, 0x89, 0xdd, 0x7f, 0x3e, + 0x97, 0x42, 0xf7, 0x8d, 0xdf, 0x82, 0x51, 0x16, 0x04, 0x5f, 0x78, 0x2e, 0x3d, 0x6f, 0x6c, 0xf8, + 0x72, 0x62, 0xc3, 0x4f, 0x6a, 0xa8, 0xda, 0x4e, 0x7f, 0x0a, 0x86, 0x85, 0x2b, 0x4c, 0xd2, 0x2d, + 0x54, 0xe0, 0x62, 0x09, 0xb7, 0x7f, 0xbc, 0x08, 0x46, 0xd0, 0x7d, 0xf4, 0x4b, 0x16, 0xcc, 0x07, + 0xdc, 0x44, 0xb6, 0x51, 0xe9, 0x04, 0xae, 0xb7, 0x5d, 0xab, 0xef, 0x90, 0x46, 0xa7, 0xe9, 0x7a, + 0xdb, 0xab, 0xdb, 0x9e, 0xaf, 0x8a, 0x97, 0xef, 0x91, 0x7a, 0x87, 0xa9, 0xdd, 0x7a, 0x44, 0xf8, + 0x57, 0xa6, 0xe6, 0xcf, 0xdd, 0x3f, 0x28, 0xcf, 0xe3, 0x23, 0xd1, 0xc6, 0x47, 0xec, 0x0b, 0xfa, + 0x35, 0x0b, 0x2e, 0xf3, 0x58, 0xf4, 0xfd, 0xf7, 0xbf, 0xcb, 0x6b, 0xb9, 0x2a, 0x49, 0xc5, 0x44, + 0x36, 0x48, 0xd0, 0x5a, 0xfc, 0x90, 0x18, 0xd0, 0xcb, 0xd5, 0xa3, 0xb5, 0x85, 0x8f, 0xda, 0x39, + 0xfb, 0x9f, 0x17, 0x61, 0x5c, 0xc4, 0x8c, 0x12, 0x77, 0xc0, 0x8b, 0xc6, 0x92, 0x78, 0x3c, 0xb1, + 0x24, 0xa6, 0x0d, 0xe4, 0xe3, 0x39, 0xfe, 0x43, 0x98, 0xa6, 0x87, 0xf3, 0x35, 0xe2, 0x04, 0xd1, + 0x26, 0x71, 0xb8, 0xc1, 0x57, 0xf1, 0xc8, 0xa7, 0xbf, 0x92, 0x4f, 0xde, 0x48, 0x12, 0xc3, 0x69, + 0xfa, 0xdf, 0x4a, 0x77, 0x8e, 0x07, 0x53, 0xa9, 0xb0, 0x5f, 0x9f, 0x80, 0x92, 0xf2, 0xe3, 0x10, + 0x87, 0x4e, 0xf7, 0xe8, 0x79, 0x49, 0x0a, 0x5c, 0xfc, 0x15, 0xfb, 0x10, 0xc5, 0xe4, 0xec, 0x7f, + 0x58, 0x30, 0x1a, 0xe4, 0x93, 0xb8, 0x0e, 0x23, 0x4e, 0x18, 0xba, 0xdb, 0x1e, 0x69, 0x74, 0x93, + 0x50, 0xa6, 0x9a, 0x61, 0xbe, 0x34, 0x0b, 0xa2, 0x26, 0x56, 0x34, 0xd0, 0x35, 0x6e, 0x56, 0xb7, + 0x47, 0xba, 0x89, 0x27, 0x53, 0xd4, 0x40, 0x1a, 0xde, 0xed, 0x11, 0x2c, 0xea, 0xa3, 0x4f, 0x72, + 0xbb, 0xc7, 0xeb, 0x9e, 0x7f, 0xd7, 0xbb, 0xea, 0xfb, 0x32, 0x2e, 0x43, 0x7f, 0x04, 0xa7, 0xa5, + 0xb5, 0xa3, 0xaa, 0x8e, 0x4d, 0x6a, 0xfd, 0xc5, 0xd1, 0xfc, 0x2c, 0xb0, 0xd8, 0xdb, 0xa6, 0xdb, + 0x74, 0x88, 0x08, 0x4c, 0x8a, 0x80, 0x64, 0xb2, 0x4c, 0x8c, 0x5d, 0xe6, 0x53, 0xce, 0xac, 0x1d, + 0x0b, 0xd2, 0xaf, 0x9b, 0x24, 0x70, 0x92, 0xa6, 0xfd, 0x53, 0x16, 0x30, 0x17, 0xd2, 0x13, 0xe0, + 0x47, 0x3e, 0x62, 0xf2, 0x23, 0xb3, 0x79, 0x83, 0x9c, 0xc3, 0x8a, 0xbc, 0xc0, 0x57, 0x56, 0x35, + 0xf0, 0xef, 0xed, 0x0b, 0x63, 0x95, 0xde, 0xef, 0x0f, 0xfb, 0xff, 0x58, 0xfc, 0x10, 0x53, 0x5e, + 0x16, 0xe8, 0x3b, 0x61, 0xa4, 0xee, 0xb4, 0x9d, 0x3a, 0xcf, 0x10, 0x93, 0x2b, 0xd1, 0x33, 0x2a, + 0xcd, 0x2f, 0x89, 0x1a, 0x5c, 0x42, 0x25, 0x03, 0xdb, 0x8d, 0xc8, 0xe2, 0x9e, 0x52, 0x29, 0xd5, + 0xe4, 0xdc, 0x2e, 0x8c, 0x1b, 0xc4, 0x1e, 0xaa, 0x38, 0xe3, 0x3b, 0xf9, 0x15, 0xab, 0x02, 0x31, + 0xb6, 0x60, 0xda, 0xd3, 0xfe, 0xd3, 0x0b, 0x45, 0x3e, 0x2e, 0xdf, 0xdb, 0xeb, 0x12, 0x65, 0xb7, + 0x8f, 0xe6, 0x9d, 0x9a, 0x20, 0x83, 0xd3, 0x94, 0xed, 0x9f, 0xb0, 0xe0, 0x11, 0x1d, 0x51, 0x73, + 0x80, 0xe9, 0xa5, 0x24, 0xa9, 0xc0, 0x88, 0xdf, 0x26, 0x81, 0x13, 0xf9, 0x81, 0xb8, 0x35, 0x2e, + 0xc9, 0x41, 0xbf, 0x29, 0xca, 0x0f, 0x45, 0xbc, 0x73, 0x49, 0x5d, 0x96, 0x63, 0x55, 0x93, 0xbe, + 0x3e, 0xd9, 0x60, 0x84, 0xc2, 0xd5, 0x89, 0x9d, 0x01, 0x4c, 0x93, 0x1e, 0x62, 0x01, 0xb1, 0xbf, + 0x6e, 0xf1, 0x85, 0xa5, 0x77, 0x1d, 0xbd, 0x09, 0x53, 0x2d, 0x27, 0xaa, 0xef, 0x2c, 0xdf, 0x6b, + 0x07, 0x5c, 0xe5, 0x24, 0xc7, 0xe9, 0xe9, 0x5e, 0xe3, 0xa4, 0x7d, 0x64, 0x6c, 0xca, 0xb9, 0x96, + 0x20, 0x86, 0x53, 0xe4, 0xd1, 0x26, 0x8c, 0xb2, 0x32, 0xe6, 0xc5, 0x17, 0x76, 0x63, 0x0d, 0xf2, + 0x5a, 0x53, 0xc6, 0x08, 0x6b, 0x31, 0x1d, 0xac, 0x13, 0xb5, 0xbf, 0x5c, 0xe4, 0xbb, 0x9d, 0xb1, + 0xf2, 0x4f, 0xc1, 0x70, 0xdb, 0x6f, 0x2c, 0xad, 0x56, 0xb0, 0x98, 0x05, 0x75, 0x8d, 0x54, 0x79, + 0x31, 0x96, 0x70, 0x74, 0x09, 0x46, 0xc4, 0x4f, 0xa9, 0x22, 0x64, 0x67, 0xb3, 0xc0, 0x0b, 0xb1, + 0x82, 0xa2, 0xe7, 0x00, 0xda, 0x81, 0xbf, 0xe7, 0x36, 0x58, 0x74, 0x89, 0xa2, 0x69, 0x47, 0x54, + 0x55, 0x10, 0xac, 0x61, 0xa1, 0x57, 0x60, 0xbc, 0xe3, 0x85, 0x9c, 0x1d, 0xd1, 0x62, 0xc9, 0x2a, + 0x0b, 0x97, 0x5b, 0x3a, 0x10, 0x9b, 0xb8, 0x68, 0x01, 0x86, 0x22, 0x87, 0xd9, 0xc5, 0x0c, 0xe6, + 0x9b, 0xfb, 0x6e, 0x50, 0x0c, 0x3d, 0x19, 0x09, 0xad, 0x80, 0x45, 0x45, 0xf4, 0x09, 0xe9, 0x50, + 0xcb, 0x0f, 0x76, 0x61, 0x67, 0xdf, 0xdf, 0x25, 0xa0, 0xb9, 0xd3, 0x0a, 0xfb, 0x7d, 0x83, 0x16, + 0x7a, 0x19, 0x80, 0xdc, 0x8b, 0x48, 0xe0, 0x39, 0x4d, 0x65, 0xcd, 0xa6, 0xf8, 0x82, 0x8a, 0xbf, + 0xee, 0x47, 0xb7, 0x42, 0xb2, 0xac, 0x30, 0xb0, 0x86, 0x6d, 0xff, 0x5a, 0x09, 0x20, 0xe6, 0xdb, + 0xd1, 0x5b, 0xa9, 0x83, 0xeb, 0x99, 0xee, 0x9c, 0xfe, 0xf1, 0x9d, 0x5a, 0xe8, 0xfb, 0x2c, 0x18, + 0x75, 0x9a, 0x4d, 0xbf, 0xee, 0xf0, 0x68, 0xbf, 0x85, 0xee, 0x07, 0xa7, 0x68, 0x7f, 0x21, 0xae, + 0xc1, 0xbb, 0xf0, 0xbc, 0x5c, 0xa1, 0x1a, 0xa4, 0x67, 0x2f, 0xf4, 0x86, 0xd1, 0x07, 0xe4, 0x53, + 0xb1, 0x68, 0x0c, 0xa5, 0x7a, 0x2a, 0x96, 0xd8, 0x1d, 0xa1, 0xbf, 0x12, 0x6f, 0x19, 0xaf, 0xc4, + 0x81, 0x7c, 0x8f, 0x41, 0x83, 0x7d, 0xed, 0xf5, 0x40, 0x44, 0x55, 0x3d, 0x7a, 0xc0, 0x60, 0xbe, + 0x7b, 0x9e, 0xf6, 0x4e, 0xea, 0x11, 0x39, 0xe0, 0x33, 0x30, 0xd9, 0x30, 0x99, 0x00, 0xb1, 0x12, + 0x9f, 0xcc, 0xa3, 0x9b, 0xe0, 0x19, 0xe2, 0x6b, 0x3f, 0x01, 0xc0, 0x49, 0xc2, 0xa8, 0xca, 0x83, + 0x49, 0xac, 0x7a, 0x5b, 0xbe, 0xf0, 0xf5, 0xb0, 0x73, 0xe7, 0x72, 0x3f, 0x8c, 0x48, 0x8b, 0x62, + 0xc6, 0xb7, 0xfb, 0xba, 0xa8, 0x8b, 0x15, 0x15, 0xf4, 0x1a, 0x0c, 0x31, 0xff, 0xac, 0x70, 0x76, + 0x24, 0x5f, 0xe2, 0x6c, 0x46, 0x47, 0x8b, 0x37, 0x24, 0xfb, 0x1b, 0x62, 0x41, 0x01, 0x5d, 0x93, + 0xde, 0x8f, 0xe1, 0xaa, 0x77, 0x2b, 0x24, 0xcc, 0xfb, 0xb1, 0xb4, 0xf8, 0xde, 0xd8, 0xb1, 0x91, + 0x97, 0x67, 0xa6, 0x2c, 0x33, 0x6a, 0x52, 0x2e, 0x4a, 0xfc, 0x97, 0x99, 0xd0, 0x66, 0x21, 0xbf, + 0x7b, 0x66, 0xb6, 0xb4, 0x78, 0x38, 0x6f, 0x9b, 0x24, 0x70, 0x92, 0x26, 0xe5, 0x48, 0xf9, 0xae, + 0x17, 0xde, 0x22, 0xbd, 0xce, 0x0e, 0xfe, 0x10, 0x67, 0xb7, 0x11, 0x2f, 0xc1, 0xa2, 0xfe, 0x89, + 0xb2, 0x07, 0x73, 0x1e, 0x4c, 0x25, 0xb7, 0xe8, 0x43, 0x65, 0x47, 0x7e, 0x7f, 0x00, 0x26, 0xcc, + 0x25, 0x85, 0x2e, 0x43, 0x49, 0x10, 0x51, 0xd9, 0x04, 0xd4, 0x2e, 0x59, 0x93, 0x00, 0x1c, 0xe3, + 0xb0, 0x24, 0x12, 0xac, 0xba, 0x66, 0x1e, 0x1c, 0x27, 0x91, 0x50, 0x10, 0xac, 0x61, 0xd1, 0x87, + 0xd5, 0xa6, 0xef, 0x47, 0xea, 0x42, 0x52, 0xeb, 0x6e, 0x91, 0x95, 0x62, 0x01, 0xa5, 0x17, 0xd1, + 0x2e, 0x09, 0x3c, 0xd2, 0x34, 0xe3, 0x0e, 0xab, 0x8b, 0xe8, 0xba, 0x0e, 0xc4, 0x26, 0x2e, 0xbd, + 0x4e, 0xfd, 0x90, 0x2d, 0x64, 0xf1, 0x7c, 0x8b, 0xcd, 0xad, 0x6b, 0xdc, 0x01, 0x5b, 0xc2, 0xd1, + 0xc7, 0xe1, 0x11, 0x15, 0x5b, 0x09, 0x73, 0x6d, 0x86, 0x6c, 0x71, 0xc8, 0x90, 0xb6, 0x3c, 0xb2, + 0x94, 0x8d, 0x86, 0xf3, 0xea, 0xa3, 0x57, 0x61, 0x42, 0xb0, 0xf8, 0x92, 0xe2, 0xb0, 0x69, 0x61, + 0x74, 0xdd, 0x80, 0xe2, 0x04, 0xb6, 0x8c, 0x9c, 0xcc, 0xb8, 0x6c, 0x49, 0x61, 0x24, 0x1d, 0x39, + 0x59, 0x87, 0xe3, 0x54, 0x0d, 0xb4, 0x00, 0x93, 0x9c, 0x07, 0x73, 0xbd, 0x6d, 0x3e, 0x27, 0xc2, + 0x99, 0x4b, 0x6d, 0xa9, 0x9b, 0x26, 0x18, 0x27, 0xf1, 0xd1, 0x4b, 0x30, 0xe6, 0x04, 0xf5, 0x1d, + 0x37, 0x22, 0xf5, 0xa8, 0x13, 0x70, 0x2f, 0x2f, 0xcd, 0x44, 0x6b, 0x41, 0x83, 0x61, 0x03, 0xd3, + 0x7e, 0x0b, 0x66, 0x32, 0x22, 0x33, 0xd0, 0x85, 0xe3, 0xb4, 0x5d, 0xf9, 0x4d, 0x09, 0x0b, 0xe7, + 0x85, 0xea, 0xaa, 0xfc, 0x1a, 0x0d, 0x8b, 0xae, 0x4e, 0x16, 0xc1, 0x41, 0x4b, 0x7c, 0xa8, 0x56, + 0xe7, 0x8a, 0x04, 0xe0, 0x18, 0xc7, 0xfe, 0x1f, 0x05, 0x98, 0xcc, 0xd0, 0xad, 0xb0, 0xe4, 0x7b, + 0x89, 0x47, 0x4a, 0x9c, 0x6b, 0xcf, 0x0c, 0xc4, 0x5d, 0x38, 0x42, 0x20, 0xee, 0x62, 0xaf, 0x40, + 0xdc, 0x03, 0x6f, 0x27, 0x10, 0xb7, 0x39, 0x62, 0x83, 0x7d, 0x8d, 0x58, 0x46, 0xf0, 0xee, 0xa1, + 0x23, 0x06, 0xef, 0x36, 0x06, 0x7d, 0xb8, 0x8f, 0x41, 0xff, 0x91, 0x02, 0x4c, 0x25, 0x4d, 0x49, + 0x4f, 0x40, 0x6e, 0xfb, 0x9a, 0x21, 0xb7, 0xbd, 0xd4, 0x8f, 0xf3, 0x6d, 0xae, 0x0c, 0x17, 0x27, + 0x64, 0xb8, 0xef, 0xef, 0x8b, 0x5a, 0x77, 0x79, 0xee, 0xdf, 0x2c, 0xc0, 0xe9, 0x4c, 0xef, 0xdf, + 0x13, 0x18, 0x9b, 0x9b, 0xc6, 0xd8, 0x3c, 0xdb, 0xb7, 0x63, 0x72, 0xee, 0x00, 0xdd, 0x49, 0x0c, + 0xd0, 0xe5, 0xfe, 0x49, 0x76, 0x1f, 0xa5, 0xaf, 0x15, 0xe1, 0x7c, 0x66, 0xbd, 0x58, 0xec, 0xb9, + 0x62, 0x88, 0x3d, 0x9f, 0x4b, 0x88, 0x3d, 0xed, 0xee, 0xb5, 0x8f, 0x47, 0x0e, 0x2a, 0x1c, 0x74, + 0x59, 0x98, 0x81, 0x07, 0x94, 0x81, 0x1a, 0x0e, 0xba, 0x8a, 0x10, 0x36, 0xe9, 0x7e, 0x2b, 0xc9, + 0x3e, 0xff, 0x9d, 0x05, 0x67, 0x33, 0xe7, 0xe6, 0x04, 0x64, 0x5d, 0xeb, 0xa6, 0xac, 0xeb, 0xa9, + 0xbe, 0x57, 0x6b, 0x8e, 0xf0, 0xeb, 0xcb, 0x83, 0x39, 0xdf, 0xc2, 0x5e, 0xf2, 0x37, 0x61, 0xd4, + 0xa9, 0xd7, 0x49, 0x18, 0xae, 0xf9, 0x0d, 0x15, 0x6b, 0xf8, 0x59, 0xf6, 0xce, 0x8a, 0x8b, 0x0f, + 0x0f, 0xca, 0x73, 0x49, 0x12, 0x31, 0x18, 0xeb, 0x14, 0xd0, 0x27, 0x61, 0x24, 0x14, 0xf7, 0xa6, + 0x98, 0xfb, 0xe7, 0xfb, 0x1c, 0x1c, 0x67, 0x93, 0x34, 0xcd, 0x60, 0x48, 0x4a, 0x52, 0xa1, 0x48, + 0x9a, 0x81, 0x53, 0x0a, 0xc7, 0x1a, 0x38, 0xe5, 0x39, 0x80, 0x3d, 0xf5, 0x18, 0x48, 0xca, 0x1f, + 0xb4, 0x67, 0x82, 0x86, 0x85, 0x3e, 0x0a, 0x53, 0x21, 0x8f, 0x16, 0xb8, 0xd4, 0x74, 0x42, 0xe6, + 0x47, 0x23, 0x56, 0x21, 0x0b, 0xb8, 0x54, 0x4b, 0xc0, 0x70, 0x0a, 0x1b, 0xad, 0xc8, 0x56, 0x59, + 0x68, 0x43, 0xbe, 0x30, 0x2f, 0xc6, 0x2d, 0x8a, 0xd4, 0xbf, 0xa7, 0x92, 0xc3, 0xcf, 0x06, 0x5e, + 0xab, 0x89, 0x3e, 0x09, 0x40, 0x97, 0x8f, 0x90, 0x43, 0x0c, 0xe7, 0x1f, 0x9e, 0xf4, 0x54, 0x69, + 0x64, 0x1a, 0x37, 0x33, 0x9f, 0xda, 0x8a, 0x22, 0x82, 0x35, 0x82, 0x68, 0x0b, 0xc6, 0xe3, 0x7f, + 0x71, 0x66, 0xcc, 0x23, 0xb6, 0xc0, 0xe4, 0xde, 0x15, 0x9d, 0x0e, 0x36, 0xc9, 0xda, 0x3f, 0x36, + 0x0c, 0x8f, 0x76, 0x39, 0x8b, 0xd1, 0x82, 0xa9, 0xef, 0x7d, 0x3a, 0xf9, 0x88, 0x9f, 0xcb, 0xac, + 0x6c, 0xbc, 0xea, 0x13, 0x4b, 0xbe, 0xf0, 0xb6, 0x97, 0xfc, 0x0f, 0x59, 0x9a, 0x78, 0x85, 0x5b, + 0x96, 0x7e, 0xe4, 0x88, 0x77, 0xcc, 0x31, 0xca, 0x5b, 0xb6, 0x32, 0x84, 0x16, 0xcf, 0xf5, 0xdd, + 0x9d, 0xfe, 0xa5, 0x18, 0x5f, 0xb1, 0x00, 0x09, 0xf1, 0x0a, 0x69, 0xa8, 0x0d, 0x25, 0xe4, 0x19, + 0x57, 0x8f, 0xfa, 0xfd, 0x0b, 0x29, 0x4a, 0x7c, 0x24, 0x5e, 0x96, 0x97, 0x41, 0x1a, 0xa1, 0xe7, + 0x98, 0x64, 0x74, 0x0f, 0x7d, 0x9c, 0x45, 0xd3, 0x75, 0xdf, 0x12, 0x1c, 0x90, 0xd8, 0x70, 0x2f, + 0x8a, 0x48, 0xba, 0xaa, 0x9c, 0xb2, 0xba, 0x99, 0xdd, 0xd5, 0x91, 0xb0, 0x41, 0xea, 0x64, 0xdf, + 0xdf, 0x1d, 0x78, 0x24, 0x67, 0xc8, 0x1e, 0xea, 0x33, 0xfc, 0x37, 0x2d, 0x38, 0xd7, 0x35, 0x2c, + 0xcc, 0x37, 0x21, 0x83, 0x68, 0x7f, 0xce, 0x82, 0xec, 0xc9, 0x36, 0xcc, 0xca, 0x2e, 0x43, 0xa9, + 0x4e, 0x0b, 0x35, 0x3f, 0xe0, 0x38, 0x40, 0x82, 0x04, 0xe0, 0x18, 0xc7, 0xb0, 0x1e, 0x2b, 0xf4, + 0xb4, 0x1e, 0xfb, 0x65, 0x0b, 0x52, 0x87, 0xfc, 0x09, 0x70, 0x1b, 0xab, 0x26, 0xb7, 0xf1, 0xde, + 0x7e, 0x46, 0x33, 0x87, 0xd1, 0xf8, 0xa3, 0x49, 0x38, 0x93, 0xe3, 0x96, 0xb7, 0x07, 0xd3, 0xdb, + 0x75, 0x62, 0x7a, 0x58, 0x77, 0x8b, 0x3c, 0xd4, 0xd5, 0x1d, 0x9b, 0x25, 0x87, 0x9d, 0x4e, 0xa1, + 0xe0, 0x74, 0x13, 0xe8, 0x73, 0x16, 0x9c, 0x72, 0xee, 0x86, 0xcb, 0x94, 0x6b, 0x74, 0xeb, 0x8b, + 0x4d, 0xbf, 0xbe, 0x4b, 0xaf, 0x64, 0xb9, 0x11, 0x5e, 0xc8, 0x94, 0xe4, 0xdd, 0xa9, 0xa5, 0xf0, + 0x8d, 0xe6, 0x59, 0xb6, 0xdc, 0x2c, 0x2c, 0x9c, 0xd9, 0x16, 0xc2, 0x22, 0x85, 0x02, 0x7d, 0x93, + 0x76, 0x89, 0x01, 0x90, 0xe5, 0x3f, 0xc9, 0xd9, 0x20, 0x09, 0xc1, 0x8a, 0x0e, 0xfa, 0x34, 0x94, + 0xb6, 0xa5, 0xbb, 0x6f, 0x06, 0x9b, 0x15, 0x0f, 0x64, 0x77, 0x27, 0x68, 0xae, 0x8e, 0x57, 0x48, + 0x38, 0x26, 0x8a, 0x5e, 0x85, 0xa2, 0xb7, 0x15, 0x76, 0x4b, 0x38, 0x9b, 0xb0, 0xbb, 0xe4, 0x91, + 0x36, 0xd6, 0x57, 0x6a, 0x98, 0x56, 0x44, 0xd7, 0xa0, 0x18, 0x6c, 0x36, 0x84, 0x18, 0x3a, 0x73, + 0x93, 0xe2, 0xc5, 0x4a, 0x4e, 0xaf, 0x18, 0x25, 0xbc, 0x58, 0xc1, 0x94, 0x04, 0xaa, 0xc2, 0x20, + 0xf3, 0x65, 0x13, 0x4c, 0x4d, 0xe6, 0xf3, 0xad, 0x8b, 0x4f, 0x28, 0x0f, 0xc7, 0xc1, 0x10, 0x30, + 0x27, 0x84, 0x36, 0x60, 0xa8, 0xce, 0x92, 0x93, 0x0a, 0x2e, 0xe6, 0x03, 0x99, 0x02, 0xe7, 0x2e, + 0x59, 0x5b, 0x85, 0xfc, 0x95, 0x61, 0x60, 0x41, 0x8b, 0x51, 0x25, 0xed, 0x9d, 0xad, 0x50, 0x24, + 0xef, 0xce, 0xa6, 0xda, 0x25, 0x19, 0xb1, 0xa0, 0xca, 0x30, 0xb0, 0xa0, 0x85, 0x5e, 0x86, 0xc2, + 0x56, 0x5d, 0xf8, 0xa9, 0x65, 0x4a, 0x9e, 0xcd, 0x60, 0x29, 0x8b, 0x43, 0xf7, 0x0f, 0xca, 0x85, + 0x95, 0x25, 0x5c, 0xd8, 0xaa, 0xa3, 0x75, 0x18, 0xde, 0xe2, 0xe1, 0x15, 0x84, 0x70, 0xf9, 0xc9, + 0xec, 0xc8, 0x0f, 0xa9, 0x08, 0x0c, 0xdc, 0xe7, 0x49, 0x00, 0xb0, 0x24, 0xc2, 0x32, 0x12, 0xa8, + 0x30, 0x11, 0x22, 0x4a, 0xdd, 0xfc, 0xd1, 0x42, 0x7b, 0x70, 0x26, 0x33, 0x0e, 0x36, 0x81, 0x35, + 0x8a, 0x74, 0x55, 0x3b, 0x6f, 0x75, 0x02, 0x16, 0x0a, 0x5c, 0x84, 0x33, 0xca, 0x5c, 0xd5, 0x0b, + 0x12, 0xa9, 0xdb, 0xaa, 0x56, 0x48, 0x38, 0x26, 0x8a, 0x76, 0x61, 0x7c, 0x2f, 0x6c, 0xef, 0x10, + 0xb9, 0xa5, 0x59, 0x74, 0xa3, 0x1c, 0xfe, 0xe8, 0xb6, 0x40, 0x74, 0x83, 0xa8, 0xe3, 0x34, 0x53, + 0xa7, 0x10, 0xe3, 0x65, 0x6f, 0xeb, 0xc4, 0xb0, 0x49, 0x9b, 0x0e, 0xff, 0x9b, 0x1d, 0x7f, 0x73, + 0x3f, 0x22, 0x22, 0xb8, 0x5c, 0xe6, 0xf0, 0xbf, 0xce, 0x51, 0xd2, 0xc3, 0x2f, 0x00, 0x58, 0x12, + 0x41, 0xb7, 0xc5, 0xf0, 0xb0, 0xd3, 0x73, 0x2a, 0x3f, 0x02, 0xec, 0x82, 0x44, 0xca, 0x19, 0x14, + 0x76, 0x5a, 0xc6, 0xa4, 0xd8, 0x29, 0xd9, 0xde, 0xf1, 0x23, 0xdf, 0x4b, 0x9c, 0xd0, 0xd3, 0xf9, + 0xa7, 0x64, 0x35, 0x03, 0x3f, 0x7d, 0x4a, 0x66, 0x61, 0xe1, 0xcc, 0xb6, 0x50, 0x03, 0x26, 0xda, + 0x7e, 0x10, 0xdd, 0xf5, 0x03, 0xb9, 0xbe, 0x50, 0x17, 0xe1, 0x98, 0x81, 0x29, 0x5a, 0x64, 0x71, + 0x1b, 0x4d, 0x08, 0x4e, 0xd0, 0x44, 0x1f, 0x83, 0xe1, 0xb0, 0xee, 0x34, 0xc9, 0xea, 0xcd, 0xd9, + 0x99, 0xfc, 0xeb, 0xa7, 0xc6, 0x51, 0x72, 0x56, 0x17, 0x8f, 0x8e, 0xc1, 0x51, 0xb0, 0x24, 0x87, + 0x56, 0x60, 0x90, 0x65, 0x9c, 0x63, 0x91, 0x10, 0x73, 0x02, 0xd9, 0xa6, 0xac, 0xe0, 0xf9, 0xd9, + 0xc4, 0x8a, 0x31, 0xaf, 0x4e, 0xf7, 0x80, 0x78, 0x23, 0xfa, 0xe1, 0xec, 0xe9, 0xfc, 0x3d, 0x20, + 0x9e, 0x96, 0x37, 0x6b, 0xdd, 0xf6, 0x80, 0x42, 0xc2, 0x31, 0x51, 0x7a, 0x32, 0xd3, 0xd3, 0xf4, + 0x4c, 0x17, 0xf3, 0xad, 0xdc, 0xb3, 0x94, 0x9d, 0xcc, 0xf4, 0x24, 0xa5, 0x24, 0xec, 0xdf, 0x1d, + 0x4e, 0xf3, 0x2c, 0x4c, 0xaa, 0xf0, 0x3d, 0x56, 0x4a, 0xe1, 0xfc, 0xc1, 0x7e, 0x85, 0x9c, 0xc7, + 0xf8, 0x14, 0xfa, 0x9c, 0x05, 0x67, 0xda, 0x99, 0x1f, 0x22, 0x18, 0x80, 0xfe, 0x64, 0xa5, 0xfc, + 0xd3, 0x55, 0xd4, 0xcc, 0x6c, 0x38, 0xce, 0x69, 0x29, 0xf9, 0xdc, 0x2c, 0xbe, 0xed, 0xe7, 0xe6, + 0x1a, 0x8c, 0xd4, 0xf9, 0x53, 0xa4, 0x6b, 0xb2, 0xee, 0xe4, 0xdb, 0x9b, 0xb1, 0x12, 0xe2, 0x0d, + 0xb3, 0x85, 0x15, 0x09, 0xf4, 0xc3, 0x16, 0x9c, 0x4b, 0x76, 0x1d, 0x13, 0x06, 0x16, 0xa1, 0x36, + 0xb9, 0x40, 0x63, 0x45, 0x7c, 0x7f, 0x8a, 0xff, 0x37, 0x90, 0x0f, 0x7b, 0x21, 0xe0, 0xee, 0x8d, + 0xa1, 0x4a, 0x86, 0x44, 0x65, 0xc8, 0xd4, 0x22, 0xf5, 0x21, 0x55, 0x79, 0x01, 0xc6, 0x5a, 0x7e, + 0xc7, 0x8b, 0x84, 0xb5, 0x97, 0xb0, 0x3c, 0x61, 0x16, 0x17, 0x6b, 0x5a, 0x39, 0x36, 0xb0, 0x12, + 0xb2, 0x98, 0x91, 0x07, 0x96, 0xc5, 0xbc, 0x01, 0x63, 0x9e, 0x66, 0x9e, 0x2c, 0xf8, 0x81, 0x8b, + 0xf9, 0x61, 0x72, 0x75, 0x63, 0x66, 0xde, 0x4b, 0xbd, 0x04, 0x1b, 0xd4, 0x4e, 0xd6, 0x0c, 0xec, + 0x4b, 0x56, 0x06, 0x53, 0xcf, 0x45, 0x31, 0x1f, 0x36, 0x45, 0x31, 0x17, 0x93, 0xa2, 0x98, 0x94, + 0x06, 0xc1, 0x90, 0xc2, 0xf4, 0x9f, 0x05, 0xa8, 0xdf, 0x50, 0x9b, 0x76, 0x13, 0x2e, 0xf4, 0xba, + 0x96, 0x98, 0xd9, 0x5f, 0x43, 0xe9, 0x8b, 0x63, 0xb3, 0xbf, 0xc6, 0x6a, 0x05, 0x33, 0x48, 0xbf, + 0x41, 0x9c, 0xec, 0xff, 0x66, 0x41, 0xb1, 0xea, 0x37, 0x4e, 0xe0, 0xc1, 0xfb, 0x11, 0xe3, 0xc1, + 0xfb, 0x68, 0xf6, 0x85, 0xd8, 0xc8, 0xd5, 0x7f, 0x2c, 0x27, 0xf4, 0x1f, 0xe7, 0xf2, 0x08, 0x74, + 0xd7, 0x76, 0xfc, 0x64, 0x11, 0x46, 0xab, 0x7e, 0x43, 0xd9, 0xdc, 0xff, 0xcb, 0x07, 0xb1, 0xb9, + 0xcf, 0xcd, 0x65, 0xa1, 0x51, 0x66, 0xd6, 0x82, 0xd2, 0xdd, 0xf8, 0x9b, 0xcc, 0xf4, 0xfe, 0x0e, + 0x71, 0xb7, 0x77, 0x22, 0xd2, 0x48, 0x7e, 0xce, 0xc9, 0x99, 0xde, 0xff, 0x6e, 0x01, 0x26, 0x13, + 0xad, 0xa3, 0x26, 0x8c, 0x37, 0x75, 0xe9, 0xba, 0x58, 0xa7, 0x0f, 0x24, 0x98, 0x17, 0xa6, 0xcb, + 0x5a, 0x11, 0x36, 0x89, 0xa3, 0x79, 0x00, 0xa5, 0x6e, 0x96, 0xe2, 0x55, 0xc6, 0xf5, 0x2b, 0x7d, + 0x74, 0x88, 0x35, 0x0c, 0xf4, 0x22, 0x8c, 0x46, 0x7e, 0xdb, 0x6f, 0xfa, 0xdb, 0xfb, 0xd7, 0x89, + 0x8c, 0xef, 0xa5, 0x0c, 0x12, 0x37, 0x62, 0x10, 0xd6, 0xf1, 0xd0, 0x3d, 0x98, 0x56, 0x44, 0x6a, + 0xc7, 0xa0, 0x71, 0x60, 0x52, 0x85, 0xf5, 0x24, 0x45, 0x9c, 0x6e, 0xc4, 0xfe, 0xe9, 0x22, 0x1f, + 0x62, 0x2f, 0x72, 0xdf, 0xdd, 0x0d, 0xef, 0xec, 0xdd, 0xf0, 0x35, 0x0b, 0xa6, 0x68, 0xeb, 0xcc, + 0xda, 0x4a, 0x5e, 0xf3, 0x2a, 0x30, 0xb7, 0xd5, 0x25, 0x30, 0xf7, 0x45, 0x7a, 0x6a, 0x36, 0xfc, + 0x4e, 0x24, 0x64, 0x77, 0xda, 0xb1, 0x48, 0x4b, 0xb1, 0x80, 0x0a, 0x3c, 0x12, 0x04, 0xc2, 0x43, + 0x54, 0xc7, 0x23, 0x41, 0x80, 0x05, 0x54, 0xc6, 0xed, 0x1e, 0xc8, 0x8e, 0xdb, 0xcd, 0xc3, 0xaf, + 0x0a, 0xbb, 0x1c, 0xc1, 0x70, 0x69, 0xe1, 0x57, 0xa5, 0xc1, 0x4e, 0x8c, 0x63, 0x7f, 0xa5, 0x08, + 0x63, 0x55, 0xbf, 0x11, 0xab, 0x9a, 0x5f, 0x30, 0x54, 0xcd, 0x17, 0x12, 0xaa, 0xe6, 0x29, 0x1d, + 0xf7, 0x5d, 0xc5, 0xf2, 0x37, 0x4a, 0xb1, 0xfc, 0xcf, 0x2c, 0x36, 0x6b, 0x95, 0xf5, 0x1a, 0x37, + 0xde, 0x43, 0x57, 0x60, 0x94, 0x1d, 0x30, 0xcc, 0x25, 0x59, 0xea, 0x5f, 0x59, 0x3e, 0xaa, 0xf5, + 0xb8, 0x18, 0xeb, 0x38, 0xe8, 0x12, 0x8c, 0x84, 0xc4, 0x09, 0xea, 0x3b, 0xea, 0x74, 0x15, 0xca, + 0x52, 0x5e, 0x86, 0x15, 0x14, 0xbd, 0x1e, 0x47, 0xfe, 0x2c, 0xe6, 0xbb, 0x38, 0xea, 0xfd, 0xe1, + 0x5b, 0x24, 0x3f, 0xdc, 0xa7, 0x7d, 0x07, 0x50, 0x1a, 0xbf, 0x8f, 0xd8, 0x74, 0x65, 0x33, 0x36, + 0x5d, 0x29, 0x15, 0x97, 0xee, 0x4f, 0x2d, 0x98, 0xa8, 0xfa, 0x0d, 0xba, 0x75, 0xbf, 0x95, 0xf6, + 0xa9, 0x1e, 0xf6, 0x78, 0xa8, 0x4b, 0xd8, 0xe3, 0x27, 0x60, 0xb0, 0xea, 0x37, 0x56, 0xab, 0xdd, + 0xe2, 0x0b, 0xd8, 0x7f, 0xcb, 0x82, 0xe1, 0xaa, 0xdf, 0x38, 0x01, 0xb5, 0xc0, 0x87, 0x4d, 0xb5, + 0xc0, 0x23, 0x39, 0xeb, 0x26, 0x47, 0x13, 0xf0, 0x37, 0x06, 0x60, 0x9c, 0xf6, 0xd3, 0xdf, 0x96, + 0x53, 0x69, 0x0c, 0x9b, 0xd5, 0xc7, 0xb0, 0x51, 0x2e, 0xdc, 0x6f, 0x36, 0xfd, 0xbb, 0xc9, 0x69, + 0x5d, 0x61, 0xa5, 0x58, 0x40, 0xd1, 0x33, 0x30, 0xd2, 0x0e, 0xc8, 0x9e, 0xeb, 0x0b, 0xf6, 0x56, + 0x53, 0xb2, 0x54, 0x45, 0x39, 0x56, 0x18, 0xf4, 0x59, 0x18, 0xba, 0x1e, 0xbd, 0xca, 0xeb, 0xbe, + 0xd7, 0xe0, 0x92, 0xf3, 0xa2, 0xc8, 0xcd, 0xa1, 0x95, 0x63, 0x03, 0x0b, 0xdd, 0x81, 0x12, 0xfb, + 0xcf, 0x8e, 0x9d, 0xa3, 0x67, 0x79, 0x15, 0x59, 0xff, 0x04, 0x01, 0x1c, 0xd3, 0x42, 0xcf, 0x01, + 0x44, 0x32, 0xbe, 0x7d, 0x28, 0xa2, 0xad, 0xa9, 0xa7, 0x80, 0x8a, 0x7c, 0x1f, 0x62, 0x0d, 0x0b, + 0x3d, 0x0d, 0xa5, 0xc8, 0x71, 0x9b, 0x37, 0x5c, 0x8f, 0x84, 0x4c, 0x22, 0x5e, 0x94, 0xc9, 0xf7, + 0x44, 0x21, 0x8e, 0xe1, 0x94, 0x15, 0x63, 0x91, 0x38, 0x78, 0x8e, 0xe8, 0x11, 0x86, 0xcd, 0x58, + 0xb1, 0x1b, 0xaa, 0x14, 0x6b, 0x18, 0x68, 0x07, 0x1e, 0x73, 0x3d, 0x96, 0xc7, 0x82, 0xd4, 0x76, + 0xdd, 0xf6, 0xc6, 0x8d, 0xda, 0x6d, 0x12, 0xb8, 0x5b, 0xfb, 0x8b, 0x4e, 0x7d, 0x97, 0x78, 0x32, + 0x7f, 0xe7, 0x7b, 0x45, 0x17, 0x1f, 0x5b, 0xed, 0x82, 0x8b, 0xbb, 0x52, 0xb2, 0x9f, 0x67, 0xeb, + 0xfd, 0x66, 0x0d, 0xbd, 0xdf, 0x38, 0x3a, 0xce, 0xe8, 0x47, 0xc7, 0xe1, 0x41, 0x79, 0xe8, 0x66, + 0x4d, 0x0b, 0x24, 0xf1, 0x12, 0x9c, 0xae, 0xfa, 0x8d, 0xaa, 0x1f, 0x44, 0x2b, 0x7e, 0x70, 0xd7, + 0x09, 0x1a, 0x72, 0x79, 0x95, 0x65, 0x28, 0x0d, 0x7a, 0x7e, 0x0e, 0xf2, 0xd3, 0xc5, 0x08, 0x93, + 0xf1, 0x3c, 0xe3, 0xd8, 0x8e, 0xe8, 0x00, 0x56, 0x67, 0xbc, 0x83, 0xca, 0x04, 0x73, 0xd5, 0x89, + 0x08, 0xba, 0xc9, 0x32, 0x5c, 0xc7, 0xd7, 0xa8, 0xa8, 0xfe, 0x94, 0x96, 0xe1, 0x3a, 0x06, 0x66, + 0xde, 0xbb, 0x66, 0x7d, 0xfb, 0xbf, 0x0f, 0xb2, 0x13, 0x35, 0x91, 0x4d, 0x04, 0x7d, 0x0a, 0x26, + 0x42, 0x72, 0xc3, 0xf5, 0x3a, 0xf7, 0xa4, 0x08, 0xa3, 0x8b, 0x0b, 0x5f, 0x6d, 0x59, 0xc7, 0xe4, + 0x82, 0x50, 0xb3, 0x0c, 0x27, 0xa8, 0xa1, 0x16, 0x4c, 0xdc, 0x75, 0xbd, 0x86, 0x7f, 0x37, 0x94, + 0xf4, 0x47, 0xf2, 0xe5, 0xa1, 0x77, 0x38, 0x66, 0xa2, 0x8f, 0x46, 0x73, 0x77, 0x0c, 0x62, 0x38, + 0x41, 0x9c, 0xae, 0xda, 0xa0, 0xe3, 0x2d, 0x84, 0xb7, 0x42, 0x12, 0x88, 0x5c, 0xe5, 0x6c, 0xd5, + 0x62, 0x59, 0x88, 0x63, 0x38, 0x5d, 0xb5, 0xec, 0xcf, 0xd5, 0xc0, 0xef, 0xf0, 0xd4, 0x15, 0x62, + 0xd5, 0x62, 0x55, 0x8a, 0x35, 0x0c, 0xba, 0xab, 0xd9, 0xbf, 0x75, 0xdf, 0xc3, 0xbe, 0x1f, 0xc9, + 0x73, 0x80, 0xe9, 0xf4, 0xb5, 0x72, 0x6c, 0x60, 0xa1, 0x15, 0x40, 0x61, 0xa7, 0xdd, 0x6e, 0x32, + 0xdb, 0x20, 0xa7, 0xc9, 0x48, 0x71, 0x7b, 0x89, 0x22, 0x0f, 0xbd, 0x5b, 0x4b, 0x41, 0x71, 0x46, + 0x0d, 0x7a, 0xc0, 0x6f, 0x89, 0xae, 0x0e, 0xb2, 0xae, 0x72, 0xdd, 0x49, 0x8d, 0xf7, 0x53, 0xc2, + 0xd0, 0x32, 0x0c, 0x87, 0xfb, 0x61, 0x3d, 0x12, 0x91, 0x12, 0x73, 0x12, 0x46, 0xd5, 0x18, 0x8a, + 0x96, 0xaf, 0x90, 0x57, 0xc1, 0xb2, 0x2e, 0xaa, 0xc3, 0x8c, 0xa0, 0xb8, 0xb4, 0xe3, 0x78, 0x2a, + 0xfd, 0x0e, 0x37, 0x91, 0xbe, 0x72, 0xff, 0xa0, 0x3c, 0x23, 0x5a, 0xd6, 0xc1, 0x87, 0x07, 0xe5, + 0x33, 0x55, 0xbf, 0x91, 0x01, 0xc1, 0x59, 0xd4, 0xf8, 0xe2, 0xab, 0xd7, 0xfd, 0x56, 0xbb, 0x1a, + 0xf8, 0x5b, 0x6e, 0x93, 0x74, 0xd3, 0x3f, 0xd5, 0x0c, 0x4c, 0xb1, 0xf8, 0x8c, 0x32, 0x9c, 0xa0, + 0x66, 0x7f, 0x27, 0x63, 0x82, 0x58, 0x7a, 0xee, 0xa8, 0x13, 0x10, 0xd4, 0x82, 0xf1, 0x36, 0xdb, + 0x26, 0x22, 0xa1, 0x84, 0x58, 0xeb, 0x2f, 0xf4, 0x29, 0x47, 0xb9, 0x4b, 0xef, 0x0e, 0xd3, 0xc6, + 0xa8, 0xaa, 0x93, 0xc3, 0x26, 0x75, 0xfb, 0xd7, 0x1f, 0x61, 0xd7, 0x68, 0x8d, 0x0b, 0x47, 0x86, + 0x85, 0x47, 0x86, 0x78, 0x8f, 0xcd, 0xe5, 0x4b, 0xe9, 0xe2, 0x69, 0x11, 0x5e, 0x1d, 0x58, 0xd6, + 0x45, 0x9f, 0x84, 0x09, 0xfa, 0xbc, 0x51, 0x57, 0x59, 0x38, 0x7b, 0x2a, 0x3f, 0x72, 0x86, 0xc2, + 0xd2, 0x93, 0xcd, 0xe8, 0x95, 0x71, 0x82, 0x18, 0x7a, 0x9d, 0xd9, 0xf4, 0x48, 0xd2, 0x85, 0x7e, + 0x48, 0xeb, 0xe6, 0x3b, 0x92, 0xac, 0x46, 0x04, 0x75, 0x60, 0x26, 0x9d, 0x9a, 0x2e, 0x9c, 0xb5, + 0xf3, 0xf9, 0xc4, 0x74, 0x76, 0xb9, 0x38, 0x2b, 0x48, 0x1a, 0x16, 0xe2, 0x2c, 0xfa, 0xe8, 0x06, + 0x8c, 0x8b, 0x1c, 0xd5, 0x62, 0xe5, 0x16, 0x0d, 0xe1, 0xe1, 0x38, 0xd6, 0x81, 0x87, 0xc9, 0x02, + 0x6c, 0x56, 0x46, 0xdb, 0x70, 0x4e, 0xcb, 0x19, 0x75, 0x35, 0x70, 0x98, 0x05, 0x80, 0xcb, 0x8e, + 0x53, 0xed, 0x82, 0x7f, 0xfc, 0xfe, 0x41, 0xf9, 0xdc, 0x46, 0x37, 0x44, 0xdc, 0x9d, 0x0e, 0xba, + 0x09, 0xa7, 0xb9, 0xdf, 0x77, 0x85, 0x38, 0x8d, 0xa6, 0xeb, 0x29, 0x0e, 0x82, 0x6f, 0xf9, 0xb3, + 0xf7, 0x0f, 0xca, 0xa7, 0x17, 0xb2, 0x10, 0x70, 0x76, 0x3d, 0xf4, 0x61, 0x28, 0x35, 0xbc, 0x50, + 0x8c, 0xc1, 0x90, 0x91, 0x96, 0xab, 0x54, 0x59, 0xaf, 0xa9, 0xef, 0x8f, 0xff, 0xe0, 0xb8, 0x02, + 0xda, 0xe6, 0x02, 0x66, 0x25, 0xf6, 0x18, 0x4e, 0xc5, 0xbd, 0x4a, 0x4a, 0x06, 0x0d, 0xcf, 0x4f, + 0xae, 0x59, 0x51, 0x0e, 0x11, 0x86, 0x53, 0xa8, 0x41, 0x18, 0xbd, 0x06, 0x48, 0x84, 0x7f, 0x5f, + 0xa8, 0xb3, 0x6c, 0x25, 0x4c, 0x1e, 0x3f, 0x62, 0xfa, 0x22, 0xd6, 0x52, 0x18, 0x38, 0xa3, 0x16, + 0xba, 0x46, 0x4f, 0x15, 0xbd, 0x54, 0x9c, 0x5a, 0x2a, 0x89, 0x62, 0x85, 0xb4, 0x03, 0xc2, 0x2c, + 0x9a, 0x4c, 0x8a, 0x38, 0x51, 0x0f, 0x35, 0xe0, 0x31, 0xa7, 0x13, 0xf9, 0x4c, 0x76, 0x6f, 0xa2, + 0x6e, 0xf8, 0xbb, 0xc4, 0x63, 0x6a, 0xb3, 0x91, 0xc5, 0x0b, 0x94, 0x45, 0x59, 0xe8, 0x82, 0x87, + 0xbb, 0x52, 0xa1, 0xac, 0xa5, 0xca, 0x9a, 0x0c, 0x66, 0x34, 0xaf, 0x8c, 0xcc, 0xc9, 0x2f, 0xc2, + 0xe8, 0x8e, 0x1f, 0x46, 0xeb, 0x24, 0xba, 0xeb, 0x07, 0xbb, 0x22, 0x2a, 0x6d, 0x1c, 0xe3, 0x3b, + 0x06, 0x61, 0x1d, 0x8f, 0xbe, 0x1d, 0x99, 0x51, 0xc7, 0x6a, 0x85, 0xe9, 0xd3, 0x47, 0xe2, 0x33, + 0xe6, 0x1a, 0x2f, 0xc6, 0x12, 0x2e, 0x51, 0x57, 0xab, 0x4b, 0x4c, 0x37, 0x9e, 0x40, 0x5d, 0xad, + 0x2e, 0x61, 0x09, 0xa7, 0xcb, 0x35, 0xdc, 0x71, 0x02, 0x52, 0x0d, 0xfc, 0x3a, 0x09, 0xb5, 0xc8, + 0xf2, 0x8f, 0xf2, 0x98, 0xbb, 0x74, 0xb9, 0xd6, 0xb2, 0x10, 0x70, 0x76, 0x3d, 0x44, 0xd2, 0xf9, + 0xd2, 0x26, 0xf2, 0x95, 0x1a, 0x69, 0x7e, 0xa6, 0xcf, 0x94, 0x69, 0x1e, 0x4c, 0xa9, 0x4c, 0x6d, + 0x3c, 0xca, 0x6e, 0x38, 0x3b, 0xc9, 0xd6, 0x76, 0xff, 0x21, 0x7a, 0x95, 0x9a, 0x68, 0x35, 0x41, + 0x09, 0xa7, 0x68, 0x1b, 0x01, 0xdb, 0xa6, 0x7a, 0x06, 0x6c, 0xbb, 0x0c, 0xa5, 0xb0, 0xb3, 0xd9, + 0xf0, 0x5b, 0x8e, 0xeb, 0x31, 0xdd, 0xb8, 0xf6, 0x88, 0xa9, 0x49, 0x00, 0x8e, 0x71, 0xd0, 0x0a, + 0x8c, 0x38, 0x52, 0x07, 0x84, 0xf2, 0x43, 0xf4, 0x28, 0xcd, 0x0f, 0x8f, 0x5a, 0x21, 0xb5, 0x3e, + 0xaa, 0x2e, 0x7a, 0x05, 0xc6, 0x85, 0xdf, 0xb2, 0x48, 0x12, 0x3a, 0x63, 0x3a, 0x97, 0xd5, 0x74, + 0x20, 0x36, 0x71, 0xd1, 0x2d, 0x18, 0x8d, 0xfc, 0x26, 0xf3, 0x90, 0xa2, 0x6c, 0xde, 0x99, 0xfc, + 0x60, 0x73, 0x1b, 0x0a, 0x4d, 0x17, 0xbf, 0xaa, 0xaa, 0x58, 0xa7, 0x83, 0x36, 0xf8, 0x7a, 0x67, + 0x71, 0xe4, 0x49, 0x38, 0xfb, 0x48, 0xfe, 0x9d, 0xa4, 0xc2, 0xcd, 0x9b, 0xdb, 0x41, 0xd4, 0xc4, + 0x3a, 0x19, 0x74, 0x15, 0xa6, 0xdb, 0x81, 0xeb, 0xb3, 0x35, 0xa1, 0xd4, 0x7f, 0xb3, 0x66, 0xd6, + 0xa8, 0x6a, 0x12, 0x01, 0xa7, 0xeb, 0x30, 0xb7, 0x73, 0x51, 0x38, 0x7b, 0x96, 0x67, 0xbe, 0xe0, + 0x6f, 0x42, 0x5e, 0x86, 0x15, 0x14, 0xad, 0xb1, 0x93, 0x98, 0x8b, 0x33, 0x66, 0xe7, 0xf2, 0xa3, + 0x02, 0xe9, 0x62, 0x0f, 0xce, 0xbc, 0xaa, 0xbf, 0x38, 0xa6, 0x80, 0x1a, 0x5a, 0xc2, 0x49, 0xfa, + 0x62, 0x08, 0x67, 0x1f, 0xeb, 0x62, 0x59, 0x97, 0x78, 0x5e, 0xc4, 0x0c, 0x81, 0x51, 0x1c, 0xe2, + 0x04, 0x4d, 0xf4, 0x51, 0x98, 0x12, 0xb1, 0x0c, 0xe3, 0x61, 0x3a, 0x17, 0xdb, 0x9d, 0xe3, 0x04, + 0x0c, 0xa7, 0xb0, 0x79, 0xe6, 0x09, 0x67, 0xb3, 0x49, 0xc4, 0xd1, 0x77, 0xc3, 0xf5, 0x76, 0xc3, + 0xd9, 0xf3, 0xec, 0x7c, 0x10, 0x99, 0x27, 0x92, 0x50, 0x9c, 0x51, 0x03, 0x6d, 0xc0, 0x54, 0x3b, + 0x20, 0xa4, 0xc5, 0x18, 0x7d, 0x71, 0x9f, 0x95, 0x79, 0xd4, 0x05, 0xda, 0x93, 0x6a, 0x02, 0x76, + 0x98, 0x51, 0x86, 0x53, 0x14, 0xd0, 0x5d, 0x18, 0xf1, 0xf7, 0x48, 0xb0, 0x43, 0x9c, 0xc6, 0xec, + 0x85, 0x2e, 0x7e, 0x10, 0xe2, 0x72, 0xbb, 0x29, 0x70, 0x13, 0x26, 0x03, 0xb2, 0xb8, 0xb7, 0xc9, + 0x80, 0x6c, 0x0c, 0xfd, 0x45, 0x0b, 0xce, 0x4a, 0x2d, 0x43, 0xad, 0x4d, 0x47, 0x7d, 0xc9, 0xf7, + 0xc2, 0x28, 0xe0, 0x71, 0x02, 0x1e, 0xcf, 0xf7, 0x9d, 0xdf, 0xc8, 0xa9, 0xa4, 0x24, 0xaa, 0x67, + 0xf3, 0x30, 0x42, 0x9c, 0xdf, 0x22, 0x5a, 0x82, 0xe9, 0x90, 0x44, 0xf2, 0x30, 0x5a, 0x08, 0x57, + 0x5e, 0xaf, 0xac, 0xcf, 0x3e, 0xc1, 0x83, 0x1c, 0xd0, 0xcd, 0x50, 0x4b, 0x02, 0x71, 0x1a, 0x1f, + 0x5d, 0x81, 0x82, 0x1f, 0xce, 0xbe, 0xb7, 0x4b, 0x8e, 0x52, 0xfa, 0x14, 0xe7, 0xa6, 0x63, 0x37, + 0x6b, 0xb8, 0xe0, 0x87, 0x73, 0xdf, 0x0e, 0xd3, 0x29, 0x8e, 0xe1, 0x28, 0xb9, 0x7d, 0xe6, 0x76, + 0x61, 0xdc, 0x98, 0x95, 0x87, 0xaa, 0xa5, 0xfe, 0x37, 0xc3, 0x50, 0x52, 0x1a, 0x4c, 0x74, 0xd9, + 0x54, 0x4c, 0x9f, 0x4d, 0x2a, 0xa6, 0x47, 0xaa, 0x7e, 0xc3, 0xd0, 0x45, 0x6f, 0x64, 0x44, 0x83, + 0xcb, 0x3b, 0x03, 0xfa, 0x37, 0x90, 0xd7, 0xc4, 0xc2, 0xc5, 0xbe, 0x35, 0xdc, 0x03, 0x5d, 0x25, + 0xcd, 0x57, 0x61, 0xda, 0xf3, 0x19, 0x9b, 0x4a, 0x1a, 0x92, 0x07, 0x61, 0xac, 0x46, 0x49, 0x0f, + 0xaf, 0x92, 0x40, 0xc0, 0xe9, 0x3a, 0xb4, 0x41, 0xce, 0x2b, 0x24, 0x45, 0xdb, 0x9c, 0x95, 0xc0, + 0x02, 0x8a, 0x9e, 0x80, 0xc1, 0xb6, 0xdf, 0x58, 0xad, 0x0a, 0x16, 0x55, 0x8b, 0x41, 0xda, 0x58, + 0xad, 0x62, 0x0e, 0x43, 0x0b, 0x30, 0xc4, 0x7e, 0x84, 0xb3, 0x63, 0xf9, 0x71, 0x34, 0x58, 0x0d, + 0x2d, 0x73, 0x12, 0xab, 0x80, 0x45, 0x45, 0x26, 0x62, 0xa3, 0x7c, 0x3d, 0x13, 0xb1, 0x0d, 0x3f, + 0xa0, 0x88, 0x4d, 0x12, 0xc0, 0x31, 0x2d, 0x74, 0x0f, 0x4e, 0x1b, 0x6f, 0x29, 0xbe, 0x44, 0x48, + 0x28, 0x7c, 0xf9, 0x9f, 0xe8, 0xfa, 0x88, 0x12, 0x1a, 0xf1, 0x73, 0xa2, 0xd3, 0xa7, 0x57, 0xb3, + 0x28, 0xe1, 0xec, 0x06, 0x50, 0x13, 0xa6, 0xeb, 0xa9, 0x56, 0x47, 0xfa, 0x6f, 0x55, 0x4d, 0x68, + 0xba, 0xc5, 0x34, 0x61, 0xf4, 0x0a, 0x8c, 0xbc, 0xe9, 0x87, 0xec, 0x78, 0x17, 0x6c, 0xb5, 0x74, + 0x04, 0x1f, 0x79, 0xfd, 0x66, 0x8d, 0x95, 0x1f, 0x1e, 0x94, 0x47, 0xab, 0x7e, 0x43, 0xfe, 0xc5, + 0xaa, 0x02, 0xfa, 0x7e, 0x0b, 0xe6, 0xd2, 0x8f, 0x35, 0xd5, 0xe9, 0xf1, 0xfe, 0x3b, 0x6d, 0x8b, + 0x46, 0xe7, 0x96, 0x73, 0xc9, 0xe1, 0x2e, 0x4d, 0xd9, 0xbf, 0x68, 0x31, 0x41, 0x9d, 0xd0, 0x34, + 0x91, 0xb0, 0xd3, 0x3c, 0x89, 0x84, 0xb1, 0xcb, 0x86, 0x12, 0xec, 0x81, 0x2d, 0x24, 0xfe, 0x85, + 0xc5, 0x2c, 0x24, 0x4e, 0xd0, 0x15, 0xe2, 0x75, 0x18, 0x89, 0x64, 0x22, 0xdf, 0x2e, 0x39, 0x6e, + 0xb5, 0x4e, 0x31, 0x2b, 0x11, 0xc5, 0xe4, 0xaa, 0x9c, 0xbd, 0x8a, 0x8c, 0xfd, 0x8f, 0xf9, 0x0c, + 0x48, 0xc8, 0x09, 0xe8, 0x1a, 0x2a, 0xa6, 0xae, 0xa1, 0xdc, 0xe3, 0x0b, 0x72, 0x74, 0x0e, 0xff, + 0xc8, 0xec, 0x37, 0x13, 0xee, 0xbc, 0xd3, 0x4d, 0x73, 0xec, 0xcf, 0x5b, 0x00, 0x71, 0x88, 0xe7, + 0x3e, 0x52, 0xb5, 0xbd, 0x44, 0xd9, 0x5a, 0x3f, 0xf2, 0xeb, 0x7e, 0x53, 0x68, 0xd2, 0x1e, 0x8b, + 0xd5, 0x1d, 0xbc, 0xfc, 0x50, 0xfb, 0x8d, 0x15, 0x36, 0x2a, 0xcb, 0x80, 0x72, 0xc5, 0x58, 0x01, + 0x67, 0x04, 0x93, 0xfb, 0xa2, 0x05, 0xa7, 0xb2, 0xec, 0x6a, 0xe9, 0x23, 0x89, 0x8b, 0xb9, 0x94, + 0xd9, 0x94, 0x9a, 0xcd, 0xdb, 0xa2, 0x1c, 0x2b, 0x8c, 0xbe, 0x73, 0xe0, 0x1d, 0x2d, 0xb6, 0xf2, + 0x4d, 0x18, 0xaf, 0x06, 0x44, 0xbb, 0x5c, 0x5f, 0xe5, 0x41, 0x0a, 0x78, 0x7f, 0x9e, 0x39, 0x72, + 0x80, 0x02, 0xfb, 0xcb, 0x05, 0x38, 0xc5, 0xad, 0x0f, 0x16, 0xf6, 0x7c, 0xb7, 0x51, 0xf5, 0x1b, + 0xc2, 0x7b, 0xea, 0x13, 0x30, 0xd6, 0xd6, 0x64, 0x93, 0xdd, 0xe2, 0x84, 0xea, 0x32, 0xcc, 0x58, + 0x9a, 0xa2, 0x97, 0x62, 0x83, 0x16, 0x6a, 0xc0, 0x18, 0xd9, 0x73, 0xeb, 0x4a, 0x85, 0x5d, 0x38, + 0xf2, 0x45, 0xa7, 0x5a, 0x59, 0xd6, 0xe8, 0x60, 0x83, 0xea, 0x43, 0xc8, 0x4c, 0x6d, 0xff, 0xa8, + 0x05, 0x8f, 0xe4, 0x44, 0x15, 0xa5, 0xcd, 0xdd, 0x65, 0x76, 0x1e, 0x62, 0xd9, 0xaa, 0xe6, 0xb8, + 0xf5, 0x07, 0x16, 0x50, 0xf4, 0x31, 0x00, 0x6e, 0xbd, 0x41, 0x5f, 0xe9, 0xbd, 0xc2, 0x2f, 0x1a, + 0x91, 0xe3, 0xb4, 0x20, 0x60, 0xb2, 0x3e, 0xd6, 0x68, 0xd9, 0x5f, 0x1c, 0x80, 0x41, 0x9e, 0x45, + 0xbf, 0x0a, 0xc3, 0x3b, 0x3c, 0x4f, 0x4c, 0xd7, 0x79, 0xa3, 0xb8, 0x32, 0xf5, 0x4c, 0x3c, 0x6f, + 0x5a, 0x29, 0x96, 0x64, 0xd0, 0x1a, 0xcc, 0xf0, 0x74, 0x3d, 0xcd, 0x0a, 0x69, 0x3a, 0xfb, 0x52, + 0xec, 0xc7, 0x73, 0xcb, 0x2a, 0xf1, 0xe7, 0x6a, 0x1a, 0x05, 0x67, 0xd5, 0x43, 0xaf, 0xc2, 0x04, + 0x7d, 0x86, 0xf9, 0x9d, 0x48, 0x52, 0xe2, 0x89, 0x7a, 0xd4, 0xbb, 0x6f, 0xc3, 0x80, 0xe2, 0x04, + 0x36, 0x7a, 0x05, 0xc6, 0xdb, 0x29, 0x01, 0xe7, 0x60, 0x2c, 0x09, 0x30, 0x85, 0x9a, 0x26, 0x2e, + 0x33, 0xad, 0xed, 0x30, 0x43, 0xe2, 0x8d, 0x9d, 0x80, 0x84, 0x3b, 0x7e, 0xb3, 0xc1, 0xd8, 0xbf, + 0x41, 0xcd, 0xb4, 0x36, 0x01, 0xc7, 0xa9, 0x1a, 0x94, 0xca, 0x96, 0xe3, 0x36, 0x3b, 0x01, 0x89, + 0xa9, 0x0c, 0x99, 0x54, 0x56, 0x12, 0x70, 0x9c, 0xaa, 0xd1, 0x5b, 0x72, 0x3b, 0x7c, 0x3c, 0x92, + 0x5b, 0xfb, 0x6f, 0x17, 0xc0, 0x98, 0xda, 0x6f, 0xdd, 0x04, 0x42, 0xf4, 0xcb, 0xb6, 0x83, 0x76, + 0x5d, 0x58, 0xc6, 0x64, 0x7e, 0x59, 0x9c, 0x17, 0x94, 0x7f, 0x19, 0xfd, 0x8f, 0x59, 0x2d, 0xba, + 0xc7, 0x4f, 0x57, 0x03, 0x9f, 0x5e, 0x72, 0x32, 0x8c, 0x95, 0xb2, 0x60, 0x1f, 0x96, 0xde, 0xbd, + 0x5d, 0x02, 0x3e, 0x0a, 0x1b, 0x5f, 0x4e, 0xc1, 0x30, 0x22, 0xa9, 0x09, 0x5f, 0x7b, 0x49, 0x05, + 0x5d, 0x81, 0x51, 0x91, 0x15, 0x86, 0x19, 0x5a, 0xf3, 0xcd, 0xc4, 0x8c, 0x5e, 0x2a, 0x71, 0x31, + 0xd6, 0x71, 0xec, 0x1f, 0x28, 0xc0, 0x4c, 0x86, 0xa7, 0x0c, 0xbf, 0x46, 0xb6, 0xdd, 0x30, 0x52, + 0xa9, 0x47, 0xb5, 0x6b, 0x84, 0x97, 0x63, 0x85, 0x41, 0xcf, 0x2a, 0x7e, 0x51, 0x25, 0x2f, 0x27, + 0x61, 0x89, 0x2e, 0xa0, 0x47, 0x4c, 0xe2, 0x79, 0x01, 0x06, 0x3a, 0x21, 0x91, 0xa1, 0x5a, 0xd5, + 0xb5, 0xcd, 0xd4, 0x9a, 0x0c, 0x42, 0x9f, 0x51, 0xdb, 0x4a, 0x43, 0xa8, 0x3d, 0xa3, 0xb8, 0x8e, + 0x90, 0xc3, 0x68, 0xe7, 0x22, 0xe2, 0x39, 0x5e, 0x24, 0x1e, 0x5b, 0x71, 0xcc, 0x41, 0x56, 0x8a, + 0x05, 0xd4, 0xfe, 0x42, 0x11, 0xce, 0xe6, 0xfa, 0xce, 0xd1, 0xae, 0xb7, 0x7c, 0xcf, 0x8d, 0x7c, + 0x65, 0x4d, 0xc4, 0xe3, 0x0c, 0x92, 0xf6, 0xce, 0x9a, 0x28, 0xc7, 0x0a, 0x03, 0x5d, 0x84, 0x41, + 0x26, 0x14, 0x4d, 0x25, 0x61, 0x5d, 0xac, 0xf0, 0xc0, 0x53, 0x1c, 0xdc, 0x77, 0xde, 0xec, 0x27, + 0x28, 0x07, 0xe3, 0x37, 0x93, 0x17, 0x0a, 0xed, 0xae, 0xef, 0x37, 0x31, 0x03, 0xa2, 0xf7, 0x89, + 0xf1, 0x4a, 0x98, 0xcf, 0x60, 0xa7, 0xe1, 0x87, 0xda, 0xa0, 0x3d, 0x05, 0xc3, 0xbb, 0x64, 0x3f, + 0x70, 0xbd, 0xed, 0xa4, 0x59, 0xd5, 0x75, 0x5e, 0x8c, 0x25, 0xdc, 0xcc, 0x1a, 0x38, 0x7c, 0xdc, + 0x09, 0xaf, 0x47, 0x7a, 0xb2, 0x27, 0x3f, 0x54, 0x84, 0x49, 0xbc, 0x58, 0x79, 0x77, 0x22, 0x6e, + 0xa5, 0x27, 0xe2, 0xb8, 0x13, 0x5e, 0xf7, 0x9e, 0x8d, 0x9f, 0xb3, 0x60, 0x92, 0xe5, 0xa6, 0x11, + 0x1e, 0xf2, 0xae, 0xef, 0x9d, 0xc0, 0x53, 0xe0, 0x09, 0x18, 0x0c, 0x68, 0xa3, 0xc9, 0xec, 0xab, + 0xac, 0x27, 0x98, 0xc3, 0xd0, 0x63, 0x30, 0xc0, 0xba, 0x40, 0x27, 0x6f, 0x8c, 0x1f, 0xc1, 0x15, + 0x27, 0x72, 0x30, 0x2b, 0x65, 0x61, 0x97, 0x30, 0x69, 0x37, 0x5d, 0xde, 0xe9, 0x58, 0x65, 0xfd, + 0xce, 0xf0, 0xaa, 0xcf, 0xec, 0xda, 0xdb, 0x0b, 0xbb, 0x94, 0x4d, 0xb2, 0xfb, 0x33, 0xfb, 0x0f, + 0x0b, 0x70, 0x3e, 0xb3, 0x5e, 0xdf, 0x61, 0x97, 0xba, 0xd7, 0x7e, 0x98, 0xd9, 0x47, 0x8a, 0x27, + 0x68, 0xb4, 0x3a, 0xd0, 0x2f, 0xf7, 0x3f, 0xd8, 0x47, 0x34, 0xa4, 0xcc, 0x21, 0x7b, 0x87, 0x44, + 0x43, 0xca, 0xec, 0x5b, 0x8e, 0x98, 0xe0, 0xcf, 0x0a, 0x39, 0xdf, 0xc2, 0x04, 0x06, 0x97, 0xe8, + 0x39, 0xc3, 0x80, 0xa1, 0x7c, 0x84, 0xf3, 0x33, 0x86, 0x97, 0x61, 0x05, 0x45, 0x0b, 0x30, 0xd9, + 0x72, 0x3d, 0x7a, 0xf8, 0xec, 0x9b, 0xac, 0xb8, 0x0a, 0x56, 0xb7, 0x66, 0x82, 0x71, 0x12, 0x1f, + 0xb9, 0x5a, 0xa4, 0x24, 0xfe, 0x75, 0xaf, 0x1c, 0x69, 0xd7, 0xcd, 0x9b, 0xea, 0x7c, 0x35, 0x8a, + 0x19, 0x51, 0x93, 0xd6, 0x34, 0x39, 0x51, 0xb1, 0x7f, 0x39, 0xd1, 0x58, 0xb6, 0x8c, 0x68, 0xee, + 0x15, 0x18, 0x7f, 0x60, 0xc5, 0x80, 0xfd, 0xb5, 0x22, 0x3c, 0xda, 0x65, 0xdb, 0xf3, 0xb3, 0xde, + 0x98, 0x03, 0xed, 0xac, 0x4f, 0xcd, 0x43, 0x15, 0x4e, 0x6d, 0x75, 0x9a, 0xcd, 0x7d, 0xe6, 0xcb, + 0x41, 0x1a, 0x12, 0x43, 0xf0, 0x94, 0x52, 0x38, 0x72, 0x6a, 0x25, 0x03, 0x07, 0x67, 0xd6, 0xa4, + 0x4f, 0x2c, 0x7a, 0x93, 0xec, 0x2b, 0x52, 0x89, 0x27, 0x16, 0xd6, 0x81, 0xd8, 0xc4, 0x45, 0x57, + 0x61, 0xda, 0xd9, 0x73, 0x5c, 0x1e, 0x6e, 0x5a, 0x12, 0xe0, 0x6f, 0x2c, 0x25, 0xcf, 0x5d, 0x48, + 0x22, 0xe0, 0x74, 0x1d, 0xf4, 0x1a, 0x20, 0x7f, 0x93, 0x59, 0x7c, 0x37, 0xae, 0x12, 0x4f, 0x68, + 0x5d, 0xd9, 0xdc, 0x15, 0xe3, 0x23, 0xe1, 0x66, 0x0a, 0x03, 0x67, 0xd4, 0x4a, 0x44, 0x04, 0x1a, + 0xca, 0x8f, 0x08, 0xd4, 0xfd, 0x5c, 0xec, 0x99, 0xf8, 0xe6, 0x3f, 0x59, 0xf4, 0xfa, 0xe2, 0x4c, + 0xbe, 0x19, 0x40, 0xf3, 0x15, 0x66, 0x35, 0xc9, 0x65, 0xbd, 0x5a, 0xfc, 0x94, 0xd3, 0x9a, 0xd5, + 0x64, 0x0c, 0xc4, 0x26, 0x2e, 0x5f, 0x10, 0x61, 0xec, 0xb6, 0x6b, 0xb0, 0xf8, 0x22, 0xca, 0x97, + 0xc2, 0x40, 0x1f, 0x87, 0xe1, 0x86, 0xbb, 0xe7, 0x86, 0x42, 0xd2, 0x75, 0x64, 0xb5, 0x52, 0x7c, + 0x0e, 0x56, 0x38, 0x19, 0x2c, 0xe9, 0xd9, 0x3f, 0x54, 0x80, 0x71, 0xd9, 0xe2, 0xeb, 0x1d, 0x3f, + 0x72, 0x4e, 0xe0, 0x5a, 0xbe, 0x6a, 0x5c, 0xcb, 0xef, 0xeb, 0x16, 0xea, 0x8c, 0x75, 0x29, 0xf7, + 0x3a, 0xbe, 0x99, 0xb8, 0x8e, 0x9f, 0xec, 0x4d, 0xaa, 0xfb, 0x35, 0xfc, 0x4f, 0x2c, 0x98, 0x36, + 0xf0, 0x4f, 0xe0, 0x36, 0x58, 0x31, 0x6f, 0x83, 0xc7, 0x7b, 0x7e, 0x43, 0xce, 0x2d, 0xf0, 0xbd, + 0xc5, 0x44, 0xdf, 0xd9, 0xe9, 0xff, 0x26, 0x0c, 0xec, 0x38, 0x41, 0xa3, 0x5b, 0x6a, 0x87, 0x54, + 0xa5, 0xf9, 0x6b, 0x4e, 0x20, 0xd4, 0xce, 0xcf, 0xc8, 0x51, 0xa7, 0x45, 0x3d, 0x55, 0xce, 0xac, + 0x29, 0xf4, 0x12, 0x0c, 0x85, 0x75, 0xbf, 0xad, 0x3c, 0x39, 0x2e, 0xb0, 0x81, 0x66, 0x25, 0x87, + 0x07, 0x65, 0x64, 0x36, 0x47, 0x8b, 0xb1, 0xc0, 0x47, 0x9f, 0x80, 0x71, 0xf6, 0x4b, 0xd9, 0x80, + 0x15, 0xf3, 0xc5, 0x11, 0x35, 0x1d, 0x91, 0x1b, 0x48, 0x1a, 0x45, 0xd8, 0x24, 0x35, 0xb7, 0x0d, + 0x25, 0xf5, 0x59, 0x0f, 0x55, 0x6f, 0xfb, 0x1f, 0x8a, 0x30, 0x93, 0xb1, 0xe6, 0x50, 0x68, 0xcc, + 0xc4, 0x95, 0x3e, 0x97, 0xea, 0xdb, 0x9c, 0x8b, 0x90, 0xbd, 0x86, 0x1a, 0x62, 0x6d, 0xf5, 0xdd, + 0xe8, 0xad, 0x90, 0x24, 0x1b, 0xa5, 0x45, 0xbd, 0x1b, 0xa5, 0x8d, 0x9d, 0xd8, 0x50, 0xd3, 0x86, + 0x54, 0x4f, 0x1f, 0xea, 0x9c, 0xfe, 0x49, 0x11, 0x4e, 0x65, 0x45, 0x5f, 0x44, 0x9f, 0x4d, 0x24, + 0x16, 0x7d, 0xa1, 0xdf, 0xb8, 0x8d, 0x3c, 0xdb, 0xa8, 0x08, 0x08, 0x37, 0x6f, 0xa6, 0x1a, 0xed, + 0x39, 0xcc, 0xa2, 0x4d, 0x16, 0x92, 0x22, 0xe0, 0x09, 0x61, 0xe5, 0xf1, 0xf1, 0xc1, 0xbe, 0x3b, + 0x20, 0x32, 0xc9, 0x86, 0x09, 0xfb, 0x12, 0x59, 0xdc, 0xdb, 0xbe, 0x44, 0xb6, 0x3c, 0xe7, 0xc2, + 0xa8, 0xf6, 0x35, 0x0f, 0x75, 0xc6, 0x77, 0xe9, 0x6d, 0xa5, 0xf5, 0xfb, 0xa1, 0xce, 0xfa, 0x8f, + 0x5a, 0x90, 0x70, 0x39, 0x50, 0x62, 0x31, 0x2b, 0x57, 0x2c, 0x76, 0x01, 0x06, 0x02, 0xbf, 0x49, + 0x92, 0x19, 0x38, 0xb1, 0xdf, 0x24, 0x98, 0x41, 0x28, 0x46, 0x14, 0x0b, 0x3b, 0xc6, 0xf4, 0x87, + 0x9c, 0x78, 0xa2, 0x3d, 0x01, 0x83, 0x4d, 0xb2, 0x47, 0x9a, 0xc9, 0x44, 0x49, 0x37, 0x68, 0x21, + 0xe6, 0x30, 0xfb, 0xe7, 0x06, 0xe0, 0x5c, 0xd7, 0xa0, 0x2e, 0xf4, 0x39, 0xb4, 0xed, 0x44, 0xe4, + 0xae, 0xb3, 0x9f, 0xcc, 0x68, 0x72, 0x95, 0x17, 0x63, 0x09, 0x67, 0x9e, 0x64, 0x3c, 0x30, 0x79, + 0x42, 0x88, 0x28, 0xe2, 0x91, 0x0b, 0xa8, 0x29, 0x94, 0x2a, 0x1e, 0x87, 0x50, 0xea, 0x39, 0x80, + 0x30, 0x6c, 0x72, 0xc3, 0xac, 0x86, 0x70, 0x51, 0x8b, 0x03, 0xd8, 0xd7, 0x6e, 0x08, 0x08, 0xd6, + 0xb0, 0x50, 0x05, 0xa6, 0xda, 0x81, 0x1f, 0x71, 0x99, 0x6c, 0x85, 0xdb, 0x2e, 0x0e, 0x9a, 0xf1, + 0x34, 0xaa, 0x09, 0x38, 0x4e, 0xd5, 0x40, 0x2f, 0xc2, 0xa8, 0x88, 0xb1, 0x51, 0xf5, 0xfd, 0xa6, + 0x10, 0x03, 0x29, 0x73, 0xbe, 0x5a, 0x0c, 0xc2, 0x3a, 0x9e, 0x56, 0x8d, 0x09, 0x7a, 0x87, 0x33, + 0xab, 0x71, 0x61, 0xaf, 0x86, 0x97, 0x88, 0xc4, 0x3a, 0xd2, 0x57, 0x24, 0xd6, 0x58, 0x30, 0x56, + 0xea, 0x5b, 0xef, 0x08, 0x3d, 0x45, 0x49, 0x3f, 0x33, 0x00, 0x33, 0x62, 0xe1, 0x3c, 0xec, 0xe5, + 0x72, 0x2b, 0xbd, 0x5c, 0x8e, 0x43, 0x74, 0xf6, 0xee, 0x9a, 0x39, 0xe9, 0x35, 0xf3, 0xc3, 0x16, + 0x98, 0xec, 0x15, 0xfa, 0x73, 0xb9, 0x29, 0xa1, 0x5e, 0xcc, 0x65, 0xd7, 0x54, 0x54, 0xcf, 0xb7, + 0x99, 0x1c, 0xca, 0xfe, 0x8f, 0x16, 0x3c, 0xde, 0x93, 0x22, 0x5a, 0x86, 0x12, 0xe3, 0x01, 0xb5, + 0xd7, 0xd9, 0x93, 0xca, 0xb6, 0x59, 0x02, 0x72, 0x58, 0xd2, 0xb8, 0x26, 0x5a, 0x4e, 0xe5, 0xde, + 0x7a, 0x2a, 0x23, 0xf7, 0xd6, 0x69, 0x63, 0x78, 0x1e, 0x30, 0xf9, 0xd6, 0x0f, 0xd2, 0x1b, 0xc7, + 0xf0, 0x2b, 0x42, 0x1f, 0x34, 0xc4, 0x7e, 0x76, 0x42, 0xec, 0x87, 0x4c, 0x6c, 0xed, 0x0e, 0xf9, + 0x28, 0x4c, 0xb1, 0xe0, 0x5b, 0xcc, 0xd2, 0x5e, 0x78, 0x3c, 0x15, 0x62, 0x6b, 0xda, 0x1b, 0x09, + 0x18, 0x4e, 0x61, 0xdb, 0x7f, 0x50, 0x84, 0x21, 0xbe, 0xfd, 0x4e, 0xe0, 0x4d, 0xf8, 0x34, 0x94, + 0xdc, 0x56, 0xab, 0xc3, 0xd3, 0x29, 0x0d, 0x72, 0xdf, 0x68, 0x3a, 0x4f, 0xab, 0xb2, 0x10, 0xc7, + 0x70, 0xb4, 0x22, 0x24, 0xce, 0x5d, 0xe2, 0x7b, 0xf2, 0x8e, 0xcf, 0x57, 0x9c, 0xc8, 0xe1, 0x0c, + 0x8e, 0xba, 0x67, 0x63, 0xd9, 0x34, 0xfa, 0x14, 0x40, 0x18, 0x05, 0xae, 0xb7, 0x4d, 0xcb, 0x44, + 0x58, 0xe1, 0xf7, 0x77, 0xa1, 0x56, 0x53, 0xc8, 0x9c, 0x66, 0x7c, 0xe6, 0x28, 0x00, 0xd6, 0x28, + 0xa2, 0x79, 0xe3, 0xa6, 0x9f, 0x4b, 0xcc, 0x1d, 0x70, 0xaa, 0xf1, 0x9c, 0xcd, 0x7d, 0x08, 0x4a, + 0x8a, 0x78, 0x2f, 0xf9, 0xd3, 0x98, 0xce, 0x16, 0x7d, 0x04, 0x26, 0x13, 0x7d, 0x3b, 0x92, 0xf8, + 0xea, 0xe7, 0x2d, 0x98, 0xe4, 0x9d, 0x59, 0xf6, 0xf6, 0xc4, 0x6d, 0xf0, 0x16, 0x9c, 0x6a, 0x66, + 0x9c, 0xca, 0x62, 0xfa, 0xfb, 0x3f, 0xc5, 0x95, 0xb8, 0x2a, 0x0b, 0x8a, 0x33, 0xdb, 0x40, 0x97, + 0xe8, 0x8e, 0xa3, 0xa7, 0xae, 0xd3, 0x14, 0xae, 0xd2, 0x63, 0x7c, 0xb7, 0xf1, 0x32, 0xac, 0xa0, + 0xf6, 0x6f, 0x5b, 0x30, 0xcd, 0x7b, 0x7e, 0x9d, 0xec, 0xab, 0xb3, 0xe9, 0x1b, 0xd9, 0x77, 0x91, + 0xc8, 0xaf, 0x90, 0x93, 0xc8, 0x4f, 0xff, 0xb4, 0x62, 0xd7, 0x4f, 0xfb, 0xb2, 0x05, 0x62, 0x85, + 0x9c, 0x80, 0x10, 0xe2, 0xdb, 0x4d, 0x21, 0xc4, 0x5c, 0xfe, 0x26, 0xc8, 0x91, 0x3e, 0xfc, 0xa9, + 0x05, 0x53, 0x1c, 0x21, 0xd6, 0x96, 0x7f, 0x43, 0xe7, 0xa1, 0x9f, 0x74, 0xdf, 0xd7, 0xc9, 0xfe, + 0x86, 0x5f, 0x75, 0xa2, 0x9d, 0xec, 0x8f, 0x32, 0x26, 0x6b, 0xa0, 0xeb, 0x64, 0x35, 0xe4, 0x06, + 0x32, 0xf2, 0xdc, 0xf4, 0x88, 0x1f, 0x71, 0xd4, 0x3c, 0x37, 0xf6, 0xd7, 0x2d, 0x40, 0xbc, 0x19, + 0x83, 0x71, 0xa3, 0xec, 0x10, 0x2b, 0xd5, 0x2e, 0xba, 0xf8, 0x68, 0x52, 0x10, 0xac, 0x61, 0x1d, + 0xcb, 0xf0, 0x24, 0x4c, 0x1e, 0x8a, 0xbd, 0x4d, 0x1e, 0x8e, 0x30, 0xa2, 0xff, 0x76, 0x08, 0x92, + 0xbe, 0x55, 0xe8, 0x36, 0x8c, 0xd5, 0x9d, 0xb6, 0xb3, 0xe9, 0x36, 0xdd, 0xc8, 0x25, 0x61, 0x37, + 0x7b, 0xa8, 0x25, 0x0d, 0x4f, 0x28, 0xa9, 0xb5, 0x12, 0x6c, 0xd0, 0x41, 0xf3, 0x00, 0xed, 0xc0, + 0xdd, 0x73, 0x9b, 0x64, 0x9b, 0xc9, 0x4a, 0x58, 0x70, 0x06, 0x6e, 0x9c, 0x25, 0x4b, 0xb1, 0x86, + 0x91, 0xe1, 0xc8, 0x5e, 0x7c, 0xc8, 0x8e, 0xec, 0x70, 0x62, 0x8e, 0xec, 0x03, 0x47, 0x72, 0x64, + 0x1f, 0x39, 0xb2, 0x23, 0xfb, 0x60, 0x5f, 0x8e, 0xec, 0x18, 0xce, 0x48, 0xde, 0x93, 0xfe, 0x5f, + 0x71, 0x9b, 0x44, 0x3c, 0x38, 0x78, 0x44, 0x89, 0xb9, 0xfb, 0x07, 0xe5, 0x33, 0x38, 0x13, 0x03, + 0xe7, 0xd4, 0x44, 0x1f, 0x83, 0x59, 0xa7, 0xd9, 0xf4, 0xef, 0xaa, 0x49, 0x5d, 0x0e, 0xeb, 0x4e, + 0x93, 0x2b, 0x21, 0x86, 0x19, 0xd5, 0xc7, 0xee, 0x1f, 0x94, 0x67, 0x17, 0x72, 0x70, 0x70, 0x6e, + 0x6d, 0xf4, 0x61, 0x28, 0xb5, 0x03, 0xbf, 0xbe, 0xa6, 0x39, 0x80, 0x9e, 0xa7, 0x03, 0x58, 0x95, + 0x85, 0x87, 0x07, 0xe5, 0x71, 0xf5, 0x87, 0x5d, 0xf8, 0x71, 0x85, 0x0c, 0xcf, 0xf4, 0xd1, 0x63, + 0xf5, 0x4c, 0xdf, 0x85, 0x99, 0x1a, 0x09, 0x5c, 0xa7, 0xe9, 0xbe, 0x45, 0xf9, 0x65, 0x79, 0x3e, + 0x6d, 0x40, 0x29, 0x48, 0x9c, 0xc8, 0x7d, 0xc5, 0xdc, 0xd4, 0x12, 0x8e, 0xc8, 0x13, 0x38, 0x26, + 0x64, 0xff, 0x6f, 0x0b, 0x86, 0x85, 0x2f, 0xd5, 0x09, 0x70, 0x8d, 0x0b, 0x86, 0x26, 0xa1, 0x9c, + 0x3d, 0x60, 0xac, 0x33, 0xb9, 0x3a, 0x84, 0xd5, 0x84, 0x0e, 0xe1, 0xf1, 0x6e, 0x44, 0xba, 0x6b, + 0x0f, 0xfe, 0x7a, 0x91, 0x72, 0xef, 0x86, 0x57, 0xef, 0xc3, 0x1f, 0x82, 0x75, 0x18, 0x0e, 0x85, + 0x57, 0x69, 0x21, 0xdf, 0xa7, 0x21, 0x39, 0x89, 0xb1, 0x1d, 0x9b, 0xf0, 0x23, 0x95, 0x44, 0x32, + 0xdd, 0x55, 0x8b, 0x0f, 0xd1, 0x5d, 0xb5, 0x97, 0xdf, 0xf3, 0xc0, 0x71, 0xf8, 0x3d, 0xdb, 0x5f, + 0x65, 0x37, 0xa7, 0x5e, 0x7e, 0x02, 0x4c, 0xd5, 0x55, 0xf3, 0x8e, 0xb5, 0xbb, 0xac, 0x2c, 0xd1, + 0xa9, 0x1c, 0xe6, 0xea, 0x67, 0x2d, 0x38, 0x97, 0xf1, 0x55, 0x1a, 0xa7, 0xf5, 0x0c, 0x8c, 0x38, + 0x9d, 0x86, 0xab, 0xf6, 0xb2, 0xa6, 0x4f, 0x5c, 0x10, 0xe5, 0x58, 0x61, 0xa0, 0x25, 0x98, 0x26, + 0xf7, 0xda, 0x2e, 0x57, 0xa5, 0xea, 0xe6, 0xbf, 0x45, 0xee, 0x80, 0xb7, 0x9c, 0x04, 0xe2, 0x34, + 0xbe, 0x8a, 0x35, 0x53, 0xcc, 0x8d, 0x35, 0xf3, 0xf7, 0x2c, 0x18, 0x55, 0x7e, 0x95, 0x0f, 0x7d, + 0xb4, 0x3f, 0x6a, 0x8e, 0xf6, 0xa3, 0x5d, 0x46, 0x3b, 0x67, 0x98, 0x7f, 0xb3, 0xa0, 0xfa, 0x5b, + 0xf5, 0x83, 0xa8, 0x0f, 0x0e, 0xee, 0xc1, 0x5d, 0x17, 0xae, 0xc0, 0xa8, 0xd3, 0x6e, 0x4b, 0x80, + 0xb4, 0x41, 0x63, 0x11, 0x94, 0xe3, 0x62, 0xac, 0xe3, 0x28, 0x4f, 0x8a, 0x62, 0xae, 0x27, 0x45, + 0x03, 0x20, 0x72, 0x82, 0x6d, 0x12, 0xd1, 0x32, 0x61, 0x32, 0x9b, 0x7f, 0xde, 0x74, 0x22, 0xb7, + 0x39, 0xef, 0x7a, 0x51, 0x18, 0x05, 0xf3, 0xab, 0x5e, 0x74, 0x33, 0xe0, 0x4f, 0x48, 0x2d, 0x5a, + 0x93, 0xa2, 0x85, 0x35, 0xba, 0x32, 0x86, 0x00, 0x6b, 0x63, 0xd0, 0x34, 0x66, 0x58, 0x17, 0xe5, + 0x58, 0x61, 0xd8, 0x1f, 0x62, 0xb7, 0x0f, 0x1b, 0xd3, 0xa3, 0x45, 0x2a, 0xfa, 0x07, 0x63, 0x6a, + 0x36, 0x98, 0x26, 0xb3, 0xa2, 0xc7, 0x43, 0xea, 0x7e, 0xd8, 0xd3, 0x86, 0x75, 0xbf, 0xbe, 0x38, + 0x68, 0x12, 0xfa, 0x8e, 0x94, 0x81, 0xca, 0xb3, 0x3d, 0x6e, 0x8d, 0x23, 0x98, 0xa4, 0xb0, 0x74, + 0x2a, 0x2c, 0xd9, 0xc4, 0x6a, 0x55, 0xec, 0x0b, 0x2d, 0x9d, 0x8a, 0x00, 0xe0, 0x18, 0x87, 0x32, + 0x53, 0xea, 0x4f, 0x38, 0x8b, 0xe2, 0xb0, 0xa2, 0x0a, 0x3b, 0xc4, 0x1a, 0x06, 0xba, 0x2c, 0x04, + 0x0a, 0x5c, 0x2f, 0xf0, 0x68, 0x42, 0xa0, 0x20, 0x87, 0x4b, 0x93, 0x02, 0x5d, 0x81, 0x51, 0x95, + 0x41, 0xbb, 0xca, 0x13, 0x19, 0x89, 0x65, 0xb6, 0x1c, 0x17, 0x63, 0x1d, 0x07, 0x6d, 0xc0, 0x64, + 0xc8, 0xe5, 0x6c, 0x2a, 0xd6, 0x33, 0x97, 0x57, 0xbe, 0x5f, 0x5a, 0x01, 0xd5, 0x4c, 0xf0, 0x21, + 0x2b, 0xe2, 0xa7, 0x93, 0xf4, 0xf3, 0x4f, 0x92, 0x40, 0xaf, 0xc2, 0x44, 0xd3, 0x77, 0x1a, 0x8b, + 0x4e, 0xd3, 0xf1, 0xea, 0x6c, 0x7c, 0x46, 0xcc, 0x44, 0xac, 0x37, 0x0c, 0x28, 0x4e, 0x60, 0x53, + 0xe6, 0x4d, 0x2f, 0x11, 0xf1, 0xc9, 0x1d, 0x6f, 0x9b, 0x84, 0x22, 0x1f, 0x32, 0x63, 0xde, 0x6e, + 0xe4, 0xe0, 0xe0, 0xdc, 0xda, 0xe8, 0x25, 0x18, 0x93, 0x9f, 0xaf, 0x85, 0xc5, 0x88, 0x9d, 0x52, + 0x34, 0x18, 0x36, 0x30, 0xd1, 0x5d, 0x38, 0x2d, 0xff, 0x6f, 0x04, 0xce, 0xd6, 0x96, 0x5b, 0x17, + 0xbe, 0xe2, 0xdc, 0x7b, 0x75, 0x41, 0xba, 0x58, 0x2e, 0x67, 0x21, 0x1d, 0x1e, 0x94, 0x2f, 0x88, + 0x51, 0xcb, 0x84, 0xb3, 0x49, 0xcc, 0xa6, 0x8f, 0xd6, 0x60, 0x66, 0x87, 0x38, 0xcd, 0x68, 0x67, + 0x69, 0x87, 0xd4, 0x77, 0xe5, 0xa6, 0x63, 0xc1, 0x36, 0x34, 0x07, 0x8e, 0x6b, 0x69, 0x14, 0x9c, + 0x55, 0x0f, 0xbd, 0x01, 0xb3, 0xed, 0xce, 0x66, 0xd3, 0x0d, 0x77, 0xd6, 0xfd, 0x88, 0x99, 0x02, + 0xa9, 0x84, 0xdc, 0x22, 0x2a, 0x87, 0x0a, 0x67, 0x52, 0xcd, 0xc1, 0xc3, 0xb9, 0x14, 0xd0, 0x5b, + 0x70, 0x3a, 0xb1, 0x18, 0x44, 0x5c, 0x82, 0x89, 0xfc, 0x6c, 0x0f, 0xb5, 0xac, 0x0a, 0x22, 0xc4, + 0x47, 0x16, 0x08, 0x67, 0x37, 0x81, 0x5e, 0x06, 0x70, 0xdb, 0x2b, 0x4e, 0xcb, 0x6d, 0xd2, 0xe7, + 0xe2, 0x0c, 0x5b, 0x27, 0xf4, 0xe9, 0x00, 0xab, 0x55, 0x59, 0x4a, 0xcf, 0x67, 0xf1, 0x6f, 0x1f, + 0x6b, 0xd8, 0xa8, 0x0a, 0x13, 0xe2, 0xdf, 0xbe, 0x98, 0xd6, 0x69, 0x15, 0x02, 0x60, 0x42, 0xd6, + 0x50, 0x73, 0x89, 0xcc, 0x12, 0x36, 0x7b, 0x89, 0xfa, 0x68, 0x1b, 0xce, 0xc9, 0xec, 0x5d, 0xfa, + 0x3a, 0x95, 0xf3, 0x10, 0xb2, 0x34, 0x0b, 0x23, 0xdc, 0x3f, 0x64, 0xa1, 0x1b, 0x22, 0xee, 0x4e, + 0x87, 0xde, 0xef, 0xfa, 0x72, 0xe7, 0x1e, 0xb4, 0xa7, 0xb9, 0x79, 0x12, 0xbd, 0xdf, 0x6f, 0x24, + 0x81, 0x38, 0x8d, 0x8f, 0x42, 0x38, 0xed, 0x7a, 0x59, 0xab, 0xfb, 0x0c, 0x23, 0xf4, 0x11, 0xee, + 0x3c, 0xdc, 0x7d, 0x65, 0x67, 0xc2, 0xf9, 0xca, 0xce, 0xa4, 0xfd, 0xf6, 0xac, 0xf0, 0x7e, 0xcb, + 0xa2, 0xb5, 0x35, 0x4e, 0x1d, 0x7d, 0x1a, 0xc6, 0xf4, 0x0f, 0x13, 0x5c, 0xc7, 0xc5, 0x6c, 0x46, + 0x56, 0x3b, 0x1f, 0x38, 0x9f, 0xaf, 0xce, 0x00, 0x1d, 0x86, 0x0d, 0x8a, 0xa8, 0x9e, 0xe1, 0x66, + 0x7f, 0xb9, 0x3f, 0xae, 0xa6, 0x7f, 0x23, 0x34, 0x02, 0xd9, 0xcb, 0x1e, 0xdd, 0x80, 0x91, 0x7a, + 0xd3, 0x25, 0x5e, 0xb4, 0x5a, 0xed, 0x16, 0x4b, 0x6f, 0x49, 0xe0, 0x88, 0x7d, 0x24, 0xb2, 0x26, + 0xf0, 0x32, 0xac, 0x28, 0xd8, 0xbf, 0x52, 0x80, 0x72, 0x8f, 0x14, 0x1c, 0x09, 0x95, 0x94, 0xd5, + 0x97, 0x4a, 0x6a, 0x41, 0x66, 0x9d, 0x5f, 0x4f, 0x48, 0xbb, 0x12, 0x19, 0xe5, 0x63, 0x99, 0x57, + 0x12, 0xbf, 0x6f, 0x17, 0x01, 0x5d, 0xab, 0x35, 0xd0, 0xd3, 0xc9, 0xc5, 0xd0, 0x66, 0x0f, 0xf6, + 0xff, 0x04, 0xce, 0xd5, 0x4c, 0xda, 0x5f, 0x2d, 0xc0, 0x69, 0x35, 0x84, 0xdf, 0xba, 0x03, 0x77, + 0x2b, 0x3d, 0x70, 0xc7, 0xa0, 0xd7, 0xb5, 0x6f, 0xc2, 0x10, 0x0f, 0x0e, 0xd8, 0x07, 0xeb, 0xfd, + 0x84, 0x19, 0x7c, 0x57, 0x71, 0x7b, 0x46, 0x00, 0xde, 0xef, 0xb7, 0x60, 0x32, 0xe1, 0x6b, 0x86, + 0xb0, 0xe6, 0x90, 0xfc, 0x20, 0xec, 0x71, 0x16, 0xe3, 0x7d, 0x01, 0x06, 0x76, 0xfc, 0x30, 0x4a, + 0x1a, 0x7d, 0x5c, 0xf3, 0xc3, 0x08, 0x33, 0x88, 0xfd, 0x3b, 0x16, 0x0c, 0x6e, 0x38, 0xae, 0x17, + 0x49, 0x05, 0x81, 0x95, 0xa3, 0x20, 0xe8, 0xe7, 0xbb, 0xd0, 0x8b, 0x30, 0x44, 0xb6, 0xb6, 0x48, + 0x3d, 0x12, 0xb3, 0x2a, 0xa3, 0x39, 0x0c, 0x2d, 0xb3, 0x52, 0xca, 0x0b, 0xb2, 0xc6, 0xf8, 0x5f, + 0x2c, 0x90, 0xd1, 0x1d, 0x28, 0x45, 0x6e, 0x8b, 0x2c, 0x34, 0x1a, 0x42, 0x6d, 0xfe, 0x00, 0x11, + 0x29, 0x36, 0x24, 0x01, 0x1c, 0xd3, 0xb2, 0xbf, 0x50, 0x00, 0x88, 0xa3, 0x2a, 0xf5, 0xfa, 0xc4, + 0xc5, 0x94, 0x42, 0xf5, 0x62, 0x86, 0x42, 0x15, 0xc5, 0x04, 0x33, 0xb4, 0xa9, 0x6a, 0x98, 0x8a, + 0x7d, 0x0d, 0xd3, 0xc0, 0x51, 0x86, 0x69, 0x09, 0xa6, 0xe3, 0xa8, 0x50, 0x66, 0x50, 0x3c, 0x76, + 0x7d, 0x6e, 0x24, 0x81, 0x38, 0x8d, 0x6f, 0x13, 0xb8, 0xa0, 0x82, 0xe3, 0x88, 0x1b, 0x8d, 0x59, + 0x65, 0xeb, 0x0a, 0xea, 0x1e, 0xe3, 0x14, 0x6b, 0x8c, 0x0b, 0xb9, 0x1a, 0xe3, 0x9f, 0xb0, 0xe0, + 0x54, 0xb2, 0x1d, 0xe6, 0xc2, 0xfc, 0x79, 0x0b, 0x4e, 0x33, 0xbd, 0x39, 0x6b, 0x35, 0xad, 0xa5, + 0x7f, 0xa1, 0x6b, 0xc0, 0x9f, 0x9c, 0x1e, 0xc7, 0x61, 0x43, 0xd6, 0xb2, 0x48, 0xe3, 0xec, 0x16, + 0xed, 0x5f, 0x1a, 0x80, 0xd9, 0xbc, 0x48, 0x41, 0xcc, 0x69, 0xc3, 0xb9, 0x57, 0xdb, 0x25, 0x77, + 0x85, 0x69, 0x7c, 0xec, 0xb4, 0xc1, 0x8b, 0xb1, 0x84, 0x27, 0xb3, 0x2a, 0x14, 0xfa, 0xcc, 0xaa, + 0xb0, 0x03, 0xd3, 0x77, 0x77, 0x88, 0x77, 0xcb, 0x0b, 0x9d, 0xc8, 0x0d, 0xb7, 0x5c, 0xa6, 0x63, + 0xe6, 0xeb, 0x46, 0xa6, 0x62, 0x9d, 0xbe, 0x93, 0x44, 0x38, 0x3c, 0x28, 0x9f, 0x33, 0x0a, 0xe2, + 0x2e, 0xf3, 0x83, 0x04, 0xa7, 0x89, 0xa6, 0x93, 0x52, 0x0c, 0x3c, 0xe4, 0xa4, 0x14, 0x2d, 0x57, + 0x58, 0xa6, 0x48, 0x8b, 0x7c, 0xf6, 0x7a, 0x5c, 0x53, 0xa5, 0x58, 0xc3, 0x40, 0x9f, 0x04, 0xa4, + 0x27, 0xdd, 0x31, 0x02, 0x35, 0x3e, 0x7b, 0xff, 0xa0, 0x8c, 0xd6, 0x53, 0xd0, 0xc3, 0x83, 0xf2, + 0x0c, 0x2d, 0x5d, 0xf5, 0xe8, 0x2b, 0x34, 0x8e, 0x6e, 0x95, 0x41, 0x08, 0xdd, 0x81, 0x29, 0x5a, + 0xca, 0x76, 0x94, 0x8c, 0x02, 0xc9, 0x5f, 0x8e, 0x4f, 0xdf, 0x3f, 0x28, 0x4f, 0xad, 0x27, 0x60, + 0x79, 0xa4, 0x53, 0x44, 0xec, 0xcf, 0x5b, 0x70, 0x36, 0x37, 0xff, 0x32, 0xba, 0x04, 0x23, 0x4e, + 0xdb, 0xe5, 0xea, 0x08, 0x71, 0x5d, 0x30, 0xb1, 0x57, 0x75, 0x95, 0x2b, 0x23, 0x14, 0x94, 0x9e, + 0xd2, 0xbb, 0xae, 0xd7, 0x48, 0x9e, 0xd2, 0xd7, 0x5d, 0xaf, 0x81, 0x19, 0x44, 0x5d, 0x3b, 0xc5, + 0xbc, 0x6b, 0xc7, 0xfe, 0x3e, 0x0b, 0x84, 0x63, 0x6d, 0x1f, 0x77, 0xd4, 0x27, 0x60, 0x6c, 0x2f, + 0x9d, 0xa0, 0xeb, 0x42, 0xbe, 0xa7, 0xb1, 0x48, 0xcb, 0xa5, 0x18, 0x4f, 0x23, 0x19, 0x97, 0x41, + 0xcb, 0x6e, 0x80, 0x80, 0x56, 0x08, 0x13, 0xb6, 0xf7, 0xee, 0xcd, 0x73, 0x00, 0x0d, 0x86, 0xcb, + 0xb2, 0x76, 0x16, 0x4c, 0x0e, 0xa4, 0xa2, 0x20, 0x58, 0xc3, 0xb2, 0xff, 0x7d, 0x01, 0x46, 0x65, + 0x42, 0xa8, 0x8e, 0xd7, 0x8f, 0x48, 0xec, 0x48, 0x19, 0x62, 0xd1, 0x65, 0x28, 0x31, 0x99, 0x6d, + 0x35, 0x96, 0x24, 0x2a, 0x89, 0xc9, 0x9a, 0x04, 0xe0, 0x18, 0x87, 0x9e, 0x16, 0x61, 0x67, 0x93, + 0xa1, 0x27, 0xdc, 0x40, 0x6b, 0xbc, 0x18, 0x4b, 0x38, 0xfa, 0x18, 0x4c, 0xf1, 0x7a, 0x81, 0xdf, + 0x76, 0xb6, 0xb9, 0x9e, 0x67, 0x50, 0xc5, 0xd6, 0x98, 0x5a, 0x4b, 0xc0, 0x0e, 0x0f, 0xca, 0xa7, + 0x92, 0x65, 0x4c, 0x81, 0x99, 0xa2, 0xc2, 0xcc, 0xb9, 0x78, 0x23, 0xf4, 0x94, 0x4b, 0x59, 0x81, + 0xc5, 0x20, 0xac, 0xe3, 0xd9, 0x9f, 0x06, 0x94, 0x4e, 0x8d, 0x85, 0x5e, 0xe3, 0x36, 0xbc, 0x6e, + 0x40, 0x1a, 0xdd, 0x14, 0x9a, 0x7a, 0x04, 0x09, 0xe9, 0xc1, 0xc5, 0x6b, 0x61, 0x55, 0xdf, 0xfe, + 0x4b, 0x45, 0x98, 0x4a, 0xfa, 0xac, 0xa3, 0x6b, 0x30, 0xc4, 0x59, 0x2c, 0x41, 0xbe, 0x8b, 0xbd, + 0x8c, 0xe6, 0xe9, 0xce, 0x2e, 0x1b, 0xc1, 0xa5, 0x89, 0xfa, 0xe8, 0x0d, 0x18, 0x6d, 0xf8, 0x77, + 0xbd, 0xbb, 0x4e, 0xd0, 0x58, 0xa8, 0xae, 0x8a, 0xe5, 0x9c, 0xf9, 0x80, 0xaf, 0xc4, 0x68, 0xba, + 0xf7, 0x3c, 0xd3, 0x0d, 0xc7, 0x20, 0xac, 0x93, 0x43, 0x1b, 0x2c, 0x9e, 0xfe, 0x96, 0xbb, 0xbd, + 0xe6, 0xb4, 0xbb, 0x39, 0x74, 0x2c, 0x49, 0x24, 0x8d, 0xf2, 0xb8, 0x08, 0xba, 0xcf, 0x01, 0x38, + 0x26, 0x84, 0x3e, 0x0b, 0x33, 0x61, 0x8e, 0x5a, 0x21, 0x2f, 0x53, 0x62, 0x37, 0x49, 0xfb, 0xe2, + 0x23, 0xf7, 0x0f, 0xca, 0x33, 0x59, 0x0a, 0x88, 0xac, 0x66, 0xec, 0x2f, 0x9e, 0x02, 0x63, 0x13, + 0x1b, 0x89, 0x73, 0xad, 0x63, 0x4a, 0x9c, 0x8b, 0x61, 0x84, 0xb4, 0xda, 0xd1, 0x7e, 0xc5, 0x0d, + 0xc4, 0x9c, 0x64, 0xd2, 0x5c, 0x16, 0x38, 0x69, 0x9a, 0x12, 0x82, 0x15, 0x9d, 0xec, 0xec, 0xc6, + 0xc5, 0x6f, 0x60, 0x76, 0xe3, 0x81, 0x13, 0xcc, 0x6e, 0xbc, 0x0e, 0xc3, 0xdb, 0x6e, 0x84, 0x49, + 0xdb, 0x17, 0x8f, 0x9b, 0xcc, 0x75, 0x78, 0x95, 0xa3, 0xa4, 0xf3, 0x68, 0x0a, 0x00, 0x96, 0x44, + 0xd0, 0x6b, 0x6a, 0x07, 0x0e, 0xe5, 0x0b, 0x20, 0xd2, 0x86, 0x1d, 0x99, 0x7b, 0x50, 0xe4, 0x30, + 0x1e, 0x7e, 0xd0, 0x1c, 0xc6, 0x2b, 0x32, 0xf3, 0xf0, 0x48, 0xbe, 0xf7, 0x15, 0x4b, 0x2c, 0xdc, + 0x23, 0xdf, 0xf0, 0x6d, 0x3d, 0x5b, 0x73, 0x29, 0xff, 0x24, 0x50, 0x89, 0x98, 0xfb, 0xcc, 0xd1, + 0xfc, 0x7d, 0x16, 0x9c, 0x6e, 0x67, 0x25, 0x2e, 0x17, 0x36, 0x10, 0x2f, 0xf6, 0x9d, 0x1b, 0xdd, + 0x68, 0x90, 0xc9, 0x0e, 0xb3, 0xb3, 0xdf, 0x67, 0x37, 0x47, 0x07, 0x3a, 0xd8, 0x6c, 0x08, 0x5d, + 0xfc, 0x13, 0x39, 0xc9, 0x9e, 0xbb, 0xa4, 0x78, 0xde, 0xc8, 0x48, 0x2c, 0xfc, 0xde, 0xbc, 0xc4, + 0xc2, 0x7d, 0xa7, 0x13, 0x7e, 0x4d, 0xa5, 0x79, 0x1e, 0xcf, 0x5f, 0x4a, 0x3c, 0x89, 0x73, 0xcf, + 0xe4, 0xce, 0xaf, 0xa9, 0xe4, 0xce, 0x5d, 0xe2, 0x1e, 0xf3, 0xd4, 0xcd, 0x3d, 0x53, 0x3a, 0x6b, + 0x69, 0x99, 0x27, 0x8f, 0x27, 0x2d, 0xb3, 0x71, 0xd5, 0xf0, 0xcc, 0xc0, 0x4f, 0xf7, 0xb8, 0x6a, + 0x0c, 0xba, 0xdd, 0x2f, 0x1b, 0x9e, 0x82, 0x7a, 0xfa, 0x81, 0x52, 0x50, 0xdf, 0xd6, 0x53, 0x3a, + 0xa3, 0x1e, 0x39, 0x8b, 0x29, 0x52, 0x9f, 0x89, 0x9c, 0x6f, 0xeb, 0x17, 0xe0, 0x4c, 0x3e, 0x5d, + 0x75, 0xcf, 0xa5, 0xe9, 0x66, 0x5e, 0x81, 0xa9, 0x04, 0xd1, 0xa7, 0x4e, 0x26, 0x41, 0xf4, 0xe9, + 0x63, 0x4f, 0x10, 0x7d, 0xe6, 0x04, 0x12, 0x44, 0x3f, 0x72, 0x82, 0x09, 0xa2, 0x6f, 0x33, 0xc3, + 0x21, 0x1e, 0x9e, 0x48, 0xc4, 0x69, 0x7e, 0x2a, 0x27, 0xba, 0x57, 0x3a, 0x86, 0x11, 0xff, 0x38, + 0x05, 0xc2, 0x31, 0xa9, 0x8c, 0xc4, 0xd3, 0xb3, 0x0f, 0x21, 0xf1, 0xf4, 0x7a, 0x9c, 0x78, 0xfa, + 0x6c, 0xfe, 0x54, 0x67, 0xb8, 0x9a, 0xe4, 0xa4, 0x9b, 0xbe, 0xad, 0xa7, 0x89, 0x7e, 0xb4, 0x8b, + 0x76, 0x28, 0x4b, 0xc0, 0xda, 0x25, 0x39, 0xf4, 0xab, 0x3c, 0x39, 0xf4, 0x63, 0xf9, 0x27, 0x79, + 0xf2, 0xba, 0x33, 0x52, 0x42, 0xd3, 0x7e, 0xa9, 0xf0, 0x9e, 0x2c, 0x22, 0x75, 0x4e, 0xbf, 0x54, + 0x7c, 0xd0, 0x74, 0xbf, 0x14, 0x08, 0xc7, 0xa4, 0xec, 0x1f, 0x28, 0xc0, 0xf9, 0xee, 0xfb, 0x2d, + 0x96, 0x1a, 0x57, 0x63, 0x65, 0x79, 0x42, 0x6a, 0xcc, 0xdf, 0x6c, 0x31, 0x56, 0xdf, 0xd1, 0x0a, + 0xaf, 0xc2, 0xb4, 0xf2, 0x51, 0xa1, 0xef, 0xec, 0xf5, 0xf8, 0xe5, 0xab, 0xfc, 0xfa, 0x6b, 0x49, + 0x04, 0x9c, 0xae, 0x83, 0x16, 0x60, 0xd2, 0x28, 0x5c, 0xad, 0x88, 0xb7, 0x99, 0x12, 0x53, 0xd7, + 0x4c, 0x30, 0x4e, 0xe2, 0xdb, 0x5f, 0xb2, 0xe0, 0x91, 0x9c, 0xcc, 0x8a, 0x7d, 0x07, 0xe3, 0xdb, + 0x82, 0xc9, 0xb6, 0x59, 0xb5, 0x47, 0xfc, 0x50, 0x23, 0x7f, 0xa3, 0xea, 0x6b, 0x02, 0x80, 0x93, + 0x44, 0xed, 0x9f, 0x2a, 0xc0, 0xb9, 0xae, 0x46, 0x97, 0x08, 0xc3, 0x99, 0xed, 0x56, 0xe8, 0x2c, + 0x05, 0xa4, 0x41, 0xbc, 0xc8, 0x75, 0x9a, 0xb5, 0x36, 0xa9, 0x6b, 0x72, 0x7f, 0x66, 0xbd, 0x78, + 0x75, 0xad, 0xb6, 0x90, 0xc6, 0xc0, 0x39, 0x35, 0xd1, 0x0a, 0xa0, 0x34, 0x44, 0xcc, 0x30, 0x8b, + 0x6d, 0x9e, 0xa6, 0x87, 0x33, 0x6a, 0xa0, 0x0f, 0xc1, 0xb8, 0x32, 0xe6, 0xd4, 0x66, 0x9c, 0x1d, + 0xec, 0x58, 0x07, 0x60, 0x13, 0x0f, 0x5d, 0xe1, 0xc1, 0xf1, 0x45, 0x1a, 0x05, 0xa1, 0x24, 0x98, + 0x94, 0x91, 0xef, 0x45, 0x31, 0xd6, 0x71, 0x16, 0x5f, 0xfa, 0xd5, 0xdf, 0x3b, 0xff, 0x9e, 0xdf, + 0xf8, 0xbd, 0xf3, 0xef, 0xf9, 0xed, 0xdf, 0x3b, 0xff, 0x9e, 0xef, 0xba, 0x7f, 0xde, 0xfa, 0xd5, + 0xfb, 0xe7, 0xad, 0xdf, 0xb8, 0x7f, 0xde, 0xfa, 0xed, 0xfb, 0xe7, 0xad, 0xdf, 0xbd, 0x7f, 0xde, + 0xfa, 0xc2, 0xef, 0x9f, 0x7f, 0xcf, 0x27, 0x50, 0x1c, 0xde, 0xf2, 0x32, 0x9d, 0x9d, 0xcb, 0x7b, + 0x57, 0xfe, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x5d, 0xff, 0x28, 0xc3, 0x2d, 0x09, 0x01, 0x00, } func (m *AWSElasticBlockStoreVolumeSource) Marshal() (dAtA []byte, err error) { @@ -18915,6 +18918,20 @@ func (m *TopologySpreadConstraint) MarshalToSizedBuffer(dAtA []byte) (int, error _ = i var l int _ = l + if m.NodeTaintsPolicy != nil { + i -= len(*m.NodeTaintsPolicy) + copy(dAtA[i:], *m.NodeTaintsPolicy) + i = encodeVarintGenerated(dAtA, i, uint64(len(*m.NodeTaintsPolicy))) + i-- + dAtA[i] = 0x3a + } + if m.NodeAffinityPolicy != nil { + i -= len(*m.NodeAffinityPolicy) + copy(dAtA[i:], *m.NodeAffinityPolicy) + i = encodeVarintGenerated(dAtA, i, uint64(len(*m.NodeAffinityPolicy))) + i-- + dAtA[i] = 0x32 + } if m.MinDomains != nil { i = encodeVarintGenerated(dAtA, i, uint64(*m.MinDomains)) i-- @@ -24110,6 +24127,14 @@ func (m *TopologySpreadConstraint) Size() (n int) { if m.MinDomains != nil { n += 1 + sovGenerated(uint64(*m.MinDomains)) } + if m.NodeAffinityPolicy != nil { + l = len(*m.NodeAffinityPolicy) + n += 1 + l + sovGenerated(uint64(l)) + } + if m.NodeTaintsPolicy != nil { + l = len(*m.NodeTaintsPolicy) + n += 1 + l + sovGenerated(uint64(l)) + } return n } @@ -27699,6 +27724,8 @@ func (this *TopologySpreadConstraint) String() string { `WhenUnsatisfiable:` + fmt.Sprintf("%v", this.WhenUnsatisfiable) + `,`, `LabelSelector:` + strings.Replace(fmt.Sprintf("%v", this.LabelSelector), "LabelSelector", "v1.LabelSelector", 1) + `,`, `MinDomains:` + valueToStringGenerated(this.MinDomains) + `,`, + `NodeAffinityPolicy:` + valueToStringGenerated(this.NodeAffinityPolicy) + `,`, + `NodeTaintsPolicy:` + valueToStringGenerated(this.NodeTaintsPolicy) + `,`, `}`, }, "") return s @@ -65756,6 +65783,72 @@ func (m *TopologySpreadConstraint) Unmarshal(dAtA []byte) error { } } m.MinDomains = &v + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NodeAffinityPolicy", 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 < 0 { + return ErrInvalidLengthGenerated + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + s := NodeInclusionPolicy(dAtA[iNdEx:postIndex]) + m.NodeAffinityPolicy = &s + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NodeTaintsPolicy", 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 < 0 { + return ErrInvalidLengthGenerated + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + s := NodeInclusionPolicy(dAtA[iNdEx:postIndex]) + m.NodeTaintsPolicy = &s + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) diff --git a/staging/src/k8s.io/api/core/v1/generated.proto b/staging/src/k8s.io/api/core/v1/generated.proto index 21da99041c4..a94ffa94c92 100644 --- a/staging/src/k8s.io/api/core/v1/generated.proto +++ b/staging/src/k8s.io/api/core/v1/generated.proto @@ -5415,7 +5415,8 @@ message TopologySpreadConstraint { // We consider each as a "bucket", and try to put balanced number // of pods into each bucket. // We define a domain as a particular instance of a topology. - // Also, we define an eligible domain as a domain whose nodes match the node selector. + // Also, we define an eligible domain as a domain whose nodes meet the requirements of + // nodeAffinityPolicy and nodeTaintsPolicy. // e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology. // And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology. // It's a required field. @@ -5476,6 +5477,27 @@ message TopologySpreadConstraint { // This is an alpha field and requires enabling MinDomainsInPodTopologySpread feature gate. // +optional optional int32 minDomains = 5; + + // NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector + // when calculating pod topology spread skew. Options are: + // - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. + // - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. + // + // If this value is nil, the behavior is equivalent to the Honor policy. + // This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. + // +optional + optional string nodeAffinityPolicy = 6; + + // NodeTaintsPolicy indicates how we will treat node taints when calculating + // pod topology spread skew. Options are: + // - Honor: nodes without taints, along with tainted nodes for which the incoming pod + // has a toleration, are included. + // - Ignore: node taints are ignored. All nodes are included. + // + // If this value is nil, the behavior is equivalent to the Ignore policy. + // This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. + // +optional + optional string nodeTaintsPolicy = 7; } // TypedLocalObjectReference contains enough information to let you locate the diff --git a/staging/src/k8s.io/api/core/v1/types.go b/staging/src/k8s.io/api/core/v1/types.go index ac30489b650..b5cbc44b9bd 100644 --- a/staging/src/k8s.io/api/core/v1/types.go +++ b/staging/src/k8s.io/api/core/v1/types.go @@ -3339,6 +3339,17 @@ const ( ScheduleAnyway UnsatisfiableConstraintAction = "ScheduleAnyway" ) +// NodeInclusionPolicy defines the type of node inclusion policy +// +enum +type NodeInclusionPolicy string + +const ( + // NodeInclusionPolicyIgnore means ignore this scheduling policy when calculating pod topology spread skew. + NodeInclusionPolicyIgnore NodeInclusionPolicy = "Ignore" + // NodeInclusionPolicyHonor means use this scheduling policy when calculating pod topology spread skew. + NodeInclusionPolicyHonor NodeInclusionPolicy = "Honor" +) + // TopologySpreadConstraint specifies how to spread matching pods among the given topology. type TopologySpreadConstraint struct { // MaxSkew describes the degree to which pods may be unevenly distributed. @@ -3367,7 +3378,8 @@ type TopologySpreadConstraint struct { // We consider each as a "bucket", and try to put balanced number // of pods into each bucket. // We define a domain as a particular instance of a topology. - // Also, we define an eligible domain as a domain whose nodes match the node selector. + // Also, we define an eligible domain as a domain whose nodes meet the requirements of + // nodeAffinityPolicy and nodeTaintsPolicy. // e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a domain of that topology. // And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a domain of that topology. // It's a required field. @@ -3425,6 +3437,25 @@ type TopologySpreadConstraint struct { // This is an alpha field and requires enabling MinDomainsInPodTopologySpread feature gate. // +optional MinDomains *int32 `json:"minDomains,omitempty" protobuf:"varint,5,opt,name=minDomains"` + // NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector + // when calculating pod topology spread skew. Options are: + // - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. + // - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. + // + // If this value is nil, the behavior is equivalent to the Honor policy. + // This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. + // +optional + NodeAffinityPolicy *NodeInclusionPolicy `json:"nodeAffinityPolicy,omitempty" protobuf:"bytes,6,opt,name=nodeAffinityPolicy"` + // NodeTaintsPolicy indicates how we will treat node taints when calculating + // pod topology spread skew. Options are: + // - Honor: nodes without taints, along with tainted nodes for which the incoming pod + // has a toleration, are included. + // - Ignore: node taints are ignored. All nodes are included. + // + // If this value is nil, the behavior is equivalent to the Ignore policy. + // This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. + // +optional + NodeTaintsPolicy *NodeInclusionPolicy `json:"nodeTaintsPolicy,omitempty" protobuf:"bytes,7,opt,name=nodeTaintsPolicy"` } const ( diff --git a/staging/src/k8s.io/api/core/v1/types_swagger_doc_generated.go b/staging/src/k8s.io/api/core/v1/types_swagger_doc_generated.go index 61197ed1a4b..cd0cfabc78a 100644 --- a/staging/src/k8s.io/api/core/v1/types_swagger_doc_generated.go +++ b/staging/src/k8s.io/api/core/v1/types_swagger_doc_generated.go @@ -2400,12 +2400,14 @@ func (TopologySelectorTerm) SwaggerDoc() map[string]string { } var map_TopologySpreadConstraint = map[string]string{ - "": "TopologySpreadConstraint specifies how to spread matching pods among the given topology.", - "maxSkew": "MaxSkew describes the degree to which pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference between the number of matching pods in the target topology and the global minimum. The global minimum is the minimum number of matching pods in an eligible domain or zero if the number of eligible domains is less than MinDomains. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 2/2/1: In this case, the global minimum is 1. ", - "topologyKey": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes match the node selector. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", - "whenUnsatisfiable": "WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway tells the scheduler to schedule the pod in any location,\n but giving higher precedence to topologies that would help reduce the\n skew.\nA constraint is considered \"Unsatisfiable\" for an incoming pod if and only if every possible node assignment for that pod would violate \"MaxSkew\" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: ", - "labelSelector": "LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain.", - "minDomains": "MinDomains indicates a minimum number of eligible domains. When the number of eligible domains with matching topology keys is less than minDomains, Pod Topology Spread treats \"global minimum\" as 0, and then the calculation of Skew is performed. And when the number of eligible domains with matching topology keys equals or greater than minDomains, this value has no effect on scheduling. As a result, when the number of eligible domains is less than minDomains, scheduler won't schedule more than maxSkew Pods to those domains. If value is nil, the constraint behaves as if MinDomains is equal to 1. Valid values are integers greater than 0. When value is not nil, WhenUnsatisfiable must be DoNotSchedule.\n\nFor example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same labelSelector spread as 2/2/2: ", + "": "TopologySpreadConstraint specifies how to spread matching pods among the given topology.", + "maxSkew": "MaxSkew describes the degree to which pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference between the number of matching pods in the target topology and the global minimum. The global minimum is the minimum number of matching pods in an eligible domain or zero if the number of eligible domains is less than MinDomains. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 2/2/1: In this case, the global minimum is 1. ", + "topologyKey": "TopologyKey is the key of node labels. Nodes that have a label with this key and identical values are considered to be in the same topology. We consider each as a \"bucket\", and try to put balanced number of pods into each bucket. We define a domain as a particular instance of a topology. Also, we define an eligible domain as a domain whose nodes meet the requirements of nodeAffinityPolicy and nodeTaintsPolicy. e.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology. And, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology. It's a required field.", + "whenUnsatisfiable": "WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway tells the scheduler to schedule the pod in any location,\n but giving higher precedence to topologies that would help reduce the\n skew.\nA constraint is considered \"Unsatisfiable\" for an incoming pod if and only if every possible node assignment for that pod would violate \"MaxSkew\" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: ", + "labelSelector": "LabelSelector is used to find matching pods. Pods that match this label selector are counted to determine the number of pods in their corresponding topology domain.", + "minDomains": "MinDomains indicates a minimum number of eligible domains. When the number of eligible domains with matching topology keys is less than minDomains, Pod Topology Spread treats \"global minimum\" as 0, and then the calculation of Skew is performed. And when the number of eligible domains with matching topology keys equals or greater than minDomains, this value has no effect on scheduling. As a result, when the number of eligible domains is less than minDomains, scheduler won't schedule more than maxSkew Pods to those domains. If value is nil, the constraint behaves as if MinDomains is equal to 1. Valid values are integers greater than 0. When value is not nil, WhenUnsatisfiable must be DoNotSchedule.\n\nFor example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same labelSelector spread as 2/2/2: ", + "nodeAffinityPolicy": "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector when calculating pod topology spread skew. Options are: - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\nIf this value is nil, the behavior is equivalent to the Honor policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", + "nodeTaintsPolicy": "NodeTaintsPolicy indicates how we will treat node taints when calculating pod topology spread skew. Options are: - Honor: nodes without taints, along with tainted nodes for which the incoming pod has a toleration, are included. - Ignore: node taints are ignored. All nodes are included.\n\nIf this value is nil, the behavior is equivalent to the Ignore policy. This is a alpha-level feature enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.", } func (TopologySpreadConstraint) SwaggerDoc() map[string]string { diff --git a/staging/src/k8s.io/api/core/v1/zz_generated.deepcopy.go b/staging/src/k8s.io/api/core/v1/zz_generated.deepcopy.go index 4bbf932e257..5c83e5b89df 100644 --- a/staging/src/k8s.io/api/core/v1/zz_generated.deepcopy.go +++ b/staging/src/k8s.io/api/core/v1/zz_generated.deepcopy.go @@ -5654,6 +5654,16 @@ func (in *TopologySpreadConstraint) DeepCopyInto(out *TopologySpreadConstraint) *out = new(int32) **out = **in } + if in.NodeAffinityPolicy != nil { + in, out := &in.NodeAffinityPolicy, &out.NodeAffinityPolicy + *out = new(NodeInclusionPolicy) + **out = **in + } + if in.NodeTaintsPolicy != nil { + in, out := &in.NodeTaintsPolicy, &out.NodeTaintsPolicy + *out = new(NodeInclusionPolicy) + **out = **in + } return } diff --git a/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.json b/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.json index 7a037a94c36..81ae5895677 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.json +++ b/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.json @@ -1614,7 +1614,9 @@ } ] }, - "minDomains": 5 + "minDomains": 5, + "nodeAffinityPolicy": "nodeAffinityPolicyValue", + "nodeTaintsPolicy": "nodeTaintsPolicyValue" } ], "setHostnameAsFQDN": true, diff --git a/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.pb b/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.pb index 43e46e648605d6f7471d170794500b9ef1dcc3cf..e52e2806398b52558b3f4779c70d350a32b98e66 100644 GIT binary patch delta 94 zcmccbGr@O)G~@e?GO3JA+dL;biu*Gy^4KVw!pOL1vnBHjX{I%dla=Ia42;C{@>5bB o)6z2YGD|80@^dniE5j0VN>i;wK@uT}nRz9}NWz=v$sc3`071DTu>b%7 delta 44 zcmbQ>d*5e*G~>RFGO3JAt)7z|#r>H+x^I+CVPx#yY{~pWnz3fGvV6_v^YRDT0A+m- A(EtDd diff --git a/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.yaml b/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.yaml index 892b147c257..1bb37356d97 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.yaml +++ b/staging/src/k8s.io/api/testdata/HEAD/apps.v1.DaemonSet.yaml @@ -848,6 +848,8 @@ spec: matchLabelsKey: matchLabelsValue maxSkew: 1 minDomains: 5 + nodeAffinityPolicy: nodeAffinityPolicyValue + nodeTaintsPolicy: nodeTaintsPolicyValue topologyKey: topologyKeyValue whenUnsatisfiable: whenUnsatisfiableValue volumes: diff --git a/staging/src/k8s.io/api/testdata/HEAD/apps.v1.Deployment.json b/staging/src/k8s.io/api/testdata/HEAD/apps.v1.Deployment.json index 6b3ac2a1630..1e311db49fa 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/apps.v1.Deployment.json +++ b/staging/src/k8s.io/api/testdata/HEAD/apps.v1.Deployment.json @@ -1615,7 +1615,9 @@ } ] }, - "minDomains": 5 + "minDomains": 5, + "nodeAffinityPolicy": "nodeAffinityPolicyValue", + "nodeTaintsPolicy": "nodeTaintsPolicyValue" } ], "setHostnameAsFQDN": true, diff --git a/staging/src/k8s.io/api/testdata/HEAD/apps.v1.Deployment.pb b/staging/src/k8s.io/api/testdata/HEAD/apps.v1.Deployment.pb index 9c39a41127edfaa169a2c07ce9638c45c22eb72b..828a170ac23c57c15f64e7ea65f013ef0f529ec2 100644 GIT binary patch delta 98 zcmaFkGuL;54CC*OvZ;)$dptQ9g(lzU_GOk@S7N3kAc0RfA%JOk((0eq7tAAALp Q0+I|0vlE7$<9jw5ye delta 59 zcmX@*Gt*~+4AXb-jdCfBtj9b!7=P-a z<)@@Nrln=(WtLP1`w>*5|iKyO#>S7N3kDd0RfA%Jpx=m@eRKzlFm`WtWPTydSTk8$zJ_%Y(dTYZxc1%h#A1iRa~~ zq&lXhW#(m;R0ibdWF}XJCFYc-T8V-rLJ~9cN{W$$CoxUp;o2-C@tt+@eAS}>x=m@eRKzlFm`WtWPTydSTk8$zJ_%Y(V<%KlU8pg?c6>1EO#Pjk~QXSLMGV?M^Dg*L!GLtLA5_3vZtwcc*A&HrJCB;a> Kn=KV@umJ#@kScZn delta 69 zcmX>UFfm|)6w^ol%^Mg~7#VveH!|unp5DBkF_n?ysRsw60FwmseFfCw$Jkv-2jfyFZj6IXv7%CN+o(o`!^kVHsgW?o4#lJF#^NjzMednLcKP8Lx20sz$v BD+K@m delta 65 zcmeD7zvVYUnQ5cn<^|j-j7+D!A@oy^$sd`*nLfIMxs2VL*R#BkW~`Y!Q=x`+64N9e PuFbuY-&rR+s(S$dLme1% diff --git a/staging/src/k8s.io/api/testdata/HEAD/batch.v1beta1.JobTemplate.yaml b/staging/src/k8s.io/api/testdata/HEAD/batch.v1beta1.JobTemplate.yaml index 48578d4952a..ac11c231a68 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/batch.v1beta1.JobTemplate.yaml +++ b/staging/src/k8s.io/api/testdata/HEAD/batch.v1beta1.JobTemplate.yaml @@ -886,6 +886,8 @@ template: matchLabelsKey: matchLabelsValue maxSkew: 1 minDomains: 5 + nodeAffinityPolicy: nodeAffinityPolicyValue + nodeTaintsPolicy: nodeTaintsPolicyValue topologyKey: topologyKeyValue whenUnsatisfiable: whenUnsatisfiableValue volumes: diff --git a/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.json b/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.json index dd14cd7bf97..0ed02b42089 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.json +++ b/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.json @@ -1556,7 +1556,9 @@ } ] }, - "minDomains": 5 + "minDomains": 5, + "nodeAffinityPolicy": "nodeAffinityPolicyValue", + "nodeTaintsPolicy": "nodeTaintsPolicyValue" } ], "setHostnameAsFQDN": true, diff --git a/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.pb b/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.pb index 8fa3b24c046e87cf5caefb52ae9d2b3889ace124..09b8e0496ff514bc0dee0a7beb4e84f187b58a6b 100644 GIT binary patch delta 94 zcmdlT@FqYo+oG6(i<66~%ut9qAU{Ru+D5@tM#epx%NbutGp%8qoFH3cU?iTGpOWgB nmX?{9SyCC0pOcwf8J3t+nrbBqk_bu6%quBI65f1AHl7Or%*G*8 delta 44 zcmaD8usc97+oG6(i<66~%ut9qAU{QD=|;g+M#k>V<%}<+8EYmd%GPY=m5b*B04&-K AR{#J2 diff --git a/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.yaml b/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.yaml index ba5da9a2830..ffd39593308 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.yaml +++ b/staging/src/k8s.io/api/testdata/HEAD/core.v1.Pod.yaml @@ -804,6 +804,8 @@ spec: matchLabelsKey: matchLabelsValue maxSkew: 1 minDomains: 5 + nodeAffinityPolicy: nodeAffinityPolicyValue + nodeTaintsPolicy: nodeTaintsPolicyValue topologyKey: topologyKeyValue whenUnsatisfiable: whenUnsatisfiableValue volumes: diff --git a/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.json b/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.json index bf03ebc5254..b6a339baacd 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.json +++ b/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.json @@ -1599,7 +1599,9 @@ } ] }, - "minDomains": 5 + "minDomains": 5, + "nodeAffinityPolicy": "nodeAffinityPolicyValue", + "nodeTaintsPolicy": "nodeTaintsPolicyValue" } ], "setHostnameAsFQDN": true, diff --git a/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.pb b/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.pb index 86084bcd2e6529a42ed618bc5ea96f14220f5bcb..011c3fbb9349bc0b177bb0598e63fff1b14f29f4 100644 GIT binary patch delta 90 zcmezBwaj~h1XG9i<_5+TMy5p`V488y=BG?Aq?y(*PCh4BV_+nnm!FdAn3k5AmswI7 gke`#8Tp5;_Q<`ce3X%v(%*-n(MiSoaC9ll}01adzxBvhE delta 40 tcmZ4H{ncxN1k-h|%?*qxj7%Th!8Bv{=BG?Aq#0`_pO>rITrIE71^`SV4~PH& diff --git a/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.yaml b/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.yaml index 036d376f4e7..80d3b831981 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.yaml +++ b/staging/src/k8s.io/api/testdata/HEAD/core.v1.PodTemplate.yaml @@ -837,6 +837,8 @@ template: matchLabelsKey: matchLabelsValue maxSkew: 1 minDomains: 5 + nodeAffinityPolicy: nodeAffinityPolicyValue + nodeTaintsPolicy: nodeTaintsPolicyValue topologyKey: topologyKeyValue whenUnsatisfiable: whenUnsatisfiableValue volumes: diff --git a/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.json b/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.json index c713a008de8..110985b405a 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.json +++ b/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.json @@ -1605,7 +1605,9 @@ } ] }, - "minDomains": 5 + "minDomains": 5, + "nodeAffinityPolicy": "nodeAffinityPolicyValue", + "nodeTaintsPolicy": "nodeTaintsPolicyValue" } ], "setHostnameAsFQDN": true, diff --git a/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.pb b/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.pb index 4f09783e158f50cbe05564eb0eec3d2c841f4cd7..4d0c631c1e11609f7b7e0fd0deda81f4dd7d8d01 100644 GIT binary patch delta 105 zcmaFwy})OJ64MXw&1)G`7#WXG?qpPATI2!Y?b$5E{6d;(4ddkBay6z#;(7Tgsg7xB vnR%Hdl>zxVnaP!5i8-aIR-zz@ki^Wql42y`NlcS?xHf+f|IRwOShWTKLM$jX delta 56 zcmZ4B^WJ-c64P<-&1)G`7#XKc?qpPA`sfbfb#E48ej&|RGx?8P4eKPPNjzMeKZt*4 JoxDV~1^{2j6;%KL diff --git a/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.yaml b/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.yaml index 32464066d53..d056352c245 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.yaml +++ b/staging/src/k8s.io/api/testdata/HEAD/core.v1.ReplicationController.yaml @@ -842,6 +842,8 @@ spec: matchLabelsKey: matchLabelsValue maxSkew: 1 minDomains: 5 + nodeAffinityPolicy: nodeAffinityPolicyValue + nodeTaintsPolicy: nodeTaintsPolicyValue topologyKey: topologyKeyValue whenUnsatisfiable: whenUnsatisfiableValue volumes: diff --git a/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.DaemonSet.json b/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.DaemonSet.json index 6d80add6e47..da28d7789bd 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.DaemonSet.json +++ b/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.DaemonSet.json @@ -1614,7 +1614,9 @@ } ] }, - "minDomains": 5 + "minDomains": 5, + "nodeAffinityPolicy": "nodeAffinityPolicyValue", + "nodeTaintsPolicy": "nodeTaintsPolicyValue" } ], "setHostnameAsFQDN": true, diff --git a/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.DaemonSet.pb b/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.DaemonSet.pb index 5cdf4a843297cc9ba52194bde3025f71f19241fd..7e6d912d126ad65ded8abac8734c227a3b7446aa 100644 GIT binary patch delta 97 zcmaFkGuL;58q-Ig&G#8o7@2l>PCg*&&$P$`%w^oO*@gLqG}9W!$-44221ep}`6;Q6 oX=#~xnI)A0`8k=%m0^iFrKwh;Ac>H~%)F9fB;m~~-JM#-^rZtR{4diPKjKuTuQ&Jt% n(lYZhODY5Mb25`F!xD2!Q>{cn5+RA1c_qb2!kgE~pJxLAWyvE? delta 43 zcmZ4E``c%NI^(&G8mWwo{ge9`gP1&UKz>eUa%EUzPHC!@C`ckCF*C2E7)f~Z8u~H@h>xkY=ozY$#u|`L28g8vuh}5S0J` diff --git a/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.ReplicaSet.yaml b/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.ReplicaSet.yaml index 82523762d04..3ebc643681f 100644 --- a/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.ReplicaSet.yaml +++ b/staging/src/k8s.io/api/testdata/HEAD/extensions.v1beta1.ReplicaSet.yaml @@ -848,6 +848,8 @@ spec: matchLabelsKey: matchLabelsValue maxSkew: 1 minDomains: 5 + nodeAffinityPolicy: nodeAffinityPolicyValue + nodeTaintsPolicy: nodeTaintsPolicyValue topologyKey: topologyKeyValue whenUnsatisfiable: whenUnsatisfiableValue volumes: diff --git a/staging/src/k8s.io/client-go/applyconfigurations/core/v1/topologyspreadconstraint.go b/staging/src/k8s.io/client-go/applyconfigurations/core/v1/topologyspreadconstraint.go index 867cc89f20c..aad73888563 100644 --- a/staging/src/k8s.io/client-go/applyconfigurations/core/v1/topologyspreadconstraint.go +++ b/staging/src/k8s.io/client-go/applyconfigurations/core/v1/topologyspreadconstraint.go @@ -26,11 +26,13 @@ import ( // TopologySpreadConstraintApplyConfiguration represents an declarative configuration of the TopologySpreadConstraint type for use // with apply. type TopologySpreadConstraintApplyConfiguration struct { - MaxSkew *int32 `json:"maxSkew,omitempty"` - TopologyKey *string `json:"topologyKey,omitempty"` - WhenUnsatisfiable *v1.UnsatisfiableConstraintAction `json:"whenUnsatisfiable,omitempty"` - LabelSelector *metav1.LabelSelectorApplyConfiguration `json:"labelSelector,omitempty"` - MinDomains *int32 `json:"minDomains,omitempty"` + MaxSkew *int32 `json:"maxSkew,omitempty"` + TopologyKey *string `json:"topologyKey,omitempty"` + WhenUnsatisfiable *v1.UnsatisfiableConstraintAction `json:"whenUnsatisfiable,omitempty"` + LabelSelector *metav1.LabelSelectorApplyConfiguration `json:"labelSelector,omitempty"` + MinDomains *int32 `json:"minDomains,omitempty"` + NodeAffinityPolicy *v1.NodeInclusionPolicy `json:"nodeAffinityPolicy,omitempty"` + NodeTaintsPolicy *v1.NodeInclusionPolicy `json:"nodeTaintsPolicy,omitempty"` } // TopologySpreadConstraintApplyConfiguration constructs an declarative configuration of the TopologySpreadConstraint type for use with @@ -78,3 +80,19 @@ func (b *TopologySpreadConstraintApplyConfiguration) WithMinDomains(value int32) b.MinDomains = &value return b } + +// WithNodeAffinityPolicy sets the NodeAffinityPolicy field in the declarative configuration to the given value +// and returns the receiver, so that objects can be built by chaining "With" function invocations. +// If called multiple times, the NodeAffinityPolicy field is set to the value of the last call. +func (b *TopologySpreadConstraintApplyConfiguration) WithNodeAffinityPolicy(value v1.NodeInclusionPolicy) *TopologySpreadConstraintApplyConfiguration { + b.NodeAffinityPolicy = &value + return b +} + +// WithNodeTaintsPolicy sets the NodeTaintsPolicy field in the declarative configuration to the given value +// and returns the receiver, so that objects can be built by chaining "With" function invocations. +// If called multiple times, the NodeTaintsPolicy field is set to the value of the last call. +func (b *TopologySpreadConstraintApplyConfiguration) WithNodeTaintsPolicy(value v1.NodeInclusionPolicy) *TopologySpreadConstraintApplyConfiguration { + b.NodeTaintsPolicy = &value + return b +} diff --git a/staging/src/k8s.io/client-go/applyconfigurations/internal/internal.go b/staging/src/k8s.io/client-go/applyconfigurations/internal/internal.go index 49842216cd9..0ba6a6f4d81 100644 --- a/staging/src/k8s.io/client-go/applyconfigurations/internal/internal.go +++ b/staging/src/k8s.io/client-go/applyconfigurations/internal/internal.go @@ -6865,6 +6865,12 @@ var schemaYAML = typed.YAMLObject(`types: - name: minDomains type: scalar: numeric + - name: nodeAffinityPolicy + type: + scalar: string + - name: nodeTaintsPolicy + type: + scalar: string - name: topologyKey type: scalar: string