From 1c790d2e4dcebfa9abd2443834eef1be1d8790ae Mon Sep 17 00:00:00 2001 From: carolynhu Date: Fri, 6 Nov 2020 08:51:11 -0800 Subject: [PATCH 1/5] Add autoscale enable fields and PDB enabled field for OperatorSpec --- .../v1alpha1/istio.operator.v1alpha1.pb.html | 33 ++ operator/v1alpha1/operator.pb.go | 517 +++++++++--------- operator/v1alpha1/operator.proto | 7 +- .../operator/v1alpha1/operator_pb2.py | 282 +++++----- 4 files changed, 456 insertions(+), 383 deletions(-) diff --git a/operator/v1alpha1/istio.operator.v1alpha1.pb.html b/operator/v1alpha1/istio.operator.v1alpha1.pb.html index 69230aecdff..12262434bc9 100644 --- a/operator/v1alpha1/istio.operator.v1alpha1.pb.html +++ b/operator/v1alpha1/istio.operator.v1alpha1.pb.html @@ -386,6 +386,17 @@

ComponentSpec

Namespace for the component.

+ + +No + + + +autoScaleEnabled +TypeBoolValueForPB + +

Check whether autoScale is enabled.

+ No @@ -574,6 +585,17 @@

GatewaySpec

Labels for the gateway.

+ + +No + + + +autoScaleEnabled +TypeBoolValueForPB + +

Check whether autoScale is enabled.

+ No @@ -1927,6 +1949,17 @@

PodDisruptionBudgetSpec

maxUnavailable uint32 + + +No + + + +enabled +TypeBoolValueForPB + +

Check whether PodDisruptionBudget is enabled

+ No diff --git a/operator/v1alpha1/operator.pb.go b/operator/v1alpha1/operator.pb.go index da333fafd47..c3f930d71d3 100644 --- a/operator/v1alpha1/operator.pb.go +++ b/operator/v1alpha1/operator.pb.go @@ -477,6 +477,8 @@ type ComponentSpec struct { Enabled *BoolValueForPB `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` // Namespace for the component. Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + // Check whether autoScale is enabled. + AutoScaleEnabled *BoolValueForPB `protobuf:"bytes,3,opt,name=autoScaleEnabled,proto3" json:"autoScaleEnabled,omitempty"` // Hub for the component (overrides top level hub setting). Hub string `protobuf:"bytes,10,opt,name=hub,proto3" json:"hub,omitempty"` // Tag for the component (overrides top level tag setting). @@ -522,6 +524,7 @@ func (m *ComponentSpec) GetNamespace() string { return "" } + func (m *ComponentSpec) GetHub() string { if m != nil { return m.Hub @@ -621,6 +624,8 @@ type GatewaySpec struct { Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` // Labels for the gateway. Label map[string]string `protobuf:"bytes,4,rep,name=label,proto3" json:"label,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Check whether autoScale is enabled. + AutoScaleEnabled *BoolValueForPB `protobuf:"bytes,5,opt,name=autoScaleEnabled,proto3" json:"autoScaleEnabled,omitempty"` // Hub for the component (overrides top level hub setting). Hub string `protobuf:"bytes,10,opt,name=hub,proto3" json:"hub,omitempty"` // Tag for the component (overrides top level tag setting). @@ -678,6 +683,7 @@ func (m *GatewaySpec) GetLabel() map[string]string { return nil } + func (m *GatewaySpec) GetHub() string { if m != nil { return m.Hub @@ -2247,12 +2253,14 @@ func (m *PodAffinityTerm) GetTopologyKey() string { // See k8s.io.api.policy.v1beta1.PodDisruptionBudget. type PodDisruptionBudgetSpec struct { - MinAvailable uint32 `protobuf:"varint,1,opt,name=minAvailable,proto3" json:"minAvailable,omitempty"` - Selector *v1.LabelSelector `protobuf:"bytes,2,opt,name=selector,proto3" json:"selector,omitempty"` - MaxUnavailable uint32 `protobuf:"varint,3,opt,name=maxUnavailable,proto3" json:"maxUnavailable,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + MinAvailable uint32 `protobuf:"varint,1,opt,name=minAvailable,proto3" json:"minAvailable,omitempty"` + Selector *v1.LabelSelector `protobuf:"bytes,2,opt,name=selector,proto3" json:"selector,omitempty"` + MaxUnavailable uint32 `protobuf:"varint,3,opt,name=maxUnavailable,proto3" json:"maxUnavailable,omitempty"` + // Check whether PodDisruptionBudget is enabled + Enabled *BoolValueForPB `protobuf:"bytes,4,opt,name=enabled,proto3" json:"enabled,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *PodDisruptionBudgetSpec) Reset() { *m = PodDisruptionBudgetSpec{} } @@ -2300,6 +2308,7 @@ func (m *PodDisruptionBudgetSpec) GetMaxUnavailable() uint32 { return 0 } + // See k8s.io.api.core.v1.PodsMetricSource. type PodsMetricSource struct { MetricName string `protobuf:"bytes,1,opt,name=metricName,proto3" json:"metricName,omitempty"` @@ -3526,251 +3535,253 @@ func init() { func init() { proto.RegisterFile("operator/v1alpha1/operator.proto", fileDescriptor_8023ebf2dcfea843) } var fileDescriptor_8023ebf2dcfea843 = []byte{ - // 3926 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0x4d, 0x8c, 0x1b, 0x47, - 0x76, 0x36, 0x7f, 0x86, 0x43, 0x3e, 0xce, 0x0f, 0x55, 0x1a, 0x49, 0xcc, 0xec, 0x5a, 0x96, 0x5b, - 0xb6, 0x56, 0x96, 0x1d, 0x8e, 0x25, 0x1b, 0x8e, 0xd6, 0x1b, 0x7b, 0x77, 0x34, 0x1a, 0x49, 0x23, - 0x4b, 0x33, 0xdc, 0xe2, 0xc8, 0xc6, 0x6e, 0xbc, 0x26, 0x6a, 0xba, 0x8b, 0x64, 0x67, 0x9a, 0x5d, - 0xbd, 0x5d, 0xc5, 0xd1, 0x70, 0x91, 0x43, 0x2e, 0x09, 0x90, 0x43, 0x80, 0x9c, 0x12, 0x24, 0x87, - 0x1c, 0x82, 0x00, 0x39, 0x04, 0xc9, 0xde, 0x72, 0x88, 0x13, 0x20, 0x8b, 0x24, 0x40, 0x72, 0xcb, - 0x35, 0x87, 0x00, 0x81, 0x03, 0xe4, 0x9e, 0x53, 0x6e, 0x41, 0x50, 0x3f, 0xdd, 0xec, 0x26, 0xbb, - 0x87, 0xe2, 0x58, 0x59, 0xec, 0x21, 0xa7, 0x61, 0xbd, 0xaa, 0xf7, 0x55, 0xd5, 0xab, 0x57, 0xef, - 0xaf, 0x7a, 0xe0, 0x1a, 0x0b, 0x68, 0x48, 0x04, 0x0b, 0xb7, 0x4e, 0x6e, 0x13, 0x2f, 0x18, 0x90, - 0xdb, 0x5b, 0x11, 0xa5, 0x15, 0x84, 0x4c, 0x30, 0x74, 0xc5, 0xe5, 0xc2, 0x65, 0xad, 0x98, 0x1a, - 0x8d, 0xdb, 0xfc, 0xa5, 0x3e, 0x63, 0x7d, 0x8f, 0x6e, 0xa9, 0x61, 0x47, 0xa3, 0xde, 0x16, 0xf1, - 0xc7, 0x9a, 0x67, 0xf3, 0xfd, 0xe3, 0xbb, 0xbc, 0xe5, 0xb2, 0x2d, 0x12, 0xb8, 0x43, 0x62, 0x0f, - 0x5c, 0x9f, 0x86, 0xe3, 0xad, 0xe0, 0xb8, 0x2f, 0x09, 0x7c, 0x6b, 0x48, 0x05, 0xd9, 0x3a, 0xb9, - 0xbd, 0xd5, 0xa7, 0xbe, 0xc4, 0xa4, 0x8e, 0xe1, 0xda, 0xe8, 0xb3, 0x3e, 0x53, 0x3f, 0xb7, 0xe4, - 0x2f, 0x4d, 0xb5, 0x7e, 0x56, 0x81, 0x0b, 0x7b, 0x72, 0x09, 0x07, 0x66, 0x05, 0x9d, 0x80, 0xda, - 0xa8, 0x09, 0xcb, 0x41, 0xc8, 0x7a, 0xae, 0x47, 0x9b, 0x70, 0xad, 0x70, 0xb3, 0x86, 0xa3, 0x26, - 0x7a, 0x17, 0x36, 0x5c, 0x9f, 0x0b, 0xe2, 0x79, 0xdd, 0x80, 0xd8, 0xc7, 0xa4, 0x4f, 0xbb, 0x01, - 0x11, 0x83, 0x66, 0x5d, 0x0d, 0x43, 0xa6, 0xaf, 0xad, 0xbb, 0xda, 0x44, 0x0c, 0x50, 0x03, 0x4a, - 0x83, 0xd1, 0x51, 0x73, 0x45, 0x0d, 0x90, 0x3f, 0xd1, 0x5d, 0x28, 0x09, 0xd2, 0x6f, 0xae, 0x5e, - 0x2b, 0xdc, 0xac, 0xdf, 0xb9, 0xd1, 0xca, 0x91, 0x40, 0xeb, 0x70, 0x1c, 0xd0, 0x3d, 0x5f, 0xd0, - 0xb0, 0x47, 0x6c, 0x8a, 0x25, 0x0b, 0x7a, 0x1b, 0xd6, 0x43, 0xca, 0xd9, 0x28, 0xb4, 0x69, 0x97, - 0x8f, 0x7a, 0x3d, 0xf7, 0xb4, 0xb9, 0x26, 0x71, 0xef, 0x15, 0x9b, 0x05, 0xbc, 0x16, 0x75, 0x75, - 0x54, 0x0f, 0xfa, 0x26, 0xd4, 0x7c, 0x32, 0xa4, 0x3c, 0x20, 0x36, 0x6d, 0xae, 0xab, 0xe9, 0x27, - 0x04, 0xb4, 0x09, 0xd5, 0x90, 0x9e, 0xb8, 0xdc, 0x65, 0x7e, 0xb3, 0xa1, 0x3a, 0xe3, 0x36, 0x6a, - 0x43, 0x7d, 0x48, 0xf9, 0xa0, 0x6b, 0x33, 0xbf, 0xe7, 0xf6, 0x9b, 0x37, 0xd5, 0x42, 0xb7, 0xce, - 0x5c, 0xe8, 0x53, 0x12, 0x74, 0x44, 0xe8, 0xfa, 0xfd, 0xc9, 0x8a, 0x41, 0x62, 0xec, 0x28, 0x08, - 0xb4, 0x0f, 0x60, 0xb3, 0x61, 0xc0, 0x7c, 0xea, 0x0b, 0xde, 0xbc, 0xa3, 0x00, 0x5b, 0xb9, 0x80, - 0xea, 0x40, 0x76, 0xa2, 0xf1, 0x1d, 0x2a, 0xe4, 0xa1, 0xe0, 0x04, 0x02, 0xf2, 0xa1, 0x41, 0x1c, - 0x87, 0xf9, 0xdd, 0x04, 0xea, 0x7b, 0xd7, 0x4a, 0x37, 0xeb, 0x77, 0xbe, 0x7b, 0x36, 0x6a, 0xf2, - 0x98, 0x5b, 0xdb, 0x12, 0x22, 0x9e, 0x87, 0xef, 0xfa, 0x22, 0x1c, 0x2b, 0x51, 0xae, 0x93, 0x74, - 0x0f, 0x7a, 0x08, 0x95, 0x13, 0xe2, 0x8d, 0x28, 0x6f, 0x3a, 0xe7, 0x13, 0x86, 0x61, 0x47, 0x5f, - 0x00, 0x1a, 0xf9, 0x27, 0xc4, 0x73, 0x1d, 0xa9, 0x9a, 0x5d, 0x03, 0x4a, 0xcf, 0x07, 0x7a, 0x21, - 0x01, 0xf5, 0xa9, 0x42, 0xda, 0x0c, 0x61, 0x23, 0x6b, 0x57, 0x52, 0x0b, 0x8f, 0xe9, 0xb8, 0x59, - 0xd0, 0x5a, 0x78, 0x4c, 0xc7, 0xe8, 0x3e, 0x2c, 0xa9, 0xd9, 0x9b, 0xc5, 0x39, 0xa7, 0xb1, 0x7b, - 0x2a, 0x68, 0xe8, 0x13, 0x6f, 0x72, 0x20, 0xf2, 0x34, 0x34, 0xf3, 0x87, 0xc5, 0xbb, 0x05, 0xeb, - 0xcb, 0x32, 0xac, 0xee, 0x69, 0xc5, 0xef, 0x08, 0x22, 0x46, 0x1c, 0xed, 0x42, 0x85, 0xab, 0x5f, - 0x6a, 0xc2, 0xb5, 0x3b, 0xbf, 0x9c, 0x7f, 0x28, 0x49, 0xbe, 0x96, 0xfe, 0x83, 0x0d, 0xb3, 0xbc, - 0x86, 0x43, 0xca, 0x39, 0xe9, 0xd3, 0x66, 0x49, 0x5f, 0x43, 0xd3, 0x44, 0x3d, 0x68, 0xc4, 0x27, - 0xdf, 0x35, 0x53, 0x15, 0xd5, 0xf9, 0x7f, 0xe7, 0x05, 0xa7, 0x9a, 0xec, 0x46, 0xb5, 0x95, 0x94, - 0xf0, 0xba, 0x9d, 0xa6, 0x6e, 0xfe, 0x76, 0x01, 0x56, 0x3f, 0xa5, 0xa1, 0xbc, 0x15, 0x9d, 0x78, - 0x4d, 0x27, 0x9a, 0x60, 0x84, 0x19, 0x35, 0x13, 0x9b, 0x2e, 0x7e, 0x9d, 0x4d, 0x6f, 0xc0, 0x12, - 0x0d, 0x43, 0x16, 0x36, 0xcb, 0x0a, 0x5e, 0x37, 0x36, 0x4f, 0x61, 0x23, 0x6b, 0xc5, 0x19, 0xe7, - 0xfa, 0x38, 0x7d, 0xae, 0xef, 0xbf, 0xe0, 0x2a, 0x52, 0xbb, 0x4c, 0x9e, 0xee, 0x17, 0x50, 0x31, - 0x5b, 0xaf, 0x42, 0x79, 0xff, 0x60, 0x7f, 0xb7, 0xf1, 0x0a, 0x5a, 0x81, 0xea, 0xb3, 0xf6, 0xfd, - 0xed, 0xc3, 0xbd, 0xfd, 0x87, 0x8d, 0x02, 0x5a, 0x87, 0x3a, 0xde, 0xdd, 0x39, 0xd8, 0xdf, 0xd9, - 0x7b, 0x22, 0x09, 0x45, 0x54, 0x87, 0xe5, 0x47, 0xbb, 0xdb, 0x4f, 0x0e, 0x1f, 0xfd, 0xa0, 0x51, - 0x42, 0x35, 0x58, 0xda, 0xc5, 0xf8, 0x00, 0x37, 0xca, 0xe8, 0x22, 0xac, 0x6f, 0xef, 0x1c, 0xee, - 0x1d, 0xec, 0x77, 0xf1, 0xee, 0xf7, 0x9f, 0xed, 0xe1, 0xdd, 0xfb, 0x8d, 0x25, 0xeb, 0xa7, 0x65, - 0xb8, 0x94, 0x79, 0xe1, 0xd1, 0xc7, 0x50, 0x3e, 0x22, 0x9c, 0x36, 0x5f, 0x55, 0x1b, 0xb9, 0x95, - 0xbb, 0x91, 0x7b, 0x84, 0xd3, 0xb4, 0x72, 0x2a, 0x3e, 0xf4, 0xab, 0xb0, 0x14, 0xb8, 0x1e, 0x13, - 0xcd, 0xab, 0x73, 0x2c, 0xed, 0x94, 0x66, 0x2b, 0x26, 0x69, 0xa5, 0x6d, 0xdf, 0x6d, 0xde, 0x58, - 0x88, 0x57, 0xb2, 0xa0, 0x4f, 0x60, 0x55, 0x8d, 0x76, 0xba, 0x21, 0x1d, 0x32, 0x41, 0x9b, 0xdf, - 0x5a, 0x08, 0x63, 0x45, 0x33, 0x63, 0xc5, 0x8b, 0x0e, 0xa0, 0xe1, 0xfa, 0xfd, 0x90, 0x72, 0xde, - 0xed, 0x13, 0x41, 0x9f, 0x93, 0x31, 0x6f, 0xde, 0x54, 0x9a, 0xfe, 0x46, 0x2e, 0xde, 0x43, 0x3d, - 0x50, 0xa1, 0xad, 0x1b, 0x6e, 0x43, 0xe3, 0xe8, 0x29, 0xac, 0xd3, 0x29, 0xbc, 0xb7, 0x16, 0xc0, - 0x5b, 0xa3, 0x29, 0xb8, 0xc7, 0xe5, 0xea, 0x6b, 0x8d, 0x6b, 0x8f, 0xcb, 0xd5, 0x6b, 0x8d, 0xd7, - 0x1f, 0x97, 0xab, 0xaf, 0x37, 0xac, 0xc7, 0xe5, 0xaa, 0xd5, 0xb8, 0xfe, 0xb8, 0x5c, 0xbd, 0xde, - 0x78, 0xe3, 0x71, 0xb9, 0xfa, 0x46, 0xe3, 0xcd, 0xc7, 0xe5, 0xea, 0x9b, 0x8d, 0x1b, 0x78, 0xd9, - 0x76, 0x05, 0x71, 0xa8, 0x87, 0x2b, 0x01, 0xf3, 0x5c, 0x7b, 0x8c, 0x6b, 0x82, 0x7a, 0x74, 0x48, - 0xe5, 0xc5, 0xab, 0xf4, 0x89, 0xe7, 0xd1, 0x31, 0x06, 0x9f, 0x39, 0xb4, 0x4b, 0xfa, 0xd4, 0x17, - 0x78, 0x29, 0x08, 0xd9, 0xe9, 0x18, 0x37, 0xb8, 0xeb, 0x50, 0x9b, 0x84, 0x5d, 0xd7, 0xff, 0x75, - 0x6a, 0x0b, 0x16, 0x5a, 0x7f, 0x5c, 0x80, 0x0b, 0x33, 0x67, 0x8e, 0x76, 0x61, 0x99, 0xfa, 0xe4, - 0xc8, 0xa3, 0x8e, 0xba, 0x0d, 0xf5, 0x3b, 0x6f, 0x9f, 0x69, 0x4e, 0xef, 0x31, 0xe6, 0x29, 0x9b, - 0xf9, 0x80, 0x85, 0xed, 0x7b, 0x38, 0xe2, 0x45, 0xf7, 0xa0, 0x74, 0x7c, 0x37, 0x72, 0x51, 0xef, - 0xe6, 0x42, 0x7c, 0x32, 0x3a, 0xa2, 0xa1, 0x4f, 0x05, 0xe5, 0xd8, 0x78, 0x5d, 0xae, 0x15, 0xe0, - 0xf8, 0x2e, 0xb7, 0xfe, 0xae, 0x08, 0xab, 0xff, 0x27, 0x8b, 0x4b, 0xb9, 0xf4, 0xe2, 0xb4, 0x4b, - 0x37, 0x91, 0x06, 0xcc, 0x44, 0x1a, 0xf5, 0xc5, 0x23, 0x8d, 0x0f, 0xa1, 0xcc, 0x03, 0x6a, 0xcf, - 0xbd, 0x3a, 0x69, 0x56, 0xc5, 0xf3, 0x52, 0x44, 0xf8, 0xcf, 0x45, 0xb8, 0x94, 0xe9, 0x78, 0x7e, - 0x3e, 0xa2, 0x8c, 0xb6, 0x0f, 0xe7, 0xd8, 0xfe, 0xab, 0x00, 0xf6, 0x80, 0x84, 0x42, 0x07, 0x86, - 0x57, 0x35, 0xb4, 0xa2, 0xa8, 0x78, 0xf0, 0x1d, 0xa8, 0x70, 0x7b, 0x40, 0x87, 0xa4, 0x79, 0x5d, - 0x81, 0x6f, 0xb4, 0x74, 0xa4, 0xdb, 0x8a, 0x22, 0xdd, 0xd6, 0xb6, 0x3f, 0xc6, 0x66, 0xcc, 0x4b, - 0x91, 0xe5, 0x1f, 0x94, 0xa0, 0x9e, 0xb8, 0xc2, 0x3f, 0x1f, 0x09, 0x22, 0x28, 0xcb, 0x86, 0x71, - 0xdc, 0xea, 0x37, 0xda, 0x85, 0x25, 0x8f, 0x1c, 0x51, 0xaf, 0x59, 0x56, 0x06, 0x67, 0xeb, 0x45, - 0x0c, 0x4e, 0xeb, 0x89, 0xe4, 0xd0, 0xee, 0x59, 0x73, 0xbf, 0x54, 0x3d, 0x7f, 0x09, 0xf2, 0xdd, - 0xbc, 0x0b, 0x30, 0x59, 0x64, 0x86, 0x47, 0xde, 0x48, 0x7a, 0xe4, 0x5a, 0xd2, 0xb7, 0xfe, 0x47, - 0x1d, 0xae, 0xe4, 0x40, 0xa3, 0x8f, 0xa0, 0x4a, 0x7a, 0x3d, 0xd7, 0x77, 0xc5, 0xd8, 0x1c, 0xd3, - 0xeb, 0xb9, 0xcb, 0xdb, 0x36, 0x03, 0x71, 0xcc, 0x82, 0x6e, 0x43, 0x89, 0xfa, 0x27, 0x26, 0x28, - 0x7a, 0x2d, 0x3f, 0xb8, 0xf3, 0x4f, 0x3e, 0x25, 0x21, 0x96, 0x63, 0xd1, 0x01, 0x54, 0x07, 0x01, - 0xe9, 0x2a, 0xc5, 0x2f, 0xcd, 0x09, 0x1e, 0x1e, 0xb1, 0xd0, 0xfd, 0x09, 0xf3, 0x05, 0xf1, 0xda, - 0xcc, 0xd9, 0x1e, 0x09, 0xc6, 0x6d, 0xe2, 0x51, 0x15, 0x56, 0xe3, 0xe5, 0x41, 0x40, 0xd4, 0x16, - 0x6e, 0xc1, 0x05, 0x77, 0xa8, 0x52, 0xa4, 0x91, 0xcc, 0x97, 0x94, 0xd5, 0x37, 0x61, 0xcd, 0xba, - 0xea, 0x68, 0x8f, 0x3c, 0xaf, 0xad, 0xc8, 0xa8, 0x0f, 0xab, 0xca, 0xf6, 0x73, 0xea, 0x29, 0x2b, - 0xdf, 0x5c, 0x52, 0x2b, 0xbf, 0xb7, 0xe8, 0x91, 0xb4, 0xf6, 0x99, 0x43, 0x3b, 0x06, 0x44, 0xab, - 0xcd, 0x8a, 0x9f, 0x20, 0x21, 0x07, 0x2e, 0x05, 0xcc, 0xe9, 0x3a, 0x2e, 0x0f, 0x47, 0x81, 0x70, - 0x99, 0xdf, 0x3d, 0x1a, 0x39, 0x7d, 0x2a, 0x9a, 0x95, 0x39, 0x3a, 0xd0, 0x66, 0xce, 0xfd, 0x98, - 0xe9, 0x9e, 0xe2, 0x51, 0xdb, 0xbd, 0x18, 0xcc, 0x76, 0xa0, 0x21, 0xac, 0xcb, 0x59, 0x88, 0xef, - 0x33, 0x41, 0x24, 0x9d, 0x37, 0x97, 0xd5, 0x86, 0xee, 0x2f, 0xbc, 0x21, 0x29, 0xe0, 0x09, 0x8c, - 0xde, 0xd2, 0x5a, 0x90, 0x22, 0xa2, 0x16, 0x5c, 0x0c, 0x42, 0x97, 0x85, 0xae, 0x18, 0x77, 0x6d, - 0x8f, 0x70, 0xde, 0x55, 0x97, 0xaf, 0xaa, 0x64, 0x7d, 0x21, 0xea, 0xda, 0x91, 0x3d, 0xfb, 0xf2, - 0x26, 0xb6, 0x65, 0x22, 0x49, 0x1c, 0xd7, 0x97, 0x71, 0x40, 0x10, 0xb2, 0x23, 0xda, 0xac, 0xa9, - 0xed, 0x7f, 0x2b, 0x77, 0x79, 0x38, 0x1a, 0xdf, 0x96, 0xc3, 0x65, 0xb6, 0x99, 0x6c, 0xa3, 0xeb, - 0xb0, 0x1a, 0xd2, 0xc0, 0x73, 0x6d, 0xd2, 0xb5, 0xd9, 0xc8, 0x17, 0xea, 0x7a, 0xae, 0xe2, 0x15, - 0x43, 0xdc, 0x91, 0x34, 0xf4, 0x3d, 0xa8, 0x45, 0x49, 0x2a, 0x37, 0xb7, 0xd5, 0x3a, 0x63, 0x42, - 0x33, 0x12, 0x4f, 0x98, 0xd0, 0xc7, 0xb0, 0xcc, 0x69, 0x78, 0xe2, 0xda, 0x54, 0x65, 0xd4, 0x67, - 0x45, 0x2d, 0x1d, 0x3d, 0x4e, 0xab, 0xa4, 0x61, 0x42, 0x0f, 0xa1, 0xca, 0x45, 0x48, 0x04, 0xed, - 0x8f, 0x4d, 0x02, 0x9e, 0x6f, 0xfc, 0xee, 0xd3, 0xc0, 0x63, 0xe3, 0xa1, 0x8a, 0xb8, 0x35, 0x0b, - 0x8e, 0x99, 0xd1, 0x2e, 0xd4, 0x05, 0xf3, 0x24, 0x8b, 0x3a, 0xdc, 0x35, 0x75, 0xb8, 0xd7, 0xf3, - 0x4d, 0x4f, 0x3c, 0x16, 0x27, 0xf9, 0xd0, 0x18, 0x2e, 0x9a, 0xa5, 0xa5, 0x74, 0x65, 0x5d, 0xc1, - 0x3d, 0x5a, 0x58, 0x57, 0xcc, 0x9e, 0x67, 0xf4, 0x05, 0xf1, 0x99, 0x0e, 0xf4, 0x0c, 0xd6, 0x39, - 0xb5, 0x47, 0x4a, 0x31, 0x98, 0x2f, 0xe8, 0xa9, 0x50, 0x85, 0x80, 0xb3, 0x24, 0xd2, 0x66, 0x4e, - 0x27, 0xcd, 0x82, 0xa7, 0x31, 0xd0, 0x2e, 0x54, 0xd9, 0x09, 0x0d, 0x3d, 0x19, 0x58, 0x3a, 0x6a, - 0x1b, 0x6f, 0xe5, 0x6f, 0xe3, 0x2e, 0x3f, 0x38, 0x92, 0x51, 0xdd, 0x81, 0xe6, 0xc0, 0x31, 0xeb, - 0xe6, 0x77, 0xe1, 0xc2, 0xcc, 0x4d, 0x5e, 0xc4, 0xb6, 0x6e, 0x6e, 0xc3, 0xc5, 0x8c, 0x9b, 0xb3, - 0x10, 0xc4, 0x2e, 0x5c, 0xc9, 0x11, 0xe8, 0x42, 0x56, 0xfe, 0x77, 0x8a, 0xd0, 0x98, 0xde, 0x29, - 0x7a, 0x0d, 0xea, 0x24, 0x70, 0xbb, 0xe9, 0x5c, 0x12, 0x48, 0xe0, 0x9a, 0x44, 0x4c, 0x3a, 0xd0, - 0x63, 0xd7, 0x77, 0x0c, 0x9c, 0xfa, 0x9d, 0xe9, 0x54, 0x9f, 0xc2, 0x72, 0x40, 0x84, 0x3d, 0xa0, - 0xdc, 0xb8, 0xd5, 0xf7, 0x5e, 0x58, 0xdc, 0x2d, 0x19, 0x90, 0x28, 0xd7, 0x8e, 0x23, 0x8c, 0xcd, - 0x1f, 0x41, 0x2d, 0xa6, 0xca, 0xf9, 0x54, 0x10, 0xa3, 0x57, 0xa7, 0x7e, 0xcb, 0xac, 0x2a, 0x99, - 0x5f, 0xbe, 0xa8, 0xb7, 0xd5, 0x4c, 0xd6, 0x7f, 0x15, 0xa0, 0x1a, 0x79, 0x2b, 0xb4, 0x07, 0xca, - 0x34, 0x6f, 0xa7, 0xdd, 0xdc, 0x9b, 0xb9, 0x88, 0xfb, 0x89, 0xc1, 0x38, 0xc5, 0x8a, 0x1e, 0x40, - 0x5d, 0x9a, 0xc4, 0x08, 0xa9, 0x38, 0xc7, 0x36, 0xb4, 0x27, 0x63, 0x71, 0x92, 0x11, 0x61, 0x65, - 0xb7, 0xb7, 0x7d, 0xe1, 0xc6, 0x58, 0xda, 0x15, 0xde, 0x3c, 0x13, 0x2b, 0x31, 0x1e, 0x4f, 0x03, - 0x58, 0x7f, 0x56, 0x90, 0xc9, 0xbb, 0xdf, 0x73, 0xfb, 0x4f, 0x49, 0xf0, 0x09, 0x1d, 0xc7, 0xae, - 0x88, 0xc0, 0x86, 0xc7, 0x6c, 0xe2, 0xe9, 0x43, 0xc1, 0xb4, 0x47, 0x43, 0xea, 0xdb, 0xd4, 0xc8, - 0x21, 0xbf, 0x7e, 0xf0, 0x24, 0x83, 0x09, 0x67, 0x42, 0x45, 0x7a, 0x5a, 0x9c, 0xe8, 0xe9, 0x26, - 0x54, 0x99, 0xf2, 0x54, 0xc4, 0x53, 0x5b, 0xab, 0xe2, 0xb8, 0x6d, 0xdd, 0x85, 0xb5, 0x1d, 0xcf, - 0xa5, 0xbe, 0xd8, 0x6b, 0x9b, 0xc2, 0xdd, 0x0d, 0x58, 0x13, 0xee, 0x90, 0xb2, 0x91, 0xe8, 0x50, - 0x9b, 0xf9, 0x8e, 0xae, 0xe8, 0x2c, 0xe1, 0x29, 0xaa, 0x45, 0xe1, 0x1b, 0x3b, 0x21, 0xe3, 0xdc, - 0x68, 0xef, 0xf4, 0x32, 0x22, 0x65, 0x2e, 0x64, 0x28, 0x73, 0x31, 0xa1, 0xcc, 0x57, 0x21, 0x71, - 0x05, 0x8c, 0x9a, 0x27, 0x28, 0xd6, 0x6f, 0x16, 0x00, 0xcd, 0x9a, 0x65, 0x09, 0x25, 0xc6, 0x01, - 0x8d, 0xe0, 0xe5, 0x6f, 0xf4, 0x29, 0xac, 0x86, 0xcc, 0xf3, 0x5c, 0xbf, 0xff, 0x2c, 0x70, 0x88, - 0x88, 0xf4, 0x35, 0xdf, 0xbf, 0xe3, 0xe4, 0xe8, 0xc9, 0x24, 0x38, 0x0d, 0x63, 0x3d, 0x87, 0x8a, - 0x0e, 0x9a, 0xe2, 0x0d, 0x14, 0x12, 0x1b, 0xc8, 0xb4, 0x02, 0x68, 0x07, 0x6a, 0xea, 0xc7, 0x83, - 0x90, 0x0d, 0x8d, 0x3e, 0xbd, 0x39, 0x27, 0x24, 0xeb, 0x28, 0xab, 0x8e, 0x27, 0x7c, 0xd6, 0xbf, - 0x15, 0x61, 0x25, 0xd9, 0x87, 0x1e, 0x41, 0xb5, 0xe7, 0x52, 0xcf, 0xc1, 0xb4, 0x67, 0x54, 0xe6, - 0x9d, 0x5c, 0x50, 0x7d, 0x20, 0x0f, 0xe4, 0xf0, 0x48, 0xfd, 0x70, 0xcc, 0x8d, 0x7e, 0x08, 0x8d, - 0xc8, 0xc5, 0x3e, 0x88, 0x10, 0xe7, 0x95, 0x05, 0x71, 0x92, 0x21, 0xc6, 0x9c, 0xc1, 0x41, 0x9f, - 0xc1, 0xba, 0x9d, 0x50, 0x7e, 0x09, 0x5d, 0x9a, 0xa3, 0xdf, 0x59, 0x97, 0x05, 0x4f, 0xa3, 0xa0, - 0x7d, 0x58, 0xe1, 0xd4, 0x0e, 0xa9, 0x30, 0xa8, 0xe5, 0x39, 0x65, 0xa2, 0x4e, 0x34, 0x38, 0x86, - 0x4c, 0xf1, 0x5b, 0x37, 0x00, 0x76, 0x4f, 0xa9, 0xbd, 0x6d, 0xcb, 0xcb, 0x80, 0x9a, 0xb0, 0x6c, - 0xb3, 0xe1, 0x90, 0x28, 0xa5, 0x2d, 0xdd, 0xac, 0xe1, 0xa8, 0x69, 0xfd, 0x7d, 0x11, 0x36, 0xa2, - 0xd4, 0xf4, 0x29, 0x15, 0xa1, 0x6b, 0x9b, 0xf3, 0xb8, 0x0a, 0x30, 0x54, 0xed, 0xfd, 0x89, 0x56, - 0x24, 0x28, 0xe8, 0xd7, 0x60, 0x4d, 0xb7, 0xa2, 0x05, 0x18, 0x19, 0xbf, 0xd7, 0xd2, 0x0f, 0x1a, - 0xad, 0xe4, 0x83, 0x46, 0x2b, 0x38, 0xee, 0x4b, 0x02, 0x6f, 0x0d, 0xa9, 0x20, 0xad, 0x93, 0xdb, - 0x3a, 0x11, 0x8a, 0xd7, 0x3e, 0x05, 0x85, 0x0e, 0xa0, 0x2e, 0x48, 0xd8, 0xa7, 0x42, 0x59, 0xee, - 0xb9, 0x22, 0x36, 0xc6, 0xf9, 0x20, 0xd4, 0x35, 0x65, 0x9d, 0xda, 0x25, 0x11, 0xd0, 0x8f, 0x00, - 0xe9, 0xe6, 0xf6, 0x09, 0x0d, 0x49, 0x9f, 0x6a, 0xdc, 0xf2, 0x79, 0x70, 0x33, 0x80, 0xac, 0x7f, - 0x2d, 0xc0, 0xea, 0xa3, 0xc3, 0xc3, 0xf6, 0x43, 0x2a, 0x8c, 0xc4, 0xb3, 0x9c, 0xcd, 0x36, 0x94, - 0x03, 0x16, 0x0a, 0x23, 0xa8, 0x05, 0xa7, 0x55, 0xac, 0x12, 0x76, 0xc0, 0xb8, 0x88, 0x7c, 0xa6, - 0xfc, 0x8d, 0x2e, 0x9b, 0x1c, 0x9c, 0x9a, 0x6c, 0xc4, 0xb4, 0x64, 0x50, 0x37, 0x10, 0x22, 0x78, - 0x44, 0x89, 0x43, 0x43, 0x6e, 0x52, 0x90, 0xfc, 0xa0, 0x4e, 0xae, 0x5f, 0x8f, 0xc5, 0x49, 0x3e, - 0xeb, 0x03, 0x80, 0x49, 0xd7, 0x8b, 0x9b, 0x09, 0xeb, 0x7f, 0x0a, 0xf0, 0x8d, 0x33, 0x12, 0x2b, - 0xf4, 0x39, 0xac, 0xa9, 0xd6, 0xa1, 0x12, 0xe7, 0xe4, 0xda, 0xe7, 0xa7, 0x69, 0x67, 0xd8, 0x64, - 0x3c, 0x85, 0x85, 0xae, 0x41, 0x7d, 0xe8, 0xfa, 0x58, 0xc7, 0xeb, 0xba, 0x88, 0xbd, 0x84, 0x93, - 0x24, 0x35, 0x82, 0x9c, 0xc6, 0x23, 0x4a, 0x66, 0xc4, 0x84, 0x84, 0x3e, 0x82, 0x65, 0xad, 0x97, - 0x51, 0x30, 0x92, 0x2f, 0x3c, 0x73, 0x75, 0x54, 0x74, 0x6e, 0x78, 0xac, 0x5b, 0xb0, 0x91, 0xe5, - 0xdb, 0xb2, 0x44, 0x68, 0xfd, 0x75, 0x11, 0x60, 0x82, 0x91, 0xe9, 0x02, 0x76, 0xa0, 0xc2, 0x14, - 0x92, 0xd1, 0x9f, 0xb7, 0xe7, 0x98, 0xc7, 0xe4, 0x6d, 0xc6, 0x86, 0x15, 0x7d, 0x24, 0x55, 0xd0, - 0xe1, 0xe6, 0x46, 0xbd, 0x75, 0x56, 0x18, 0xc0, 0x53, 0x00, 0x8a, 0x0d, 0xed, 0x41, 0x35, 0x32, - 0x89, 0x73, 0x2f, 0x4f, 0x64, 0x52, 0x53, 0x30, 0x31, 0xbb, 0x84, 0xa2, 0xc6, 0xee, 0x34, 0x97, - 0xe6, 0x40, 0x65, 0x19, 0x28, 0x1c, 0xb3, 0x5b, 0x5f, 0x16, 0x61, 0x25, 0x19, 0x4d, 0xa1, 0xdf, - 0x2d, 0x40, 0x2b, 0xa4, 0x3f, 0x1e, 0xb9, 0x21, 0x75, 0xee, 0x8f, 0xe4, 0x1d, 0xea, 0xd8, 0x03, - 0xea, 0x8c, 0xa4, 0xe3, 0xdb, 0xeb, 0xfb, 0x2c, 0x26, 0x4b, 0x13, 0x39, 0x12, 0x51, 0xc8, 0x3a, - 0x2f, 0x5a, 0x8b, 0xcd, 0xd5, 0x82, 0xe0, 0xe8, 0x8f, 0x0a, 0xb0, 0x15, 0x84, 0x52, 0x01, 0x5e, - 0x7c, 0x41, 0xba, 0xd6, 0x71, 0x46, 0x02, 0x1f, 0xe1, 0x4d, 0x90, 0x0e, 0x69, 0x38, 0xc4, 0x8b, - 0x4e, 0x64, 0xf5, 0xb5, 0xf0, 0x62, 0xdb, 0xfb, 0x19, 0x5c, 0x48, 0x96, 0x18, 0x24, 0x28, 0x57, - 0x5e, 0xe3, 0x2c, 0x7d, 0xd9, 0x9f, 0xe2, 0xc0, 0xb3, 0x18, 0xd6, 0x3f, 0x14, 0xa0, 0x31, 0x3d, - 0x0e, 0x7d, 0x0e, 0x8d, 0xa1, 0x0c, 0xd6, 0x77, 0x4f, 0x83, 0x90, 0x72, 0xae, 0xf2, 0xc5, 0xc2, - 0x9c, 0xad, 0xa7, 0xce, 0x42, 0x9f, 0x84, 0x8a, 0x6d, 0x66, 0x90, 0x10, 0x96, 0x77, 0x5c, 0xd8, - 0x03, 0xe5, 0xbf, 0xf9, 0x5c, 0x99, 0xe6, 0x01, 0x27, 0x41, 0xac, 0x2e, 0x5c, 0xc9, 0x19, 0x97, - 0x91, 0x47, 0xa9, 0xf8, 0x54, 0x4f, 0x63, 0xac, 0x63, 0xdc, 0x96, 0x76, 0xdb, 0xbc, 0x98, 0x96, - 0x94, 0x4f, 0x36, 0x2d, 0xab, 0x03, 0x17, 0x33, 0x02, 0x9c, 0xa9, 0x68, 0x72, 0x36, 0xc5, 0xfa, - 0x26, 0xd4, 0x54, 0x08, 0x24, 0x13, 0x9e, 0xa8, 0x82, 0x19, 0x13, 0xac, 0x8f, 0x01, 0x62, 0xb3, - 0x40, 0x62, 0x13, 0xb4, 0x94, 0xb0, 0xe2, 0xa9, 0x0a, 0x68, 0x65, 0xaa, 0x02, 0x6a, 0xfd, 0x77, - 0x11, 0xd0, 0xac, 0x5d, 0x41, 0x4f, 0xa0, 0xa2, 0xdd, 0xe1, 0xd7, 0x32, 0xde, 0x06, 0x63, 0x2a, - 0xe6, 0x28, 0xce, 0xc4, 0x1c, 0x2f, 0x3d, 0x2c, 0x38, 0x80, 0x6a, 0x5c, 0xa2, 0x2b, 0x9f, 0x3f, - 0x7c, 0x89, 0x41, 0xd0, 0xf7, 0x61, 0x85, 0x24, 0x23, 0x8c, 0xa5, 0xf3, 0x2c, 0x31, 0x05, 0x61, - 0xfd, 0x6d, 0x11, 0xea, 0x89, 0x0c, 0x0f, 0xfd, 0xde, 0x79, 0x8c, 0x5b, 0x69, 0x6e, 0xd2, 0x67, - 0xe0, 0xd5, 0xe5, 0xfd, 0x45, 0xb0, 0x6f, 0x9f, 0x51, 0xb7, 0x3f, 0x10, 0xd4, 0x99, 0x5e, 0xdb, - 0xc2, 0xf6, 0xed, 0x67, 0x45, 0x58, 0x9f, 0xca, 0x6a, 0xff, 0x5f, 0x86, 0x0b, 0xca, 0xf0, 0x2f, - 0x0b, 0x5a, 0x86, 0x09, 0x10, 0xf4, 0x03, 0x58, 0xf5, 0x92, 0xb7, 0xc0, 0x58, 0x80, 0x73, 0x5d, - 0xa0, 0x34, 0x92, 0xb4, 0x03, 0xb1, 0xe5, 0xd1, 0x56, 0xbb, 0x86, 0x13, 0x14, 0x19, 0xba, 0x09, - 0x16, 0x30, 0x8f, 0xf5, 0xc7, 0x9f, 0xd0, 0xb1, 0x09, 0x86, 0x93, 0x24, 0xeb, 0xaf, 0x0a, 0x70, - 0x25, 0xa7, 0xc4, 0x8d, 0x2c, 0x58, 0x19, 0xba, 0xfe, 0xf6, 0x09, 0x71, 0x3d, 0x72, 0xe4, 0xe9, - 0x20, 0x6b, 0x15, 0xa7, 0x68, 0x29, 0xc3, 0x50, 0x7c, 0x19, 0x86, 0xe1, 0x06, 0xac, 0x0d, 0xc9, - 0xe9, 0x33, 0x9f, 0xc4, 0xd3, 0x96, 0xd4, 0xb4, 0x53, 0x54, 0xeb, 0xab, 0x02, 0x34, 0xa6, 0x83, - 0xaf, 0xb9, 0xb9, 0x58, 0x76, 0x76, 0x53, 0x7c, 0x49, 0xd9, 0x4d, 0x4a, 0x18, 0xa5, 0x97, 0x20, - 0x0c, 0xeb, 0x37, 0xe0, 0x4a, 0x4e, 0xf8, 0x22, 0x9d, 0xe2, 0x73, 0xa5, 0xb5, 0xa6, 0x34, 0x63, - 0x5a, 0x68, 0x0f, 0x40, 0x2b, 0xad, 0xaa, 0x29, 0x15, 0xe7, 0x84, 0xaf, 0x33, 0xe1, 0x48, 0x82, - 0xd9, 0xfa, 0xf3, 0x12, 0xac, 0xa5, 0xeb, 0xff, 0xe8, 0x57, 0xa0, 0x4c, 0x4f, 0xa9, 0x6d, 0x54, - 0xf8, 0xfa, 0x19, 0x81, 0x68, 0x94, 0x52, 0x63, 0xc5, 0x80, 0xbe, 0x07, 0xcb, 0x32, 0x57, 0x7a, - 0x48, 0xc5, 0xdc, 0x0a, 0x62, 0x2a, 0x3f, 0xc4, 0x11, 0x1b, 0x7a, 0x00, 0x35, 0x61, 0x07, 0x1d, - 0x66, 0x1f, 0x53, 0x31, 0xb7, 0x3a, 0x77, 0xb8, 0xd3, 0xd6, 0x23, 0x0d, 0xca, 0x84, 0x15, 0xbd, - 0x0b, 0x17, 0xe5, 0xdd, 0x74, 0x89, 0x77, 0x9f, 0x7a, 0x64, 0x1c, 0x15, 0xb8, 0xca, 0x4a, 0x8a, - 0x59, 0x5d, 0x19, 0xd5, 0xb0, 0xa5, 0xac, 0x6a, 0x18, 0x7a, 0x03, 0x56, 0x03, 0x1a, 0xba, 0xaa, - 0x5a, 0xae, 0x86, 0x55, 0xd4, 0xb0, 0x34, 0x11, 0xdd, 0x82, 0x06, 0x1f, 0xd9, 0x36, 0xe5, 0xfc, - 0x70, 0x10, 0x52, 0x3e, 0x60, 0x9e, 0xd3, 0x5c, 0x56, 0x03, 0x67, 0xe8, 0x72, 0x6c, 0x8f, 0xb8, - 0xde, 0x28, 0xa4, 0x93, 0xb1, 0x55, 0x3d, 0x76, 0x9a, 0x6e, 0xfd, 0x49, 0x01, 0x2e, 0x65, 0x56, - 0x67, 0xe4, 0xba, 0x6c, 0x99, 0x5b, 0x4a, 0xe5, 0x4b, 0x5c, 0x8c, 0x34, 0x51, 0x7f, 0x1a, 0x68, - 0x52, 0x96, 0x62, 0xf4, 0x69, 0xa0, 0xc9, 0x41, 0x1e, 0xc2, 0xb2, 0xe3, 0x9e, 0xb8, 0x3c, 0xd6, - 0xeb, 0x05, 0x2f, 0x4b, 0xc4, 0x6d, 0xfd, 0x63, 0x01, 0x36, 0xb2, 0xf2, 0x9d, 0xcc, 0x74, 0xf9, - 0x43, 0x68, 0xa6, 0x2e, 0xd9, 0x33, 0xe1, 0x7a, 0xee, 0x4f, 0x88, 0xb1, 0xe8, 0x52, 0x0a, 0xb9, - 0xfd, 0x39, 0x37, 0xbd, 0xf4, 0xb2, 0xea, 0x18, 0x7f, 0x58, 0x84, 0x5a, 0xfc, 0x06, 0x83, 0x1e, - 0x40, 0xc5, 0x73, 0x87, 0xae, 0x88, 0x22, 0xf2, 0xf9, 0xe5, 0x33, 0xde, 0x7a, 0xa2, 0x18, 0xf4, - 0x3b, 0x8d, 0xe1, 0x46, 0x4f, 0xe4, 0x11, 0xfc, 0x78, 0x44, 0xb9, 0x98, 0x1f, 0x82, 0x4f, 0x90, - 0xb0, 0x61, 0xd1, 0x58, 0x31, 0xc2, 0xe6, 0xb7, 0xa1, 0x9e, 0x98, 0x64, 0xa1, 0x27, 0x90, 0xef, - 0xc0, 0x6a, 0x0a, 0x75, 0xa1, 0x87, 0x8f, 0x2f, 0x0b, 0x70, 0x25, 0xa7, 0xaa, 0x8a, 0x9e, 0xcd, - 0x58, 0xf7, 0xc2, 0x79, 0x8e, 0x64, 0x0a, 0x44, 0xe6, 0xc8, 0x43, 0x72, 0xda, 0x19, 0x85, 0xfd, - 0x73, 0x5a, 0xf3, 0x98, 0xdd, 0xfa, 0xd3, 0x02, 0x5c, 0x98, 0xa9, 0x19, 0xfe, 0xe2, 0xd5, 0xec, - 0xff, 0x73, 0x09, 0xea, 0x89, 0xa7, 0x4e, 0xf4, 0x21, 0x2c, 0x05, 0x2c, 0x8c, 0x35, 0x70, 0xee, - 0xfb, 0x68, 0x9b, 0x85, 0x02, 0x6b, 0x16, 0xb4, 0x9f, 0xf2, 0xe1, 0x92, 0xfd, 0xce, 0x8b, 0x3c, - 0xaf, 0xb6, 0xd2, 0xef, 0xed, 0x13, 0x17, 0xfe, 0x4d, 0xa8, 0xd9, 0xde, 0x88, 0x0b, 0x1a, 0xee, - 0xb5, 0x4d, 0xcc, 0x31, 0x21, 0xc4, 0x25, 0x9b, 0x72, 0xa2, 0x64, 0x73, 0x0d, 0xea, 0x51, 0x91, - 0x62, 0xaf, 0xad, 0x2b, 0x70, 0x35, 0x9c, 0x24, 0xa1, 0x9b, 0xb0, 0xce, 0x75, 0xb2, 0x1a, 0xbf, - 0xd0, 0x2c, 0xeb, 0x4f, 0x0a, 0xa6, 0xc8, 0xd2, 0x5a, 0x7b, 0x8c, 0x38, 0xf7, 0x88, 0x47, 0x7c, - 0x5b, 0x2d, 0x41, 0xbf, 0x87, 0x4f, 0x51, 0xa5, 0x75, 0x49, 0x52, 0x4c, 0xb1, 0x84, 0xf8, 0x7d, - 0xca, 0x9b, 0x35, 0xb5, 0x80, 0xdc, 0x7e, 0x19, 0x19, 0x45, 0x8b, 0x53, 0x06, 0x55, 0x7f, 0x94, - 0x92, 0xa2, 0xa1, 0xf7, 0xe1, 0x52, 0xd4, 0x3e, 0x0c, 0x49, 0xaf, 0xe7, 0xda, 0xfa, 0x9b, 0x07, - 0xf3, 0xd1, 0x78, 0x76, 0xa7, 0xf4, 0x4e, 0x03, 0x4a, 0x3c, 0x31, 0xd8, 0x19, 0x50, 0xfb, 0x58, - 0xba, 0x67, 0x79, 0x52, 0xea, 0xd5, 0x7b, 0x09, 0x67, 0x75, 0xc9, 0x7d, 0x04, 0xa3, 0x23, 0xcf, - 0xe5, 0x83, 0x7d, 0x26, 0xa4, 0xbb, 0x1e, 0x6f, 0x3b, 0x8e, 0x4c, 0xec, 0x29, 0x57, 0x6f, 0xdd, - 0x55, 0x9c, 0xdb, 0x8f, 0x1c, 0xb8, 0x34, 0x25, 0x3e, 0x5d, 0x84, 0x57, 0xdf, 0x97, 0x9f, 0x65, - 0xc7, 0x3a, 0x59, 0x5c, 0x38, 0x1b, 0x4c, 0x5a, 0x93, 0x73, 0x3f, 0xe8, 0x5a, 0x7f, 0x53, 0x88, - 0x15, 0xbd, 0x6d, 0x0a, 0xbb, 0x33, 0x8e, 0x62, 0x13, 0xaa, 0xea, 0x33, 0x2a, 0x9b, 0x79, 0x91, - 0xeb, 0x8a, 0xda, 0xaa, 0xbe, 0x2c, 0x25, 0xa8, 0xcb, 0x96, 0xba, 0x38, 0xfc, 0x14, 0x40, 0xdb, - 0x74, 0x25, 0xdb, 0x73, 0x15, 0xb7, 0x13, 0x00, 0x72, 0x7a, 0x3f, 0x3a, 0x28, 0x1d, 0x19, 0xc4, - 0x6d, 0xeb, 0x73, 0xb8, 0x94, 0x29, 0x2b, 0xb4, 0x03, 0x55, 0xdb, 0x3c, 0xba, 0x19, 0x2b, 0x92, - 0xff, 0x11, 0x46, 0xfa, 0x75, 0x0e, 0xc7, 0x8c, 0xd6, 0x00, 0xd6, 0xa7, 0x22, 0x9d, 0xb8, 0x76, - 0x5e, 0xf8, 0xfa, 0xb5, 0xf3, 0xe2, 0xa4, 0x76, 0x6e, 0xfd, 0x7e, 0x01, 0x60, 0xf2, 0x35, 0xc3, - 0x82, 0x05, 0x9c, 0xf8, 0x74, 0x4b, 0xc9, 0xe7, 0xb1, 0xcb, 0x50, 0xa1, 0xbd, 0x1e, 0xb5, 0x45, - 0x54, 0x8e, 0xd7, 0x2d, 0xf4, 0x0e, 0x5c, 0x98, 0x7c, 0x2b, 0x91, 0x8c, 0xb8, 0x4a, 0x78, 0xb6, - 0xc3, 0xfa, 0xad, 0x02, 0x5c, 0xc9, 0x49, 0xdf, 0x72, 0x63, 0x64, 0xf3, 0xdc, 0x9b, 0x18, 0x6a, - 0xbc, 0xc6, 0x8b, 0x67, 0xad, 0xd3, 0x00, 0xd6, 0x4f, 0xcb, 0x80, 0x66, 0x3f, 0x94, 0x40, 0x07, - 0xb0, 0xc6, 0xe9, 0x13, 0xd7, 0x1f, 0x9d, 0x1e, 0x04, 0xc2, 0x14, 0xed, 0xce, 0x3e, 0xec, 0xce, - 0x6e, 0x72, 0x38, 0x9e, 0x62, 0x97, 0xc6, 0x35, 0x1c, 0xf9, 0xdb, 0xfc, 0x19, 0xa7, 0x5a, 0xd0, - 0x25, 0x3c, 0x21, 0x48, 0xc3, 0xa4, 0x1a, 0xfb, 0xcc, 0xc7, 0x8c, 0x09, 0xe3, 0x36, 0x52, 0x34, - 0xd4, 0x02, 0xc4, 0x47, 0x41, 0xe0, 0xa9, 0x52, 0x1c, 0xf1, 0x1e, 0x86, 0x6c, 0x14, 0xe8, 0xc2, - 0x7d, 0x09, 0x67, 0xf4, 0xa0, 0x26, 0x2c, 0xf7, 0xb8, 0xfa, 0x6d, 0x4e, 0x21, 0x6a, 0xca, 0x74, - 0x4b, 0x21, 0xeb, 0xce, 0x8a, 0xea, 0x4c, 0x50, 0xd0, 0xb7, 0x61, 0x99, 0x8f, 0xb9, 0x2d, 0xbc, - 0xe8, 0x33, 0xa8, 0xfc, 0x2f, 0xd2, 0x3a, 0x6a, 0x1c, 0x8e, 0xc6, 0xa3, 0x2f, 0x60, 0xed, 0xb9, - 0xeb, 0x3b, 0xec, 0x39, 0x8f, 0xe4, 0x56, 0x55, 0x72, 0xfb, 0x20, 0x3f, 0x87, 0xd7, 0xc3, 0xa7, - 0x0e, 0x20, 0x16, 0x63, 0x1a, 0x4d, 0xda, 0x59, 0xb3, 0x8b, 0x9d, 0x81, 0xb4, 0xe9, 0xc6, 0x36, - 0xd7, 0x94, 0x26, 0x66, 0x75, 0xe9, 0x93, 0xb4, 0x6d, 0x36, 0x0c, 0xda, 0x89, 0x7f, 0x12, 0x3a, - 0xf3, 0x24, 0x53, 0xc3, 0xf1, 0x14, 0xbb, 0x75, 0x04, 0x6b, 0xe9, 0xb3, 0x96, 0x17, 0x6f, 0x24, - 0x8f, 0xd5, 0xd8, 0x36, 0xf9, 0x5b, 0xd2, 0x42, 0xe6, 0xc5, 0xef, 0xe5, 0xf2, 0x77, 0xec, 0x42, - 0x4b, 0x09, 0x17, 0xba, 0x01, 0x4b, 0x1e, 0x3d, 0x51, 0x5f, 0x59, 0xaa, 0x3b, 0xa6, 0x1a, 0xd6, - 0x1d, 0xa8, 0x68, 0xc9, 0x2e, 0xf0, 0x1e, 0xf5, 0x17, 0x05, 0x78, 0xf5, 0x4c, 0x61, 0xa2, 0x0f, - 0xe0, 0x72, 0x7f, 0xc8, 0xc9, 0x4e, 0x48, 0x1d, 0xea, 0xcb, 0x74, 0x49, 0x86, 0x03, 0x89, 0xcc, - 0x22, 0xa7, 0x57, 0x6a, 0xde, 0x6c, 0x8f, 0x99, 0x3c, 0xa3, 0x47, 0x26, 0x2e, 0xb1, 0x6a, 0xef, - 0x4f, 0xbe, 0x80, 0x49, 0x13, 0xad, 0x36, 0xac, 0xa5, 0x25, 0x9d, 0xf9, 0x2a, 0x74, 0x0b, 0x1a, - 0x2a, 0xec, 0x92, 0xd6, 0x2c, 0x3a, 0x40, 0x3d, 0xf3, 0x0c, 0xdd, 0x5a, 0x87, 0xd5, 0xd4, 0x67, - 0x2c, 0x56, 0x13, 0x2e, 0x67, 0xff, 0x33, 0x8e, 0x75, 0x19, 0x36, 0xb2, 0x2c, 0xa9, 0xb5, 0x01, - 0x68, 0xf6, 0x2b, 0xda, 0x7b, 0xef, 0xfc, 0xd3, 0x57, 0x57, 0x5f, 0xf9, 0x97, 0xaf, 0xae, 0xbe, - 0xf2, 0xef, 0x5f, 0x5d, 0x7d, 0xe5, 0x87, 0x57, 0xb5, 0xe2, 0xe8, 0xff, 0x69, 0xdb, 0x9a, 0xf9, - 0xa7, 0xb9, 0xa3, 0x8a, 0x72, 0x62, 0xef, 0xfd, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x4e, 0x40, - 0x9c, 0xb1, 0x50, 0x37, 0x00, 0x00, + // 3955 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0x4d, 0x6c, 0x1c, 0x47, + 0x76, 0xf6, 0xfc, 0x90, 0x1c, 0xbe, 0xe1, 0xcf, 0xa8, 0x44, 0x49, 0x13, 0xae, 0x2d, 0xcb, 0x2d, + 0x5b, 0x2b, 0xcb, 0xde, 0xa1, 0x25, 0x1b, 0x8e, 0xd6, 0x1b, 0x7b, 0x97, 0xa2, 0x46, 0x12, 0x65, + 0x89, 0x9c, 0xad, 0xa1, 0x6c, 0xec, 0xc6, 0xeb, 0x41, 0xb1, 0xbb, 0x66, 0xa6, 0xc3, 0x9e, 0xae, + 0xde, 0xae, 0x1a, 0x8a, 0xb3, 0xc8, 0x21, 0x97, 0x04, 0xc8, 0x21, 0x40, 0x4e, 0x01, 0x36, 0x87, + 0x1c, 0x82, 0x00, 0x39, 0x04, 0xc9, 0xde, 0xe3, 0xe4, 0xb0, 0x48, 0x02, 0x24, 0xb7, 0x5c, 0x73, + 0x08, 0x10, 0x38, 0x40, 0xce, 0xc9, 0x29, 0xa7, 0x04, 0x41, 0xfd, 0x74, 0x4f, 0xf7, 0x4c, 0x37, + 0x87, 0x43, 0x2b, 0x86, 0x0f, 0x7b, 0xe2, 0xd4, 0xab, 0x7a, 0x5f, 0x55, 0xbd, 0x7a, 0xf5, 0xfe, + 0xaa, 0x09, 0xd7, 0x58, 0x40, 0x43, 0x22, 0x58, 0xb8, 0x75, 0x7c, 0x9b, 0x78, 0x41, 0x9f, 0xdc, + 0xde, 0x8a, 0x28, 0x8d, 0x20, 0x64, 0x82, 0xa1, 0x2b, 0x2e, 0x17, 0x2e, 0x6b, 0xc4, 0xd4, 0x68, + 0xdc, 0xe6, 0xaf, 0xf5, 0x18, 0xeb, 0x79, 0x74, 0x4b, 0x0d, 0x3b, 0x1c, 0x76, 0xb7, 0x88, 0x3f, + 0xd2, 0x3c, 0x9b, 0xef, 0x1d, 0xdd, 0xe5, 0x0d, 0x97, 0x6d, 0x91, 0xc0, 0x1d, 0x10, 0xbb, 0xef, + 0xfa, 0x34, 0x1c, 0x6d, 0x05, 0x47, 0x3d, 0x49, 0xe0, 0x5b, 0x03, 0x2a, 0xc8, 0xd6, 0xf1, 0xed, + 0xad, 0x1e, 0xf5, 0x25, 0x26, 0x75, 0x0c, 0xd7, 0x46, 0x8f, 0xf5, 0x98, 0xfa, 0xb9, 0x25, 0x7f, + 0x69, 0xaa, 0xf5, 0xcb, 0x45, 0xb8, 0xb0, 0x2b, 0x97, 0xb0, 0x6f, 0x56, 0xd0, 0x0e, 0xa8, 0x8d, + 0xea, 0xb0, 0x14, 0x84, 0xac, 0xeb, 0x7a, 0xb4, 0x0e, 0xd7, 0x0a, 0x37, 0x97, 0x71, 0xd4, 0x44, + 0xef, 0xc0, 0x86, 0xeb, 0x73, 0x41, 0x3c, 0xaf, 0x13, 0x10, 0xfb, 0x88, 0xf4, 0x68, 0x27, 0x20, + 0xa2, 0x5f, 0xaf, 0xaa, 0x61, 0xc8, 0xf4, 0xb5, 0x74, 0x57, 0x8b, 0x88, 0x3e, 0xaa, 0x41, 0xa9, + 0x3f, 0x3c, 0xac, 0xaf, 0xa8, 0x01, 0xf2, 0x27, 0xba, 0x0b, 0x25, 0x41, 0x7a, 0xf5, 0xd5, 0x6b, + 0x85, 0x9b, 0xd5, 0x3b, 0x37, 0x1a, 0x39, 0x12, 0x68, 0x1c, 0x8c, 0x02, 0xba, 0xeb, 0x0b, 0x1a, + 0x76, 0x89, 0x4d, 0xb1, 0x64, 0x41, 0x6f, 0xc1, 0x7a, 0x48, 0x39, 0x1b, 0x86, 0x36, 0xed, 0xf0, + 0x61, 0xb7, 0xeb, 0x9e, 0xd4, 0xd7, 0x24, 0xee, 0xbd, 0x62, 0xbd, 0x80, 0xd7, 0xa2, 0xae, 0xb6, + 0xea, 0x41, 0x2f, 0xc3, 0xb2, 0x4f, 0x06, 0x94, 0x07, 0xc4, 0xa6, 0xf5, 0x75, 0x35, 0xfd, 0x98, + 0x80, 0x36, 0xa1, 0x12, 0xd2, 0x63, 0x97, 0xbb, 0xcc, 0xaf, 0xd7, 0x54, 0x67, 0xdc, 0x46, 0x2d, + 0xa8, 0x0e, 0x28, 0xef, 0x77, 0x6c, 0xe6, 0x77, 0xdd, 0x5e, 0xfd, 0xa6, 0x5a, 0xe8, 0xd6, 0xa9, + 0x0b, 0x7d, 0x4a, 0x82, 0xb6, 0x08, 0x5d, 0xbf, 0x37, 0x5e, 0x31, 0x48, 0x8c, 0x1d, 0x05, 0x81, + 0xf6, 0x00, 0x6c, 0x36, 0x08, 0x98, 0x4f, 0x7d, 0xc1, 0xeb, 0x77, 0x14, 0x60, 0x23, 0x17, 0x50, + 0x1d, 0xc8, 0x4e, 0x34, 0xbe, 0x4d, 0x85, 0x3c, 0x14, 0x9c, 0x40, 0x40, 0x3e, 0xd4, 0x88, 0xe3, + 0x30, 0xbf, 0x93, 0x40, 0x7d, 0xf7, 0x5a, 0xe9, 0x66, 0xf5, 0xce, 0xf7, 0x4f, 0x47, 0x4d, 0x1e, + 0x73, 0x63, 0x5b, 0x42, 0xc4, 0xf3, 0xf0, 0xa6, 0x2f, 0xc2, 0x91, 0x12, 0xe5, 0x3a, 0x49, 0xf7, + 0xa0, 0x87, 0xb0, 0x78, 0x4c, 0xbc, 0x21, 0xe5, 0x75, 0xe7, 0x7c, 0xc2, 0x30, 0xec, 0xe8, 0x73, + 0x40, 0x43, 0xff, 0x98, 0x78, 0xae, 0x23, 0x55, 0xb3, 0x63, 0x40, 0xe9, 0xf9, 0x40, 0x2f, 0x24, + 0xa0, 0x3e, 0x51, 0x48, 0x9b, 0x21, 0x6c, 0x64, 0xed, 0x4a, 0x6a, 0xe1, 0x11, 0x1d, 0xd5, 0x0b, + 0x5a, 0x0b, 0x8f, 0xe8, 0x08, 0xdd, 0x87, 0x05, 0x35, 0x7b, 0xbd, 0x38, 0xe3, 0x34, 0x9a, 0x27, + 0x82, 0x86, 0x3e, 0xf1, 0xc6, 0x07, 0x22, 0x4f, 0x43, 0x33, 0x7f, 0x50, 0xbc, 0x5b, 0xb0, 0xbe, + 0x28, 0xc3, 0xea, 0xae, 0x56, 0xfc, 0xb6, 0x20, 0x62, 0xc8, 0x51, 0x13, 0x16, 0xb9, 0xfa, 0xa5, + 0x26, 0x5c, 0xbb, 0xf3, 0x9d, 0xfc, 0x43, 0x49, 0xf2, 0x35, 0xf4, 0x1f, 0x6c, 0x98, 0xe5, 0x35, + 0x1c, 0x50, 0xce, 0x49, 0x8f, 0xd6, 0x4b, 0xfa, 0x1a, 0x9a, 0x26, 0xea, 0x42, 0x2d, 0x3e, 0xf9, + 0x8e, 0x99, 0xaa, 0xa8, 0xce, 0xff, 0x7b, 0x67, 0x9c, 0x6a, 0xbc, 0x1b, 0xd5, 0x56, 0x52, 0xc2, + 0xeb, 0x76, 0x9a, 0xba, 0xf9, 0x7b, 0x05, 0x58, 0xfd, 0x84, 0x86, 0xf2, 0x56, 0xb4, 0xe3, 0x35, + 0x1d, 0x6b, 0x82, 0x11, 0x66, 0xd4, 0x4c, 0x6c, 0xba, 0xf8, 0x55, 0x36, 0xbd, 0x01, 0x0b, 0x34, + 0x0c, 0x59, 0x58, 0x2f, 0x2b, 0x78, 0xdd, 0xd8, 0x3c, 0x81, 0x8d, 0xac, 0x15, 0x67, 0x9c, 0xeb, + 0xe3, 0xf4, 0xb9, 0xbe, 0x77, 0xc6, 0x55, 0xa4, 0x76, 0x99, 0x3c, 0xdd, 0xcf, 0x61, 0xd1, 0x6c, + 0xbd, 0x02, 0xe5, 0xbd, 0xfd, 0xbd, 0x66, 0xed, 0x25, 0xb4, 0x02, 0x95, 0x67, 0xad, 0xfb, 0xdb, + 0x07, 0xbb, 0x7b, 0x0f, 0x6b, 0x05, 0xb4, 0x0e, 0x55, 0xdc, 0xdc, 0xd9, 0xdf, 0xdb, 0xd9, 0x7d, + 0x22, 0x09, 0x45, 0x54, 0x85, 0xa5, 0x47, 0xcd, 0xed, 0x27, 0x07, 0x8f, 0x7e, 0x54, 0x2b, 0xa1, + 0x65, 0x58, 0x68, 0x62, 0xbc, 0x8f, 0x6b, 0x65, 0x74, 0x11, 0xd6, 0xb7, 0x77, 0x0e, 0x76, 0xf7, + 0xf7, 0x3a, 0xb8, 0xf9, 0xc3, 0x67, 0xbb, 0xb8, 0x79, 0xbf, 0xb6, 0x60, 0xfd, 0xa2, 0x0c, 0x97, + 0x32, 0x2f, 0x3c, 0xfa, 0x08, 0xca, 0x87, 0x84, 0xd3, 0xfa, 0x2b, 0x6a, 0x23, 0xb7, 0x72, 0x37, + 0x72, 0x8f, 0x70, 0x9a, 0x56, 0x4e, 0xc5, 0x87, 0x7e, 0x03, 0x16, 0x02, 0xd7, 0x63, 0xa2, 0x7e, + 0x75, 0x86, 0xa5, 0x9d, 0xd0, 0x6c, 0xc5, 0x24, 0xad, 0xb4, 0xed, 0xbb, 0xf5, 0x1b, 0x73, 0xf1, + 0x4a, 0x16, 0xf4, 0x31, 0xac, 0xaa, 0xd1, 0x4e, 0x27, 0xa4, 0x03, 0x26, 0x68, 0xfd, 0xdb, 0x73, + 0x61, 0xac, 0x68, 0x66, 0xac, 0x78, 0xd1, 0x3e, 0xd4, 0x5c, 0xbf, 0x17, 0x52, 0xce, 0x3b, 0x3d, + 0x22, 0xe8, 0x73, 0x32, 0xe2, 0xf5, 0x9b, 0x4a, 0xd3, 0x5f, 0xcf, 0xc5, 0x7b, 0xa8, 0x07, 0x2a, + 0xb4, 0x75, 0xc3, 0x6d, 0x68, 0x1c, 0x3d, 0x85, 0x75, 0x3a, 0x81, 0xf7, 0xe6, 0x1c, 0x78, 0x6b, + 0x34, 0x05, 0xf7, 0xb8, 0x5c, 0x79, 0xb5, 0x76, 0xed, 0x71, 0xb9, 0x72, 0xad, 0xf6, 0xda, 0xe3, + 0x72, 0xe5, 0xb5, 0x9a, 0xf5, 0xb8, 0x5c, 0xb1, 0x6a, 0xd7, 0x1f, 0x97, 0x2b, 0xd7, 0x6b, 0xaf, + 0x3f, 0x2e, 0x57, 0x5e, 0xaf, 0xbd, 0xf1, 0xb8, 0x5c, 0x79, 0xa3, 0x76, 0x03, 0x2f, 0xd9, 0xae, + 0x20, 0x0e, 0xf5, 0xf0, 0x62, 0xc0, 0x3c, 0xd7, 0x1e, 0xe1, 0x65, 0x41, 0x3d, 0x3a, 0xa0, 0xf2, + 0xe2, 0x2d, 0xf6, 0x88, 0xe7, 0xd1, 0x11, 0x06, 0x9f, 0x39, 0xb4, 0x43, 0x7a, 0xd4, 0x17, 0x78, + 0x21, 0x08, 0xd9, 0xc9, 0x08, 0xd7, 0xb8, 0xeb, 0x50, 0x9b, 0x84, 0x1d, 0xd7, 0xff, 0x2d, 0x6a, + 0x0b, 0x16, 0x5a, 0x7f, 0x52, 0x80, 0x0b, 0x53, 0x67, 0x8e, 0x9a, 0xb0, 0x44, 0x7d, 0x72, 0xe8, + 0x51, 0x47, 0xdd, 0x86, 0xea, 0x9d, 0xb7, 0x4e, 0x35, 0xa7, 0xf7, 0x18, 0xf3, 0x94, 0xcd, 0x7c, + 0xc0, 0xc2, 0xd6, 0x3d, 0x1c, 0xf1, 0xa2, 0x7b, 0x50, 0x3a, 0xba, 0x1b, 0xb9, 0xa8, 0x77, 0x72, + 0x21, 0x3e, 0x1e, 0x1e, 0xd2, 0xd0, 0xa7, 0x82, 0x72, 0x6c, 0xbc, 0x2e, 0xd7, 0x0a, 0x70, 0x74, + 0x97, 0x5b, 0x3f, 0x2f, 0xc1, 0xea, 0xff, 0xcb, 0xe2, 0x52, 0x2e, 0xbd, 0x38, 0xe9, 0xd2, 0x3f, + 0x85, 0x1a, 0x19, 0x0a, 0xd6, 0xb6, 0x89, 0x47, 0x9b, 0x66, 0xb6, 0xd2, 0xfc, 0xb3, 0x4d, 0x81, + 0x44, 0x21, 0x0c, 0x4c, 0x85, 0x30, 0xd5, 0xf9, 0x43, 0x98, 0x0f, 0xa0, 0xcc, 0x03, 0x6a, 0xcf, + 0xbc, 0x93, 0x69, 0x56, 0xc5, 0xf3, 0x42, 0xce, 0xe6, 0x9f, 0x8a, 0x70, 0x29, 0xd3, 0xa3, 0x7d, + 0x3d, 0x67, 0x14, 0x6d, 0x1f, 0xce, 0xb1, 0xfd, 0x57, 0x00, 0xec, 0x3e, 0x09, 0x85, 0x8e, 0x38, + 0xaf, 0x6a, 0x68, 0x45, 0x51, 0x81, 0xe6, 0xdb, 0xb0, 0xc8, 0xed, 0x3e, 0x1d, 0x90, 0xfa, 0x75, + 0x05, 0xbe, 0xd1, 0xd0, 0x21, 0x74, 0x23, 0x0a, 0xa1, 0x1b, 0xdb, 0xfe, 0x08, 0x9b, 0x31, 0x2f, + 0x44, 0x96, 0xff, 0x59, 0x82, 0x6a, 0xc2, 0x36, 0x7c, 0x3d, 0x12, 0x44, 0x50, 0x96, 0x0d, 0x13, + 0x11, 0xa8, 0xdf, 0xa8, 0x09, 0x0b, 0x1e, 0x39, 0xa4, 0x5e, 0xbd, 0xac, 0x2c, 0xd9, 0xd6, 0x59, + 0x2c, 0x59, 0xe3, 0x89, 0xe4, 0xd0, 0x7e, 0x5f, 0x73, 0x67, 0x5e, 0xa0, 0x85, 0x6f, 0xda, 0x05, + 0x7a, 0x01, 0x07, 0xb7, 0x79, 0x17, 0x60, 0xbc, 0xfb, 0x8c, 0x18, 0x62, 0x23, 0x19, 0x43, 0x2c, + 0x27, 0xa3, 0x81, 0x7f, 0xaf, 0xc2, 0x95, 0x1c, 0x68, 0xf4, 0x21, 0x54, 0x48, 0xb7, 0xeb, 0xfa, + 0xae, 0x18, 0x99, 0xf3, 0x7f, 0x2d, 0x77, 0x79, 0xdb, 0x66, 0x20, 0x8e, 0x59, 0xd0, 0x6d, 0x28, + 0x51, 0xff, 0xd8, 0x84, 0x71, 0xaf, 0xe6, 0x87, 0xa3, 0xfe, 0xf1, 0x27, 0x24, 0xc4, 0x72, 0x2c, + 0xda, 0x87, 0x4a, 0x3f, 0x20, 0x1d, 0x75, 0xa3, 0x4a, 0x33, 0xc2, 0x9d, 0x47, 0x2c, 0x74, 0x7f, + 0xc6, 0x7c, 0x41, 0xbc, 0x16, 0x73, 0xb6, 0x87, 0x82, 0x71, 0x79, 0x42, 0x2a, 0x11, 0xc0, 0x4b, + 0xfd, 0x80, 0xa8, 0x2d, 0xdc, 0x82, 0x0b, 0xee, 0x40, 0x25, 0x75, 0x43, 0x99, 0xe1, 0x29, 0x3f, + 0x65, 0x02, 0xb1, 0x75, 0xd5, 0xd1, 0x1a, 0x7a, 0x5e, 0x4b, 0x91, 0x51, 0x0f, 0x56, 0x95, 0xb7, + 0xe2, 0xd4, 0x53, 0x7e, 0xa9, 0xbe, 0xa0, 0x56, 0x7e, 0x6f, 0xde, 0x23, 0x69, 0xec, 0x31, 0x87, + 0xb6, 0x0d, 0x88, 0xd6, 0xc7, 0x15, 0x3f, 0x41, 0x42, 0x0e, 0x5c, 0x0a, 0x98, 0xd3, 0x71, 0x5c, + 0x1e, 0x0e, 0x03, 0xe1, 0x32, 0xbf, 0x73, 0x38, 0x74, 0x7a, 0x54, 0xd4, 0x17, 0x67, 0xe8, 0x40, + 0x8b, 0x39, 0xf7, 0x63, 0xa6, 0x7b, 0x8a, 0x47, 0x6d, 0xf7, 0x62, 0x30, 0xdd, 0x81, 0x06, 0xb0, + 0x2e, 0x67, 0x21, 0xbe, 0xcf, 0x04, 0x91, 0x74, 0x5e, 0x5f, 0x52, 0x1b, 0xba, 0x3f, 0xf7, 0x86, + 0xa4, 0x80, 0xc7, 0x30, 0x7a, 0x4b, 0x6b, 0x41, 0x8a, 0x88, 0x1a, 0x70, 0x31, 0x08, 0x5d, 0x16, + 0xba, 0x62, 0xd4, 0xb1, 0x3d, 0xc2, 0x79, 0x47, 0xdd, 0xea, 0x8a, 0x92, 0xf5, 0x85, 0xa8, 0x6b, + 0x47, 0xf6, 0xec, 0xc9, 0x2b, 0xde, 0x92, 0xa9, 0x2f, 0x71, 0x5c, 0x5f, 0x46, 0x2e, 0x41, 0xc8, + 0x0e, 0x69, 0x7d, 0x59, 0x6d, 0xff, 0xdb, 0xb9, 0xcb, 0xc3, 0xd1, 0xf8, 0x96, 0x1c, 0x2e, 0xf3, + 0xe3, 0x64, 0x1b, 0x5d, 0x87, 0xd5, 0x90, 0x06, 0x9e, 0x6b, 0x93, 0x8e, 0xcd, 0x86, 0xbe, 0x50, + 0xd7, 0x73, 0x15, 0xaf, 0x18, 0xe2, 0x8e, 0xa4, 0xa1, 0x1f, 0xc0, 0x72, 0x94, 0x56, 0x73, 0x73, + 0x5b, 0xad, 0x53, 0x26, 0x34, 0x23, 0xf1, 0x98, 0x09, 0x7d, 0x04, 0x4b, 0x9c, 0x86, 0xc7, 0xae, + 0x4d, 0x55, 0x0d, 0xe0, 0xb4, 0x38, 0xab, 0xad, 0xc7, 0x69, 0x95, 0x34, 0x4c, 0xe8, 0x21, 0x54, + 0xb8, 0x08, 0x89, 0xa0, 0xbd, 0x91, 0x29, 0x19, 0xe4, 0x1b, 0xa3, 0xfb, 0x34, 0xf0, 0xd8, 0x68, + 0xa0, 0x72, 0x04, 0xcd, 0x82, 0x63, 0x66, 0xd4, 0x84, 0xaa, 0x60, 0x9e, 0x64, 0x51, 0x87, 0xbb, + 0xa6, 0x0e, 0xf7, 0x7a, 0xbe, 0xe9, 0x89, 0xc7, 0xe2, 0x24, 0x1f, 0x1a, 0xc1, 0x45, 0xb3, 0xb4, + 0x94, 0xae, 0xac, 0x2b, 0xb8, 0x47, 0x73, 0xeb, 0x8a, 0xd9, 0xf3, 0x94, 0xbe, 0x20, 0x3e, 0xd5, + 0x81, 0x9e, 0xc1, 0x3a, 0xa7, 0xf6, 0x50, 0x29, 0x06, 0xf3, 0x05, 0x3d, 0x11, 0xaa, 0x74, 0x71, + 0x9a, 0x44, 0x5a, 0xcc, 0x69, 0xa7, 0x59, 0xf0, 0x24, 0x06, 0x6a, 0x42, 0x85, 0x1d, 0xd3, 0xd0, + 0x93, 0xa1, 0xb0, 0xa3, 0xb6, 0xf1, 0x66, 0xfe, 0x36, 0xee, 0xf2, 0xfd, 0x43, 0x19, 0x87, 0xee, + 0x6b, 0x0e, 0x1c, 0xb3, 0x6e, 0x7e, 0x1f, 0x2e, 0x4c, 0xdd, 0xe4, 0x79, 0x6c, 0xeb, 0xe6, 0x36, + 0x5c, 0xcc, 0xb8, 0x39, 0x73, 0x41, 0x34, 0xe1, 0x4a, 0x8e, 0x40, 0xe7, 0xb2, 0xf2, 0xbf, 0x5f, + 0x84, 0xda, 0xe4, 0x4e, 0xd1, 0xab, 0x50, 0x25, 0x81, 0xdb, 0x49, 0x67, 0xbf, 0x40, 0x02, 0xd7, + 0xa4, 0x8e, 0xd2, 0x33, 0x1f, 0xb9, 0xbe, 0x63, 0xe0, 0xd4, 0xef, 0x4c, 0x6f, 0xfd, 0x14, 0x96, + 0x02, 0x22, 0xec, 0x3e, 0xe5, 0xc6, 0x5f, 0xbf, 0x7b, 0x66, 0x71, 0x37, 0x64, 0xa4, 0xa3, 0x5c, + 0x2d, 0x8e, 0x30, 0x36, 0x7f, 0x02, 0xcb, 0x31, 0x55, 0xce, 0xa7, 0xa2, 0x23, 0xbd, 0x3a, 0xf5, + 0x5b, 0xe6, 0x81, 0xc9, 0x8c, 0xf8, 0xac, 0xde, 0x56, 0x33, 0x59, 0xff, 0x55, 0x80, 0x4a, 0xe4, + 0xad, 0xd0, 0x2e, 0x28, 0xd3, 0xbc, 0x9d, 0x76, 0x73, 0x6f, 0xe4, 0x22, 0xee, 0x25, 0x06, 0xe3, + 0x14, 0x2b, 0x7a, 0x00, 0x55, 0x69, 0x12, 0x23, 0xa4, 0xe2, 0x0c, 0xdb, 0xd0, 0x1a, 0x8f, 0xc5, + 0x49, 0x46, 0x84, 0x95, 0xdd, 0xde, 0xf6, 0x85, 0x1b, 0x63, 0x69, 0x57, 0x78, 0xf3, 0x54, 0xac, + 0xc4, 0x78, 0x3c, 0x09, 0x60, 0xfd, 0x79, 0x01, 0x36, 0x74, 0xe5, 0xee, 0x29, 0x09, 0x3e, 0xa6, + 0xa3, 0xd8, 0x15, 0x11, 0xd8, 0xf0, 0x98, 0x4d, 0x3c, 0x7d, 0x28, 0x98, 0x76, 0x69, 0x48, 0x7d, + 0x9b, 0x1a, 0x39, 0xe4, 0x57, 0x3c, 0x9e, 0x64, 0x30, 0xe1, 0x4c, 0xa8, 0x48, 0x4f, 0x8b, 0x63, + 0x3d, 0xdd, 0x84, 0x0a, 0x53, 0x9e, 0x8a, 0x78, 0x6a, 0x6b, 0x15, 0x1c, 0xb7, 0xad, 0xbb, 0xb0, + 0xb6, 0xe3, 0xb9, 0xd4, 0x17, 0xbb, 0x2d, 0x53, 0x6a, 0xbc, 0x01, 0x6b, 0xc2, 0x1d, 0x50, 0x36, + 0x14, 0x6d, 0x6a, 0x33, 0xdf, 0xd1, 0x35, 0xa8, 0x05, 0x3c, 0x41, 0xb5, 0x28, 0x7c, 0x6b, 0x27, + 0x64, 0x9c, 0x1b, 0xed, 0x9d, 0x5c, 0x46, 0xa4, 0xcc, 0x85, 0x0c, 0x65, 0x2e, 0x26, 0x94, 0xf9, + 0x2a, 0x24, 0xae, 0x80, 0x51, 0xf3, 0x04, 0xc5, 0xfa, 0x9d, 0x02, 0xa0, 0x69, 0xb3, 0x2c, 0xa1, + 0xc4, 0x28, 0xa0, 0x11, 0xbc, 0xfc, 0x8d, 0x3e, 0x81, 0xd5, 0x90, 0x79, 0x9e, 0xeb, 0xf7, 0x9e, + 0x05, 0x0e, 0x11, 0x91, 0xbe, 0xe6, 0xfb, 0x77, 0x9c, 0x1c, 0x3d, 0x9e, 0x04, 0xa7, 0x61, 0xac, + 0xe7, 0xb0, 0xa8, 0x83, 0xa6, 0x78, 0x03, 0x85, 0xc4, 0x06, 0x32, 0xad, 0x00, 0xda, 0x81, 0x65, + 0xf5, 0xe3, 0x41, 0xc8, 0x06, 0x46, 0x9f, 0xde, 0x98, 0x11, 0x92, 0xb5, 0x95, 0x55, 0xc7, 0x63, + 0x3e, 0xeb, 0x5f, 0x8b, 0xb0, 0x92, 0xec, 0x43, 0x8f, 0xa0, 0xd2, 0x75, 0xa9, 0xe7, 0x60, 0xda, + 0x35, 0x2a, 0xf3, 0x76, 0x2e, 0xa8, 0x3e, 0x90, 0x07, 0x72, 0x78, 0xa4, 0x7e, 0x38, 0xe6, 0x46, + 0x3f, 0x86, 0x5a, 0xe4, 0x62, 0x1f, 0x44, 0x88, 0xb3, 0x0a, 0x99, 0x38, 0xc9, 0x10, 0x63, 0x4e, + 0xe1, 0xa0, 0x4f, 0x61, 0xdd, 0x4e, 0x28, 0xbf, 0x84, 0x2e, 0xcd, 0xd0, 0xef, 0xac, 0xcb, 0x82, + 0x27, 0x51, 0xd0, 0x1e, 0xac, 0x70, 0x6a, 0x87, 0x54, 0x18, 0xd4, 0xf2, 0x8c, 0xc2, 0x56, 0x3b, + 0x1a, 0x1c, 0x43, 0xa6, 0xf8, 0xad, 0x1b, 0x00, 0xcd, 0x13, 0x6a, 0x6f, 0xdb, 0xf2, 0x32, 0xa0, + 0x3a, 0x2c, 0xd9, 0x6c, 0x30, 0x20, 0x4a, 0x69, 0x4b, 0x37, 0x97, 0x71, 0xd4, 0xb4, 0xfe, 0xae, + 0x08, 0x1b, 0x51, 0xce, 0xfb, 0x94, 0x8a, 0xd0, 0xb5, 0xcd, 0x79, 0x5c, 0x05, 0x18, 0xa8, 0xf6, + 0xde, 0x58, 0x2b, 0x12, 0x14, 0xf4, 0x9b, 0xb0, 0xa6, 0x5b, 0xd1, 0x02, 0x8c, 0x8c, 0xdf, 0x6d, + 0xe8, 0x27, 0x98, 0x46, 0xf2, 0x09, 0xa6, 0x11, 0x1c, 0xf5, 0x24, 0x81, 0x37, 0x06, 0x54, 0x90, + 0xc6, 0xf1, 0x6d, 0x9d, 0x61, 0xc5, 0x6b, 0x9f, 0x80, 0x42, 0xfb, 0x50, 0x15, 0x24, 0xec, 0x51, + 0xa1, 0x2c, 0xf7, 0x4c, 0x11, 0x1b, 0xe3, 0xbc, 0x1f, 0xea, 0x2a, 0xb8, 0x4e, 0xb5, 0x92, 0x08, + 0xe8, 0x27, 0x80, 0x74, 0x73, 0xfb, 0x98, 0x86, 0xa4, 0x47, 0x35, 0x6e, 0xf9, 0x3c, 0xb8, 0x19, + 0x40, 0xd6, 0xbf, 0x14, 0x60, 0xf5, 0xd1, 0xc1, 0x41, 0xeb, 0x21, 0x15, 0x46, 0xe2, 0x59, 0xce, + 0x66, 0x1b, 0xca, 0x01, 0x0b, 0x85, 0x11, 0xd4, 0x9c, 0xd3, 0x2a, 0x56, 0x09, 0xdb, 0x67, 0x5c, + 0x44, 0x3e, 0x53, 0xfe, 0x46, 0x97, 0x4d, 0x72, 0x4f, 0x4d, 0x36, 0x62, 0x5a, 0x32, 0xa8, 0xeb, + 0x0b, 0x11, 0x3c, 0xa2, 0xc4, 0xa1, 0x21, 0x37, 0x29, 0x48, 0x7e, 0x50, 0x27, 0xd7, 0xaf, 0xc7, + 0xe2, 0x24, 0x9f, 0xf5, 0x3e, 0xc0, 0xb8, 0xeb, 0xec, 0x66, 0xc2, 0xfa, 0xdf, 0x02, 0x7c, 0xeb, + 0x94, 0xc4, 0x0a, 0x7d, 0x06, 0x6b, 0xaa, 0x75, 0xa0, 0xc4, 0x39, 0xbe, 0xf6, 0xf9, 0x69, 0xda, + 0x29, 0x36, 0x19, 0x4f, 0x60, 0xa1, 0x6b, 0x50, 0x1d, 0xb8, 0x3e, 0xd6, 0xf1, 0xba, 0x2e, 0xbb, + 0x2f, 0xe0, 0x24, 0x49, 0x8d, 0x20, 0x27, 0xf1, 0x88, 0x92, 0x19, 0x31, 0x26, 0xa1, 0x0f, 0x61, + 0x49, 0xeb, 0x65, 0x14, 0x8c, 0xe4, 0x0b, 0xcf, 0x5c, 0x1d, 0x15, 0x9d, 0x1b, 0x1e, 0xeb, 0x16, + 0x6c, 0x64, 0xf9, 0xb6, 0x2c, 0x11, 0x5a, 0x7f, 0x5d, 0x04, 0x18, 0x63, 0x64, 0xba, 0x80, 0x1d, + 0x58, 0x64, 0x0a, 0xc9, 0xe8, 0xcf, 0x5b, 0x33, 0xcc, 0x63, 0xf2, 0x36, 0x63, 0xc3, 0x8a, 0x3e, + 0x94, 0x2a, 0xe8, 0x70, 0x73, 0xa3, 0xde, 0x3c, 0x2d, 0x0c, 0xe0, 0x29, 0x00, 0xc5, 0x86, 0x76, + 0xa1, 0x12, 0x99, 0xc4, 0x99, 0x97, 0x27, 0x32, 0xa9, 0x29, 0x98, 0x98, 0x5d, 0x42, 0x51, 0x63, + 0x77, 0x4c, 0x21, 0xe5, 0x3b, 0x33, 0x9f, 0x99, 0xd2, 0x50, 0x11, 0xbb, 0xf5, 0x45, 0x11, 0x56, + 0x92, 0xd1, 0x14, 0xfa, 0x83, 0x02, 0x34, 0x42, 0xfa, 0xd3, 0xa1, 0x1b, 0x52, 0xe7, 0xfe, 0x50, + 0xde, 0xa1, 0xb6, 0xdd, 0xa7, 0xce, 0x50, 0x3a, 0xbe, 0xdd, 0x9e, 0xcf, 0x62, 0xb2, 0x34, 0x91, + 0x43, 0x11, 0x85, 0xac, 0xb3, 0xa2, 0xb5, 0xd8, 0x5c, 0xcd, 0x09, 0x8e, 0xfe, 0xb8, 0x00, 0x5b, + 0x41, 0x28, 0x15, 0xe0, 0xec, 0x0b, 0xd2, 0xb5, 0x8e, 0x53, 0x12, 0xf8, 0x08, 0x6f, 0x8c, 0x74, + 0x40, 0xc3, 0x01, 0x9e, 0x77, 0x22, 0xab, 0xa7, 0x85, 0x17, 0xdb, 0xde, 0x4f, 0xe1, 0x42, 0xb2, + 0xc4, 0x20, 0x41, 0xb9, 0xf2, 0x1a, 0xa7, 0xe9, 0xcb, 0xde, 0x04, 0x07, 0x9e, 0xc6, 0xb0, 0xfe, + 0xbe, 0x00, 0xb5, 0xc9, 0x71, 0xe8, 0x33, 0xa8, 0x0d, 0x64, 0xb0, 0xde, 0x3c, 0x09, 0x42, 0xca, + 0xb9, 0xca, 0x17, 0x0b, 0x33, 0xb6, 0x9e, 0x3a, 0x0b, 0x7d, 0x12, 0x2a, 0xb6, 0x99, 0x42, 0x42, + 0x58, 0xde, 0x71, 0x61, 0xf7, 0x95, 0xff, 0xe6, 0x33, 0x65, 0x9a, 0x07, 0x9c, 0x04, 0xb1, 0x3a, + 0x70, 0x25, 0x67, 0x5c, 0x46, 0x1e, 0xa5, 0xe2, 0x53, 0x3d, 0x8d, 0xb1, 0x8e, 0x71, 0x5b, 0xda, + 0x6d, 0xf3, 0xc6, 0x5b, 0x52, 0x3e, 0xd9, 0xb4, 0xac, 0x36, 0x5c, 0xcc, 0x08, 0x70, 0x26, 0xa2, + 0xc9, 0xe9, 0x14, 0xeb, 0x65, 0x58, 0x56, 0x21, 0x90, 0x4c, 0x78, 0xa2, 0xd2, 0x68, 0x4c, 0xb0, + 0x3e, 0x02, 0x88, 0xcd, 0x02, 0x89, 0x4d, 0xd0, 0x42, 0xc2, 0x8a, 0xa7, 0x4a, 0xab, 0x8b, 0x13, + 0xa5, 0x55, 0xeb, 0xbf, 0x8b, 0x80, 0xa6, 0xed, 0x0a, 0x7a, 0x02, 0x8b, 0xda, 0x1d, 0x7e, 0x25, + 0xe3, 0x6d, 0x30, 0x26, 0x62, 0x8e, 0xe2, 0x54, 0xcc, 0xf1, 0xc2, 0xc3, 0x82, 0x7d, 0xa8, 0xc4, + 0x25, 0xba, 0xf2, 0xf9, 0xc3, 0x97, 0x18, 0x04, 0xfd, 0x10, 0x56, 0x48, 0x32, 0xc2, 0x58, 0x38, + 0xcf, 0x12, 0x53, 0x10, 0xd6, 0xdf, 0x16, 0xa1, 0x9a, 0xc8, 0xf0, 0xd0, 0x1f, 0x9e, 0xc7, 0xb8, + 0x95, 0x66, 0x26, 0x7d, 0x06, 0x5e, 0x5d, 0xde, 0x6f, 0x82, 0x7d, 0xfb, 0x94, 0xba, 0xbd, 0xbe, + 0xa0, 0xce, 0xe4, 0xda, 0xe6, 0xb6, 0x6f, 0xbf, 0x2c, 0xc2, 0xfa, 0x44, 0x56, 0xfb, 0x2b, 0x19, + 0xce, 0x29, 0xc3, 0xbf, 0x2a, 0x68, 0x19, 0x26, 0x40, 0xd0, 0x8f, 0x60, 0xd5, 0x4b, 0xde, 0x02, + 0x63, 0x01, 0xce, 0x75, 0x81, 0xd2, 0x48, 0xd2, 0x0e, 0xc4, 0x96, 0x47, 0x5b, 0xed, 0x65, 0x9c, + 0xa0, 0xc8, 0xd0, 0x4d, 0xb0, 0x80, 0x79, 0xac, 0x37, 0xfa, 0x98, 0x8e, 0x4c, 0x30, 0x9c, 0x24, + 0x59, 0xff, 0x53, 0x80, 0x2b, 0x39, 0x25, 0x6e, 0x64, 0xc1, 0xca, 0xc0, 0xf5, 0xb7, 0x8f, 0x89, + 0xeb, 0x91, 0x43, 0x4f, 0x07, 0x59, 0xab, 0x38, 0x45, 0x4b, 0x19, 0x86, 0xe2, 0x8b, 0x30, 0x0c, + 0x37, 0x60, 0x6d, 0x40, 0x4e, 0x9e, 0xf9, 0x24, 0x9e, 0xb6, 0xa4, 0xa6, 0x9d, 0xa0, 0x26, 0xdf, + 0xc9, 0xca, 0xe7, 0x7f, 0x27, 0xb3, 0xbe, 0x2c, 0x40, 0x6d, 0x32, 0x86, 0x9b, 0x99, 0xd2, 0x65, + 0x27, 0x49, 0xc5, 0x17, 0x94, 0x24, 0xa5, 0x64, 0x5a, 0x7a, 0x01, 0x32, 0xb5, 0x7e, 0x1b, 0xae, + 0xe4, 0x44, 0x41, 0xd2, 0xb7, 0x3e, 0x57, 0xca, 0x6f, 0x2a, 0x3c, 0xa6, 0x85, 0x76, 0x01, 0xb4, + 0xee, 0xab, 0xd2, 0x54, 0x71, 0x46, 0x14, 0x3c, 0x15, 0xd5, 0x24, 0x98, 0xad, 0xbf, 0x28, 0xc1, + 0x5a, 0xfa, 0x19, 0x01, 0xfd, 0x3a, 0x94, 0xe9, 0x09, 0xb5, 0xcd, 0x4d, 0xb8, 0x7e, 0x4a, 0x3c, + 0x1b, 0x65, 0xe6, 0x58, 0x31, 0xa0, 0x1f, 0xc0, 0x92, 0x4c, 0xb9, 0x1e, 0x52, 0x31, 0xb3, 0x10, + 0x99, 0x4a, 0x33, 0x71, 0xc4, 0x86, 0x1e, 0xc0, 0xb2, 0xb0, 0x83, 0x36, 0xb3, 0x8f, 0xa8, 0x98, + 0x59, 0xe4, 0x3b, 0xd8, 0x69, 0xe9, 0x91, 0x06, 0x65, 0xcc, 0x8a, 0xde, 0x81, 0x8b, 0xf2, 0x8a, + 0xbb, 0xc4, 0xbb, 0x4f, 0x3d, 0x32, 0x8a, 0xea, 0x64, 0x65, 0x25, 0xc5, 0xac, 0xae, 0x8c, 0xa2, + 0xda, 0x42, 0x56, 0x51, 0x0d, 0xbd, 0x0e, 0xab, 0x01, 0x0d, 0x5d, 0x55, 0x74, 0x57, 0xc3, 0x16, + 0xd5, 0xb0, 0x34, 0x11, 0xdd, 0x82, 0x1a, 0x1f, 0xda, 0x36, 0xe5, 0xfc, 0xa0, 0x1f, 0x52, 0xde, + 0x67, 0x9e, 0x53, 0x5f, 0x52, 0x03, 0xa7, 0xe8, 0x72, 0x6c, 0x97, 0xb8, 0xde, 0x30, 0xa4, 0xe3, + 0xb1, 0x15, 0x3d, 0x76, 0x92, 0x6e, 0xfd, 0x69, 0x01, 0x2e, 0x65, 0x16, 0x79, 0xe4, 0xba, 0x6c, + 0x99, 0xa2, 0x4a, 0xe5, 0x4b, 0x5c, 0x8c, 0x34, 0x51, 0x7f, 0x13, 0x69, 0x32, 0x9f, 0x62, 0xf4, + 0x4d, 0xa4, 0x49, 0x65, 0x1e, 0xc2, 0x92, 0xe3, 0x1e, 0xbb, 0x3c, 0xd6, 0xeb, 0x39, 0x2f, 0x4b, + 0xc4, 0x6d, 0xfd, 0x43, 0x01, 0x36, 0xb2, 0xd2, 0xa6, 0xcc, 0xac, 0xfb, 0x03, 0xa8, 0xa7, 0x2e, + 0xd9, 0x33, 0xe1, 0x7a, 0xee, 0xcf, 0x88, 0x71, 0x0c, 0x52, 0x0a, 0xb9, 0xfd, 0x39, 0x37, 0xbd, + 0xf4, 0xa2, 0xca, 0x21, 0x3f, 0x2f, 0xc2, 0x72, 0xfc, 0x94, 0x83, 0x1e, 0xc0, 0xa2, 0xe7, 0x0e, + 0x5c, 0x11, 0x05, 0xf6, 0xb3, 0xab, 0x70, 0xbc, 0xf1, 0x44, 0x31, 0xe8, 0xe7, 0x1e, 0xc3, 0x8d, + 0x9e, 0xc8, 0x23, 0xf8, 0xe9, 0x90, 0x72, 0x31, 0x3b, 0x92, 0x1f, 0x23, 0x61, 0xc3, 0xa2, 0xb1, + 0x62, 0x84, 0xcd, 0xef, 0x42, 0x35, 0x31, 0xc9, 0x5c, 0x2f, 0x29, 0xdf, 0x83, 0xd5, 0x14, 0xea, + 0x5c, 0xef, 0x27, 0x5f, 0x14, 0xe0, 0x4a, 0x4e, 0x71, 0x16, 0x3d, 0x9b, 0x72, 0x12, 0x85, 0xf3, + 0x1c, 0xc9, 0xa4, 0x4f, 0xd9, 0x85, 0xca, 0x80, 0x9c, 0xb4, 0x87, 0x61, 0xef, 0x9c, 0xd6, 0x3c, + 0x66, 0xb7, 0xfe, 0xac, 0x00, 0x17, 0xa6, 0x4a, 0x8f, 0xdf, 0xbc, 0xd2, 0xff, 0x7f, 0x2c, 0x40, + 0x35, 0xf1, 0x62, 0x8a, 0x3e, 0x80, 0x85, 0x80, 0x85, 0xb1, 0x06, 0xce, 0x7c, 0x66, 0x6d, 0xb1, + 0x50, 0x60, 0xcd, 0x82, 0xf6, 0x52, 0xa1, 0x80, 0x64, 0xbf, 0x73, 0x96, 0x57, 0xda, 0x46, 0xfa, + 0xd9, 0x7e, 0x1c, 0x09, 0xbc, 0x0c, 0xcb, 0xb6, 0x37, 0xe4, 0x82, 0x86, 0xbb, 0x2d, 0x13, 0xba, + 0x8c, 0x09, 0x71, 0xe5, 0xa7, 0x9c, 0xa8, 0xfc, 0x5c, 0x83, 0x6a, 0x54, 0xeb, 0xd8, 0x6d, 0xe9, + 0x42, 0xde, 0x32, 0x4e, 0x92, 0xd0, 0x4d, 0x58, 0xe7, 0x3a, 0xe7, 0x8d, 0x1f, 0x7a, 0x96, 0xf4, + 0x97, 0x09, 0x13, 0x64, 0x69, 0xad, 0x3d, 0x46, 0x9c, 0x7b, 0xc4, 0x23, 0xbe, 0xad, 0x96, 0xa0, + 0x9f, 0xd5, 0x27, 0xa8, 0xd2, 0xba, 0x24, 0x29, 0xa6, 0xe6, 0x42, 0xfc, 0x1e, 0xe5, 0xf5, 0x65, + 0xb5, 0x80, 0xdc, 0x7e, 0x19, 0x60, 0x45, 0x8b, 0x53, 0x06, 0x55, 0x7f, 0xdb, 0x92, 0xa2, 0xa1, + 0xf7, 0xe0, 0x52, 0xd4, 0x3e, 0x08, 0x49, 0xb7, 0xeb, 0xda, 0xfa, 0xd3, 0x09, 0xf3, 0xb5, 0x7c, + 0x76, 0xa7, 0xf4, 0x4e, 0x7d, 0x4a, 0x3c, 0xd1, 0xdf, 0xe9, 0x53, 0xfb, 0x48, 0xba, 0x67, 0x79, + 0x52, 0xea, 0xf1, 0x7c, 0x01, 0x67, 0x75, 0xc9, 0x7d, 0x04, 0xc3, 0x43, 0xcf, 0xe5, 0xfd, 0x3d, + 0x26, 0xa4, 0xbb, 0x1e, 0x6d, 0x3b, 0x4e, 0x48, 0x39, 0xa7, 0x5c, 0x3d, 0x99, 0x57, 0x70, 0x6e, + 0x3f, 0x72, 0xe0, 0xd2, 0x84, 0xf8, 0x74, 0x2d, 0x5f, 0x7d, 0x58, 0x7f, 0x9a, 0x1d, 0x6b, 0x67, + 0x71, 0xe1, 0x6c, 0x30, 0x69, 0x4d, 0xce, 0xfd, 0x2e, 0x6c, 0xfd, 0x4d, 0x21, 0x56, 0xf4, 0x96, + 0xa9, 0x0f, 0x4f, 0x39, 0x8a, 0x4d, 0xa8, 0xa8, 0xcf, 0xbc, 0x6c, 0xe6, 0x45, 0xae, 0x2b, 0x6a, + 0xab, 0x32, 0xb5, 0x94, 0xa0, 0xae, 0x7e, 0xea, 0x1a, 0xf3, 0x53, 0x00, 0x6d, 0xd3, 0x95, 0x6c, + 0xcf, 0x55, 0x23, 0x4f, 0x00, 0xc8, 0xe9, 0xfd, 0xe8, 0xa0, 0x74, 0x64, 0x10, 0xb7, 0xad, 0xcf, + 0xe0, 0x52, 0xa6, 0xac, 0xd0, 0x0e, 0x54, 0x6c, 0xf3, 0x76, 0x67, 0xac, 0x48, 0xfe, 0xb7, 0x1c, + 0xe9, 0x47, 0x3e, 0x1c, 0x33, 0x5a, 0x7d, 0x58, 0x9f, 0x88, 0x74, 0xe2, 0x12, 0x7c, 0xe1, 0xab, + 0x97, 0xe0, 0x8b, 0xe3, 0x12, 0xbc, 0xf5, 0x47, 0x05, 0x80, 0xf1, 0x47, 0x11, 0x73, 0xd6, 0x81, + 0xe2, 0xd3, 0x2d, 0x25, 0x5f, 0xd9, 0x2e, 0xc3, 0x22, 0xed, 0x76, 0xa9, 0x2d, 0xa2, 0xaa, 0xbe, + 0x6e, 0xa1, 0xb7, 0xe1, 0xc2, 0xf8, 0x93, 0x8b, 0x64, 0xc4, 0x55, 0xc2, 0xd3, 0x1d, 0xd6, 0xef, + 0x16, 0xe0, 0x4a, 0x4e, 0x16, 0x98, 0x1b, 0x23, 0x9b, 0x57, 0xe3, 0xc4, 0x50, 0xe3, 0x35, 0xce, + 0x9e, 0xfc, 0x4e, 0x02, 0x58, 0xbf, 0x28, 0x03, 0x9a, 0xfe, 0xde, 0x02, 0xed, 0xc3, 0x1a, 0xa7, + 0x4f, 0x5c, 0x7f, 0x78, 0xb2, 0x1f, 0x08, 0x53, 0xfb, 0x3b, 0xfd, 0xb0, 0xdb, 0xcd, 0xe4, 0x70, + 0x3c, 0xc1, 0x2e, 0x8d, 0x6b, 0x38, 0xf4, 0xb7, 0xf9, 0x33, 0x4e, 0xb5, 0xa0, 0x4b, 0x78, 0x4c, + 0x90, 0x86, 0x49, 0x35, 0xf6, 0x98, 0x8f, 0x19, 0x13, 0xc6, 0x6d, 0xa4, 0x68, 0xa8, 0x01, 0x88, + 0x0f, 0x83, 0xc0, 0x53, 0x15, 0x3d, 0xe2, 0x3d, 0x0c, 0xd9, 0x30, 0xd0, 0xf5, 0xff, 0x12, 0xce, + 0xe8, 0x41, 0x75, 0x58, 0xea, 0x72, 0xf5, 0xdb, 0x9c, 0x42, 0xd4, 0x94, 0xe9, 0x96, 0x42, 0xd6, + 0x9d, 0x8b, 0xaa, 0x33, 0x41, 0x41, 0xdf, 0x85, 0x25, 0x3e, 0xe2, 0xb6, 0xf0, 0xa2, 0xaf, 0xa9, + 0xf2, 0x3f, 0x6c, 0x6b, 0xab, 0x71, 0x38, 0x1a, 0x8f, 0x3e, 0x87, 0xb5, 0xe7, 0xae, 0xef, 0xb0, + 0xe7, 0x3c, 0x92, 0x5b, 0x45, 0xc9, 0xed, 0xfd, 0xfc, 0x52, 0x80, 0x1e, 0x3e, 0x71, 0x00, 0xb1, + 0x18, 0xd3, 0x68, 0xd2, 0xce, 0x9a, 0x5d, 0xec, 0xf4, 0xa5, 0x4d, 0x37, 0xb6, 0x79, 0x59, 0x69, + 0x62, 0x56, 0x97, 0x3e, 0x49, 0xdb, 0x66, 0x83, 0xa0, 0x95, 0xf8, 0xef, 0xa8, 0x53, 0x4f, 0x32, + 0x35, 0x1c, 0x4f, 0xb0, 0x5b, 0x87, 0xb0, 0x96, 0x3e, 0x6b, 0x79, 0xf1, 0x86, 0xf2, 0x58, 0x8d, + 0x6d, 0x93, 0xbf, 0x25, 0x2d, 0x64, 0x5e, 0xfc, 0xec, 0x2e, 0x7f, 0xc7, 0x2e, 0xb4, 0x94, 0x70, + 0xa1, 0x1b, 0xb0, 0xe0, 0xd1, 0x63, 0xf5, 0x15, 0xa8, 0xba, 0x63, 0xaa, 0x61, 0xdd, 0x81, 0x45, + 0x2d, 0xd9, 0x39, 0x9e, 0xb5, 0xfe, 0xb2, 0x00, 0xaf, 0x9c, 0x2a, 0x4c, 0xf4, 0x3e, 0x5c, 0xee, + 0x0d, 0x38, 0xd9, 0x09, 0xa9, 0x43, 0x7d, 0x99, 0x2e, 0xc9, 0x70, 0x20, 0x91, 0x59, 0xe4, 0xf4, + 0x4a, 0xcd, 0x9b, 0xee, 0x31, 0x93, 0x67, 0xf4, 0xc8, 0xc4, 0x25, 0x56, 0xed, 0xbd, 0xf1, 0x87, + 0x34, 0x69, 0xa2, 0xd5, 0x82, 0xb5, 0xb4, 0xa4, 0x33, 0x1f, 0x97, 0x6e, 0x41, 0x4d, 0x85, 0x5d, + 0xd2, 0x9a, 0x45, 0x07, 0xa8, 0x67, 0x9e, 0xa2, 0x5b, 0xeb, 0xb0, 0x9a, 0xfa, 0x1a, 0xc6, 0xaa, + 0xc3, 0xe5, 0xec, 0xff, 0x42, 0xb2, 0x2e, 0xc3, 0x46, 0x96, 0x25, 0xb5, 0x36, 0x00, 0x4d, 0x57, + 0x2f, 0xee, 0xbd, 0xfd, 0x8f, 0x5f, 0x5e, 0x7d, 0xe9, 0x9f, 0xbf, 0xbc, 0xfa, 0xd2, 0xbf, 0x7d, + 0x79, 0xf5, 0xa5, 0x1f, 0x5f, 0xd5, 0x8a, 0xa3, 0xff, 0x99, 0x6f, 0x6b, 0xea, 0xbf, 0x05, 0x0f, + 0x17, 0x95, 0x13, 0x7b, 0xf7, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0xef, 0xf1, 0x4a, 0x78, 0x49, + 0x38, 0x00, 0x00, } diff --git a/operator/v1alpha1/operator.proto b/operator/v1alpha1/operator.proto index 98cdb42214d..e8c8df171a8 100644 --- a/operator/v1alpha1/operator.proto +++ b/operator/v1alpha1/operator.proto @@ -183,6 +183,8 @@ message ComponentSpec { TypeBoolValueForPB enabled = 1; // Namespace for the component. string namespace = 2; + // Check whether autoScale is enabled. + TypeBoolValueForPB autoScaleEnabled = 3; // Hub for the component (overrides top level hub setting). string hub = 10; // Tag for the component (overrides top level tag setting). @@ -224,12 +226,13 @@ message GatewaySpec { string name = 3; // Labels for the gateway. map label = 4; + // Check whether autoScale is enabled. + TypeBoolValueForPB autoScaleEnabled = 5; // Hub for the component (overrides top level hub setting). string hub = 10; // Tag for the component (overrides top level tag setting). TypeInterface tag = 11; - // Kubernetes resource spec. KubernetesResourcesSpec k8s = 50; } @@ -484,6 +487,8 @@ message PodDisruptionBudgetSpec { uint32 minAvailable = 1; k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 2; uint32 maxUnavailable = 3; + // Check whether PodDisruptionBudget is enabled + TypeBoolValueForPB enabled = 4; } // See k8s.io.api.core.v1.PodsMetricSource. diff --git a/python/istio_api/operator/v1alpha1/operator_pb2.py b/python/istio_api/operator/v1alpha1/operator_pb2.py index 2faf15afe53..65d10166b16 100644 --- a/python/istio_api/operator/v1alpha1/operator_pb2.py +++ b/python/istio_api/operator/v1alpha1/operator_pb2.py @@ -23,7 +23,7 @@ package='istio.operator.v1alpha1', syntax='proto3', serialized_options=_b('Z\036istio.io/api/operator/v1alpha1\310\342\036\000\320\342\036\000\340\342\036\000'), - serialized_pb=_b('\n operator/v1alpha1/operator.proto\x12\x17istio.operator.v1alpha1\x1a\x19google/protobuf/any.proto\x1a\x34k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto\x1a\x14gogoproto/gogo.proto\"\xa5\x05\n\x11IstioOperatorSpec\x12\x0f\n\x07profile\x18\n \x01(\t\x12\x1c\n\x14install_package_path\x18\x0b \x01(\t\x12\x0b\n\x03hub\x18\x0c \x01(\t\x12\x33\n\x03tag\x18\r \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x1b\n\x0fresource_suffix\x18\x0e \x01(\tB\x02\x18\x01\x12\x11\n\tnamespace\x18\x0f \x01(\t\x12\x10\n\x08revision\x18\x10 \x01(\t\x12\x44\n\x0bmesh_config\x18( \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12\x42\n\ncomponents\x18\x32 \x01(\x0b\x32..istio.operator.v1alpha1.IstioComponentSetSpec\x12]\n\x10\x61\x64\x64on_components\x18\x33 \x03(\x0b\x32?.istio.operator.v1alpha1.IstioOperatorSpec.AddonComponentsEntryB\x02\x18\x01\x12?\n\x06values\x18\x64 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12K\n\x12unvalidated_values\x18\x65 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x1a\x66\n\x14\x41\x64\x64onComponentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ExternalComponentSpec:\x02\x38\x01\"\xf4\x03\n\rInstallStatus\x12=\n\x06status\x18\x01 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\x0f\n\x07message\x18\x03 \x01(\t\x12U\n\x10\x63omponent_status\x18\x02 \x03(\x0b\x32;.istio.operator.v1alpha1.InstallStatus.ComponentStatusEntry\x1an\n\rVersionStatus\x12\x0f\n\x07version\x18\x01 \x01(\t\x12=\n\x06status\x18\x02 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\r\n\x05\x65rror\x18\x04 \x01(\t\x1al\n\x14\x43omponentStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.istio.operator.v1alpha1.InstallStatus.VersionStatus:\x02\x38\x01\"^\n\x06Status\x12\x08\n\x04NONE\x10\x00\x12\x0c\n\x08UPDATING\x10\x01\x12\x0f\n\x0bRECONCILING\x10\x02\x12\x0b\n\x07HEALTHY\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x12\x13\n\x0f\x41\x43TION_REQUIRED\x10\x05\"\xee\x03\n\x15IstioComponentSetSpec\x12\x38\n\x04\x62\x61se\x18\x1d \x01(\x0b\x32*.istio.operator.v1alpha1.BaseComponentSpec\x12\x35\n\x05pilot\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12\x33\n\x03\x63ni\x18& \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12=\n\ristiod_remote\x18\' \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12>\n\x10ingress_gateways\x18( \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpec\x12=\n\x0f\x65gress_gateways\x18) \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpecJ\x04\x08\x1f\x10 J\x04\x08 \x10!J\x04\x08!\x10\"J\x04\x08\"\x10#J\x04\x08#\x10$J\x04\x08$\x10%J\x04\x08%\x10&R\x07\x63itadelR\x06policyR\ttelemetryR\x06galleyR\nnode_agentR\x05proxyR\x10sidecar_injector\"\x90\x01\n\x11\x42\x61seComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\rComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x34\n\x04spec\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\x15\x45xternalComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x34\n\x04spec\x18\n \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x12\n\nchart_path\x18\x1e \x01(\t\x12$\n\x06schema\x18# \x01(\x0b\x32\x14.google.protobuf.Any\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\xdb\x02\n\x0bGatewaySpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12>\n\x05label\x18\x04 \x03(\x0b\x32/.istio.operator.v1alpha1.GatewaySpec.LabelEntry\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\x1a,\n\nLabelEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd8\t\n\x17KubernetesResourcesSpec\x12\x33\n\x08\x61\x66\x66inity\x18\x01 \x01(\x0b\x32!.istio.operator.v1alpha1.Affinity\x12,\n\x03\x65nv\x18\x02 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.EnvVar\x12\x46\n\x08hpa_spec\x18\x03 \x01(\x0b\x32\x34.istio.operator.v1alpha1.HorizontalPodAutoscalerSpec\x12\x19\n\x11image_pull_policy\x18\x04 \x01(\t\x12Y\n\rnode_selector\x18\x05 \x03(\x0b\x32\x42.istio.operator.v1alpha1.KubernetesResourcesSpec.NodeSelectorEntry\x12O\n\x15pod_disruption_budget\x18\x06 \x01(\x0b\x32\x30.istio.operator.v1alpha1.PodDisruptionBudgetSpec\x12]\n\x0fpod_annotations\x18\x07 \x03(\x0b\x32\x44.istio.operator.v1alpha1.KubernetesResourcesSpec.PodAnnotationsEntry\x12\x1b\n\x13priority_class_name\x18\x08 \x01(\t\x12@\n\x0freadiness_probe\x18\t \x01(\x0b\x32\'.istio.operator.v1alpha1.ReadinessProbe\x12\x15\n\rreplica_count\x18\n \x01(\r\x12\x35\n\tresources\x18\x0b \x01(\x0b\x32\".istio.operator.v1alpha1.Resources\x12\x35\n\x07service\x18\x0c \x01(\x0b\x32$.istio.operator.v1alpha1.ServiceSpec\x12=\n\x08strategy\x18\r \x01(\x0b\x32+.istio.operator.v1alpha1.DeploymentStrategy\x12\x38\n\x0btolerations\x18\x0e \x03(\x0b\x32#.istio.operator.v1alpha1.Toleration\x12\x65\n\x13service_annotations\x18\x0f \x03(\x0b\x32H.istio.operator.v1alpha1.KubernetesResourcesSpec.ServiceAnnotationsEntry\x12\x44\n\x0fsecurityContext\x18\x10 \x01(\x0b\x32+.istio.operator.v1alpha1.PodSecurityContext\x12;\n\x08overlays\x18\x64 \x03(\x0b\x32).istio.operator.v1alpha1.K8sObjectOverlay\x1a\x33\n\x11NodeSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x35\n\x13PodAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17ServiceAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xdb\x01\n\x10K8sObjectOverlay\x12\x13\n\x0b\x61pi_version\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x44\n\x07patches\x18\x04 \x03(\x0b\x32\x33.istio.operator.v1alpha1.K8sObjectOverlay.PathValue\x1aP\n\tPathValue\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\"\xc5\x01\n\x08\x41\x66\x66inity\x12;\n\x0cnodeAffinity\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeAffinity\x12\x39\n\x0bpodAffinity\x18\x02 \x01(\x0b\x32$.istio.operator.v1alpha1.PodAffinity\x12\x41\n\x0fpodAntiAffinity\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAntiAffinity\"\x82\x01\n\x14\x43onfigMapKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"(\n\x0e\x43lientIPConfig\x12\x16\n\x0etimeoutSeconds\x18\x01 \x01(\x05\"M\n\x1b\x43rossVersionObjectReference\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\napiVersion\x18\x03 \x01(\t\"k\n\x12\x44\x65ploymentStrategy\x12\x0c\n\x04type\x18\x01 \x01(\t\x12G\n\rrollingUpdate\x18\x02 \x01(\x0b\x32\x30.istio.operator.v1alpha1.RollingUpdateDeployment\"_\n\x06\x45nvVar\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x38\n\tvalueFrom\x18\x03 \x01(\x0b\x32%.istio.operator.v1alpha1.EnvVarSource\"\xa2\x02\n\x0c\x45nvVarSource\x12>\n\x08\x66ieldRef\x18\x01 \x01(\x0b\x32,.istio.operator.v1alpha1.ObjectFieldSelector\x12H\n\x10resourceFieldRef\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ResourceFieldSelector\x12\x46\n\x0f\x63onfigMapKeyRef\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.ConfigMapKeySelector\x12@\n\x0csecretKeyRef\x18\x04 \x01(\x0b\x32*.istio.operator.v1alpha1.SecretKeySelector\"\x1d\n\nExecAction\x12\x0f\n\x07\x63ommand\x18\x01 \x03(\t\"\x86\x02\n\x14\x45xternalMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12K\n\x0emetricSelector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12I\n\x12targetAverageValue\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xb2\x01\n\rHTTPGetAction\x12\x0c\n\x04path\x18\x01 \x01(\t\x12;\n\x04port\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x03 \x01(\t\x12\x0e\n\x06scheme\x18\x04 \x01(\t\x12\x38\n\x0bhttpHeaders\x18\x05 \x03(\x0b\x32#.istio.operator.v1alpha1.HTTPHeader\")\n\nHTTPHeader\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xcb\x01\n\x1bHorizontalPodAutoscalerSpec\x12L\n\x0escaleTargetRef\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x13\n\x0bminReplicas\x18\x02 \x01(\x05\x12\x13\n\x0bmaxReplicas\x18\x03 \x01(\x05\x12\x34\n\x07metrics\x18\x04 \x03(\x0b\x32#.istio.operator.v1alpha1.MetricSpec\"$\n\x14LocalObjectReference\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x92\x02\n\nMetricSpec\x12\x0c\n\x04type\x18\x01 \x01(\t\x12;\n\x06object\x18\x02 \x01(\x0b\x32+.istio.operator.v1alpha1.ObjectMetricSource\x12\x37\n\x04pods\x18\x03 \x01(\x0b\x32).istio.operator.v1alpha1.PodsMetricSource\x12?\n\x08resource\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.ResourceMetricSource\x12?\n\x08\x65xternal\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.ExternalMetricSource\"\xd8\x01\n\x0cNodeAffinity\x12]\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeSelector\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.PreferredSchedulingTerm\"T\n\x0cNodeSelector\x12\x44\n\x11nodeSelectorTerms\x18\x01 \x03(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xa5\x01\n\x10NodeSelectorTerm\x12J\n\x10matchExpressions\x18\x01 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\x12\x45\n\x0bmatchFields\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\"H\n\x17NodeSelectorRequirement\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\x0e\n\x06values\x18\x03 \x03(\t\"<\n\x13ObjectFieldSelector\x12\x12\n\napiVersion\x18\x01 \x01(\t\x12\x11\n\tfieldPath\x18\x02 \x01(\t\"-\n\nObjectMeta\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x11\n\tnamespace\x18\x06 \x01(\t\"\xbe\x02\n\x12ObjectMetricSource\x12\x44\n\x06target\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x12\n\nmetricName\x18\x02 \x01(\t\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x04 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x43\n\x0c\x61verageValue\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xda\x01\n\x0bPodAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\xde\x01\n\x0fPodAntiAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\x86\x01\n\x0fPodAffinityTerm\x12J\n\rlabelSelector\x18\x01 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x12\n\nnamespaces\x18\x02 \x03(\t\x12\x13\n\x0btopologyKey\x18\x03 \x01(\t\"\x8e\x01\n\x17PodDisruptionBudgetSpec\x12\x14\n\x0cminAvailable\x18\x01 \x01(\r\x12\x45\n\x08selector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x16\n\x0emaxUnavailable\x18\x03 \x01(\r\"\xb8\x01\n\x10PodsMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12I\n\x12targetAverageValue\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x03 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\"h\n\x17PreferredSchedulingTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12=\n\npreference\x18\x02 \x01(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xb9\x02\n\x0eReadinessProbe\x12\x31\n\x04\x65xec\x18\x01 \x01(\x0b\x32#.istio.operator.v1alpha1.ExecAction\x12\x37\n\x07httpGet\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.HTTPGetAction\x12;\n\ttcpSocket\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.TCPSocketAction\x12\x1b\n\x13initialDelaySeconds\x18\x04 \x01(\x05\x12\x16\n\x0etimeoutSeconds\x18\x05 \x01(\x05\x12\x15\n\rperiodSeconds\x18\x06 \x01(\x05\x12\x18\n\x10successThreshold\x18\x07 \x01(\x05\x12\x18\n\x10\x66\x61ilureThreshold\x18\x08 \x01(\x05\"\x80\x01\n\x15ResourceFieldSelector\x12\x15\n\rcontainerName\x18\x01 \x01(\t\x12\x10\n\x08resource\x18\x02 \x01(\t\x12>\n\x07\x64ivisor\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x91\x01\n\x14ResourceMetricSource\x12\x0c\n\x04name\x18\x01 \x01(\t\x12 \n\x18targetAverageUtilization\x18\x02 \x01(\x05\x12I\n\x12targetAverageValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xef\x01\n\tResources\x12>\n\x06limits\x18\x01 \x03(\x0b\x32..istio.operator.v1alpha1.Resources.LimitsEntry\x12\x42\n\x08requests\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.Resources.RequestsEntry\x1a-\n\x0bLimitsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rRequestsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa1\x01\n\x17RollingUpdateDeployment\x12\x45\n\x0emaxUnavailable\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12?\n\x08maxSurge\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x7f\n\x11SecretKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"\x85\x04\n\x0bServiceSpec\x12\x33\n\x05ports\x18\x01 \x03(\x0b\x32$.istio.operator.v1alpha1.ServicePort\x12\x44\n\x08selector\x18\x02 \x03(\x0b\x32\x32.istio.operator.v1alpha1.ServiceSpec.SelectorEntry\x12\x11\n\tclusterIP\x18\x03 \x01(\t\x12\x0c\n\x04type\x18\x04 \x01(\t\x12\x13\n\x0b\x65xternalIPs\x18\x05 \x03(\t\x12\x17\n\x0fsessionAffinity\x18\x07 \x01(\t\x12\x16\n\x0eloadBalancerIP\x18\x08 \x01(\t\x12 \n\x18loadBalancerSourceRanges\x18\t \x03(\t\x12\x14\n\x0c\x65xternalName\x18\n \x01(\t\x12\x1d\n\x15\x65xternalTrafficPolicy\x18\x0b \x01(\t\x12\x1b\n\x13healthCheckNodePort\x18\x0c \x01(\x05\x12 \n\x18publishNotReadyAddresses\x18\r \x01(\x08\x12M\n\x15sessionAffinityConfig\x18\x0e \x01(\x0b\x32..istio.operator.v1alpha1.SessionAffinityConfig\x1a/\n\rSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x90\x01\n\x0bServicePort\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08protocol\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\x05\x12\x41\n\ntargetPort\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x10\n\x08nodePort\x18\x05 \x01(\x05\"R\n\x15SessionAffinityConfig\x12\x39\n\x08\x63lientIP\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.ClientIPConfig\"\\\n\x0fTCPSocketAction\x12;\n\x04port\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x02 \x01(\t\"e\n\nToleration\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\t\x12\x0e\n\x06\x65\x66\x66\x65\x63t\x18\x04 \x01(\t\x12\x19\n\x11tolerationSeconds\x18\x05 \x01(\x03\"l\n\x17WeightedPodAffinityTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12\x41\n\x0fpodAffinityTerm\x18\x02 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\"\x9f\x03\n\x12PodSecurityContext\x12?\n\x0eseLinuxOptions\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.SELinuxOptions\x12\x11\n\trunAsUser\x18\x02 \x01(\x03\x12\x14\n\x0crunAsNonRoot\x18\x03 \x01(\x08\x12\x1a\n\x12supplementalGroups\x18\x04 \x03(\x03\x12\x0f\n\x07\x66sGroup\x18\x05 \x01(\x03\x12\x12\n\nrunAsGroup\x18\x06 \x01(\x03\x12\x30\n\x07sysctls\x18\x07 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.Sysctl\x12N\n\x0ewindowsOptions\x18\x08 \x01(\x0b\x32\x36.istio.operator.v1alpha1.WindowsSecurityContextOptions\x12\x1b\n\x13\x66sGroupChangePolicy\x18\t \x01(\t\x12?\n\x0eseccompProfile\x18\n \x01(\x0b\x32\'.istio.operator.v1alpha1.SeccompProfile\"I\n\x0eSELinuxOptions\x12\x0c\n\x04user\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\r\n\x05level\x18\x04 \x01(\t\"%\n\x06Sysctl\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"r\n\x1dWindowsSecurityContextOptions\x12\x1e\n\x16gmsaCredentialSpecName\x18\x01 \x01(\t\x12\x1a\n\x12gmsaCredentialSpec\x18\x02 \x01(\t\x12\x15\n\rrunAsUserName\x18\x03 \x01(\t\"8\n\x0eSeccompProfile\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x18\n\x10localhostProfile\x18\x02 \x01(\t\"\x0f\n\rTypeInterface\"\x18\n\x16TypeMapStringInterface\"\x16\n\x14TypeIntOrStringForPB\"\x14\n\x12TypeBoolValueForPBB,Z\x1eistio.io/api/operator/v1alpha1\xc8\xe2\x1e\x00\xd0\xe2\x1e\x00\xe0\xe2\x1e\x00\x62\x06proto3') + serialized_pb=_b('\n operator/v1alpha1/operator.proto\x12\x17istio.operator.v1alpha1\x1a\x19google/protobuf/any.proto\x1a\x34k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto\x1a\x14gogoproto/gogo.proto\"\xa5\x05\n\x11IstioOperatorSpec\x12\x0f\n\x07profile\x18\n \x01(\t\x12\x1c\n\x14install_package_path\x18\x0b \x01(\t\x12\x0b\n\x03hub\x18\x0c \x01(\t\x12\x33\n\x03tag\x18\r \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x1b\n\x0fresource_suffix\x18\x0e \x01(\tB\x02\x18\x01\x12\x11\n\tnamespace\x18\x0f \x01(\t\x12\x10\n\x08revision\x18\x10 \x01(\t\x12\x44\n\x0bmesh_config\x18( \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12\x42\n\ncomponents\x18\x32 \x01(\x0b\x32..istio.operator.v1alpha1.IstioComponentSetSpec\x12]\n\x10\x61\x64\x64on_components\x18\x33 \x03(\x0b\x32?.istio.operator.v1alpha1.IstioOperatorSpec.AddonComponentsEntryB\x02\x18\x01\x12?\n\x06values\x18\x64 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12K\n\x12unvalidated_values\x18\x65 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x1a\x66\n\x14\x41\x64\x64onComponentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ExternalComponentSpec:\x02\x38\x01\"\xf4\x03\n\rInstallStatus\x12=\n\x06status\x18\x01 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\x0f\n\x07message\x18\x03 \x01(\t\x12U\n\x10\x63omponent_status\x18\x02 \x03(\x0b\x32;.istio.operator.v1alpha1.InstallStatus.ComponentStatusEntry\x1an\n\rVersionStatus\x12\x0f\n\x07version\x18\x01 \x01(\t\x12=\n\x06status\x18\x02 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\r\n\x05\x65rror\x18\x04 \x01(\t\x1al\n\x14\x43omponentStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.istio.operator.v1alpha1.InstallStatus.VersionStatus:\x02\x38\x01\"^\n\x06Status\x12\x08\n\x04NONE\x10\x00\x12\x0c\n\x08UPDATING\x10\x01\x12\x0f\n\x0bRECONCILING\x10\x02\x12\x0b\n\x07HEALTHY\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x12\x13\n\x0f\x41\x43TION_REQUIRED\x10\x05\"\xee\x03\n\x15IstioComponentSetSpec\x12\x38\n\x04\x62\x61se\x18\x1d \x01(\x0b\x32*.istio.operator.v1alpha1.BaseComponentSpec\x12\x35\n\x05pilot\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12\x33\n\x03\x63ni\x18& \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12=\n\ristiod_remote\x18\' \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12>\n\x10ingress_gateways\x18( \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpec\x12=\n\x0f\x65gress_gateways\x18) \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpecJ\x04\x08\x1f\x10 J\x04\x08 \x10!J\x04\x08!\x10\"J\x04\x08\"\x10#J\x04\x08#\x10$J\x04\x08$\x10%J\x04\x08%\x10&R\x07\x63itadelR\x06policyR\ttelemetryR\x06galleyR\nnode_agentR\x05proxyR\x10sidecar_injector\"\x90\x01\n\x11\x42\x61seComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\xde\x02\n\rComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x45\n\x10\x61utoScaleEnabled\x18\x03 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x34\n\x04spec\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\x15\x45xternalComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x34\n\x04spec\x18\n \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x12\n\nchart_path\x18\x1e \x01(\t\x12$\n\x06schema\x18# \x01(\x0b\x32\x14.google.protobuf.Any\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\xa2\x03\n\x0bGatewaySpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12>\n\x05label\x18\x04 \x03(\x0b\x32/.istio.operator.v1alpha1.GatewaySpec.LabelEntry\x12\x45\n\x10\x61utoScaleEnabled\x18\x05 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\x1a,\n\nLabelEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd8\t\n\x17KubernetesResourcesSpec\x12\x33\n\x08\x61\x66\x66inity\x18\x01 \x01(\x0b\x32!.istio.operator.v1alpha1.Affinity\x12,\n\x03\x65nv\x18\x02 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.EnvVar\x12\x46\n\x08hpa_spec\x18\x03 \x01(\x0b\x32\x34.istio.operator.v1alpha1.HorizontalPodAutoscalerSpec\x12\x19\n\x11image_pull_policy\x18\x04 \x01(\t\x12Y\n\rnode_selector\x18\x05 \x03(\x0b\x32\x42.istio.operator.v1alpha1.KubernetesResourcesSpec.NodeSelectorEntry\x12O\n\x15pod_disruption_budget\x18\x06 \x01(\x0b\x32\x30.istio.operator.v1alpha1.PodDisruptionBudgetSpec\x12]\n\x0fpod_annotations\x18\x07 \x03(\x0b\x32\x44.istio.operator.v1alpha1.KubernetesResourcesSpec.PodAnnotationsEntry\x12\x1b\n\x13priority_class_name\x18\x08 \x01(\t\x12@\n\x0freadiness_probe\x18\t \x01(\x0b\x32\'.istio.operator.v1alpha1.ReadinessProbe\x12\x15\n\rreplica_count\x18\n \x01(\r\x12\x35\n\tresources\x18\x0b \x01(\x0b\x32\".istio.operator.v1alpha1.Resources\x12\x35\n\x07service\x18\x0c \x01(\x0b\x32$.istio.operator.v1alpha1.ServiceSpec\x12=\n\x08strategy\x18\r \x01(\x0b\x32+.istio.operator.v1alpha1.DeploymentStrategy\x12\x38\n\x0btolerations\x18\x0e \x03(\x0b\x32#.istio.operator.v1alpha1.Toleration\x12\x65\n\x13service_annotations\x18\x0f \x03(\x0b\x32H.istio.operator.v1alpha1.KubernetesResourcesSpec.ServiceAnnotationsEntry\x12\x44\n\x0fsecurityContext\x18\x10 \x01(\x0b\x32+.istio.operator.v1alpha1.PodSecurityContext\x12;\n\x08overlays\x18\x64 \x03(\x0b\x32).istio.operator.v1alpha1.K8sObjectOverlay\x1a\x33\n\x11NodeSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x35\n\x13PodAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17ServiceAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xdb\x01\n\x10K8sObjectOverlay\x12\x13\n\x0b\x61pi_version\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x44\n\x07patches\x18\x04 \x03(\x0b\x32\x33.istio.operator.v1alpha1.K8sObjectOverlay.PathValue\x1aP\n\tPathValue\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\"\xc5\x01\n\x08\x41\x66\x66inity\x12;\n\x0cnodeAffinity\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeAffinity\x12\x39\n\x0bpodAffinity\x18\x02 \x01(\x0b\x32$.istio.operator.v1alpha1.PodAffinity\x12\x41\n\x0fpodAntiAffinity\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAntiAffinity\"\x82\x01\n\x14\x43onfigMapKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"(\n\x0e\x43lientIPConfig\x12\x16\n\x0etimeoutSeconds\x18\x01 \x01(\x05\"M\n\x1b\x43rossVersionObjectReference\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\napiVersion\x18\x03 \x01(\t\"k\n\x12\x44\x65ploymentStrategy\x12\x0c\n\x04type\x18\x01 \x01(\t\x12G\n\rrollingUpdate\x18\x02 \x01(\x0b\x32\x30.istio.operator.v1alpha1.RollingUpdateDeployment\"_\n\x06\x45nvVar\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x38\n\tvalueFrom\x18\x03 \x01(\x0b\x32%.istio.operator.v1alpha1.EnvVarSource\"\xa2\x02\n\x0c\x45nvVarSource\x12>\n\x08\x66ieldRef\x18\x01 \x01(\x0b\x32,.istio.operator.v1alpha1.ObjectFieldSelector\x12H\n\x10resourceFieldRef\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ResourceFieldSelector\x12\x46\n\x0f\x63onfigMapKeyRef\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.ConfigMapKeySelector\x12@\n\x0csecretKeyRef\x18\x04 \x01(\x0b\x32*.istio.operator.v1alpha1.SecretKeySelector\"\x1d\n\nExecAction\x12\x0f\n\x07\x63ommand\x18\x01 \x03(\t\"\x86\x02\n\x14\x45xternalMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12K\n\x0emetricSelector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12I\n\x12targetAverageValue\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xb2\x01\n\rHTTPGetAction\x12\x0c\n\x04path\x18\x01 \x01(\t\x12;\n\x04port\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x03 \x01(\t\x12\x0e\n\x06scheme\x18\x04 \x01(\t\x12\x38\n\x0bhttpHeaders\x18\x05 \x03(\x0b\x32#.istio.operator.v1alpha1.HTTPHeader\")\n\nHTTPHeader\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xcb\x01\n\x1bHorizontalPodAutoscalerSpec\x12L\n\x0escaleTargetRef\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x13\n\x0bminReplicas\x18\x02 \x01(\x05\x12\x13\n\x0bmaxReplicas\x18\x03 \x01(\x05\x12\x34\n\x07metrics\x18\x04 \x03(\x0b\x32#.istio.operator.v1alpha1.MetricSpec\"$\n\x14LocalObjectReference\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x92\x02\n\nMetricSpec\x12\x0c\n\x04type\x18\x01 \x01(\t\x12;\n\x06object\x18\x02 \x01(\x0b\x32+.istio.operator.v1alpha1.ObjectMetricSource\x12\x37\n\x04pods\x18\x03 \x01(\x0b\x32).istio.operator.v1alpha1.PodsMetricSource\x12?\n\x08resource\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.ResourceMetricSource\x12?\n\x08\x65xternal\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.ExternalMetricSource\"\xd8\x01\n\x0cNodeAffinity\x12]\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeSelector\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.PreferredSchedulingTerm\"T\n\x0cNodeSelector\x12\x44\n\x11nodeSelectorTerms\x18\x01 \x03(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xa5\x01\n\x10NodeSelectorTerm\x12J\n\x10matchExpressions\x18\x01 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\x12\x45\n\x0bmatchFields\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\"H\n\x17NodeSelectorRequirement\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\x0e\n\x06values\x18\x03 \x03(\t\"<\n\x13ObjectFieldSelector\x12\x12\n\napiVersion\x18\x01 \x01(\t\x12\x11\n\tfieldPath\x18\x02 \x01(\t\"-\n\nObjectMeta\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x11\n\tnamespace\x18\x06 \x01(\t\"\xbe\x02\n\x12ObjectMetricSource\x12\x44\n\x06target\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x12\n\nmetricName\x18\x02 \x01(\t\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x04 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x43\n\x0c\x61verageValue\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xda\x01\n\x0bPodAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\xde\x01\n\x0fPodAntiAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\x86\x01\n\x0fPodAffinityTerm\x12J\n\rlabelSelector\x18\x01 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x12\n\nnamespaces\x18\x02 \x03(\t\x12\x13\n\x0btopologyKey\x18\x03 \x01(\t\"\xcc\x01\n\x17PodDisruptionBudgetSpec\x12\x14\n\x0cminAvailable\x18\x01 \x01(\r\x12\x45\n\x08selector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x16\n\x0emaxUnavailable\x18\x03 \x01(\r\x12<\n\x07\x65nabled\x18\x04 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\"\xb8\x01\n\x10PodsMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12I\n\x12targetAverageValue\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x03 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\"h\n\x17PreferredSchedulingTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12=\n\npreference\x18\x02 \x01(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xb9\x02\n\x0eReadinessProbe\x12\x31\n\x04\x65xec\x18\x01 \x01(\x0b\x32#.istio.operator.v1alpha1.ExecAction\x12\x37\n\x07httpGet\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.HTTPGetAction\x12;\n\ttcpSocket\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.TCPSocketAction\x12\x1b\n\x13initialDelaySeconds\x18\x04 \x01(\x05\x12\x16\n\x0etimeoutSeconds\x18\x05 \x01(\x05\x12\x15\n\rperiodSeconds\x18\x06 \x01(\x05\x12\x18\n\x10successThreshold\x18\x07 \x01(\x05\x12\x18\n\x10\x66\x61ilureThreshold\x18\x08 \x01(\x05\"\x80\x01\n\x15ResourceFieldSelector\x12\x15\n\rcontainerName\x18\x01 \x01(\t\x12\x10\n\x08resource\x18\x02 \x01(\t\x12>\n\x07\x64ivisor\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x91\x01\n\x14ResourceMetricSource\x12\x0c\n\x04name\x18\x01 \x01(\t\x12 \n\x18targetAverageUtilization\x18\x02 \x01(\x05\x12I\n\x12targetAverageValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xef\x01\n\tResources\x12>\n\x06limits\x18\x01 \x03(\x0b\x32..istio.operator.v1alpha1.Resources.LimitsEntry\x12\x42\n\x08requests\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.Resources.RequestsEntry\x1a-\n\x0bLimitsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rRequestsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa1\x01\n\x17RollingUpdateDeployment\x12\x45\n\x0emaxUnavailable\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12?\n\x08maxSurge\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x7f\n\x11SecretKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"\x85\x04\n\x0bServiceSpec\x12\x33\n\x05ports\x18\x01 \x03(\x0b\x32$.istio.operator.v1alpha1.ServicePort\x12\x44\n\x08selector\x18\x02 \x03(\x0b\x32\x32.istio.operator.v1alpha1.ServiceSpec.SelectorEntry\x12\x11\n\tclusterIP\x18\x03 \x01(\t\x12\x0c\n\x04type\x18\x04 \x01(\t\x12\x13\n\x0b\x65xternalIPs\x18\x05 \x03(\t\x12\x17\n\x0fsessionAffinity\x18\x07 \x01(\t\x12\x16\n\x0eloadBalancerIP\x18\x08 \x01(\t\x12 \n\x18loadBalancerSourceRanges\x18\t \x03(\t\x12\x14\n\x0c\x65xternalName\x18\n \x01(\t\x12\x1d\n\x15\x65xternalTrafficPolicy\x18\x0b \x01(\t\x12\x1b\n\x13healthCheckNodePort\x18\x0c \x01(\x05\x12 \n\x18publishNotReadyAddresses\x18\r \x01(\x08\x12M\n\x15sessionAffinityConfig\x18\x0e \x01(\x0b\x32..istio.operator.v1alpha1.SessionAffinityConfig\x1a/\n\rSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x90\x01\n\x0bServicePort\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08protocol\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\x05\x12\x41\n\ntargetPort\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x10\n\x08nodePort\x18\x05 \x01(\x05\"R\n\x15SessionAffinityConfig\x12\x39\n\x08\x63lientIP\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.ClientIPConfig\"\\\n\x0fTCPSocketAction\x12;\n\x04port\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x02 \x01(\t\"e\n\nToleration\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\t\x12\x0e\n\x06\x65\x66\x66\x65\x63t\x18\x04 \x01(\t\x12\x19\n\x11tolerationSeconds\x18\x05 \x01(\x03\"l\n\x17WeightedPodAffinityTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12\x41\n\x0fpodAffinityTerm\x18\x02 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\"\x9f\x03\n\x12PodSecurityContext\x12?\n\x0eseLinuxOptions\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.SELinuxOptions\x12\x11\n\trunAsUser\x18\x02 \x01(\x03\x12\x14\n\x0crunAsNonRoot\x18\x03 \x01(\x08\x12\x1a\n\x12supplementalGroups\x18\x04 \x03(\x03\x12\x0f\n\x07\x66sGroup\x18\x05 \x01(\x03\x12\x12\n\nrunAsGroup\x18\x06 \x01(\x03\x12\x30\n\x07sysctls\x18\x07 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.Sysctl\x12N\n\x0ewindowsOptions\x18\x08 \x01(\x0b\x32\x36.istio.operator.v1alpha1.WindowsSecurityContextOptions\x12\x1b\n\x13\x66sGroupChangePolicy\x18\t \x01(\t\x12?\n\x0eseccompProfile\x18\n \x01(\x0b\x32\'.istio.operator.v1alpha1.SeccompProfile\"I\n\x0eSELinuxOptions\x12\x0c\n\x04user\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\r\n\x05level\x18\x04 \x01(\t\"%\n\x06Sysctl\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"r\n\x1dWindowsSecurityContextOptions\x12\x1e\n\x16gmsaCredentialSpecName\x18\x01 \x01(\t\x12\x1a\n\x12gmsaCredentialSpec\x18\x02 \x01(\t\x12\x15\n\rrunAsUserName\x18\x03 \x01(\t\"8\n\x0eSeccompProfile\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x18\n\x10localhostProfile\x18\x02 \x01(\t\"\x0f\n\rTypeInterface\"\x18\n\x16TypeMapStringInterface\"\x16\n\x14TypeIntOrStringForPB\"\x14\n\x12TypeBoolValueForPBB,Z\x1eistio.io/api/operator/v1alpha1\xc8\xe2\x1e\x00\xd0\xe2\x1e\x00\xe0\xe2\x1e\x00\x62\x06proto3') , dependencies=[google_dot_protobuf_dot_any__pb2.DESCRIPTOR,k8s_dot_io_dot_apimachinery_dot_pkg_dot_apis_dot_meta_dot_v1_dot_generated__pb2.DESCRIPTOR,gogoproto_dot_gogo__pb2.DESCRIPTOR,]) @@ -466,28 +466,35 @@ is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='hub', full_name='istio.operator.v1alpha1.ComponentSpec.hub', index=2, + name='autoScaleEnabled', full_name='istio.operator.v1alpha1.ComponentSpec.autoScaleEnabled', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hub', full_name='istio.operator.v1alpha1.ComponentSpec.hub', index=3, number=10, type=9, cpp_type=9, label=1, has_default_value=False, default_value=_b("").decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='tag', full_name='istio.operator.v1alpha1.ComponentSpec.tag', index=3, + name='tag', full_name='istio.operator.v1alpha1.ComponentSpec.tag', index=4, number=11, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='spec', full_name='istio.operator.v1alpha1.ComponentSpec.spec', index=4, + name='spec', full_name='istio.operator.v1alpha1.ComponentSpec.spec', index=5, number=30, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='k8s', full_name='istio.operator.v1alpha1.ComponentSpec.k8s', index=5, + name='k8s', full_name='istio.operator.v1alpha1.ComponentSpec.k8s', index=6, number=50, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -506,7 +513,7 @@ oneofs=[ ], serialized_start=1992, - serialized_end=2271, + serialized_end=2342, ) @@ -571,8 +578,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2274, - serialized_end=2553, + serialized_start=2345, + serialized_end=2624, ) @@ -609,8 +616,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2859, - serialized_end=2903, + serialized_start=3001, + serialized_end=3045, ) _GATEWAYSPEC = _descriptor.Descriptor( @@ -649,21 +656,28 @@ is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='hub', full_name='istio.operator.v1alpha1.GatewaySpec.hub', index=4, + name='autoScaleEnabled', full_name='istio.operator.v1alpha1.GatewaySpec.autoScaleEnabled', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='hub', full_name='istio.operator.v1alpha1.GatewaySpec.hub', index=5, number=10, type=9, cpp_type=9, label=1, has_default_value=False, default_value=_b("").decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='tag', full_name='istio.operator.v1alpha1.GatewaySpec.tag', index=5, + name='tag', full_name='istio.operator.v1alpha1.GatewaySpec.tag', index=6, number=11, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='k8s', full_name='istio.operator.v1alpha1.GatewaySpec.k8s', index=6, + name='k8s', full_name='istio.operator.v1alpha1.GatewaySpec.k8s', index=7, number=50, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -681,8 +695,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2556, - serialized_end=2903, + serialized_start=2627, + serialized_end=3045, ) @@ -719,8 +733,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3981, - serialized_end=4032, + serialized_start=4123, + serialized_end=4174, ) _KUBERNETESRESOURCESSPEC_PODANNOTATIONSENTRY = _descriptor.Descriptor( @@ -756,8 +770,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4034, - serialized_end=4087, + serialized_start=4176, + serialized_end=4229, ) _KUBERNETESRESOURCESSPEC_SERVICEANNOTATIONSENTRY = _descriptor.Descriptor( @@ -793,8 +807,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4089, - serialized_end=4146, + serialized_start=4231, + serialized_end=4288, ) _KUBERNETESRESOURCESSPEC = _descriptor.Descriptor( @@ -935,8 +949,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2906, - serialized_end=4146, + serialized_start=3048, + serialized_end=4288, ) @@ -973,8 +987,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4288, - serialized_end=4368, + serialized_start=4430, + serialized_end=4510, ) _K8SOBJECTOVERLAY = _descriptor.Descriptor( @@ -1024,8 +1038,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4149, - serialized_end=4368, + serialized_start=4291, + serialized_end=4510, ) @@ -1069,8 +1083,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4371, - serialized_end=4568, + serialized_start=4513, + serialized_end=4710, ) @@ -1114,8 +1128,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4571, - serialized_end=4701, + serialized_start=4713, + serialized_end=4843, ) @@ -1145,8 +1159,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4703, - serialized_end=4743, + serialized_start=4845, + serialized_end=4885, ) @@ -1190,8 +1204,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4745, - serialized_end=4822, + serialized_start=4887, + serialized_end=4964, ) @@ -1228,8 +1242,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4824, - serialized_end=4931, + serialized_start=4966, + serialized_end=5073, ) @@ -1273,8 +1287,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4933, - serialized_end=5028, + serialized_start=5075, + serialized_end=5170, ) @@ -1325,8 +1339,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5031, - serialized_end=5321, + serialized_start=5173, + serialized_end=5463, ) @@ -1356,8 +1370,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5323, - serialized_end=5352, + serialized_start=5465, + serialized_end=5494, ) @@ -1408,8 +1422,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5355, - serialized_end=5617, + serialized_start=5497, + serialized_end=5759, ) @@ -1467,8 +1481,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5620, - serialized_end=5798, + serialized_start=5762, + serialized_end=5940, ) @@ -1505,8 +1519,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5800, - serialized_end=5841, + serialized_start=5942, + serialized_end=5983, ) @@ -1557,8 +1571,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5844, - serialized_end=6047, + serialized_start=5986, + serialized_end=6189, ) @@ -1588,8 +1602,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6049, - serialized_end=6085, + serialized_start=6191, + serialized_end=6227, ) @@ -1647,8 +1661,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6088, - serialized_end=6362, + serialized_start=6230, + serialized_end=6504, ) @@ -1685,8 +1699,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6365, - serialized_end=6581, + serialized_start=6507, + serialized_end=6723, ) @@ -1716,8 +1730,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6583, - serialized_end=6667, + serialized_start=6725, + serialized_end=6809, ) @@ -1754,8 +1768,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6670, - serialized_end=6835, + serialized_start=6812, + serialized_end=6977, ) @@ -1799,8 +1813,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6837, - serialized_end=6909, + serialized_start=6979, + serialized_end=7051, ) @@ -1837,8 +1851,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6911, - serialized_end=6971, + serialized_start=7053, + serialized_end=7113, ) @@ -1875,8 +1889,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6973, - serialized_end=7018, + serialized_start=7115, + serialized_end=7160, ) @@ -1934,8 +1948,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7021, - serialized_end=7339, + serialized_start=7163, + serialized_end=7481, ) @@ -1972,8 +1986,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7342, - serialized_end=7560, + serialized_start=7484, + serialized_end=7702, ) @@ -2010,8 +2024,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7563, - serialized_end=7785, + serialized_start=7705, + serialized_end=7927, ) @@ -2055,8 +2069,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7788, - serialized_end=7922, + serialized_start=7930, + serialized_end=8064, ) @@ -2088,6 +2102,13 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='enabled', full_name='istio.operator.v1alpha1.PodDisruptionBudgetSpec.enabled', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -2100,8 +2121,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7925, - serialized_end=8067, + serialized_start=8067, + serialized_end=8271, ) @@ -2145,8 +2166,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8070, - serialized_end=8254, + serialized_start=8274, + serialized_end=8458, ) @@ -2183,8 +2204,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8256, - serialized_end=8360, + serialized_start=8460, + serialized_end=8564, ) @@ -2263,8 +2284,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8363, - serialized_end=8676, + serialized_start=8567, + serialized_end=8880, ) @@ -2308,8 +2329,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8679, - serialized_end=8807, + serialized_start=8883, + serialized_end=9011, ) @@ -2353,8 +2374,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8810, - serialized_end=8955, + serialized_start=9014, + serialized_end=9159, ) @@ -2391,8 +2412,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9103, - serialized_end=9148, + serialized_start=9307, + serialized_end=9352, ) _RESOURCES_REQUESTSENTRY = _descriptor.Descriptor( @@ -2428,8 +2449,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9150, - serialized_end=9197, + serialized_start=9354, + serialized_end=9401, ) _RESOURCES = _descriptor.Descriptor( @@ -2465,8 +2486,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8958, - serialized_end=9197, + serialized_start=9162, + serialized_end=9401, ) @@ -2503,8 +2524,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9200, - serialized_end=9361, + serialized_start=9404, + serialized_end=9565, ) @@ -2548,8 +2569,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9363, - serialized_end=9490, + serialized_start=9567, + serialized_end=9694, ) @@ -2586,8 +2607,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9963, - serialized_end=10010, + serialized_start=10167, + serialized_end=10214, ) _SERVICESPEC = _descriptor.Descriptor( @@ -2700,8 +2721,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9493, - serialized_end=10010, + serialized_start=9697, + serialized_end=10214, ) @@ -2759,8 +2780,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10013, - serialized_end=10157, + serialized_start=10217, + serialized_end=10361, ) @@ -2790,8 +2811,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10159, - serialized_end=10241, + serialized_start=10363, + serialized_end=10445, ) @@ -2828,8 +2849,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10243, - serialized_end=10335, + serialized_start=10447, + serialized_end=10539, ) @@ -2887,8 +2908,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10337, - serialized_end=10438, + serialized_start=10541, + serialized_end=10642, ) @@ -2925,8 +2946,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10440, - serialized_end=10548, + serialized_start=10644, + serialized_end=10752, ) @@ -3019,8 +3040,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10551, - serialized_end=10966, + serialized_start=10755, + serialized_end=11170, ) @@ -3071,8 +3092,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10968, - serialized_end=11041, + serialized_start=11172, + serialized_end=11245, ) @@ -3109,8 +3130,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11043, - serialized_end=11080, + serialized_start=11247, + serialized_end=11284, ) @@ -3154,8 +3175,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11082, - serialized_end=11196, + serialized_start=11286, + serialized_end=11400, ) @@ -3192,8 +3213,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11198, - serialized_end=11254, + serialized_start=11402, + serialized_end=11458, ) @@ -3216,8 +3237,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11256, - serialized_end=11271, + serialized_start=11460, + serialized_end=11475, ) @@ -3240,8 +3261,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11273, - serialized_end=11297, + serialized_start=11477, + serialized_end=11501, ) @@ -3264,8 +3285,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11299, - serialized_end=11321, + serialized_start=11503, + serialized_end=11525, ) @@ -3288,8 +3309,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11323, - serialized_end=11343, + serialized_start=11527, + serialized_end=11547, ) _ISTIOOPERATORSPEC_ADDONCOMPONENTSENTRY.fields_by_name['value'].message_type = _EXTERNALCOMPONENTSPEC @@ -3316,6 +3337,7 @@ _BASECOMPONENTSPEC.fields_by_name['enabled'].message_type = _TYPEBOOLVALUEFORPB _BASECOMPONENTSPEC.fields_by_name['k8s'].message_type = _KUBERNETESRESOURCESSPEC _COMPONENTSPEC.fields_by_name['enabled'].message_type = _TYPEBOOLVALUEFORPB +_COMPONENTSPEC.fields_by_name['autoScaleEnabled'].message_type = _TYPEBOOLVALUEFORPB _COMPONENTSPEC.fields_by_name['tag'].message_type = _TYPEINTERFACE _COMPONENTSPEC.fields_by_name['spec'].message_type = _TYPEINTERFACE _COMPONENTSPEC.fields_by_name['k8s'].message_type = _KUBERNETESRESOURCESSPEC @@ -3326,6 +3348,7 @@ _GATEWAYSPEC_LABELENTRY.containing_type = _GATEWAYSPEC _GATEWAYSPEC.fields_by_name['enabled'].message_type = _TYPEBOOLVALUEFORPB _GATEWAYSPEC.fields_by_name['label'].message_type = _GATEWAYSPEC_LABELENTRY +_GATEWAYSPEC.fields_by_name['autoScaleEnabled'].message_type = _TYPEBOOLVALUEFORPB _GATEWAYSPEC.fields_by_name['tag'].message_type = _TYPEINTERFACE _GATEWAYSPEC.fields_by_name['k8s'].message_type = _KUBERNETESRESOURCESSPEC _KUBERNETESRESOURCESSPEC_NODESELECTORENTRY.containing_type = _KUBERNETESRESOURCESSPEC @@ -3384,6 +3407,7 @@ _PODANTIAFFINITY.fields_by_name['preferredDuringSchedulingIgnoredDuringExecution'].message_type = _WEIGHTEDPODAFFINITYTERM _PODAFFINITYTERM.fields_by_name['labelSelector'].message_type = k8s_dot_io_dot_apimachinery_dot_pkg_dot_apis_dot_meta_dot_v1_dot_generated__pb2._LABELSELECTOR _PODDISRUPTIONBUDGETSPEC.fields_by_name['selector'].message_type = k8s_dot_io_dot_apimachinery_dot_pkg_dot_apis_dot_meta_dot_v1_dot_generated__pb2._LABELSELECTOR +_PODDISRUPTIONBUDGETSPEC.fields_by_name['enabled'].message_type = _TYPEBOOLVALUEFORPB _PODSMETRICSOURCE.fields_by_name['targetAverageValue'].message_type = _TYPEINTORSTRINGFORPB _PODSMETRICSOURCE.fields_by_name['selector'].message_type = k8s_dot_io_dot_apimachinery_dot_pkg_dot_apis_dot_meta_dot_v1_dot_generated__pb2._LABELSELECTOR _PREFERREDSCHEDULINGTERM.fields_by_name['preference'].message_type = _NODESELECTORTERM From 6b7000baddf98935e26f83390e5e25ea436778fe Mon Sep 17 00:00:00 2001 From: carolynhu Date: Tue, 10 Nov 2020 10:20:50 -0800 Subject: [PATCH 2/5] move autoscaleEnabled to k8s spec --- .../v1alpha1/istio.operator.v1alpha1.pb.html | 33 +- operator/v1alpha1/operator.pb.go | 498 +++++++++--------- operator/v1alpha1/operator.proto | 7 +- .../operator/v1alpha1/operator_pb2.py | 284 +++++----- 4 files changed, 399 insertions(+), 423 deletions(-) diff --git a/operator/v1alpha1/istio.operator.v1alpha1.pb.html b/operator/v1alpha1/istio.operator.v1alpha1.pb.html index 12262434bc9..b9f31b8ad19 100644 --- a/operator/v1alpha1/istio.operator.v1alpha1.pb.html +++ b/operator/v1alpha1/istio.operator.v1alpha1.pb.html @@ -386,17 +386,6 @@

ComponentSpec

Namespace for the component.

- - -No - - - -autoScaleEnabled -TypeBoolValueForPB - -

Check whether autoScale is enabled.

- No @@ -585,17 +574,6 @@

GatewaySpec

Labels for the gateway.

- - -No - - - -autoScaleEnabled -TypeBoolValueForPB - -

Check whether autoScale is enabled.

- No @@ -839,6 +817,17 @@

KubernetesResourcesSpec

k8s pod security context https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod

+ + +No + + + +autoScaleEnabled +TypeBoolValueForPB + +

Check whether autoScale is enabled.

+ No diff --git a/operator/v1alpha1/operator.pb.go b/operator/v1alpha1/operator.pb.go index c3f930d71d3..731e8f378d4 100644 --- a/operator/v1alpha1/operator.pb.go +++ b/operator/v1alpha1/operator.pb.go @@ -477,8 +477,6 @@ type ComponentSpec struct { Enabled *BoolValueForPB `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` // Namespace for the component. Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` - // Check whether autoScale is enabled. - AutoScaleEnabled *BoolValueForPB `protobuf:"bytes,3,opt,name=autoScaleEnabled,proto3" json:"autoScaleEnabled,omitempty"` // Hub for the component (overrides top level hub setting). Hub string `protobuf:"bytes,10,opt,name=hub,proto3" json:"hub,omitempty"` // Tag for the component (overrides top level tag setting). @@ -524,7 +522,6 @@ func (m *ComponentSpec) GetNamespace() string { return "" } - func (m *ComponentSpec) GetHub() string { if m != nil { return m.Hub @@ -624,8 +621,6 @@ type GatewaySpec struct { Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` // Labels for the gateway. Label map[string]string `protobuf:"bytes,4,rep,name=label,proto3" json:"label,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // Check whether autoScale is enabled. - AutoScaleEnabled *BoolValueForPB `protobuf:"bytes,5,opt,name=autoScaleEnabled,proto3" json:"autoScaleEnabled,omitempty"` // Hub for the component (overrides top level hub setting). Hub string `protobuf:"bytes,10,opt,name=hub,proto3" json:"hub,omitempty"` // Tag for the component (overrides top level tag setting). @@ -683,7 +678,6 @@ func (m *GatewaySpec) GetLabel() map[string]string { return nil } - func (m *GatewaySpec) GetHub() string { if m != nil { return m.Hub @@ -750,6 +744,8 @@ type KubernetesResourcesSpec struct { // k8s pod security context // [https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod) SecurityContext *PodSecurityContext `protobuf:"bytes,16,opt,name=securityContext,proto3" json:"securityContext,omitempty"` + // Check whether autoScale is enabled. + AutoScaleEnabled *BoolValueForPB `protobuf:"bytes,17,opt,name=autoScaleEnabled,proto3" json:"autoScaleEnabled,omitempty"` // Overlays for k8s resources in rendered manifests. Overlays []*K8SObjectOverlay `protobuf:"bytes,100,rep,name=overlays,proto3" json:"overlays,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` @@ -893,6 +889,7 @@ func (m *KubernetesResourcesSpec) GetSecurityContext() *PodSecurityContext { return nil } + func (m *KubernetesResourcesSpec) GetOverlays() []*K8SObjectOverlay { if m != nil { return m.Overlays @@ -3535,253 +3532,252 @@ func init() { func init() { proto.RegisterFile("operator/v1alpha1/operator.proto", fileDescriptor_8023ebf2dcfea843) } var fileDescriptor_8023ebf2dcfea843 = []byte{ - // 3955 bytes of a gzipped FileDescriptorProto + // 3950 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0x4d, 0x6c, 0x1c, 0x47, - 0x76, 0xf6, 0xfc, 0x90, 0x1c, 0xbe, 0xe1, 0xcf, 0xa8, 0x44, 0x49, 0x13, 0xae, 0x2d, 0xcb, 0x2d, - 0x5b, 0x2b, 0xcb, 0xde, 0xa1, 0x25, 0x1b, 0x8e, 0xd6, 0x1b, 0x7b, 0x97, 0xa2, 0x46, 0x12, 0x65, + 0x76, 0xf6, 0xfc, 0x90, 0x1c, 0xbe, 0xe1, 0xcf, 0xb0, 0x44, 0x49, 0x13, 0xee, 0x5a, 0x96, 0x5b, + 0xb6, 0x56, 0x96, 0x9d, 0xa1, 0x25, 0x1b, 0x8e, 0xd6, 0x1b, 0x7b, 0x97, 0xa2, 0x46, 0x12, 0x65, 0x89, 0x9c, 0xad, 0xa1, 0x6c, 0xec, 0xc6, 0xeb, 0x41, 0xb1, 0xbb, 0x66, 0xa6, 0xc3, 0x9e, 0xae, - 0xde, 0xae, 0x1a, 0x8a, 0xb3, 0xc8, 0x21, 0x97, 0x04, 0xc8, 0x21, 0x40, 0x4e, 0x01, 0x36, 0x87, - 0x1c, 0x82, 0x00, 0x39, 0x04, 0xc9, 0xde, 0xe3, 0xe4, 0xb0, 0x48, 0x02, 0x24, 0xb7, 0x5c, 0x73, - 0x08, 0x10, 0x38, 0x40, 0xce, 0xc9, 0x29, 0xa7, 0x04, 0x41, 0xfd, 0x74, 0x4f, 0xf7, 0x4c, 0x37, - 0x87, 0x43, 0x2b, 0x86, 0x0f, 0x7b, 0xe2, 0xd4, 0xab, 0x7a, 0x5f, 0x55, 0xbd, 0x7a, 0xf5, 0xfe, - 0xaa, 0x09, 0xd7, 0x58, 0x40, 0x43, 0x22, 0x58, 0xb8, 0x75, 0x7c, 0x9b, 0x78, 0x41, 0x9f, 0xdc, - 0xde, 0x8a, 0x28, 0x8d, 0x20, 0x64, 0x82, 0xa1, 0x2b, 0x2e, 0x17, 0x2e, 0x6b, 0xc4, 0xd4, 0x68, - 0xdc, 0xe6, 0xaf, 0xf5, 0x18, 0xeb, 0x79, 0x74, 0x4b, 0x0d, 0x3b, 0x1c, 0x76, 0xb7, 0x88, 0x3f, - 0xd2, 0x3c, 0x9b, 0xef, 0x1d, 0xdd, 0xe5, 0x0d, 0x97, 0x6d, 0x91, 0xc0, 0x1d, 0x10, 0xbb, 0xef, - 0xfa, 0x34, 0x1c, 0x6d, 0x05, 0x47, 0x3d, 0x49, 0xe0, 0x5b, 0x03, 0x2a, 0xc8, 0xd6, 0xf1, 0xed, - 0xad, 0x1e, 0xf5, 0x25, 0x26, 0x75, 0x0c, 0xd7, 0x46, 0x8f, 0xf5, 0x98, 0xfa, 0xb9, 0x25, 0x7f, - 0x69, 0xaa, 0xf5, 0xcb, 0x45, 0xb8, 0xb0, 0x2b, 0x97, 0xb0, 0x6f, 0x56, 0xd0, 0x0e, 0xa8, 0x8d, - 0xea, 0xb0, 0x14, 0x84, 0xac, 0xeb, 0x7a, 0xb4, 0x0e, 0xd7, 0x0a, 0x37, 0x97, 0x71, 0xd4, 0x44, - 0xef, 0xc0, 0x86, 0xeb, 0x73, 0x41, 0x3c, 0xaf, 0x13, 0x10, 0xfb, 0x88, 0xf4, 0x68, 0x27, 0x20, - 0xa2, 0x5f, 0xaf, 0xaa, 0x61, 0xc8, 0xf4, 0xb5, 0x74, 0x57, 0x8b, 0x88, 0x3e, 0xaa, 0x41, 0xa9, - 0x3f, 0x3c, 0xac, 0xaf, 0xa8, 0x01, 0xf2, 0x27, 0xba, 0x0b, 0x25, 0x41, 0x7a, 0xf5, 0xd5, 0x6b, - 0x85, 0x9b, 0xd5, 0x3b, 0x37, 0x1a, 0x39, 0x12, 0x68, 0x1c, 0x8c, 0x02, 0xba, 0xeb, 0x0b, 0x1a, - 0x76, 0x89, 0x4d, 0xb1, 0x64, 0x41, 0x6f, 0xc1, 0x7a, 0x48, 0x39, 0x1b, 0x86, 0x36, 0xed, 0xf0, - 0x61, 0xb7, 0xeb, 0x9e, 0xd4, 0xd7, 0x24, 0xee, 0xbd, 0x62, 0xbd, 0x80, 0xd7, 0xa2, 0xae, 0xb6, - 0xea, 0x41, 0x2f, 0xc3, 0xb2, 0x4f, 0x06, 0x94, 0x07, 0xc4, 0xa6, 0xf5, 0x75, 0x35, 0xfd, 0x98, - 0x80, 0x36, 0xa1, 0x12, 0xd2, 0x63, 0x97, 0xbb, 0xcc, 0xaf, 0xd7, 0x54, 0x67, 0xdc, 0x46, 0x2d, - 0xa8, 0x0e, 0x28, 0xef, 0x77, 0x6c, 0xe6, 0x77, 0xdd, 0x5e, 0xfd, 0xa6, 0x5a, 0xe8, 0xd6, 0xa9, - 0x0b, 0x7d, 0x4a, 0x82, 0xb6, 0x08, 0x5d, 0xbf, 0x37, 0x5e, 0x31, 0x48, 0x8c, 0x1d, 0x05, 0x81, - 0xf6, 0x00, 0x6c, 0x36, 0x08, 0x98, 0x4f, 0x7d, 0xc1, 0xeb, 0x77, 0x14, 0x60, 0x23, 0x17, 0x50, - 0x1d, 0xc8, 0x4e, 0x34, 0xbe, 0x4d, 0x85, 0x3c, 0x14, 0x9c, 0x40, 0x40, 0x3e, 0xd4, 0x88, 0xe3, - 0x30, 0xbf, 0x93, 0x40, 0x7d, 0xf7, 0x5a, 0xe9, 0x66, 0xf5, 0xce, 0xf7, 0x4f, 0x47, 0x4d, 0x1e, - 0x73, 0x63, 0x5b, 0x42, 0xc4, 0xf3, 0xf0, 0xa6, 0x2f, 0xc2, 0x91, 0x12, 0xe5, 0x3a, 0x49, 0xf7, - 0xa0, 0x87, 0xb0, 0x78, 0x4c, 0xbc, 0x21, 0xe5, 0x75, 0xe7, 0x7c, 0xc2, 0x30, 0xec, 0xe8, 0x73, - 0x40, 0x43, 0xff, 0x98, 0x78, 0xae, 0x23, 0x55, 0xb3, 0x63, 0x40, 0xe9, 0xf9, 0x40, 0x2f, 0x24, - 0xa0, 0x3e, 0x51, 0x48, 0x9b, 0x21, 0x6c, 0x64, 0xed, 0x4a, 0x6a, 0xe1, 0x11, 0x1d, 0xd5, 0x0b, - 0x5a, 0x0b, 0x8f, 0xe8, 0x08, 0xdd, 0x87, 0x05, 0x35, 0x7b, 0xbd, 0x38, 0xe3, 0x34, 0x9a, 0x27, - 0x82, 0x86, 0x3e, 0xf1, 0xc6, 0x07, 0x22, 0x4f, 0x43, 0x33, 0x7f, 0x50, 0xbc, 0x5b, 0xb0, 0xbe, - 0x28, 0xc3, 0xea, 0xae, 0x56, 0xfc, 0xb6, 0x20, 0x62, 0xc8, 0x51, 0x13, 0x16, 0xb9, 0xfa, 0xa5, - 0x26, 0x5c, 0xbb, 0xf3, 0x9d, 0xfc, 0x43, 0x49, 0xf2, 0x35, 0xf4, 0x1f, 0x6c, 0x98, 0xe5, 0x35, - 0x1c, 0x50, 0xce, 0x49, 0x8f, 0xd6, 0x4b, 0xfa, 0x1a, 0x9a, 0x26, 0xea, 0x42, 0x2d, 0x3e, 0xf9, - 0x8e, 0x99, 0xaa, 0xa8, 0xce, 0xff, 0x7b, 0x67, 0x9c, 0x6a, 0xbc, 0x1b, 0xd5, 0x56, 0x52, 0xc2, - 0xeb, 0x76, 0x9a, 0xba, 0xf9, 0x7b, 0x05, 0x58, 0xfd, 0x84, 0x86, 0xf2, 0x56, 0xb4, 0xe3, 0x35, - 0x1d, 0x6b, 0x82, 0x11, 0x66, 0xd4, 0x4c, 0x6c, 0xba, 0xf8, 0x55, 0x36, 0xbd, 0x01, 0x0b, 0x34, - 0x0c, 0x59, 0x58, 0x2f, 0x2b, 0x78, 0xdd, 0xd8, 0x3c, 0x81, 0x8d, 0xac, 0x15, 0x67, 0x9c, 0xeb, - 0xe3, 0xf4, 0xb9, 0xbe, 0x77, 0xc6, 0x55, 0xa4, 0x76, 0x99, 0x3c, 0xdd, 0xcf, 0x61, 0xd1, 0x6c, - 0xbd, 0x02, 0xe5, 0xbd, 0xfd, 0xbd, 0x66, 0xed, 0x25, 0xb4, 0x02, 0x95, 0x67, 0xad, 0xfb, 0xdb, - 0x07, 0xbb, 0x7b, 0x0f, 0x6b, 0x05, 0xb4, 0x0e, 0x55, 0xdc, 0xdc, 0xd9, 0xdf, 0xdb, 0xd9, 0x7d, - 0x22, 0x09, 0x45, 0x54, 0x85, 0xa5, 0x47, 0xcd, 0xed, 0x27, 0x07, 0x8f, 0x7e, 0x54, 0x2b, 0xa1, - 0x65, 0x58, 0x68, 0x62, 0xbc, 0x8f, 0x6b, 0x65, 0x74, 0x11, 0xd6, 0xb7, 0x77, 0x0e, 0x76, 0xf7, - 0xf7, 0x3a, 0xb8, 0xf9, 0xc3, 0x67, 0xbb, 0xb8, 0x79, 0xbf, 0xb6, 0x60, 0xfd, 0xa2, 0x0c, 0x97, - 0x32, 0x2f, 0x3c, 0xfa, 0x08, 0xca, 0x87, 0x84, 0xd3, 0xfa, 0x2b, 0x6a, 0x23, 0xb7, 0x72, 0x37, - 0x72, 0x8f, 0x70, 0x9a, 0x56, 0x4e, 0xc5, 0x87, 0x7e, 0x03, 0x16, 0x02, 0xd7, 0x63, 0xa2, 0x7e, - 0x75, 0x86, 0xa5, 0x9d, 0xd0, 0x6c, 0xc5, 0x24, 0xad, 0xb4, 0xed, 0xbb, 0xf5, 0x1b, 0x73, 0xf1, - 0x4a, 0x16, 0xf4, 0x31, 0xac, 0xaa, 0xd1, 0x4e, 0x27, 0xa4, 0x03, 0x26, 0x68, 0xfd, 0xdb, 0x73, - 0x61, 0xac, 0x68, 0x66, 0xac, 0x78, 0xd1, 0x3e, 0xd4, 0x5c, 0xbf, 0x17, 0x52, 0xce, 0x3b, 0x3d, - 0x22, 0xe8, 0x73, 0x32, 0xe2, 0xf5, 0x9b, 0x4a, 0xd3, 0x5f, 0xcf, 0xc5, 0x7b, 0xa8, 0x07, 0x2a, - 0xb4, 0x75, 0xc3, 0x6d, 0x68, 0x1c, 0x3d, 0x85, 0x75, 0x3a, 0x81, 0xf7, 0xe6, 0x1c, 0x78, 0x6b, - 0x34, 0x05, 0xf7, 0xb8, 0x5c, 0x79, 0xb5, 0x76, 0xed, 0x71, 0xb9, 0x72, 0xad, 0xf6, 0xda, 0xe3, - 0x72, 0xe5, 0xb5, 0x9a, 0xf5, 0xb8, 0x5c, 0xb1, 0x6a, 0xd7, 0x1f, 0x97, 0x2b, 0xd7, 0x6b, 0xaf, - 0x3f, 0x2e, 0x57, 0x5e, 0xaf, 0xbd, 0xf1, 0xb8, 0x5c, 0x79, 0xa3, 0x76, 0x03, 0x2f, 0xd9, 0xae, + 0xde, 0xae, 0x1a, 0x8a, 0xb3, 0xc8, 0x21, 0x97, 0x04, 0xc8, 0x21, 0x40, 0x4e, 0x09, 0x92, 0x43, + 0x0e, 0x41, 0x80, 0x1c, 0x82, 0x64, 0xef, 0xf1, 0x06, 0xc8, 0x22, 0x09, 0x90, 0xdc, 0x72, 0xcd, + 0x21, 0x40, 0xe0, 0x43, 0xee, 0x39, 0xe5, 0x94, 0x20, 0xa8, 0x9f, 0xee, 0xe9, 0x9e, 0xe9, 0xe6, + 0x68, 0x68, 0x66, 0xb1, 0x87, 0x9c, 0x38, 0xf5, 0xaa, 0xde, 0x57, 0x55, 0xaf, 0x5e, 0xbd, 0xbf, + 0x6a, 0xc2, 0x75, 0x16, 0xd0, 0x90, 0x08, 0x16, 0x6e, 0x9f, 0xdc, 0x21, 0x5e, 0xd0, 0x27, 0x77, + 0xb6, 0x23, 0x4a, 0x23, 0x08, 0x99, 0x60, 0xe8, 0xaa, 0xcb, 0x85, 0xcb, 0x1a, 0x31, 0x35, 0x1a, + 0xb7, 0xf5, 0x2b, 0x3d, 0xc6, 0x7a, 0x1e, 0xdd, 0x56, 0xc3, 0x8e, 0x86, 0xdd, 0x6d, 0xe2, 0x8f, + 0x34, 0xcf, 0xd6, 0xfb, 0xc7, 0xf7, 0x78, 0xc3, 0x65, 0xdb, 0x24, 0x70, 0x07, 0xc4, 0xee, 0xbb, + 0x3e, 0x0d, 0x47, 0xdb, 0xc1, 0x71, 0x4f, 0x12, 0xf8, 0xf6, 0x80, 0x0a, 0xb2, 0x7d, 0x72, 0x67, + 0xbb, 0x47, 0x7d, 0x89, 0x49, 0x1d, 0xc3, 0xb5, 0xd9, 0x63, 0x3d, 0xa6, 0x7e, 0x6e, 0xcb, 0x5f, + 0x9a, 0x6a, 0xfd, 0x7c, 0x11, 0x36, 0xf6, 0xe4, 0x12, 0x0e, 0xcc, 0x0a, 0xda, 0x01, 0xb5, 0x51, + 0x1d, 0x96, 0x82, 0x90, 0x75, 0x5d, 0x8f, 0xd6, 0xe1, 0x7a, 0xe1, 0xd6, 0x32, 0x8e, 0x9a, 0xe8, + 0x5d, 0xd8, 0x74, 0x7d, 0x2e, 0x88, 0xe7, 0x75, 0x02, 0x62, 0x1f, 0x93, 0x1e, 0xed, 0x04, 0x44, + 0xf4, 0xeb, 0x55, 0x35, 0x0c, 0x99, 0xbe, 0x96, 0xee, 0x6a, 0x11, 0xd1, 0x47, 0x35, 0x28, 0xf5, + 0x87, 0x47, 0xf5, 0x15, 0x35, 0x40, 0xfe, 0x44, 0xf7, 0xa0, 0x24, 0x48, 0xaf, 0xbe, 0x7a, 0xbd, + 0x70, 0xab, 0x7a, 0xf7, 0x66, 0x23, 0x47, 0x02, 0x8d, 0xc3, 0x51, 0x40, 0xf7, 0x7c, 0x41, 0xc3, + 0x2e, 0xb1, 0x29, 0x96, 0x2c, 0xe8, 0x6d, 0x58, 0x0f, 0x29, 0x67, 0xc3, 0xd0, 0xa6, 0x1d, 0x3e, + 0xec, 0x76, 0xdd, 0xd3, 0xfa, 0x9a, 0xc4, 0xbd, 0x5f, 0xac, 0x17, 0xf0, 0x5a, 0xd4, 0xd5, 0x56, + 0x3d, 0xe8, 0x9b, 0xb0, 0xec, 0x93, 0x01, 0xe5, 0x01, 0xb1, 0x69, 0x7d, 0x5d, 0x4d, 0x3f, 0x26, + 0xa0, 0x2d, 0xa8, 0x84, 0xf4, 0xc4, 0xe5, 0x2e, 0xf3, 0xeb, 0x35, 0xd5, 0x19, 0xb7, 0x51, 0x0b, + 0xaa, 0x03, 0xca, 0xfb, 0x1d, 0x9b, 0xf9, 0x5d, 0xb7, 0x57, 0xbf, 0xa5, 0x16, 0xba, 0x7d, 0xe6, + 0x42, 0x9f, 0x91, 0xa0, 0x2d, 0x42, 0xd7, 0xef, 0x8d, 0x57, 0x0c, 0x12, 0x63, 0x57, 0x41, 0xa0, + 0x7d, 0x00, 0x9b, 0x0d, 0x02, 0xe6, 0x53, 0x5f, 0xf0, 0xfa, 0x5d, 0x05, 0xd8, 0xc8, 0x05, 0x54, + 0x07, 0xb2, 0x1b, 0x8d, 0x6f, 0x53, 0x21, 0x0f, 0x05, 0x27, 0x10, 0x90, 0x0f, 0x35, 0xe2, 0x38, + 0xcc, 0xef, 0x24, 0x50, 0xdf, 0xbb, 0x5e, 0xba, 0x55, 0xbd, 0xfb, 0xdd, 0xb3, 0x51, 0x93, 0xc7, + 0xdc, 0xd8, 0x91, 0x10, 0xf1, 0x3c, 0xbc, 0xe9, 0x8b, 0x70, 0xa4, 0x44, 0xb9, 0x4e, 0xd2, 0x3d, + 0xe8, 0x11, 0x2c, 0x9e, 0x10, 0x6f, 0x48, 0x79, 0xdd, 0x39, 0x9f, 0x30, 0x0c, 0x3b, 0xfa, 0x02, + 0xd0, 0xd0, 0x3f, 0x21, 0x9e, 0xeb, 0x48, 0xd5, 0xec, 0x18, 0x50, 0x7a, 0x3e, 0xd0, 0x8d, 0x04, + 0xd4, 0xa7, 0x0a, 0x69, 0x2b, 0x84, 0xcd, 0xac, 0x5d, 0x49, 0x2d, 0x3c, 0xa6, 0xa3, 0x7a, 0x41, + 0x6b, 0xe1, 0x31, 0x1d, 0xa1, 0x07, 0xb0, 0xa0, 0x66, 0xaf, 0x17, 0x67, 0x9c, 0x46, 0xf3, 0x54, + 0xd0, 0xd0, 0x27, 0xde, 0xf8, 0x40, 0xe4, 0x69, 0x68, 0xe6, 0x0f, 0x8b, 0xf7, 0x0a, 0xd6, 0x97, + 0x65, 0x58, 0xdd, 0xd3, 0x8a, 0xdf, 0x16, 0x44, 0x0c, 0x39, 0x6a, 0xc2, 0x22, 0x57, 0xbf, 0xd4, + 0x84, 0x6b, 0x77, 0x7f, 0x35, 0xff, 0x50, 0x92, 0x7c, 0x0d, 0xfd, 0x07, 0x1b, 0x66, 0x79, 0x0d, + 0x07, 0x94, 0x73, 0xd2, 0xa3, 0xf5, 0x92, 0xbe, 0x86, 0xa6, 0x89, 0xba, 0x50, 0x8b, 0x4f, 0xbe, + 0x63, 0xa6, 0x2a, 0xaa, 0xf3, 0xff, 0xce, 0x4b, 0x4e, 0x35, 0xde, 0x8d, 0x6a, 0x2b, 0x29, 0xe1, + 0x75, 0x3b, 0x4d, 0xdd, 0xfa, 0xdd, 0x02, 0xac, 0x7e, 0x4a, 0x43, 0x79, 0x2b, 0xda, 0xf1, 0x9a, + 0x4e, 0x34, 0xc1, 0x08, 0x33, 0x6a, 0x26, 0x36, 0x5d, 0xfc, 0x3a, 0x9b, 0xde, 0x84, 0x05, 0x1a, + 0x86, 0x2c, 0xac, 0x97, 0x15, 0xbc, 0x6e, 0x6c, 0x9d, 0xc2, 0x66, 0xd6, 0x8a, 0x33, 0xce, 0xf5, + 0x49, 0xfa, 0x5c, 0xdf, 0x7f, 0xc9, 0x55, 0xa4, 0x76, 0x99, 0x3c, 0xdd, 0x2f, 0x60, 0xd1, 0x6c, + 0xbd, 0x02, 0xe5, 0xfd, 0x83, 0xfd, 0x66, 0xed, 0x15, 0xb4, 0x02, 0x95, 0xe7, 0xad, 0x07, 0x3b, + 0x87, 0x7b, 0xfb, 0x8f, 0x6a, 0x05, 0xb4, 0x0e, 0x55, 0xdc, 0xdc, 0x3d, 0xd8, 0xdf, 0xdd, 0x7b, + 0x2a, 0x09, 0x45, 0x54, 0x85, 0xa5, 0xc7, 0xcd, 0x9d, 0xa7, 0x87, 0x8f, 0x7f, 0x50, 0x2b, 0xa1, + 0x65, 0x58, 0x68, 0x62, 0x7c, 0x80, 0x6b, 0x65, 0x74, 0x09, 0xd6, 0x77, 0x76, 0x0f, 0xf7, 0x0e, + 0xf6, 0x3b, 0xb8, 0xf9, 0xfd, 0xe7, 0x7b, 0xb8, 0xf9, 0xa0, 0xb6, 0x60, 0xfd, 0xb4, 0x0c, 0x97, + 0x33, 0x2f, 0x3c, 0xfa, 0x18, 0xca, 0x47, 0x84, 0xd3, 0xfa, 0xab, 0x6a, 0x23, 0xb7, 0x73, 0x37, + 0x72, 0x9f, 0x70, 0x9a, 0x56, 0x4e, 0xc5, 0x87, 0x7e, 0x1d, 0x16, 0x02, 0xd7, 0x63, 0xa2, 0x7e, + 0x6d, 0x86, 0xa5, 0x9d, 0xd0, 0x6c, 0xc5, 0x24, 0xad, 0xb4, 0xed, 0xbb, 0xf5, 0x9b, 0x73, 0xf1, + 0x4a, 0x16, 0xf4, 0x09, 0xac, 0xaa, 0xd1, 0x4e, 0x27, 0xa4, 0x03, 0x26, 0x68, 0xfd, 0x5b, 0x73, + 0x61, 0xac, 0x68, 0x66, 0xac, 0x78, 0xd1, 0x01, 0xd4, 0x5c, 0xbf, 0x17, 0x52, 0xce, 0x3b, 0x3d, + 0x22, 0xe8, 0x0b, 0x32, 0xe2, 0xf5, 0x5b, 0x4a, 0xd3, 0xdf, 0xc8, 0xc5, 0x7b, 0xa4, 0x07, 0x2a, + 0xb4, 0x75, 0xc3, 0x6d, 0x68, 0x1c, 0x3d, 0x83, 0x75, 0x3a, 0x81, 0xf7, 0xd6, 0x1c, 0x78, 0x6b, + 0x34, 0x05, 0xf7, 0xa4, 0x5c, 0x79, 0xad, 0x76, 0xfd, 0x49, 0xb9, 0x72, 0xbd, 0xf6, 0xfa, 0x93, + 0x72, 0xe5, 0xf5, 0x9a, 0xf5, 0xa4, 0x5c, 0xb1, 0x6a, 0x37, 0x9e, 0x94, 0x2b, 0x37, 0x6a, 0x6f, + 0x3c, 0x29, 0x57, 0xde, 0xa8, 0xbd, 0xf9, 0xa4, 0x5c, 0x79, 0xb3, 0x76, 0x13, 0x2f, 0xd9, 0xae, 0x20, 0x0e, 0xf5, 0xf0, 0x62, 0xc0, 0x3c, 0xd7, 0x1e, 0xe1, 0x65, 0x41, 0x3d, 0x3a, 0xa0, 0xf2, 0xe2, 0x2d, 0xf6, 0x88, 0xe7, 0xd1, 0x11, 0x06, 0x9f, 0x39, 0xb4, 0x43, 0x7a, 0xd4, 0x17, 0x78, - 0x21, 0x08, 0xd9, 0xc9, 0x08, 0xd7, 0xb8, 0xeb, 0x50, 0x9b, 0x84, 0x1d, 0xd7, 0xff, 0x2d, 0x6a, - 0x0b, 0x16, 0x5a, 0x7f, 0x52, 0x80, 0x0b, 0x53, 0x67, 0x8e, 0x9a, 0xb0, 0x44, 0x7d, 0x72, 0xe8, - 0x51, 0x47, 0xdd, 0x86, 0xea, 0x9d, 0xb7, 0x4e, 0x35, 0xa7, 0xf7, 0x18, 0xf3, 0x94, 0xcd, 0x7c, - 0xc0, 0xc2, 0xd6, 0x3d, 0x1c, 0xf1, 0xa2, 0x7b, 0x50, 0x3a, 0xba, 0x1b, 0xb9, 0xa8, 0x77, 0x72, - 0x21, 0x3e, 0x1e, 0x1e, 0xd2, 0xd0, 0xa7, 0x82, 0x72, 0x6c, 0xbc, 0x2e, 0xd7, 0x0a, 0x70, 0x74, - 0x97, 0x5b, 0x3f, 0x2f, 0xc1, 0xea, 0xff, 0xcb, 0xe2, 0x52, 0x2e, 0xbd, 0x38, 0xe9, 0xd2, 0x3f, - 0x85, 0x1a, 0x19, 0x0a, 0xd6, 0xb6, 0x89, 0x47, 0x9b, 0x66, 0xb6, 0xd2, 0xfc, 0xb3, 0x4d, 0x81, - 0x44, 0x21, 0x0c, 0x4c, 0x85, 0x30, 0xd5, 0xf9, 0x43, 0x98, 0x0f, 0xa0, 0xcc, 0x03, 0x6a, 0xcf, - 0xbc, 0x93, 0x69, 0x56, 0xc5, 0xf3, 0x42, 0xce, 0xe6, 0x9f, 0x8a, 0x70, 0x29, 0xd3, 0xa3, 0x7d, - 0x3d, 0x67, 0x14, 0x6d, 0x1f, 0xce, 0xb1, 0xfd, 0x57, 0x00, 0xec, 0x3e, 0x09, 0x85, 0x8e, 0x38, - 0xaf, 0x6a, 0x68, 0x45, 0x51, 0x81, 0xe6, 0xdb, 0xb0, 0xc8, 0xed, 0x3e, 0x1d, 0x90, 0xfa, 0x75, - 0x05, 0xbe, 0xd1, 0xd0, 0x21, 0x74, 0x23, 0x0a, 0xa1, 0x1b, 0xdb, 0xfe, 0x08, 0x9b, 0x31, 0x2f, - 0x44, 0x96, 0xff, 0x59, 0x82, 0x6a, 0xc2, 0x36, 0x7c, 0x3d, 0x12, 0x44, 0x50, 0x96, 0x0d, 0x13, - 0x11, 0xa8, 0xdf, 0xa8, 0x09, 0x0b, 0x1e, 0x39, 0xa4, 0x5e, 0xbd, 0xac, 0x2c, 0xd9, 0xd6, 0x59, - 0x2c, 0x59, 0xe3, 0x89, 0xe4, 0xd0, 0x7e, 0x5f, 0x73, 0x67, 0x5e, 0xa0, 0x85, 0x6f, 0xda, 0x05, - 0x7a, 0x01, 0x07, 0xb7, 0x79, 0x17, 0x60, 0xbc, 0xfb, 0x8c, 0x18, 0x62, 0x23, 0x19, 0x43, 0x2c, - 0x27, 0xa3, 0x81, 0x7f, 0xaf, 0xc2, 0x95, 0x1c, 0x68, 0xf4, 0x21, 0x54, 0x48, 0xb7, 0xeb, 0xfa, - 0xae, 0x18, 0x99, 0xf3, 0x7f, 0x2d, 0x77, 0x79, 0xdb, 0x66, 0x20, 0x8e, 0x59, 0xd0, 0x6d, 0x28, - 0x51, 0xff, 0xd8, 0x84, 0x71, 0xaf, 0xe6, 0x87, 0xa3, 0xfe, 0xf1, 0x27, 0x24, 0xc4, 0x72, 0x2c, - 0xda, 0x87, 0x4a, 0x3f, 0x20, 0x1d, 0x75, 0xa3, 0x4a, 0x33, 0xc2, 0x9d, 0x47, 0x2c, 0x74, 0x7f, - 0xc6, 0x7c, 0x41, 0xbc, 0x16, 0x73, 0xb6, 0x87, 0x82, 0x71, 0x79, 0x42, 0x2a, 0x11, 0xc0, 0x4b, - 0xfd, 0x80, 0xa8, 0x2d, 0xdc, 0x82, 0x0b, 0xee, 0x40, 0x25, 0x75, 0x43, 0x99, 0xe1, 0x29, 0x3f, - 0x65, 0x02, 0xb1, 0x75, 0xd5, 0xd1, 0x1a, 0x7a, 0x5e, 0x4b, 0x91, 0x51, 0x0f, 0x56, 0x95, 0xb7, - 0xe2, 0xd4, 0x53, 0x7e, 0xa9, 0xbe, 0xa0, 0x56, 0x7e, 0x6f, 0xde, 0x23, 0x69, 0xec, 0x31, 0x87, - 0xb6, 0x0d, 0x88, 0xd6, 0xc7, 0x15, 0x3f, 0x41, 0x42, 0x0e, 0x5c, 0x0a, 0x98, 0xd3, 0x71, 0x5c, - 0x1e, 0x0e, 0x03, 0xe1, 0x32, 0xbf, 0x73, 0x38, 0x74, 0x7a, 0x54, 0xd4, 0x17, 0x67, 0xe8, 0x40, - 0x8b, 0x39, 0xf7, 0x63, 0xa6, 0x7b, 0x8a, 0x47, 0x6d, 0xf7, 0x62, 0x30, 0xdd, 0x81, 0x06, 0xb0, - 0x2e, 0x67, 0x21, 0xbe, 0xcf, 0x04, 0x91, 0x74, 0x5e, 0x5f, 0x52, 0x1b, 0xba, 0x3f, 0xf7, 0x86, - 0xa4, 0x80, 0xc7, 0x30, 0x7a, 0x4b, 0x6b, 0x41, 0x8a, 0x88, 0x1a, 0x70, 0x31, 0x08, 0x5d, 0x16, - 0xba, 0x62, 0xd4, 0xb1, 0x3d, 0xc2, 0x79, 0x47, 0xdd, 0xea, 0x8a, 0x92, 0xf5, 0x85, 0xa8, 0x6b, - 0x47, 0xf6, 0xec, 0xc9, 0x2b, 0xde, 0x92, 0xa9, 0x2f, 0x71, 0x5c, 0x5f, 0x46, 0x2e, 0x41, 0xc8, - 0x0e, 0x69, 0x7d, 0x59, 0x6d, 0xff, 0xdb, 0xb9, 0xcb, 0xc3, 0xd1, 0xf8, 0x96, 0x1c, 0x2e, 0xf3, - 0xe3, 0x64, 0x1b, 0x5d, 0x87, 0xd5, 0x90, 0x06, 0x9e, 0x6b, 0x93, 0x8e, 0xcd, 0x86, 0xbe, 0x50, - 0xd7, 0x73, 0x15, 0xaf, 0x18, 0xe2, 0x8e, 0xa4, 0xa1, 0x1f, 0xc0, 0x72, 0x94, 0x56, 0x73, 0x73, - 0x5b, 0xad, 0x53, 0x26, 0x34, 0x23, 0xf1, 0x98, 0x09, 0x7d, 0x04, 0x4b, 0x9c, 0x86, 0xc7, 0xae, - 0x4d, 0x55, 0x0d, 0xe0, 0xb4, 0x38, 0xab, 0xad, 0xc7, 0x69, 0x95, 0x34, 0x4c, 0xe8, 0x21, 0x54, - 0xb8, 0x08, 0x89, 0xa0, 0xbd, 0x91, 0x29, 0x19, 0xe4, 0x1b, 0xa3, 0xfb, 0x34, 0xf0, 0xd8, 0x68, - 0xa0, 0x72, 0x04, 0xcd, 0x82, 0x63, 0x66, 0xd4, 0x84, 0xaa, 0x60, 0x9e, 0x64, 0x51, 0x87, 0xbb, - 0xa6, 0x0e, 0xf7, 0x7a, 0xbe, 0xe9, 0x89, 0xc7, 0xe2, 0x24, 0x1f, 0x1a, 0xc1, 0x45, 0xb3, 0xb4, - 0x94, 0xae, 0xac, 0x2b, 0xb8, 0x47, 0x73, 0xeb, 0x8a, 0xd9, 0xf3, 0x94, 0xbe, 0x20, 0x3e, 0xd5, - 0x81, 0x9e, 0xc1, 0x3a, 0xa7, 0xf6, 0x50, 0x29, 0x06, 0xf3, 0x05, 0x3d, 0x11, 0xaa, 0x74, 0x71, - 0x9a, 0x44, 0x5a, 0xcc, 0x69, 0xa7, 0x59, 0xf0, 0x24, 0x06, 0x6a, 0x42, 0x85, 0x1d, 0xd3, 0xd0, - 0x93, 0xa1, 0xb0, 0xa3, 0xb6, 0xf1, 0x66, 0xfe, 0x36, 0xee, 0xf2, 0xfd, 0x43, 0x19, 0x87, 0xee, - 0x6b, 0x0e, 0x1c, 0xb3, 0x6e, 0x7e, 0x1f, 0x2e, 0x4c, 0xdd, 0xe4, 0x79, 0x6c, 0xeb, 0xe6, 0x36, - 0x5c, 0xcc, 0xb8, 0x39, 0x73, 0x41, 0x34, 0xe1, 0x4a, 0x8e, 0x40, 0xe7, 0xb2, 0xf2, 0xbf, 0x5f, - 0x84, 0xda, 0xe4, 0x4e, 0xd1, 0xab, 0x50, 0x25, 0x81, 0xdb, 0x49, 0x67, 0xbf, 0x40, 0x02, 0xd7, - 0xa4, 0x8e, 0xd2, 0x33, 0x1f, 0xb9, 0xbe, 0x63, 0xe0, 0xd4, 0xef, 0x4c, 0x6f, 0xfd, 0x14, 0x96, - 0x02, 0x22, 0xec, 0x3e, 0xe5, 0xc6, 0x5f, 0xbf, 0x7b, 0x66, 0x71, 0x37, 0x64, 0xa4, 0xa3, 0x5c, - 0x2d, 0x8e, 0x30, 0x36, 0x7f, 0x02, 0xcb, 0x31, 0x55, 0xce, 0xa7, 0xa2, 0x23, 0xbd, 0x3a, 0xf5, - 0x5b, 0xe6, 0x81, 0xc9, 0x8c, 0xf8, 0xac, 0xde, 0x56, 0x33, 0x59, 0xff, 0x55, 0x80, 0x4a, 0xe4, - 0xad, 0xd0, 0x2e, 0x28, 0xd3, 0xbc, 0x9d, 0x76, 0x73, 0x6f, 0xe4, 0x22, 0xee, 0x25, 0x06, 0xe3, - 0x14, 0x2b, 0x7a, 0x00, 0x55, 0x69, 0x12, 0x23, 0xa4, 0xe2, 0x0c, 0xdb, 0xd0, 0x1a, 0x8f, 0xc5, - 0x49, 0x46, 0x84, 0x95, 0xdd, 0xde, 0xf6, 0x85, 0x1b, 0x63, 0x69, 0x57, 0x78, 0xf3, 0x54, 0xac, - 0xc4, 0x78, 0x3c, 0x09, 0x60, 0xfd, 0x79, 0x01, 0x36, 0x74, 0xe5, 0xee, 0x29, 0x09, 0x3e, 0xa6, - 0xa3, 0xd8, 0x15, 0x11, 0xd8, 0xf0, 0x98, 0x4d, 0x3c, 0x7d, 0x28, 0x98, 0x76, 0x69, 0x48, 0x7d, - 0x9b, 0x1a, 0x39, 0xe4, 0x57, 0x3c, 0x9e, 0x64, 0x30, 0xe1, 0x4c, 0xa8, 0x48, 0x4f, 0x8b, 0x63, - 0x3d, 0xdd, 0x84, 0x0a, 0x53, 0x9e, 0x8a, 0x78, 0x6a, 0x6b, 0x15, 0x1c, 0xb7, 0xad, 0xbb, 0xb0, - 0xb6, 0xe3, 0xb9, 0xd4, 0x17, 0xbb, 0x2d, 0x53, 0x6a, 0xbc, 0x01, 0x6b, 0xc2, 0x1d, 0x50, 0x36, - 0x14, 0x6d, 0x6a, 0x33, 0xdf, 0xd1, 0x35, 0xa8, 0x05, 0x3c, 0x41, 0xb5, 0x28, 0x7c, 0x6b, 0x27, - 0x64, 0x9c, 0x1b, 0xed, 0x9d, 0x5c, 0x46, 0xa4, 0xcc, 0x85, 0x0c, 0x65, 0x2e, 0x26, 0x94, 0xf9, - 0x2a, 0x24, 0xae, 0x80, 0x51, 0xf3, 0x04, 0xc5, 0xfa, 0x9d, 0x02, 0xa0, 0x69, 0xb3, 0x2c, 0xa1, - 0xc4, 0x28, 0xa0, 0x11, 0xbc, 0xfc, 0x8d, 0x3e, 0x81, 0xd5, 0x90, 0x79, 0x9e, 0xeb, 0xf7, 0x9e, - 0x05, 0x0e, 0x11, 0x91, 0xbe, 0xe6, 0xfb, 0x77, 0x9c, 0x1c, 0x3d, 0x9e, 0x04, 0xa7, 0x61, 0xac, - 0xe7, 0xb0, 0xa8, 0x83, 0xa6, 0x78, 0x03, 0x85, 0xc4, 0x06, 0x32, 0xad, 0x00, 0xda, 0x81, 0x65, - 0xf5, 0xe3, 0x41, 0xc8, 0x06, 0x46, 0x9f, 0xde, 0x98, 0x11, 0x92, 0xb5, 0x95, 0x55, 0xc7, 0x63, - 0x3e, 0xeb, 0x5f, 0x8b, 0xb0, 0x92, 0xec, 0x43, 0x8f, 0xa0, 0xd2, 0x75, 0xa9, 0xe7, 0x60, 0xda, - 0x35, 0x2a, 0xf3, 0x76, 0x2e, 0xa8, 0x3e, 0x90, 0x07, 0x72, 0x78, 0xa4, 0x7e, 0x38, 0xe6, 0x46, - 0x3f, 0x86, 0x5a, 0xe4, 0x62, 0x1f, 0x44, 0x88, 0xb3, 0x0a, 0x99, 0x38, 0xc9, 0x10, 0x63, 0x4e, - 0xe1, 0xa0, 0x4f, 0x61, 0xdd, 0x4e, 0x28, 0xbf, 0x84, 0x2e, 0xcd, 0xd0, 0xef, 0xac, 0xcb, 0x82, - 0x27, 0x51, 0xd0, 0x1e, 0xac, 0x70, 0x6a, 0x87, 0x54, 0x18, 0xd4, 0xf2, 0x8c, 0xc2, 0x56, 0x3b, - 0x1a, 0x1c, 0x43, 0xa6, 0xf8, 0xad, 0x1b, 0x00, 0xcd, 0x13, 0x6a, 0x6f, 0xdb, 0xf2, 0x32, 0xa0, - 0x3a, 0x2c, 0xd9, 0x6c, 0x30, 0x20, 0x4a, 0x69, 0x4b, 0x37, 0x97, 0x71, 0xd4, 0xb4, 0xfe, 0xae, - 0x08, 0x1b, 0x51, 0xce, 0xfb, 0x94, 0x8a, 0xd0, 0xb5, 0xcd, 0x79, 0x5c, 0x05, 0x18, 0xa8, 0xf6, - 0xde, 0x58, 0x2b, 0x12, 0x14, 0xf4, 0x9b, 0xb0, 0xa6, 0x5b, 0xd1, 0x02, 0x8c, 0x8c, 0xdf, 0x6d, - 0xe8, 0x27, 0x98, 0x46, 0xf2, 0x09, 0xa6, 0x11, 0x1c, 0xf5, 0x24, 0x81, 0x37, 0x06, 0x54, 0x90, - 0xc6, 0xf1, 0x6d, 0x9d, 0x61, 0xc5, 0x6b, 0x9f, 0x80, 0x42, 0xfb, 0x50, 0x15, 0x24, 0xec, 0x51, - 0xa1, 0x2c, 0xf7, 0x4c, 0x11, 0x1b, 0xe3, 0xbc, 0x1f, 0xea, 0x2a, 0xb8, 0x4e, 0xb5, 0x92, 0x08, - 0xe8, 0x27, 0x80, 0x74, 0x73, 0xfb, 0x98, 0x86, 0xa4, 0x47, 0x35, 0x6e, 0xf9, 0x3c, 0xb8, 0x19, - 0x40, 0xd6, 0xbf, 0x14, 0x60, 0xf5, 0xd1, 0xc1, 0x41, 0xeb, 0x21, 0x15, 0x46, 0xe2, 0x59, 0xce, - 0x66, 0x1b, 0xca, 0x01, 0x0b, 0x85, 0x11, 0xd4, 0x9c, 0xd3, 0x2a, 0x56, 0x09, 0xdb, 0x67, 0x5c, - 0x44, 0x3e, 0x53, 0xfe, 0x46, 0x97, 0x4d, 0x72, 0x4f, 0x4d, 0x36, 0x62, 0x5a, 0x32, 0xa8, 0xeb, - 0x0b, 0x11, 0x3c, 0xa2, 0xc4, 0xa1, 0x21, 0x37, 0x29, 0x48, 0x7e, 0x50, 0x27, 0xd7, 0xaf, 0xc7, - 0xe2, 0x24, 0x9f, 0xf5, 0x3e, 0xc0, 0xb8, 0xeb, 0xec, 0x66, 0xc2, 0xfa, 0xdf, 0x02, 0x7c, 0xeb, - 0x94, 0xc4, 0x0a, 0x7d, 0x06, 0x6b, 0xaa, 0x75, 0xa0, 0xc4, 0x39, 0xbe, 0xf6, 0xf9, 0x69, 0xda, - 0x29, 0x36, 0x19, 0x4f, 0x60, 0xa1, 0x6b, 0x50, 0x1d, 0xb8, 0x3e, 0xd6, 0xf1, 0xba, 0x2e, 0xbb, - 0x2f, 0xe0, 0x24, 0x49, 0x8d, 0x20, 0x27, 0xf1, 0x88, 0x92, 0x19, 0x31, 0x26, 0xa1, 0x0f, 0x61, - 0x49, 0xeb, 0x65, 0x14, 0x8c, 0xe4, 0x0b, 0xcf, 0x5c, 0x1d, 0x15, 0x9d, 0x1b, 0x1e, 0xeb, 0x16, - 0x6c, 0x64, 0xf9, 0xb6, 0x2c, 0x11, 0x5a, 0x7f, 0x5d, 0x04, 0x18, 0x63, 0x64, 0xba, 0x80, 0x1d, - 0x58, 0x64, 0x0a, 0xc9, 0xe8, 0xcf, 0x5b, 0x33, 0xcc, 0x63, 0xf2, 0x36, 0x63, 0xc3, 0x8a, 0x3e, - 0x94, 0x2a, 0xe8, 0x70, 0x73, 0xa3, 0xde, 0x3c, 0x2d, 0x0c, 0xe0, 0x29, 0x00, 0xc5, 0x86, 0x76, - 0xa1, 0x12, 0x99, 0xc4, 0x99, 0x97, 0x27, 0x32, 0xa9, 0x29, 0x98, 0x98, 0x5d, 0x42, 0x51, 0x63, - 0x77, 0x4c, 0x21, 0xe5, 0x3b, 0x33, 0x9f, 0x99, 0xd2, 0x50, 0x11, 0xbb, 0xf5, 0x45, 0x11, 0x56, - 0x92, 0xd1, 0x14, 0xfa, 0x83, 0x02, 0x34, 0x42, 0xfa, 0xd3, 0xa1, 0x1b, 0x52, 0xe7, 0xfe, 0x50, - 0xde, 0xa1, 0xb6, 0xdd, 0xa7, 0xce, 0x50, 0x3a, 0xbe, 0xdd, 0x9e, 0xcf, 0x62, 0xb2, 0x34, 0x91, - 0x43, 0x11, 0x85, 0xac, 0xb3, 0xa2, 0xb5, 0xd8, 0x5c, 0xcd, 0x09, 0x8e, 0xfe, 0xb8, 0x00, 0x5b, - 0x41, 0x28, 0x15, 0xe0, 0xec, 0x0b, 0xd2, 0xb5, 0x8e, 0x53, 0x12, 0xf8, 0x08, 0x6f, 0x8c, 0x74, - 0x40, 0xc3, 0x01, 0x9e, 0x77, 0x22, 0xab, 0xa7, 0x85, 0x17, 0xdb, 0xde, 0x4f, 0xe1, 0x42, 0xb2, - 0xc4, 0x20, 0x41, 0xb9, 0xf2, 0x1a, 0xa7, 0xe9, 0xcb, 0xde, 0x04, 0x07, 0x9e, 0xc6, 0xb0, 0xfe, - 0xbe, 0x00, 0xb5, 0xc9, 0x71, 0xe8, 0x33, 0xa8, 0x0d, 0x64, 0xb0, 0xde, 0x3c, 0x09, 0x42, 0xca, - 0xb9, 0xca, 0x17, 0x0b, 0x33, 0xb6, 0x9e, 0x3a, 0x0b, 0x7d, 0x12, 0x2a, 0xb6, 0x99, 0x42, 0x42, - 0x58, 0xde, 0x71, 0x61, 0xf7, 0x95, 0xff, 0xe6, 0x33, 0x65, 0x9a, 0x07, 0x9c, 0x04, 0xb1, 0x3a, - 0x70, 0x25, 0x67, 0x5c, 0x46, 0x1e, 0xa5, 0xe2, 0x53, 0x3d, 0x8d, 0xb1, 0x8e, 0x71, 0x5b, 0xda, - 0x6d, 0xf3, 0xc6, 0x5b, 0x52, 0x3e, 0xd9, 0xb4, 0xac, 0x36, 0x5c, 0xcc, 0x08, 0x70, 0x26, 0xa2, - 0xc9, 0xe9, 0x14, 0xeb, 0x65, 0x58, 0x56, 0x21, 0x90, 0x4c, 0x78, 0xa2, 0xd2, 0x68, 0x4c, 0xb0, - 0x3e, 0x02, 0x88, 0xcd, 0x02, 0x89, 0x4d, 0xd0, 0x42, 0xc2, 0x8a, 0xa7, 0x4a, 0xab, 0x8b, 0x13, - 0xa5, 0x55, 0xeb, 0xbf, 0x8b, 0x80, 0xa6, 0xed, 0x0a, 0x7a, 0x02, 0x8b, 0xda, 0x1d, 0x7e, 0x25, - 0xe3, 0x6d, 0x30, 0x26, 0x62, 0x8e, 0xe2, 0x54, 0xcc, 0xf1, 0xc2, 0xc3, 0x82, 0x7d, 0xa8, 0xc4, - 0x25, 0xba, 0xf2, 0xf9, 0xc3, 0x97, 0x18, 0x04, 0xfd, 0x10, 0x56, 0x48, 0x32, 0xc2, 0x58, 0x38, - 0xcf, 0x12, 0x53, 0x10, 0xd6, 0xdf, 0x16, 0xa1, 0x9a, 0xc8, 0xf0, 0xd0, 0x1f, 0x9e, 0xc7, 0xb8, - 0x95, 0x66, 0x26, 0x7d, 0x06, 0x5e, 0x5d, 0xde, 0x6f, 0x82, 0x7d, 0xfb, 0x94, 0xba, 0xbd, 0xbe, - 0xa0, 0xce, 0xe4, 0xda, 0xe6, 0xb6, 0x6f, 0xbf, 0x2c, 0xc2, 0xfa, 0x44, 0x56, 0xfb, 0x2b, 0x19, - 0xce, 0x29, 0xc3, 0xbf, 0x2a, 0x68, 0x19, 0x26, 0x40, 0xd0, 0x8f, 0x60, 0xd5, 0x4b, 0xde, 0x02, - 0x63, 0x01, 0xce, 0x75, 0x81, 0xd2, 0x48, 0xd2, 0x0e, 0xc4, 0x96, 0x47, 0x5b, 0xed, 0x65, 0x9c, - 0xa0, 0xc8, 0xd0, 0x4d, 0xb0, 0x80, 0x79, 0xac, 0x37, 0xfa, 0x98, 0x8e, 0x4c, 0x30, 0x9c, 0x24, - 0x59, 0xff, 0x53, 0x80, 0x2b, 0x39, 0x25, 0x6e, 0x64, 0xc1, 0xca, 0xc0, 0xf5, 0xb7, 0x8f, 0x89, - 0xeb, 0x91, 0x43, 0x4f, 0x07, 0x59, 0xab, 0x38, 0x45, 0x4b, 0x19, 0x86, 0xe2, 0x8b, 0x30, 0x0c, - 0x37, 0x60, 0x6d, 0x40, 0x4e, 0x9e, 0xf9, 0x24, 0x9e, 0xb6, 0xa4, 0xa6, 0x9d, 0xa0, 0x26, 0xdf, - 0xc9, 0xca, 0xe7, 0x7f, 0x27, 0xb3, 0xbe, 0x2c, 0x40, 0x6d, 0x32, 0x86, 0x9b, 0x99, 0xd2, 0x65, - 0x27, 0x49, 0xc5, 0x17, 0x94, 0x24, 0xa5, 0x64, 0x5a, 0x7a, 0x01, 0x32, 0xb5, 0x7e, 0x1b, 0xae, - 0xe4, 0x44, 0x41, 0xd2, 0xb7, 0x3e, 0x57, 0xca, 0x6f, 0x2a, 0x3c, 0xa6, 0x85, 0x76, 0x01, 0xb4, - 0xee, 0xab, 0xd2, 0x54, 0x71, 0x46, 0x14, 0x3c, 0x15, 0xd5, 0x24, 0x98, 0xad, 0xbf, 0x28, 0xc1, - 0x5a, 0xfa, 0x19, 0x01, 0xfd, 0x3a, 0x94, 0xe9, 0x09, 0xb5, 0xcd, 0x4d, 0xb8, 0x7e, 0x4a, 0x3c, - 0x1b, 0x65, 0xe6, 0x58, 0x31, 0xa0, 0x1f, 0xc0, 0x92, 0x4c, 0xb9, 0x1e, 0x52, 0x31, 0xb3, 0x10, - 0x99, 0x4a, 0x33, 0x71, 0xc4, 0x86, 0x1e, 0xc0, 0xb2, 0xb0, 0x83, 0x36, 0xb3, 0x8f, 0xa8, 0x98, - 0x59, 0xe4, 0x3b, 0xd8, 0x69, 0xe9, 0x91, 0x06, 0x65, 0xcc, 0x8a, 0xde, 0x81, 0x8b, 0xf2, 0x8a, - 0xbb, 0xc4, 0xbb, 0x4f, 0x3d, 0x32, 0x8a, 0xea, 0x64, 0x65, 0x25, 0xc5, 0xac, 0xae, 0x8c, 0xa2, - 0xda, 0x42, 0x56, 0x51, 0x0d, 0xbd, 0x0e, 0xab, 0x01, 0x0d, 0x5d, 0x55, 0x74, 0x57, 0xc3, 0x16, - 0xd5, 0xb0, 0x34, 0x11, 0xdd, 0x82, 0x1a, 0x1f, 0xda, 0x36, 0xe5, 0xfc, 0xa0, 0x1f, 0x52, 0xde, - 0x67, 0x9e, 0x53, 0x5f, 0x52, 0x03, 0xa7, 0xe8, 0x72, 0x6c, 0x97, 0xb8, 0xde, 0x30, 0xa4, 0xe3, - 0xb1, 0x15, 0x3d, 0x76, 0x92, 0x6e, 0xfd, 0x69, 0x01, 0x2e, 0x65, 0x16, 0x79, 0xe4, 0xba, 0x6c, - 0x99, 0xa2, 0x4a, 0xe5, 0x4b, 0x5c, 0x8c, 0x34, 0x51, 0x7f, 0x13, 0x69, 0x32, 0x9f, 0x62, 0xf4, - 0x4d, 0xa4, 0x49, 0x65, 0x1e, 0xc2, 0x92, 0xe3, 0x1e, 0xbb, 0x3c, 0xd6, 0xeb, 0x39, 0x2f, 0x4b, - 0xc4, 0x6d, 0xfd, 0x43, 0x01, 0x36, 0xb2, 0xd2, 0xa6, 0xcc, 0xac, 0xfb, 0x03, 0xa8, 0xa7, 0x2e, - 0xd9, 0x33, 0xe1, 0x7a, 0xee, 0xcf, 0x88, 0x71, 0x0c, 0x52, 0x0a, 0xb9, 0xfd, 0x39, 0x37, 0xbd, - 0xf4, 0xa2, 0xca, 0x21, 0x3f, 0x2f, 0xc2, 0x72, 0xfc, 0x94, 0x83, 0x1e, 0xc0, 0xa2, 0xe7, 0x0e, - 0x5c, 0x11, 0x05, 0xf6, 0xb3, 0xab, 0x70, 0xbc, 0xf1, 0x44, 0x31, 0xe8, 0xe7, 0x1e, 0xc3, 0x8d, - 0x9e, 0xc8, 0x23, 0xf8, 0xe9, 0x90, 0x72, 0x31, 0x3b, 0x92, 0x1f, 0x23, 0x61, 0xc3, 0xa2, 0xb1, - 0x62, 0x84, 0xcd, 0xef, 0x42, 0x35, 0x31, 0xc9, 0x5c, 0x2f, 0x29, 0xdf, 0x83, 0xd5, 0x14, 0xea, - 0x5c, 0xef, 0x27, 0x5f, 0x14, 0xe0, 0x4a, 0x4e, 0x71, 0x16, 0x3d, 0x9b, 0x72, 0x12, 0x85, 0xf3, - 0x1c, 0xc9, 0xa4, 0x4f, 0xd9, 0x85, 0xca, 0x80, 0x9c, 0xb4, 0x87, 0x61, 0xef, 0x9c, 0xd6, 0x3c, - 0x66, 0xb7, 0xfe, 0xac, 0x00, 0x17, 0xa6, 0x4a, 0x8f, 0xdf, 0xbc, 0xd2, 0xff, 0x7f, 0x2c, 0x40, - 0x35, 0xf1, 0x62, 0x8a, 0x3e, 0x80, 0x85, 0x80, 0x85, 0xb1, 0x06, 0xce, 0x7c, 0x66, 0x6d, 0xb1, - 0x50, 0x60, 0xcd, 0x82, 0xf6, 0x52, 0xa1, 0x80, 0x64, 0xbf, 0x73, 0x96, 0x57, 0xda, 0x46, 0xfa, - 0xd9, 0x7e, 0x1c, 0x09, 0xbc, 0x0c, 0xcb, 0xb6, 0x37, 0xe4, 0x82, 0x86, 0xbb, 0x2d, 0x13, 0xba, - 0x8c, 0x09, 0x71, 0xe5, 0xa7, 0x9c, 0xa8, 0xfc, 0x5c, 0x83, 0x6a, 0x54, 0xeb, 0xd8, 0x6d, 0xe9, - 0x42, 0xde, 0x32, 0x4e, 0x92, 0xd0, 0x4d, 0x58, 0xe7, 0x3a, 0xe7, 0x8d, 0x1f, 0x7a, 0x96, 0xf4, - 0x97, 0x09, 0x13, 0x64, 0x69, 0xad, 0x3d, 0x46, 0x9c, 0x7b, 0xc4, 0x23, 0xbe, 0xad, 0x96, 0xa0, - 0x9f, 0xd5, 0x27, 0xa8, 0xd2, 0xba, 0x24, 0x29, 0xa6, 0xe6, 0x42, 0xfc, 0x1e, 0xe5, 0xf5, 0x65, - 0xb5, 0x80, 0xdc, 0x7e, 0x19, 0x60, 0x45, 0x8b, 0x53, 0x06, 0x55, 0x7f, 0xdb, 0x92, 0xa2, 0xa1, - 0xf7, 0xe0, 0x52, 0xd4, 0x3e, 0x08, 0x49, 0xb7, 0xeb, 0xda, 0xfa, 0xd3, 0x09, 0xf3, 0xb5, 0x7c, - 0x76, 0xa7, 0xf4, 0x4e, 0x7d, 0x4a, 0x3c, 0xd1, 0xdf, 0xe9, 0x53, 0xfb, 0x48, 0xba, 0x67, 0x79, - 0x52, 0xea, 0xf1, 0x7c, 0x01, 0x67, 0x75, 0xc9, 0x7d, 0x04, 0xc3, 0x43, 0xcf, 0xe5, 0xfd, 0x3d, - 0x26, 0xa4, 0xbb, 0x1e, 0x6d, 0x3b, 0x4e, 0x48, 0x39, 0xa7, 0x5c, 0x3d, 0x99, 0x57, 0x70, 0x6e, - 0x3f, 0x72, 0xe0, 0xd2, 0x84, 0xf8, 0x74, 0x2d, 0x5f, 0x7d, 0x58, 0x7f, 0x9a, 0x1d, 0x6b, 0x67, - 0x71, 0xe1, 0x6c, 0x30, 0x69, 0x4d, 0xce, 0xfd, 0x2e, 0x6c, 0xfd, 0x4d, 0x21, 0x56, 0xf4, 0x96, - 0xa9, 0x0f, 0x4f, 0x39, 0x8a, 0x4d, 0xa8, 0xa8, 0xcf, 0xbc, 0x6c, 0xe6, 0x45, 0xae, 0x2b, 0x6a, - 0xab, 0x32, 0xb5, 0x94, 0xa0, 0xae, 0x7e, 0xea, 0x1a, 0xf3, 0x53, 0x00, 0x6d, 0xd3, 0x95, 0x6c, - 0xcf, 0x55, 0x23, 0x4f, 0x00, 0xc8, 0xe9, 0xfd, 0xe8, 0xa0, 0x74, 0x64, 0x10, 0xb7, 0xad, 0xcf, - 0xe0, 0x52, 0xa6, 0xac, 0xd0, 0x0e, 0x54, 0x6c, 0xf3, 0x76, 0x67, 0xac, 0x48, 0xfe, 0xb7, 0x1c, - 0xe9, 0x47, 0x3e, 0x1c, 0x33, 0x5a, 0x7d, 0x58, 0x9f, 0x88, 0x74, 0xe2, 0x12, 0x7c, 0xe1, 0xab, - 0x97, 0xe0, 0x8b, 0xe3, 0x12, 0xbc, 0xf5, 0x47, 0x05, 0x80, 0xf1, 0x47, 0x11, 0x73, 0xd6, 0x81, - 0xe2, 0xd3, 0x2d, 0x25, 0x5f, 0xd9, 0x2e, 0xc3, 0x22, 0xed, 0x76, 0xa9, 0x2d, 0xa2, 0xaa, 0xbe, - 0x6e, 0xa1, 0xb7, 0xe1, 0xc2, 0xf8, 0x93, 0x8b, 0x64, 0xc4, 0x55, 0xc2, 0xd3, 0x1d, 0xd6, 0xef, - 0x16, 0xe0, 0x4a, 0x4e, 0x16, 0x98, 0x1b, 0x23, 0x9b, 0x57, 0xe3, 0xc4, 0x50, 0xe3, 0x35, 0xce, - 0x9e, 0xfc, 0x4e, 0x02, 0x58, 0xbf, 0x28, 0x03, 0x9a, 0xfe, 0xde, 0x02, 0xed, 0xc3, 0x1a, 0xa7, - 0x4f, 0x5c, 0x7f, 0x78, 0xb2, 0x1f, 0x08, 0x53, 0xfb, 0x3b, 0xfd, 0xb0, 0xdb, 0xcd, 0xe4, 0x70, - 0x3c, 0xc1, 0x2e, 0x8d, 0x6b, 0x38, 0xf4, 0xb7, 0xf9, 0x33, 0x4e, 0xb5, 0xa0, 0x4b, 0x78, 0x4c, - 0x90, 0x86, 0x49, 0x35, 0xf6, 0x98, 0x8f, 0x19, 0x13, 0xc6, 0x6d, 0xa4, 0x68, 0xa8, 0x01, 0x88, - 0x0f, 0x83, 0xc0, 0x53, 0x15, 0x3d, 0xe2, 0x3d, 0x0c, 0xd9, 0x30, 0xd0, 0xf5, 0xff, 0x12, 0xce, - 0xe8, 0x41, 0x75, 0x58, 0xea, 0x72, 0xf5, 0xdb, 0x9c, 0x42, 0xd4, 0x94, 0xe9, 0x96, 0x42, 0xd6, - 0x9d, 0x8b, 0xaa, 0x33, 0x41, 0x41, 0xdf, 0x85, 0x25, 0x3e, 0xe2, 0xb6, 0xf0, 0xa2, 0xaf, 0xa9, - 0xf2, 0x3f, 0x6c, 0x6b, 0xab, 0x71, 0x38, 0x1a, 0x8f, 0x3e, 0x87, 0xb5, 0xe7, 0xae, 0xef, 0xb0, - 0xe7, 0x3c, 0x92, 0x5b, 0x45, 0xc9, 0xed, 0xfd, 0xfc, 0x52, 0x80, 0x1e, 0x3e, 0x71, 0x00, 0xb1, - 0x18, 0xd3, 0x68, 0xd2, 0xce, 0x9a, 0x5d, 0xec, 0xf4, 0xa5, 0x4d, 0x37, 0xb6, 0x79, 0x59, 0x69, - 0x62, 0x56, 0x97, 0x3e, 0x49, 0xdb, 0x66, 0x83, 0xa0, 0x95, 0xf8, 0xef, 0xa8, 0x53, 0x4f, 0x32, - 0x35, 0x1c, 0x4f, 0xb0, 0x5b, 0x87, 0xb0, 0x96, 0x3e, 0x6b, 0x79, 0xf1, 0x86, 0xf2, 0x58, 0x8d, - 0x6d, 0x93, 0xbf, 0x25, 0x2d, 0x64, 0x5e, 0xfc, 0xec, 0x2e, 0x7f, 0xc7, 0x2e, 0xb4, 0x94, 0x70, - 0xa1, 0x1b, 0xb0, 0xe0, 0xd1, 0x63, 0xf5, 0x15, 0xa8, 0xba, 0x63, 0xaa, 0x61, 0xdd, 0x81, 0x45, - 0x2d, 0xd9, 0x39, 0x9e, 0xb5, 0xfe, 0xb2, 0x00, 0xaf, 0x9c, 0x2a, 0x4c, 0xf4, 0x3e, 0x5c, 0xee, - 0x0d, 0x38, 0xd9, 0x09, 0xa9, 0x43, 0x7d, 0x99, 0x2e, 0xc9, 0x70, 0x20, 0x91, 0x59, 0xe4, 0xf4, - 0x4a, 0xcd, 0x9b, 0xee, 0x31, 0x93, 0x67, 0xf4, 0xc8, 0xc4, 0x25, 0x56, 0xed, 0xbd, 0xf1, 0x87, - 0x34, 0x69, 0xa2, 0xd5, 0x82, 0xb5, 0xb4, 0xa4, 0x33, 0x1f, 0x97, 0x6e, 0x41, 0x4d, 0x85, 0x5d, - 0xd2, 0x9a, 0x45, 0x07, 0xa8, 0x67, 0x9e, 0xa2, 0x5b, 0xeb, 0xb0, 0x9a, 0xfa, 0x1a, 0xc6, 0xaa, - 0xc3, 0xe5, 0xec, 0xff, 0x42, 0xb2, 0x2e, 0xc3, 0x46, 0x96, 0x25, 0xb5, 0x36, 0x00, 0x4d, 0x57, - 0x2f, 0xee, 0xbd, 0xfd, 0x8f, 0x5f, 0x5e, 0x7d, 0xe9, 0x9f, 0xbf, 0xbc, 0xfa, 0xd2, 0xbf, 0x7d, - 0x79, 0xf5, 0xa5, 0x1f, 0x5f, 0xd5, 0x8a, 0xa3, 0xff, 0x99, 0x6f, 0x6b, 0xea, 0xbf, 0x05, 0x0f, - 0x17, 0x95, 0x13, 0x7b, 0xf7, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0xef, 0xf1, 0x4a, 0x78, 0x49, - 0x38, 0x00, 0x00, + 0x21, 0x08, 0xd9, 0xe9, 0x08, 0xd7, 0xb8, 0xeb, 0x50, 0x9b, 0x84, 0x1d, 0xd7, 0xff, 0x4d, 0x6a, + 0x0b, 0x16, 0x5a, 0x7f, 0x5a, 0x80, 0x8d, 0xa9, 0x33, 0x47, 0x4d, 0x58, 0xa2, 0x3e, 0x39, 0xf2, + 0xa8, 0xa3, 0x6e, 0x43, 0xf5, 0xee, 0xdb, 0x67, 0x9a, 0xd3, 0xfb, 0x8c, 0x79, 0xca, 0x66, 0x3e, + 0x64, 0x61, 0xeb, 0x3e, 0x8e, 0x78, 0xd1, 0x7d, 0x28, 0x1d, 0xdf, 0x8b, 0x5c, 0xd4, 0xbb, 0xb9, + 0x10, 0x9f, 0x0c, 0x8f, 0x68, 0xe8, 0x53, 0x41, 0x39, 0x36, 0x5e, 0x97, 0x6b, 0x05, 0x38, 0xbe, + 0xc7, 0xad, 0xbf, 0x2b, 0xc2, 0xea, 0xff, 0xc9, 0xe2, 0x52, 0x2e, 0xbd, 0x38, 0xe9, 0xd2, 0x4d, + 0xa4, 0x01, 0x53, 0x91, 0x46, 0x75, 0xfe, 0x48, 0xe3, 0x43, 0x28, 0xf3, 0x80, 0xda, 0x33, 0xaf, + 0x4e, 0x9a, 0x55, 0xf1, 0x5c, 0x88, 0x08, 0xff, 0xb9, 0x08, 0x97, 0x33, 0x1d, 0xcf, 0x2f, 0x46, + 0x94, 0xd1, 0xf6, 0xe1, 0x1c, 0xdb, 0x7f, 0x15, 0xc0, 0xee, 0x93, 0x50, 0xe8, 0xc0, 0xf0, 0x9a, + 0x86, 0x56, 0x14, 0x15, 0x0f, 0xbe, 0x03, 0x8b, 0xdc, 0xee, 0xd3, 0x01, 0xa9, 0xdf, 0x50, 0xe0, + 0x9b, 0x0d, 0x1d, 0xe9, 0x36, 0xa2, 0x48, 0xb7, 0xb1, 0xe3, 0x8f, 0xb0, 0x19, 0x73, 0x21, 0xb2, + 0xfc, 0xa3, 0x12, 0x54, 0x13, 0x57, 0xf8, 0x17, 0x23, 0x41, 0x04, 0x65, 0xd9, 0x30, 0x8e, 0x5b, + 0xfd, 0x46, 0x4d, 0x58, 0xf0, 0xc8, 0x11, 0xf5, 0xea, 0x65, 0x65, 0x70, 0xb6, 0x5f, 0xc6, 0xe0, + 0x34, 0x9e, 0x4a, 0x0e, 0xed, 0x9e, 0x35, 0xf7, 0x85, 0xea, 0xf9, 0x05, 0xc8, 0x77, 0xeb, 0x1e, + 0xc0, 0x78, 0x91, 0x19, 0x1e, 0x79, 0x33, 0xe9, 0x91, 0x97, 0x93, 0xbe, 0xf5, 0x67, 0x2b, 0x70, + 0x35, 0x07, 0x1a, 0x7d, 0x04, 0x15, 0xd2, 0xed, 0xba, 0xbe, 0x2b, 0x46, 0xe6, 0x98, 0x5e, 0xcf, + 0x5d, 0xde, 0x8e, 0x19, 0x88, 0x63, 0x16, 0x74, 0x07, 0x4a, 0xd4, 0x3f, 0x31, 0x41, 0xd1, 0x6b, + 0xf9, 0xc1, 0x9d, 0x7f, 0xf2, 0x29, 0x09, 0xb1, 0x1c, 0x8b, 0x0e, 0xa0, 0xd2, 0x0f, 0x48, 0x47, + 0x29, 0x7e, 0x69, 0x46, 0xf0, 0xf0, 0x98, 0x85, 0xee, 0x4f, 0x98, 0x2f, 0x88, 0xd7, 0x62, 0xce, + 0xce, 0x50, 0x30, 0x6e, 0x13, 0x8f, 0xaa, 0xb0, 0x1a, 0x2f, 0xf5, 0x03, 0xa2, 0xb6, 0x70, 0x1b, + 0x36, 0xdc, 0x81, 0x4a, 0x91, 0x86, 0x32, 0x5f, 0x52, 0x56, 0xdf, 0x84, 0x35, 0xeb, 0xaa, 0xa3, + 0x35, 0xf4, 0xbc, 0x96, 0x22, 0xa3, 0x1e, 0xac, 0x2a, 0xdb, 0xcf, 0xa9, 0xa7, 0xac, 0x7c, 0x7d, + 0x41, 0xad, 0xfc, 0xfe, 0xbc, 0x47, 0xd2, 0xd8, 0x67, 0x0e, 0x6d, 0x1b, 0x10, 0xad, 0x36, 0x2b, + 0x7e, 0x82, 0x84, 0x1c, 0xb8, 0x1c, 0x30, 0xa7, 0xe3, 0xb8, 0x3c, 0x1c, 0x06, 0xc2, 0x65, 0x7e, + 0xe7, 0x68, 0xe8, 0xf4, 0xa8, 0xa8, 0x2f, 0xce, 0xd0, 0x81, 0x16, 0x73, 0x1e, 0xc4, 0x4c, 0xf7, + 0x15, 0x8f, 0xda, 0xee, 0xa5, 0x60, 0xba, 0x03, 0x0d, 0x60, 0x5d, 0xce, 0x42, 0x7c, 0x9f, 0x09, + 0x22, 0xe9, 0xbc, 0xbe, 0xa4, 0x36, 0xf4, 0x60, 0xee, 0x0d, 0x49, 0x01, 0x8f, 0x61, 0xf4, 0x96, + 0xd6, 0x82, 0x14, 0x11, 0x35, 0xe0, 0x52, 0x10, 0xba, 0x2c, 0x74, 0xc5, 0xa8, 0x63, 0x7b, 0x84, + 0xf3, 0x8e, 0xba, 0x7c, 0x15, 0x25, 0xeb, 0x8d, 0xa8, 0x6b, 0x57, 0xf6, 0xec, 0xcb, 0x9b, 0xd8, + 0x92, 0x89, 0x24, 0x71, 0x5c, 0x5f, 0xc6, 0x01, 0x41, 0xc8, 0x8e, 0x68, 0x7d, 0x59, 0x6d, 0xff, + 0x5b, 0xb9, 0xcb, 0xc3, 0xd1, 0xf8, 0x96, 0x1c, 0x2e, 0xb3, 0xcd, 0x64, 0x1b, 0xdd, 0x80, 0xd5, + 0x90, 0x06, 0x9e, 0x6b, 0x93, 0x8e, 0xcd, 0x86, 0xbe, 0x50, 0xd7, 0x73, 0x15, 0xaf, 0x18, 0xe2, + 0xae, 0xa4, 0xa1, 0xef, 0xc1, 0x72, 0x94, 0xa4, 0x72, 0x73, 0x5b, 0xad, 0x33, 0x26, 0x34, 0x23, + 0xf1, 0x98, 0x09, 0x7d, 0x0c, 0x4b, 0x9c, 0x86, 0x27, 0xae, 0x4d, 0x55, 0x46, 0x7d, 0x56, 0xd4, + 0xd2, 0xd6, 0xe3, 0xb4, 0x4a, 0x1a, 0x26, 0xf4, 0x08, 0x2a, 0x5c, 0x84, 0x44, 0xd0, 0xde, 0xc8, + 0x24, 0xe0, 0xf9, 0xc6, 0xef, 0x01, 0x0d, 0x3c, 0x36, 0x1a, 0xa8, 0x88, 0x5b, 0xb3, 0xe0, 0x98, + 0x19, 0x35, 0xa1, 0x2a, 0x98, 0x27, 0x59, 0xd4, 0xe1, 0xae, 0xa9, 0xc3, 0xbd, 0x91, 0x6f, 0x7a, + 0xe2, 0xb1, 0x38, 0xc9, 0x87, 0x46, 0x70, 0xc9, 0x2c, 0x2d, 0xa5, 0x2b, 0xeb, 0x0a, 0xee, 0xf1, + 0xdc, 0xba, 0x62, 0xf6, 0x3c, 0xa5, 0x2f, 0x88, 0x4f, 0x75, 0xa0, 0xe7, 0xb0, 0xce, 0xa9, 0x3d, + 0x54, 0x8a, 0xc1, 0x7c, 0x41, 0x4f, 0x85, 0x2a, 0x04, 0x9c, 0x25, 0x91, 0x16, 0x73, 0xda, 0x69, + 0x16, 0x3c, 0x89, 0x81, 0x3e, 0x83, 0x1a, 0x19, 0x0a, 0xd6, 0x96, 0xf6, 0xa0, 0x69, 0xdc, 0xcc, + 0xc6, 0xfc, 0x6e, 0x66, 0x0a, 0x04, 0x35, 0xa1, 0xc2, 0x4e, 0x68, 0xe8, 0xc9, 0x88, 0xd5, 0x51, + 0xf2, 0x79, 0x2b, 0x5f, 0x3e, 0xf7, 0xf8, 0xc1, 0x91, 0x0c, 0x17, 0x0f, 0x34, 0x07, 0x8e, 0x59, + 0xb7, 0xbe, 0x0b, 0x1b, 0x53, 0x26, 0x62, 0x1e, 0xa3, 0xbd, 0xb5, 0x03, 0x97, 0x32, 0xae, 0xe4, + 0x5c, 0x10, 0x4d, 0xb8, 0x9a, 0x73, 0x52, 0x73, 0xb9, 0x8f, 0xdf, 0x2b, 0x42, 0x6d, 0x72, 0xa7, + 0xe8, 0x35, 0xa8, 0x92, 0xc0, 0xed, 0xa4, 0x93, 0x54, 0x20, 0x81, 0x6b, 0x32, 0x3c, 0xe9, 0x99, + 0x8f, 0x5d, 0xdf, 0x31, 0x70, 0xea, 0x77, 0xa6, 0xb7, 0x7e, 0x06, 0x4b, 0x01, 0x11, 0x76, 0x9f, + 0x72, 0xe3, 0xaf, 0xdf, 0x7b, 0x69, 0x71, 0x37, 0x64, 0xa4, 0xa3, 0x0e, 0x13, 0x47, 0x18, 0x5b, + 0x3f, 0x82, 0xe5, 0x98, 0x2a, 0xe7, 0x53, 0xd1, 0x91, 0x5e, 0x9d, 0xfa, 0x2d, 0xd3, 0xb5, 0x64, + 0xe2, 0xfa, 0xb2, 0x6e, 0x5c, 0x33, 0x59, 0xff, 0x59, 0x80, 0x4a, 0xe4, 0x06, 0xd1, 0x1e, 0x28, + 0x9b, 0xbf, 0x93, 0xf6, 0x9f, 0x6f, 0xe6, 0x22, 0xee, 0x27, 0x06, 0xe3, 0x14, 0x2b, 0x7a, 0x08, + 0x55, 0x69, 0x6b, 0x23, 0xa4, 0xe2, 0x0c, 0xa3, 0xd3, 0x1a, 0x8f, 0xc5, 0x49, 0x46, 0x84, 0x95, + 0x43, 0xd8, 0xf1, 0x85, 0x1b, 0x63, 0x69, 0x1f, 0x7b, 0xeb, 0x4c, 0xac, 0xc4, 0x78, 0x3c, 0x09, + 0x60, 0xfd, 0x45, 0x01, 0x36, 0x75, 0x81, 0xed, 0x19, 0x09, 0x3e, 0xa1, 0xa3, 0xd8, 0xc7, 0x11, + 0xd8, 0xf4, 0x98, 0x4d, 0x3c, 0x7d, 0x28, 0x98, 0x76, 0x69, 0x48, 0x7d, 0x9b, 0x1a, 0x39, 0xe4, + 0x17, 0x26, 0x9e, 0x66, 0x30, 0xe1, 0x4c, 0xa8, 0x48, 0x4f, 0x8b, 0x63, 0x3d, 0xdd, 0x82, 0x0a, + 0x53, 0x2e, 0x90, 0x78, 0x6a, 0x6b, 0x15, 0x1c, 0xb7, 0xad, 0x7b, 0xb0, 0xb6, 0xeb, 0xb9, 0xd4, + 0x17, 0x7b, 0x2d, 0x53, 0x11, 0xbc, 0x09, 0x6b, 0xc2, 0x1d, 0x50, 0x36, 0x14, 0x6d, 0x6a, 0x33, + 0xdf, 0xd1, 0xa5, 0xa2, 0x05, 0x3c, 0x41, 0xb5, 0x28, 0x7c, 0x63, 0x37, 0x64, 0x9c, 0x1b, 0xed, + 0x9d, 0x5c, 0x46, 0xa4, 0xcc, 0x85, 0x0c, 0x65, 0x2e, 0x26, 0x94, 0xf9, 0x1a, 0x24, 0xae, 0x80, + 0x51, 0xf3, 0x04, 0xc5, 0xfa, 0xed, 0x02, 0xa0, 0x69, 0x7b, 0x2f, 0xa1, 0xc4, 0x28, 0xa0, 0x11, + 0xbc, 0xfc, 0x8d, 0x3e, 0x85, 0xd5, 0x90, 0x79, 0x9e, 0xeb, 0xf7, 0x9e, 0x07, 0x0e, 0x11, 0x91, + 0xbe, 0xe6, 0x07, 0x0e, 0x38, 0x39, 0x7a, 0x3c, 0x09, 0x4e, 0xc3, 0x58, 0x2f, 0x60, 0x51, 0x47, + 0x63, 0xf1, 0x06, 0x0a, 0x89, 0x0d, 0x64, 0x5a, 0x01, 0xb4, 0x0b, 0xcb, 0xea, 0xc7, 0xc3, 0x90, + 0x0d, 0x8c, 0x3e, 0xbd, 0x39, 0x23, 0xd6, 0x6b, 0x2b, 0x77, 0x81, 0xc7, 0x7c, 0xd6, 0xbf, 0x15, + 0x61, 0x25, 0xd9, 0x87, 0x1e, 0x43, 0xa5, 0xeb, 0x52, 0xcf, 0xc1, 0xb4, 0x6b, 0x54, 0xe6, 0x9d, + 0x5c, 0x50, 0x7d, 0x20, 0x0f, 0xe5, 0xf0, 0x48, 0xfd, 0x70, 0xcc, 0x8d, 0x7e, 0x08, 0xb5, 0xc8, + 0x77, 0x3f, 0x8c, 0x10, 0x67, 0xd5, 0x1b, 0x71, 0x92, 0x21, 0xc6, 0x9c, 0xc2, 0x41, 0x9f, 0xc1, + 0xba, 0x9d, 0x50, 0x7e, 0x09, 0x5d, 0x9a, 0xa1, 0xdf, 0x59, 0x97, 0x05, 0x4f, 0xa2, 0xa0, 0x7d, + 0x58, 0xe1, 0xd4, 0x0e, 0xa9, 0x30, 0xa8, 0xe5, 0x19, 0xf5, 0xa7, 0x76, 0x34, 0x38, 0x86, 0x4c, + 0xf1, 0x5b, 0x37, 0x01, 0x9a, 0xa7, 0xd4, 0xde, 0xb1, 0xe5, 0x65, 0x40, 0x75, 0x58, 0xb2, 0xd9, + 0x60, 0x40, 0x94, 0xd2, 0x96, 0x6e, 0x2d, 0xe3, 0xa8, 0x69, 0xfd, 0x7d, 0x11, 0x36, 0xa3, 0x9c, + 0xf7, 0x19, 0x15, 0xa1, 0x6b, 0x9b, 0xf3, 0xb8, 0x06, 0x30, 0x50, 0xed, 0xfd, 0xb1, 0x56, 0x24, + 0x28, 0xe8, 0x37, 0x60, 0x4d, 0xb7, 0xa2, 0x05, 0x18, 0x19, 0xbf, 0xd7, 0xd0, 0x2f, 0x25, 0x8d, + 0xe4, 0x4b, 0x49, 0x23, 0x38, 0xee, 0x49, 0x02, 0x6f, 0x0c, 0xa8, 0x20, 0x8d, 0x93, 0x3b, 0x3a, + 0xc3, 0x8a, 0xd7, 0x3e, 0x01, 0x85, 0x0e, 0xa0, 0x2a, 0x48, 0xd8, 0xa3, 0x42, 0x59, 0xee, 0x99, + 0x22, 0x36, 0xc6, 0xf9, 0x20, 0xd4, 0xc5, 0x6a, 0xed, 0xcc, 0x93, 0x08, 0xe8, 0x47, 0x80, 0x74, + 0x73, 0xe7, 0x84, 0x86, 0xa4, 0x47, 0x35, 0x6e, 0xf9, 0x3c, 0xb8, 0x19, 0x40, 0xd6, 0xbf, 0x16, + 0x60, 0xf5, 0xf1, 0xe1, 0x61, 0xeb, 0x11, 0x15, 0x46, 0xe2, 0x59, 0xce, 0x66, 0x07, 0xca, 0x01, + 0x0b, 0x85, 0x11, 0xd4, 0x9c, 0xd3, 0x2a, 0x56, 0x09, 0xdb, 0x67, 0x5c, 0x44, 0x3e, 0x53, 0xfe, + 0x46, 0x57, 0x4c, 0x72, 0x4f, 0x4d, 0x9a, 0x63, 0x5a, 0x32, 0x5a, 0xec, 0x0b, 0x11, 0x3c, 0xa6, + 0xc4, 0xa1, 0x21, 0x37, 0xb9, 0x4d, 0x7e, 0xb4, 0x28, 0xd7, 0xaf, 0xc7, 0xe2, 0x24, 0x9f, 0xf5, + 0x01, 0xc0, 0xb8, 0xeb, 0xe5, 0xcd, 0x84, 0xf5, 0x3f, 0x05, 0xf8, 0xc6, 0x19, 0x19, 0x1b, 0xfa, + 0x1c, 0xd6, 0x54, 0xeb, 0x50, 0x89, 0x73, 0x7c, 0xed, 0xf3, 0xf3, 0xbf, 0x33, 0x6c, 0x32, 0x9e, + 0xc0, 0x42, 0xd7, 0xa1, 0x3a, 0x70, 0x7d, 0xac, 0x13, 0x01, 0x5d, 0x1d, 0x5f, 0xc0, 0x49, 0x92, + 0x1a, 0x41, 0x4e, 0xe3, 0x11, 0x25, 0x33, 0x62, 0x4c, 0x42, 0x1f, 0xc1, 0x92, 0xd6, 0xcb, 0x28, + 0x18, 0xc9, 0x17, 0x9e, 0xb9, 0x3a, 0x2a, 0xec, 0x37, 0x3c, 0xd6, 0x6d, 0xd8, 0xcc, 0xf2, 0x6d, + 0x59, 0x22, 0xb4, 0xfe, 0xa6, 0x08, 0x30, 0xc6, 0xc8, 0x74, 0x01, 0xbb, 0xb0, 0xc8, 0x14, 0x92, + 0xd1, 0x9f, 0xb7, 0x67, 0x98, 0xc7, 0xe4, 0x6d, 0xc6, 0x86, 0x15, 0x7d, 0x24, 0x55, 0xd0, 0xe1, + 0xe6, 0x46, 0xbd, 0x75, 0x56, 0x18, 0xc0, 0x53, 0x00, 0x8a, 0x0d, 0xed, 0x41, 0x25, 0x32, 0x89, + 0x33, 0x2f, 0x4f, 0x64, 0x52, 0x53, 0x30, 0x31, 0xbb, 0x84, 0xa2, 0xc6, 0xee, 0xd4, 0x17, 0x66, + 0x40, 0x65, 0x19, 0x28, 0x1c, 0xb3, 0x5b, 0x5f, 0x16, 0x61, 0x25, 0x19, 0x4d, 0xa1, 0xdf, 0x2f, + 0x40, 0x23, 0xa4, 0x3f, 0x1e, 0xba, 0x21, 0x75, 0x1e, 0x0c, 0xe5, 0x1d, 0x6a, 0xdb, 0x7d, 0xea, + 0x0c, 0xa5, 0xe3, 0xdb, 0xeb, 0xf9, 0x2c, 0x26, 0x4b, 0x13, 0x39, 0x14, 0x51, 0xc8, 0x3a, 0x2b, + 0x5a, 0x8b, 0xcd, 0xd5, 0x9c, 0xe0, 0xe8, 0x4f, 0x0a, 0xb0, 0x1d, 0x84, 0x52, 0x01, 0x5e, 0x7e, + 0x41, 0xba, 0x88, 0x72, 0x46, 0x65, 0x20, 0xc2, 0x1b, 0x23, 0x1d, 0xd2, 0x70, 0x80, 0xe7, 0x9d, + 0xc8, 0xea, 0x69, 0xe1, 0xc5, 0xb6, 0xf7, 0x33, 0xd8, 0x48, 0xd6, 0x2e, 0x24, 0x28, 0x57, 0x5e, + 0xe3, 0x2c, 0x7d, 0xd9, 0x9f, 0xe0, 0xc0, 0xd3, 0x18, 0xd6, 0x3f, 0x14, 0xa0, 0x36, 0x39, 0x0e, + 0x7d, 0x0e, 0xb5, 0x81, 0x0c, 0xd6, 0x9b, 0xa7, 0x41, 0x48, 0x39, 0x57, 0x89, 0x68, 0x61, 0xc6, + 0xd6, 0x53, 0x67, 0xa1, 0x4f, 0x42, 0xc5, 0x36, 0x53, 0x48, 0x08, 0xcb, 0x3b, 0x2e, 0xec, 0xbe, + 0xf2, 0xdf, 0x7c, 0xa6, 0x4c, 0xf3, 0x80, 0x93, 0x20, 0x56, 0x07, 0xae, 0xe6, 0x8c, 0xcb, 0xc8, + 0xa3, 0x54, 0x7c, 0xaa, 0xa7, 0x31, 0xd6, 0x31, 0x6e, 0x4b, 0xbb, 0x6d, 0x9e, 0x62, 0x4b, 0xca, + 0x27, 0x9b, 0x96, 0xd5, 0x86, 0x4b, 0x19, 0x01, 0xce, 0x44, 0x34, 0x39, 0x9d, 0x62, 0x7d, 0x13, + 0x96, 0x55, 0x08, 0x24, 0x13, 0x9e, 0xa8, 0x34, 0x1a, 0x13, 0xac, 0x8f, 0x01, 0x62, 0xb3, 0x40, + 0x62, 0x13, 0xb4, 0x90, 0xb0, 0xe2, 0xa9, 0xd2, 0xea, 0xe2, 0x44, 0x69, 0xd5, 0xfa, 0xaf, 0x22, + 0xa0, 0x69, 0xbb, 0x82, 0x9e, 0xc2, 0xa2, 0x76, 0x87, 0x5f, 0xcb, 0x78, 0x1b, 0x8c, 0x89, 0x98, + 0xa3, 0x38, 0x15, 0x73, 0x5c, 0x78, 0x58, 0x70, 0x00, 0x95, 0xb8, 0xf6, 0x57, 0x3e, 0x7f, 0xf8, + 0x12, 0x83, 0xa0, 0xef, 0xc3, 0x0a, 0x49, 0x46, 0x18, 0x0b, 0xe7, 0x59, 0x62, 0x0a, 0xc2, 0xfa, + 0xdb, 0x22, 0x54, 0x13, 0x19, 0x1e, 0xfa, 0x83, 0xf3, 0x18, 0xb7, 0xd2, 0xcc, 0xa4, 0xcf, 0xc0, + 0xab, 0xcb, 0xfb, 0xcb, 0x60, 0xdf, 0x3e, 0xa3, 0x6e, 0xaf, 0x2f, 0xa8, 0x33, 0xb9, 0xb6, 0xb9, + 0xed, 0xdb, 0xcf, 0x8b, 0xb0, 0x3e, 0x91, 0xd5, 0xfe, 0xbf, 0x0c, 0xe7, 0x94, 0xe1, 0x5f, 0x17, + 0xb4, 0x0c, 0x13, 0x20, 0xe8, 0x07, 0xb0, 0xea, 0x25, 0x6f, 0x81, 0xb1, 0x00, 0xe7, 0xba, 0x40, + 0x69, 0x24, 0x69, 0x07, 0x62, 0xcb, 0xa3, 0xad, 0xf6, 0x32, 0x4e, 0x50, 0x64, 0xe8, 0x26, 0x58, + 0xc0, 0x3c, 0xd6, 0x1b, 0x7d, 0x42, 0x47, 0x26, 0x18, 0x4e, 0x92, 0xac, 0xff, 0x2e, 0xc0, 0xd5, + 0x9c, 0xda, 0x39, 0xb2, 0x60, 0x65, 0xe0, 0xfa, 0x3b, 0x27, 0xc4, 0xf5, 0xc8, 0x91, 0xa7, 0x83, + 0xac, 0x55, 0x9c, 0xa2, 0xa5, 0x0c, 0x43, 0xf1, 0x22, 0x0c, 0xc3, 0x4d, 0x58, 0x1b, 0x90, 0xd3, + 0xe7, 0x3e, 0x89, 0xa7, 0x2d, 0xa9, 0x69, 0x27, 0xa8, 0xc9, 0x77, 0xb2, 0xf2, 0xf9, 0xdf, 0xc9, + 0xac, 0xaf, 0x0a, 0x50, 0x9b, 0x8c, 0xe1, 0x66, 0xa6, 0x74, 0xd9, 0x49, 0x52, 0xf1, 0x82, 0x92, + 0xa4, 0x94, 0x4c, 0x4b, 0x17, 0x20, 0x53, 0xeb, 0xb7, 0xe0, 0x6a, 0x4e, 0x14, 0x24, 0x7d, 0xeb, + 0x0b, 0xa5, 0xfc, 0xa6, 0xc2, 0x63, 0x5a, 0x68, 0x0f, 0x40, 0xeb, 0xbe, 0x2a, 0x4d, 0x15, 0x67, + 0x44, 0xc1, 0x53, 0x51, 0x4d, 0x82, 0xd9, 0xfa, 0xcb, 0x12, 0xac, 0xa5, 0xdf, 0x27, 0xd0, 0xaf, + 0x41, 0x99, 0x9e, 0x52, 0xdb, 0xdc, 0x84, 0x1b, 0x67, 0xc4, 0xb3, 0x51, 0x66, 0x8e, 0x15, 0x03, + 0xfa, 0x1e, 0x2c, 0xc9, 0x94, 0xeb, 0x11, 0x15, 0x33, 0x0b, 0x91, 0xa9, 0x34, 0x13, 0x47, 0x6c, + 0xe8, 0x21, 0x2c, 0x0b, 0x3b, 0x68, 0x33, 0xfb, 0x98, 0x8a, 0x99, 0x45, 0xbe, 0xc3, 0xdd, 0x96, + 0x1e, 0x69, 0x50, 0xc6, 0xac, 0xe8, 0x5d, 0xb8, 0x24, 0xaf, 0xb8, 0x4b, 0xbc, 0x07, 0xd4, 0x23, + 0xa3, 0xa8, 0x4e, 0x56, 0x56, 0x52, 0xcc, 0xea, 0xca, 0x28, 0xaa, 0x2d, 0x64, 0x15, 0xd5, 0xd0, + 0x1b, 0xb0, 0x1a, 0xd0, 0xd0, 0x55, 0xd5, 0x7c, 0x35, 0x6c, 0x51, 0x0d, 0x4b, 0x13, 0xd1, 0x6d, + 0xa8, 0xf1, 0xa1, 0x6d, 0x53, 0xce, 0x0f, 0xfb, 0x21, 0xe5, 0x7d, 0xe6, 0x39, 0xf5, 0x25, 0x35, + 0x70, 0x8a, 0x2e, 0xc7, 0x76, 0x89, 0xeb, 0x0d, 0x43, 0x3a, 0x1e, 0x5b, 0xd1, 0x63, 0x27, 0xe9, + 0xd6, 0x9f, 0x15, 0xe0, 0x72, 0x66, 0x91, 0x47, 0xae, 0xcb, 0x96, 0x29, 0xaa, 0x54, 0xbe, 0xc4, + 0xc5, 0x48, 0x13, 0xf5, 0xa7, 0x8b, 0x26, 0xf3, 0x29, 0x46, 0x9f, 0x2e, 0x9a, 0x54, 0xe6, 0x11, + 0x2c, 0x39, 0xee, 0x89, 0xcb, 0x63, 0xbd, 0x9e, 0xf3, 0xb2, 0x44, 0xdc, 0xd6, 0x3f, 0x16, 0x60, + 0x33, 0x2b, 0x6d, 0xca, 0xcc, 0xba, 0x3f, 0x84, 0x7a, 0xea, 0x92, 0x3d, 0x17, 0xae, 0xe7, 0xfe, + 0x84, 0x18, 0xc7, 0x20, 0xa5, 0x90, 0xdb, 0x9f, 0x73, 0xd3, 0x4b, 0x17, 0x55, 0x0e, 0xf9, 0xe3, + 0x22, 0x2c, 0xc7, 0x6f, 0x44, 0xe8, 0x21, 0x2c, 0x7a, 0xee, 0xc0, 0x15, 0x51, 0x60, 0x3f, 0xbb, + 0x0a, 0xc7, 0x1b, 0x4f, 0x15, 0x83, 0x7e, 0x47, 0x32, 0xdc, 0xe8, 0xa9, 0x3c, 0x82, 0x1f, 0x0f, + 0x29, 0x17, 0xb3, 0x23, 0xf9, 0x31, 0x12, 0x36, 0x2c, 0x1a, 0x2b, 0x46, 0xd8, 0xfa, 0x36, 0x54, + 0x13, 0x93, 0xcc, 0xf5, 0x92, 0xf2, 0x1d, 0x58, 0x4d, 0xa1, 0xce, 0xf5, 0x7e, 0xf2, 0x65, 0x01, + 0xae, 0xe6, 0x14, 0x67, 0xd1, 0xf3, 0x29, 0x27, 0x51, 0x38, 0xcf, 0x91, 0x4c, 0xfa, 0x94, 0x3d, + 0xa8, 0x0c, 0xc8, 0x69, 0x7b, 0x18, 0xf6, 0xce, 0x69, 0xcd, 0x63, 0x76, 0xeb, 0xcf, 0x0b, 0xb0, + 0x31, 0x55, 0x7a, 0xfc, 0xe5, 0x2b, 0xfd, 0xff, 0xc7, 0x02, 0x54, 0x13, 0x4f, 0xb1, 0xe8, 0x43, + 0x58, 0x08, 0x58, 0x18, 0x6b, 0xe0, 0xcc, 0xf7, 0xdb, 0x16, 0x0b, 0x05, 0xd6, 0x2c, 0x68, 0x3f, + 0x15, 0x0a, 0x48, 0xf6, 0xbb, 0x2f, 0xf3, 0xfc, 0xdb, 0x48, 0x7f, 0x0f, 0x30, 0x8e, 0x04, 0xbe, + 0x09, 0xcb, 0xb6, 0x37, 0xe4, 0x82, 0x86, 0x7b, 0x2d, 0x13, 0xba, 0x8c, 0x09, 0x71, 0xe5, 0xa7, + 0x9c, 0xa8, 0xfc, 0x5c, 0x87, 0x6a, 0x54, 0xeb, 0xd8, 0x6b, 0xe9, 0x42, 0xde, 0x32, 0x4e, 0x92, + 0xd0, 0x2d, 0x58, 0xe7, 0x3a, 0xe7, 0x8d, 0x1f, 0x7a, 0x96, 0xf4, 0x27, 0x0f, 0x13, 0x64, 0x69, + 0xad, 0x3d, 0x46, 0x9c, 0xfb, 0xc4, 0x23, 0xbe, 0xad, 0x96, 0xa0, 0xdf, 0xeb, 0x27, 0xa8, 0xd2, + 0xba, 0x24, 0x29, 0xa6, 0xe6, 0x42, 0xfc, 0x1e, 0xe5, 0xf5, 0x65, 0xb5, 0x80, 0xdc, 0x7e, 0x19, + 0x60, 0x45, 0x8b, 0x53, 0x06, 0x55, 0x7f, 0x34, 0x93, 0xa2, 0xa1, 0xf7, 0xe1, 0x72, 0xd4, 0x3e, + 0x0c, 0x49, 0xb7, 0xeb, 0xda, 0xfa, 0x9b, 0x0c, 0xf3, 0x51, 0x7b, 0x76, 0xa7, 0xf4, 0x4e, 0x7d, + 0x4a, 0x3c, 0xd1, 0xdf, 0xed, 0x53, 0xfb, 0x58, 0xba, 0x67, 0x79, 0x52, 0xea, 0x55, 0x7e, 0x01, + 0x67, 0x75, 0xc9, 0x7d, 0x04, 0xc3, 0x23, 0xcf, 0xe5, 0xfd, 0x7d, 0x26, 0xa4, 0xbb, 0x1e, 0xed, + 0x38, 0x4e, 0x48, 0x39, 0xa7, 0x5c, 0xbd, 0xc5, 0x57, 0x70, 0x6e, 0x3f, 0x72, 0xe0, 0xf2, 0x84, + 0xf8, 0x74, 0x2d, 0x5f, 0x7d, 0xff, 0x7e, 0x96, 0x1d, 0x6b, 0x67, 0x71, 0xe1, 0x6c, 0x30, 0x69, + 0x4d, 0xce, 0xfd, 0x2e, 0x6c, 0xfd, 0xac, 0x10, 0x2b, 0x7a, 0xcb, 0xd4, 0x87, 0xa7, 0x1c, 0xc5, + 0x16, 0x54, 0xd4, 0x67, 0x5e, 0x36, 0xf3, 0x22, 0xd7, 0x15, 0xb5, 0x55, 0x99, 0x5a, 0x4a, 0x50, + 0x57, 0x3f, 0x75, 0x8d, 0xf9, 0x19, 0x80, 0xb6, 0xe9, 0x4a, 0xb6, 0xe7, 0xaa, 0x91, 0x27, 0x00, + 0xe4, 0xf4, 0x7e, 0x74, 0x50, 0x3a, 0x32, 0x88, 0xdb, 0xd6, 0xe7, 0x70, 0x39, 0x53, 0x56, 0x68, + 0x17, 0x2a, 0xb6, 0x79, 0xbb, 0x33, 0x56, 0x24, 0xff, 0x23, 0x91, 0xf4, 0x23, 0x1f, 0x8e, 0x19, + 0xad, 0x3e, 0xac, 0x4f, 0x44, 0x3a, 0x71, 0x09, 0xbe, 0xf0, 0xf5, 0x4b, 0xf0, 0xc5, 0x71, 0x09, + 0xde, 0xfa, 0xc3, 0x02, 0xc0, 0xf8, 0x6b, 0x8b, 0x39, 0xeb, 0x40, 0xf1, 0xe9, 0x96, 0x92, 0xaf, + 0x6c, 0x57, 0x60, 0x91, 0x76, 0xbb, 0xd4, 0x16, 0x51, 0x55, 0x5f, 0xb7, 0xd0, 0x3b, 0xb0, 0x31, + 0xfe, 0x96, 0x23, 0x19, 0x71, 0x95, 0xf0, 0x74, 0x87, 0xf5, 0x3b, 0x05, 0xb8, 0x9a, 0x93, 0x05, + 0xe6, 0xc6, 0xc8, 0xe6, 0xd5, 0x38, 0x31, 0xd4, 0x78, 0x8d, 0x97, 0x4f, 0x7e, 0x27, 0x01, 0xac, + 0x9f, 0x96, 0x01, 0x4d, 0x7f, 0xc8, 0x81, 0x0e, 0x60, 0x8d, 0xd3, 0xa7, 0xae, 0x3f, 0x3c, 0x3d, + 0x08, 0x84, 0xa9, 0xfd, 0x9d, 0x7d, 0xd8, 0xed, 0x66, 0x72, 0x38, 0x9e, 0x60, 0x97, 0xc6, 0x35, + 0x1c, 0xfa, 0x3b, 0xfc, 0x39, 0xa7, 0x5a, 0xd0, 0x25, 0x3c, 0x26, 0x48, 0xc3, 0xa4, 0x1a, 0xfb, + 0xcc, 0xc7, 0x8c, 0x09, 0xe3, 0x36, 0x52, 0x34, 0xd4, 0x00, 0xc4, 0x87, 0x41, 0xe0, 0xa9, 0x8a, + 0x1e, 0xf1, 0x1e, 0x85, 0x6c, 0x18, 0xe8, 0xfa, 0x7f, 0x09, 0x67, 0xf4, 0xa0, 0x3a, 0x2c, 0x75, + 0xb9, 0xfa, 0x6d, 0x4e, 0x21, 0x6a, 0xca, 0x74, 0x4b, 0x21, 0xeb, 0xce, 0x45, 0xd5, 0x99, 0xa0, + 0xa0, 0x6f, 0xc3, 0x12, 0x1f, 0x71, 0x5b, 0x78, 0xd1, 0x67, 0x5a, 0xf9, 0x5f, 0xcc, 0xb5, 0xd5, + 0x38, 0x1c, 0x8d, 0x47, 0x5f, 0xc0, 0xda, 0x0b, 0xd7, 0x77, 0xd8, 0x0b, 0x1e, 0xc9, 0xad, 0xa2, + 0xe4, 0xf6, 0x41, 0x7e, 0x29, 0x40, 0x0f, 0x9f, 0x38, 0x80, 0x58, 0x8c, 0x69, 0x34, 0x69, 0x67, + 0xcd, 0x2e, 0x76, 0xfb, 0xd2, 0xa6, 0x1b, 0xdb, 0xbc, 0xac, 0x34, 0x31, 0xab, 0x4b, 0x9f, 0xa4, + 0x6d, 0xb3, 0x41, 0xd0, 0x4a, 0xfc, 0x13, 0xd3, 0x99, 0x27, 0x99, 0x1a, 0x8e, 0x27, 0xd8, 0xad, + 0x23, 0x58, 0x4b, 0x9f, 0xb5, 0xbc, 0x78, 0x43, 0x79, 0xac, 0xc6, 0xb6, 0xc9, 0xdf, 0x92, 0x16, + 0x32, 0x2f, 0x7e, 0x76, 0x97, 0xbf, 0x63, 0x17, 0x5a, 0x4a, 0xb8, 0xd0, 0x4d, 0x58, 0xf0, 0xe8, + 0x89, 0xfa, 0x0a, 0x54, 0xdd, 0x31, 0xd5, 0xb0, 0xee, 0xc2, 0xa2, 0x96, 0xec, 0x1c, 0xcf, 0x5a, + 0x7f, 0x55, 0x80, 0x57, 0xcf, 0x14, 0x26, 0xfa, 0x00, 0xae, 0xf4, 0x06, 0x9c, 0xec, 0x86, 0xd4, + 0xa1, 0xbe, 0x4c, 0x97, 0x64, 0x38, 0x90, 0xc8, 0x2c, 0x72, 0x7a, 0xa5, 0xe6, 0x4d, 0xf7, 0x98, + 0xc9, 0x33, 0x7a, 0x64, 0xe2, 0x12, 0xab, 0xf6, 0xfe, 0xf8, 0x43, 0x9a, 0x34, 0xd1, 0x6a, 0xc1, + 0x5a, 0x5a, 0xd2, 0x99, 0x8f, 0x4b, 0xb7, 0xa1, 0xa6, 0xc2, 0x2e, 0x69, 0xcd, 0xa2, 0x03, 0xd4, + 0x33, 0x4f, 0xd1, 0xad, 0x75, 0x58, 0x4d, 0x7d, 0x0d, 0x63, 0xd5, 0xe1, 0x4a, 0xf6, 0x3f, 0x0b, + 0x59, 0x57, 0x60, 0x33, 0xcb, 0x92, 0x5a, 0x9b, 0x80, 0xa6, 0xab, 0x17, 0xf7, 0xdf, 0xf9, 0xa7, + 0xaf, 0xae, 0xbd, 0xf2, 0x2f, 0x5f, 0x5d, 0x7b, 0xe5, 0xdf, 0xbf, 0xba, 0xf6, 0xca, 0x0f, 0xaf, + 0x69, 0xc5, 0xd1, 0xff, 0x73, 0xb7, 0x3d, 0xf5, 0x4f, 0x7d, 0x47, 0x8b, 0xca, 0x89, 0xbd, 0xf7, + 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x66, 0x46, 0x79, 0x63, 0xf0, 0x37, 0x00, 0x00, } diff --git a/operator/v1alpha1/operator.proto b/operator/v1alpha1/operator.proto index e8c8df171a8..10d14f9eef1 100644 --- a/operator/v1alpha1/operator.proto +++ b/operator/v1alpha1/operator.proto @@ -183,8 +183,6 @@ message ComponentSpec { TypeBoolValueForPB enabled = 1; // Namespace for the component. string namespace = 2; - // Check whether autoScale is enabled. - TypeBoolValueForPB autoScaleEnabled = 3; // Hub for the component (overrides top level hub setting). string hub = 10; // Tag for the component (overrides top level tag setting). @@ -226,13 +224,12 @@ message GatewaySpec { string name = 3; // Labels for the gateway. map label = 4; - // Check whether autoScale is enabled. - TypeBoolValueForPB autoScaleEnabled = 5; // Hub for the component (overrides top level hub setting). string hub = 10; // Tag for the component (overrides top level tag setting). TypeInterface tag = 11; + // Kubernetes resource spec. KubernetesResourcesSpec k8s = 50; } @@ -288,6 +285,8 @@ message KubernetesResourcesSpec { // k8s pod security context // [https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod) PodSecurityContext securityContext = 16; + // Check whether autoScale is enabled. + TypeBoolValueForPB autoScaleEnabled = 17; // Overlays for k8s resources in rendered manifests. repeated K8sObjectOverlay overlays = 100; diff --git a/python/istio_api/operator/v1alpha1/operator_pb2.py b/python/istio_api/operator/v1alpha1/operator_pb2.py index 65d10166b16..6325ec0c52e 100644 --- a/python/istio_api/operator/v1alpha1/operator_pb2.py +++ b/python/istio_api/operator/v1alpha1/operator_pb2.py @@ -23,7 +23,7 @@ package='istio.operator.v1alpha1', syntax='proto3', serialized_options=_b('Z\036istio.io/api/operator/v1alpha1\310\342\036\000\320\342\036\000\340\342\036\000'), - serialized_pb=_b('\n operator/v1alpha1/operator.proto\x12\x17istio.operator.v1alpha1\x1a\x19google/protobuf/any.proto\x1a\x34k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto\x1a\x14gogoproto/gogo.proto\"\xa5\x05\n\x11IstioOperatorSpec\x12\x0f\n\x07profile\x18\n \x01(\t\x12\x1c\n\x14install_package_path\x18\x0b \x01(\t\x12\x0b\n\x03hub\x18\x0c \x01(\t\x12\x33\n\x03tag\x18\r \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x1b\n\x0fresource_suffix\x18\x0e \x01(\tB\x02\x18\x01\x12\x11\n\tnamespace\x18\x0f \x01(\t\x12\x10\n\x08revision\x18\x10 \x01(\t\x12\x44\n\x0bmesh_config\x18( \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12\x42\n\ncomponents\x18\x32 \x01(\x0b\x32..istio.operator.v1alpha1.IstioComponentSetSpec\x12]\n\x10\x61\x64\x64on_components\x18\x33 \x03(\x0b\x32?.istio.operator.v1alpha1.IstioOperatorSpec.AddonComponentsEntryB\x02\x18\x01\x12?\n\x06values\x18\x64 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12K\n\x12unvalidated_values\x18\x65 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x1a\x66\n\x14\x41\x64\x64onComponentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ExternalComponentSpec:\x02\x38\x01\"\xf4\x03\n\rInstallStatus\x12=\n\x06status\x18\x01 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\x0f\n\x07message\x18\x03 \x01(\t\x12U\n\x10\x63omponent_status\x18\x02 \x03(\x0b\x32;.istio.operator.v1alpha1.InstallStatus.ComponentStatusEntry\x1an\n\rVersionStatus\x12\x0f\n\x07version\x18\x01 \x01(\t\x12=\n\x06status\x18\x02 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\r\n\x05\x65rror\x18\x04 \x01(\t\x1al\n\x14\x43omponentStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.istio.operator.v1alpha1.InstallStatus.VersionStatus:\x02\x38\x01\"^\n\x06Status\x12\x08\n\x04NONE\x10\x00\x12\x0c\n\x08UPDATING\x10\x01\x12\x0f\n\x0bRECONCILING\x10\x02\x12\x0b\n\x07HEALTHY\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x12\x13\n\x0f\x41\x43TION_REQUIRED\x10\x05\"\xee\x03\n\x15IstioComponentSetSpec\x12\x38\n\x04\x62\x61se\x18\x1d \x01(\x0b\x32*.istio.operator.v1alpha1.BaseComponentSpec\x12\x35\n\x05pilot\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12\x33\n\x03\x63ni\x18& \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12=\n\ristiod_remote\x18\' \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12>\n\x10ingress_gateways\x18( \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpec\x12=\n\x0f\x65gress_gateways\x18) \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpecJ\x04\x08\x1f\x10 J\x04\x08 \x10!J\x04\x08!\x10\"J\x04\x08\"\x10#J\x04\x08#\x10$J\x04\x08$\x10%J\x04\x08%\x10&R\x07\x63itadelR\x06policyR\ttelemetryR\x06galleyR\nnode_agentR\x05proxyR\x10sidecar_injector\"\x90\x01\n\x11\x42\x61seComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\xde\x02\n\rComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x45\n\x10\x61utoScaleEnabled\x18\x03 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x34\n\x04spec\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\x15\x45xternalComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x34\n\x04spec\x18\n \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x12\n\nchart_path\x18\x1e \x01(\t\x12$\n\x06schema\x18# \x01(\x0b\x32\x14.google.protobuf.Any\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\xa2\x03\n\x0bGatewaySpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12>\n\x05label\x18\x04 \x03(\x0b\x32/.istio.operator.v1alpha1.GatewaySpec.LabelEntry\x12\x45\n\x10\x61utoScaleEnabled\x18\x05 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\x1a,\n\nLabelEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd8\t\n\x17KubernetesResourcesSpec\x12\x33\n\x08\x61\x66\x66inity\x18\x01 \x01(\x0b\x32!.istio.operator.v1alpha1.Affinity\x12,\n\x03\x65nv\x18\x02 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.EnvVar\x12\x46\n\x08hpa_spec\x18\x03 \x01(\x0b\x32\x34.istio.operator.v1alpha1.HorizontalPodAutoscalerSpec\x12\x19\n\x11image_pull_policy\x18\x04 \x01(\t\x12Y\n\rnode_selector\x18\x05 \x03(\x0b\x32\x42.istio.operator.v1alpha1.KubernetesResourcesSpec.NodeSelectorEntry\x12O\n\x15pod_disruption_budget\x18\x06 \x01(\x0b\x32\x30.istio.operator.v1alpha1.PodDisruptionBudgetSpec\x12]\n\x0fpod_annotations\x18\x07 \x03(\x0b\x32\x44.istio.operator.v1alpha1.KubernetesResourcesSpec.PodAnnotationsEntry\x12\x1b\n\x13priority_class_name\x18\x08 \x01(\t\x12@\n\x0freadiness_probe\x18\t \x01(\x0b\x32\'.istio.operator.v1alpha1.ReadinessProbe\x12\x15\n\rreplica_count\x18\n \x01(\r\x12\x35\n\tresources\x18\x0b \x01(\x0b\x32\".istio.operator.v1alpha1.Resources\x12\x35\n\x07service\x18\x0c \x01(\x0b\x32$.istio.operator.v1alpha1.ServiceSpec\x12=\n\x08strategy\x18\r \x01(\x0b\x32+.istio.operator.v1alpha1.DeploymentStrategy\x12\x38\n\x0btolerations\x18\x0e \x03(\x0b\x32#.istio.operator.v1alpha1.Toleration\x12\x65\n\x13service_annotations\x18\x0f \x03(\x0b\x32H.istio.operator.v1alpha1.KubernetesResourcesSpec.ServiceAnnotationsEntry\x12\x44\n\x0fsecurityContext\x18\x10 \x01(\x0b\x32+.istio.operator.v1alpha1.PodSecurityContext\x12;\n\x08overlays\x18\x64 \x03(\x0b\x32).istio.operator.v1alpha1.K8sObjectOverlay\x1a\x33\n\x11NodeSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x35\n\x13PodAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17ServiceAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xdb\x01\n\x10K8sObjectOverlay\x12\x13\n\x0b\x61pi_version\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x44\n\x07patches\x18\x04 \x03(\x0b\x32\x33.istio.operator.v1alpha1.K8sObjectOverlay.PathValue\x1aP\n\tPathValue\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\"\xc5\x01\n\x08\x41\x66\x66inity\x12;\n\x0cnodeAffinity\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeAffinity\x12\x39\n\x0bpodAffinity\x18\x02 \x01(\x0b\x32$.istio.operator.v1alpha1.PodAffinity\x12\x41\n\x0fpodAntiAffinity\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAntiAffinity\"\x82\x01\n\x14\x43onfigMapKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"(\n\x0e\x43lientIPConfig\x12\x16\n\x0etimeoutSeconds\x18\x01 \x01(\x05\"M\n\x1b\x43rossVersionObjectReference\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\napiVersion\x18\x03 \x01(\t\"k\n\x12\x44\x65ploymentStrategy\x12\x0c\n\x04type\x18\x01 \x01(\t\x12G\n\rrollingUpdate\x18\x02 \x01(\x0b\x32\x30.istio.operator.v1alpha1.RollingUpdateDeployment\"_\n\x06\x45nvVar\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x38\n\tvalueFrom\x18\x03 \x01(\x0b\x32%.istio.operator.v1alpha1.EnvVarSource\"\xa2\x02\n\x0c\x45nvVarSource\x12>\n\x08\x66ieldRef\x18\x01 \x01(\x0b\x32,.istio.operator.v1alpha1.ObjectFieldSelector\x12H\n\x10resourceFieldRef\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ResourceFieldSelector\x12\x46\n\x0f\x63onfigMapKeyRef\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.ConfigMapKeySelector\x12@\n\x0csecretKeyRef\x18\x04 \x01(\x0b\x32*.istio.operator.v1alpha1.SecretKeySelector\"\x1d\n\nExecAction\x12\x0f\n\x07\x63ommand\x18\x01 \x03(\t\"\x86\x02\n\x14\x45xternalMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12K\n\x0emetricSelector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12I\n\x12targetAverageValue\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xb2\x01\n\rHTTPGetAction\x12\x0c\n\x04path\x18\x01 \x01(\t\x12;\n\x04port\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x03 \x01(\t\x12\x0e\n\x06scheme\x18\x04 \x01(\t\x12\x38\n\x0bhttpHeaders\x18\x05 \x03(\x0b\x32#.istio.operator.v1alpha1.HTTPHeader\")\n\nHTTPHeader\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xcb\x01\n\x1bHorizontalPodAutoscalerSpec\x12L\n\x0escaleTargetRef\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x13\n\x0bminReplicas\x18\x02 \x01(\x05\x12\x13\n\x0bmaxReplicas\x18\x03 \x01(\x05\x12\x34\n\x07metrics\x18\x04 \x03(\x0b\x32#.istio.operator.v1alpha1.MetricSpec\"$\n\x14LocalObjectReference\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x92\x02\n\nMetricSpec\x12\x0c\n\x04type\x18\x01 \x01(\t\x12;\n\x06object\x18\x02 \x01(\x0b\x32+.istio.operator.v1alpha1.ObjectMetricSource\x12\x37\n\x04pods\x18\x03 \x01(\x0b\x32).istio.operator.v1alpha1.PodsMetricSource\x12?\n\x08resource\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.ResourceMetricSource\x12?\n\x08\x65xternal\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.ExternalMetricSource\"\xd8\x01\n\x0cNodeAffinity\x12]\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeSelector\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.PreferredSchedulingTerm\"T\n\x0cNodeSelector\x12\x44\n\x11nodeSelectorTerms\x18\x01 \x03(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xa5\x01\n\x10NodeSelectorTerm\x12J\n\x10matchExpressions\x18\x01 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\x12\x45\n\x0bmatchFields\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\"H\n\x17NodeSelectorRequirement\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\x0e\n\x06values\x18\x03 \x03(\t\"<\n\x13ObjectFieldSelector\x12\x12\n\napiVersion\x18\x01 \x01(\t\x12\x11\n\tfieldPath\x18\x02 \x01(\t\"-\n\nObjectMeta\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x11\n\tnamespace\x18\x06 \x01(\t\"\xbe\x02\n\x12ObjectMetricSource\x12\x44\n\x06target\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x12\n\nmetricName\x18\x02 \x01(\t\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x04 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x43\n\x0c\x61verageValue\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xda\x01\n\x0bPodAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\xde\x01\n\x0fPodAntiAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\x86\x01\n\x0fPodAffinityTerm\x12J\n\rlabelSelector\x18\x01 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x12\n\nnamespaces\x18\x02 \x03(\t\x12\x13\n\x0btopologyKey\x18\x03 \x01(\t\"\xcc\x01\n\x17PodDisruptionBudgetSpec\x12\x14\n\x0cminAvailable\x18\x01 \x01(\r\x12\x45\n\x08selector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x16\n\x0emaxUnavailable\x18\x03 \x01(\r\x12<\n\x07\x65nabled\x18\x04 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\"\xb8\x01\n\x10PodsMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12I\n\x12targetAverageValue\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x03 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\"h\n\x17PreferredSchedulingTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12=\n\npreference\x18\x02 \x01(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xb9\x02\n\x0eReadinessProbe\x12\x31\n\x04\x65xec\x18\x01 \x01(\x0b\x32#.istio.operator.v1alpha1.ExecAction\x12\x37\n\x07httpGet\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.HTTPGetAction\x12;\n\ttcpSocket\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.TCPSocketAction\x12\x1b\n\x13initialDelaySeconds\x18\x04 \x01(\x05\x12\x16\n\x0etimeoutSeconds\x18\x05 \x01(\x05\x12\x15\n\rperiodSeconds\x18\x06 \x01(\x05\x12\x18\n\x10successThreshold\x18\x07 \x01(\x05\x12\x18\n\x10\x66\x61ilureThreshold\x18\x08 \x01(\x05\"\x80\x01\n\x15ResourceFieldSelector\x12\x15\n\rcontainerName\x18\x01 \x01(\t\x12\x10\n\x08resource\x18\x02 \x01(\t\x12>\n\x07\x64ivisor\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x91\x01\n\x14ResourceMetricSource\x12\x0c\n\x04name\x18\x01 \x01(\t\x12 \n\x18targetAverageUtilization\x18\x02 \x01(\x05\x12I\n\x12targetAverageValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xef\x01\n\tResources\x12>\n\x06limits\x18\x01 \x03(\x0b\x32..istio.operator.v1alpha1.Resources.LimitsEntry\x12\x42\n\x08requests\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.Resources.RequestsEntry\x1a-\n\x0bLimitsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rRequestsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa1\x01\n\x17RollingUpdateDeployment\x12\x45\n\x0emaxUnavailable\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12?\n\x08maxSurge\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x7f\n\x11SecretKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"\x85\x04\n\x0bServiceSpec\x12\x33\n\x05ports\x18\x01 \x03(\x0b\x32$.istio.operator.v1alpha1.ServicePort\x12\x44\n\x08selector\x18\x02 \x03(\x0b\x32\x32.istio.operator.v1alpha1.ServiceSpec.SelectorEntry\x12\x11\n\tclusterIP\x18\x03 \x01(\t\x12\x0c\n\x04type\x18\x04 \x01(\t\x12\x13\n\x0b\x65xternalIPs\x18\x05 \x03(\t\x12\x17\n\x0fsessionAffinity\x18\x07 \x01(\t\x12\x16\n\x0eloadBalancerIP\x18\x08 \x01(\t\x12 \n\x18loadBalancerSourceRanges\x18\t \x03(\t\x12\x14\n\x0c\x65xternalName\x18\n \x01(\t\x12\x1d\n\x15\x65xternalTrafficPolicy\x18\x0b \x01(\t\x12\x1b\n\x13healthCheckNodePort\x18\x0c \x01(\x05\x12 \n\x18publishNotReadyAddresses\x18\r \x01(\x08\x12M\n\x15sessionAffinityConfig\x18\x0e \x01(\x0b\x32..istio.operator.v1alpha1.SessionAffinityConfig\x1a/\n\rSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x90\x01\n\x0bServicePort\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08protocol\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\x05\x12\x41\n\ntargetPort\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x10\n\x08nodePort\x18\x05 \x01(\x05\"R\n\x15SessionAffinityConfig\x12\x39\n\x08\x63lientIP\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.ClientIPConfig\"\\\n\x0fTCPSocketAction\x12;\n\x04port\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x02 \x01(\t\"e\n\nToleration\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\t\x12\x0e\n\x06\x65\x66\x66\x65\x63t\x18\x04 \x01(\t\x12\x19\n\x11tolerationSeconds\x18\x05 \x01(\x03\"l\n\x17WeightedPodAffinityTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12\x41\n\x0fpodAffinityTerm\x18\x02 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\"\x9f\x03\n\x12PodSecurityContext\x12?\n\x0eseLinuxOptions\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.SELinuxOptions\x12\x11\n\trunAsUser\x18\x02 \x01(\x03\x12\x14\n\x0crunAsNonRoot\x18\x03 \x01(\x08\x12\x1a\n\x12supplementalGroups\x18\x04 \x03(\x03\x12\x0f\n\x07\x66sGroup\x18\x05 \x01(\x03\x12\x12\n\nrunAsGroup\x18\x06 \x01(\x03\x12\x30\n\x07sysctls\x18\x07 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.Sysctl\x12N\n\x0ewindowsOptions\x18\x08 \x01(\x0b\x32\x36.istio.operator.v1alpha1.WindowsSecurityContextOptions\x12\x1b\n\x13\x66sGroupChangePolicy\x18\t \x01(\t\x12?\n\x0eseccompProfile\x18\n \x01(\x0b\x32\'.istio.operator.v1alpha1.SeccompProfile\"I\n\x0eSELinuxOptions\x12\x0c\n\x04user\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\r\n\x05level\x18\x04 \x01(\t\"%\n\x06Sysctl\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"r\n\x1dWindowsSecurityContextOptions\x12\x1e\n\x16gmsaCredentialSpecName\x18\x01 \x01(\t\x12\x1a\n\x12gmsaCredentialSpec\x18\x02 \x01(\t\x12\x15\n\rrunAsUserName\x18\x03 \x01(\t\"8\n\x0eSeccompProfile\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x18\n\x10localhostProfile\x18\x02 \x01(\t\"\x0f\n\rTypeInterface\"\x18\n\x16TypeMapStringInterface\"\x16\n\x14TypeIntOrStringForPB\"\x14\n\x12TypeBoolValueForPBB,Z\x1eistio.io/api/operator/v1alpha1\xc8\xe2\x1e\x00\xd0\xe2\x1e\x00\xe0\xe2\x1e\x00\x62\x06proto3') + serialized_pb=_b('\n operator/v1alpha1/operator.proto\x12\x17istio.operator.v1alpha1\x1a\x19google/protobuf/any.proto\x1a\x34k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto\x1a\x14gogoproto/gogo.proto\"\xa5\x05\n\x11IstioOperatorSpec\x12\x0f\n\x07profile\x18\n \x01(\t\x12\x1c\n\x14install_package_path\x18\x0b \x01(\t\x12\x0b\n\x03hub\x18\x0c \x01(\t\x12\x33\n\x03tag\x18\r \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x1b\n\x0fresource_suffix\x18\x0e \x01(\tB\x02\x18\x01\x12\x11\n\tnamespace\x18\x0f \x01(\t\x12\x10\n\x08revision\x18\x10 \x01(\t\x12\x44\n\x0bmesh_config\x18( \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12\x42\n\ncomponents\x18\x32 \x01(\x0b\x32..istio.operator.v1alpha1.IstioComponentSetSpec\x12]\n\x10\x61\x64\x64on_components\x18\x33 \x03(\x0b\x32?.istio.operator.v1alpha1.IstioOperatorSpec.AddonComponentsEntryB\x02\x18\x01\x12?\n\x06values\x18\x64 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12K\n\x12unvalidated_values\x18\x65 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x1a\x66\n\x14\x41\x64\x64onComponentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ExternalComponentSpec:\x02\x38\x01\"\xf4\x03\n\rInstallStatus\x12=\n\x06status\x18\x01 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\x0f\n\x07message\x18\x03 \x01(\t\x12U\n\x10\x63omponent_status\x18\x02 \x03(\x0b\x32;.istio.operator.v1alpha1.InstallStatus.ComponentStatusEntry\x1an\n\rVersionStatus\x12\x0f\n\x07version\x18\x01 \x01(\t\x12=\n\x06status\x18\x02 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\r\n\x05\x65rror\x18\x04 \x01(\t\x1al\n\x14\x43omponentStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.istio.operator.v1alpha1.InstallStatus.VersionStatus:\x02\x38\x01\"^\n\x06Status\x12\x08\n\x04NONE\x10\x00\x12\x0c\n\x08UPDATING\x10\x01\x12\x0f\n\x0bRECONCILING\x10\x02\x12\x0b\n\x07HEALTHY\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x12\x13\n\x0f\x41\x43TION_REQUIRED\x10\x05\"\xee\x03\n\x15IstioComponentSetSpec\x12\x38\n\x04\x62\x61se\x18\x1d \x01(\x0b\x32*.istio.operator.v1alpha1.BaseComponentSpec\x12\x35\n\x05pilot\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12\x33\n\x03\x63ni\x18& \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12=\n\ristiod_remote\x18\' \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12>\n\x10ingress_gateways\x18( \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpec\x12=\n\x0f\x65gress_gateways\x18) \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpecJ\x04\x08\x1f\x10 J\x04\x08 \x10!J\x04\x08!\x10\"J\x04\x08\"\x10#J\x04\x08#\x10$J\x04\x08$\x10%J\x04\x08%\x10&R\x07\x63itadelR\x06policyR\ttelemetryR\x06galleyR\nnode_agentR\x05proxyR\x10sidecar_injector\"\x90\x01\n\x11\x42\x61seComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\rComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x34\n\x04spec\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\x15\x45xternalComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x34\n\x04spec\x18\n \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x12\n\nchart_path\x18\x1e \x01(\t\x12$\n\x06schema\x18# \x01(\x0b\x32\x14.google.protobuf.Any\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\xdb\x02\n\x0bGatewaySpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12>\n\x05label\x18\x04 \x03(\x0b\x32/.istio.operator.v1alpha1.GatewaySpec.LabelEntry\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\x1a,\n\nLabelEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9f\n\n\x17KubernetesResourcesSpec\x12\x33\n\x08\x61\x66\x66inity\x18\x01 \x01(\x0b\x32!.istio.operator.v1alpha1.Affinity\x12,\n\x03\x65nv\x18\x02 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.EnvVar\x12\x46\n\x08hpa_spec\x18\x03 \x01(\x0b\x32\x34.istio.operator.v1alpha1.HorizontalPodAutoscalerSpec\x12\x19\n\x11image_pull_policy\x18\x04 \x01(\t\x12Y\n\rnode_selector\x18\x05 \x03(\x0b\x32\x42.istio.operator.v1alpha1.KubernetesResourcesSpec.NodeSelectorEntry\x12O\n\x15pod_disruption_budget\x18\x06 \x01(\x0b\x32\x30.istio.operator.v1alpha1.PodDisruptionBudgetSpec\x12]\n\x0fpod_annotations\x18\x07 \x03(\x0b\x32\x44.istio.operator.v1alpha1.KubernetesResourcesSpec.PodAnnotationsEntry\x12\x1b\n\x13priority_class_name\x18\x08 \x01(\t\x12@\n\x0freadiness_probe\x18\t \x01(\x0b\x32\'.istio.operator.v1alpha1.ReadinessProbe\x12\x15\n\rreplica_count\x18\n \x01(\r\x12\x35\n\tresources\x18\x0b \x01(\x0b\x32\".istio.operator.v1alpha1.Resources\x12\x35\n\x07service\x18\x0c \x01(\x0b\x32$.istio.operator.v1alpha1.ServiceSpec\x12=\n\x08strategy\x18\r \x01(\x0b\x32+.istio.operator.v1alpha1.DeploymentStrategy\x12\x38\n\x0btolerations\x18\x0e \x03(\x0b\x32#.istio.operator.v1alpha1.Toleration\x12\x65\n\x13service_annotations\x18\x0f \x03(\x0b\x32H.istio.operator.v1alpha1.KubernetesResourcesSpec.ServiceAnnotationsEntry\x12\x44\n\x0fsecurityContext\x18\x10 \x01(\x0b\x32+.istio.operator.v1alpha1.PodSecurityContext\x12\x45\n\x10\x61utoScaleEnabled\x18\x11 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12;\n\x08overlays\x18\x64 \x03(\x0b\x32).istio.operator.v1alpha1.K8sObjectOverlay\x1a\x33\n\x11NodeSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x35\n\x13PodAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17ServiceAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xdb\x01\n\x10K8sObjectOverlay\x12\x13\n\x0b\x61pi_version\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x44\n\x07patches\x18\x04 \x03(\x0b\x32\x33.istio.operator.v1alpha1.K8sObjectOverlay.PathValue\x1aP\n\tPathValue\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\"\xc5\x01\n\x08\x41\x66\x66inity\x12;\n\x0cnodeAffinity\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeAffinity\x12\x39\n\x0bpodAffinity\x18\x02 \x01(\x0b\x32$.istio.operator.v1alpha1.PodAffinity\x12\x41\n\x0fpodAntiAffinity\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAntiAffinity\"\x82\x01\n\x14\x43onfigMapKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"(\n\x0e\x43lientIPConfig\x12\x16\n\x0etimeoutSeconds\x18\x01 \x01(\x05\"M\n\x1b\x43rossVersionObjectReference\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\napiVersion\x18\x03 \x01(\t\"k\n\x12\x44\x65ploymentStrategy\x12\x0c\n\x04type\x18\x01 \x01(\t\x12G\n\rrollingUpdate\x18\x02 \x01(\x0b\x32\x30.istio.operator.v1alpha1.RollingUpdateDeployment\"_\n\x06\x45nvVar\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x38\n\tvalueFrom\x18\x03 \x01(\x0b\x32%.istio.operator.v1alpha1.EnvVarSource\"\xa2\x02\n\x0c\x45nvVarSource\x12>\n\x08\x66ieldRef\x18\x01 \x01(\x0b\x32,.istio.operator.v1alpha1.ObjectFieldSelector\x12H\n\x10resourceFieldRef\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ResourceFieldSelector\x12\x46\n\x0f\x63onfigMapKeyRef\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.ConfigMapKeySelector\x12@\n\x0csecretKeyRef\x18\x04 \x01(\x0b\x32*.istio.operator.v1alpha1.SecretKeySelector\"\x1d\n\nExecAction\x12\x0f\n\x07\x63ommand\x18\x01 \x03(\t\"\x86\x02\n\x14\x45xternalMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12K\n\x0emetricSelector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12I\n\x12targetAverageValue\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xb2\x01\n\rHTTPGetAction\x12\x0c\n\x04path\x18\x01 \x01(\t\x12;\n\x04port\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x03 \x01(\t\x12\x0e\n\x06scheme\x18\x04 \x01(\t\x12\x38\n\x0bhttpHeaders\x18\x05 \x03(\x0b\x32#.istio.operator.v1alpha1.HTTPHeader\")\n\nHTTPHeader\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xcb\x01\n\x1bHorizontalPodAutoscalerSpec\x12L\n\x0escaleTargetRef\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x13\n\x0bminReplicas\x18\x02 \x01(\x05\x12\x13\n\x0bmaxReplicas\x18\x03 \x01(\x05\x12\x34\n\x07metrics\x18\x04 \x03(\x0b\x32#.istio.operator.v1alpha1.MetricSpec\"$\n\x14LocalObjectReference\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x92\x02\n\nMetricSpec\x12\x0c\n\x04type\x18\x01 \x01(\t\x12;\n\x06object\x18\x02 \x01(\x0b\x32+.istio.operator.v1alpha1.ObjectMetricSource\x12\x37\n\x04pods\x18\x03 \x01(\x0b\x32).istio.operator.v1alpha1.PodsMetricSource\x12?\n\x08resource\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.ResourceMetricSource\x12?\n\x08\x65xternal\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.ExternalMetricSource\"\xd8\x01\n\x0cNodeAffinity\x12]\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeSelector\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.PreferredSchedulingTerm\"T\n\x0cNodeSelector\x12\x44\n\x11nodeSelectorTerms\x18\x01 \x03(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xa5\x01\n\x10NodeSelectorTerm\x12J\n\x10matchExpressions\x18\x01 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\x12\x45\n\x0bmatchFields\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\"H\n\x17NodeSelectorRequirement\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\x0e\n\x06values\x18\x03 \x03(\t\"<\n\x13ObjectFieldSelector\x12\x12\n\napiVersion\x18\x01 \x01(\t\x12\x11\n\tfieldPath\x18\x02 \x01(\t\"-\n\nObjectMeta\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x11\n\tnamespace\x18\x06 \x01(\t\"\xbe\x02\n\x12ObjectMetricSource\x12\x44\n\x06target\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x12\n\nmetricName\x18\x02 \x01(\t\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x04 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x43\n\x0c\x61verageValue\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xda\x01\n\x0bPodAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\xde\x01\n\x0fPodAntiAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\x86\x01\n\x0fPodAffinityTerm\x12J\n\rlabelSelector\x18\x01 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x12\n\nnamespaces\x18\x02 \x03(\t\x12\x13\n\x0btopologyKey\x18\x03 \x01(\t\"\xcc\x01\n\x17PodDisruptionBudgetSpec\x12\x14\n\x0cminAvailable\x18\x01 \x01(\r\x12\x45\n\x08selector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x16\n\x0emaxUnavailable\x18\x03 \x01(\r\x12<\n\x07\x65nabled\x18\x04 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\"\xb8\x01\n\x10PodsMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12I\n\x12targetAverageValue\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x03 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\"h\n\x17PreferredSchedulingTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12=\n\npreference\x18\x02 \x01(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xb9\x02\n\x0eReadinessProbe\x12\x31\n\x04\x65xec\x18\x01 \x01(\x0b\x32#.istio.operator.v1alpha1.ExecAction\x12\x37\n\x07httpGet\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.HTTPGetAction\x12;\n\ttcpSocket\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.TCPSocketAction\x12\x1b\n\x13initialDelaySeconds\x18\x04 \x01(\x05\x12\x16\n\x0etimeoutSeconds\x18\x05 \x01(\x05\x12\x15\n\rperiodSeconds\x18\x06 \x01(\x05\x12\x18\n\x10successThreshold\x18\x07 \x01(\x05\x12\x18\n\x10\x66\x61ilureThreshold\x18\x08 \x01(\x05\"\x80\x01\n\x15ResourceFieldSelector\x12\x15\n\rcontainerName\x18\x01 \x01(\t\x12\x10\n\x08resource\x18\x02 \x01(\t\x12>\n\x07\x64ivisor\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x91\x01\n\x14ResourceMetricSource\x12\x0c\n\x04name\x18\x01 \x01(\t\x12 \n\x18targetAverageUtilization\x18\x02 \x01(\x05\x12I\n\x12targetAverageValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xef\x01\n\tResources\x12>\n\x06limits\x18\x01 \x03(\x0b\x32..istio.operator.v1alpha1.Resources.LimitsEntry\x12\x42\n\x08requests\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.Resources.RequestsEntry\x1a-\n\x0bLimitsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rRequestsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa1\x01\n\x17RollingUpdateDeployment\x12\x45\n\x0emaxUnavailable\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12?\n\x08maxSurge\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x7f\n\x11SecretKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"\x85\x04\n\x0bServiceSpec\x12\x33\n\x05ports\x18\x01 \x03(\x0b\x32$.istio.operator.v1alpha1.ServicePort\x12\x44\n\x08selector\x18\x02 \x03(\x0b\x32\x32.istio.operator.v1alpha1.ServiceSpec.SelectorEntry\x12\x11\n\tclusterIP\x18\x03 \x01(\t\x12\x0c\n\x04type\x18\x04 \x01(\t\x12\x13\n\x0b\x65xternalIPs\x18\x05 \x03(\t\x12\x17\n\x0fsessionAffinity\x18\x07 \x01(\t\x12\x16\n\x0eloadBalancerIP\x18\x08 \x01(\t\x12 \n\x18loadBalancerSourceRanges\x18\t \x03(\t\x12\x14\n\x0c\x65xternalName\x18\n \x01(\t\x12\x1d\n\x15\x65xternalTrafficPolicy\x18\x0b \x01(\t\x12\x1b\n\x13healthCheckNodePort\x18\x0c \x01(\x05\x12 \n\x18publishNotReadyAddresses\x18\r \x01(\x08\x12M\n\x15sessionAffinityConfig\x18\x0e \x01(\x0b\x32..istio.operator.v1alpha1.SessionAffinityConfig\x1a/\n\rSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x90\x01\n\x0bServicePort\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08protocol\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\x05\x12\x41\n\ntargetPort\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x10\n\x08nodePort\x18\x05 \x01(\x05\"R\n\x15SessionAffinityConfig\x12\x39\n\x08\x63lientIP\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.ClientIPConfig\"\\\n\x0fTCPSocketAction\x12;\n\x04port\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x02 \x01(\t\"e\n\nToleration\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\t\x12\x0e\n\x06\x65\x66\x66\x65\x63t\x18\x04 \x01(\t\x12\x19\n\x11tolerationSeconds\x18\x05 \x01(\x03\"l\n\x17WeightedPodAffinityTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12\x41\n\x0fpodAffinityTerm\x18\x02 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\"\x9f\x03\n\x12PodSecurityContext\x12?\n\x0eseLinuxOptions\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.SELinuxOptions\x12\x11\n\trunAsUser\x18\x02 \x01(\x03\x12\x14\n\x0crunAsNonRoot\x18\x03 \x01(\x08\x12\x1a\n\x12supplementalGroups\x18\x04 \x03(\x03\x12\x0f\n\x07\x66sGroup\x18\x05 \x01(\x03\x12\x12\n\nrunAsGroup\x18\x06 \x01(\x03\x12\x30\n\x07sysctls\x18\x07 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.Sysctl\x12N\n\x0ewindowsOptions\x18\x08 \x01(\x0b\x32\x36.istio.operator.v1alpha1.WindowsSecurityContextOptions\x12\x1b\n\x13\x66sGroupChangePolicy\x18\t \x01(\t\x12?\n\x0eseccompProfile\x18\n \x01(\x0b\x32\'.istio.operator.v1alpha1.SeccompProfile\"I\n\x0eSELinuxOptions\x12\x0c\n\x04user\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\r\n\x05level\x18\x04 \x01(\t\"%\n\x06Sysctl\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"r\n\x1dWindowsSecurityContextOptions\x12\x1e\n\x16gmsaCredentialSpecName\x18\x01 \x01(\t\x12\x1a\n\x12gmsaCredentialSpec\x18\x02 \x01(\t\x12\x15\n\rrunAsUserName\x18\x03 \x01(\t\"8\n\x0eSeccompProfile\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x18\n\x10localhostProfile\x18\x02 \x01(\t\"\x0f\n\rTypeInterface\"\x18\n\x16TypeMapStringInterface\"\x16\n\x14TypeIntOrStringForPB\"\x14\n\x12TypeBoolValueForPBB,Z\x1eistio.io/api/operator/v1alpha1\xc8\xe2\x1e\x00\xd0\xe2\x1e\x00\xe0\xe2\x1e\x00\x62\x06proto3') , dependencies=[google_dot_protobuf_dot_any__pb2.DESCRIPTOR,k8s_dot_io_dot_apimachinery_dot_pkg_dot_apis_dot_meta_dot_v1_dot_generated__pb2.DESCRIPTOR,gogoproto_dot_gogo__pb2.DESCRIPTOR,]) @@ -466,35 +466,28 @@ is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='autoScaleEnabled', full_name='istio.operator.v1alpha1.ComponentSpec.autoScaleEnabled', index=2, - number=3, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR), - _descriptor.FieldDescriptor( - name='hub', full_name='istio.operator.v1alpha1.ComponentSpec.hub', index=3, + name='hub', full_name='istio.operator.v1alpha1.ComponentSpec.hub', index=2, number=10, type=9, cpp_type=9, label=1, has_default_value=False, default_value=_b("").decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='tag', full_name='istio.operator.v1alpha1.ComponentSpec.tag', index=4, + name='tag', full_name='istio.operator.v1alpha1.ComponentSpec.tag', index=3, number=11, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='spec', full_name='istio.operator.v1alpha1.ComponentSpec.spec', index=5, + name='spec', full_name='istio.operator.v1alpha1.ComponentSpec.spec', index=4, number=30, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='k8s', full_name='istio.operator.v1alpha1.ComponentSpec.k8s', index=6, + name='k8s', full_name='istio.operator.v1alpha1.ComponentSpec.k8s', index=5, number=50, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -513,7 +506,7 @@ oneofs=[ ], serialized_start=1992, - serialized_end=2342, + serialized_end=2271, ) @@ -578,8 +571,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2345, - serialized_end=2624, + serialized_start=2274, + serialized_end=2553, ) @@ -616,8 +609,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3001, - serialized_end=3045, + serialized_start=2859, + serialized_end=2903, ) _GATEWAYSPEC = _descriptor.Descriptor( @@ -656,28 +649,21 @@ is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='autoScaleEnabled', full_name='istio.operator.v1alpha1.GatewaySpec.autoScaleEnabled', index=4, - number=5, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR), - _descriptor.FieldDescriptor( - name='hub', full_name='istio.operator.v1alpha1.GatewaySpec.hub', index=5, + name='hub', full_name='istio.operator.v1alpha1.GatewaySpec.hub', index=4, number=10, type=9, cpp_type=9, label=1, has_default_value=False, default_value=_b("").decode('utf-8'), message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='tag', full_name='istio.operator.v1alpha1.GatewaySpec.tag', index=6, + name='tag', full_name='istio.operator.v1alpha1.GatewaySpec.tag', index=5, number=11, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='k8s', full_name='istio.operator.v1alpha1.GatewaySpec.k8s', index=7, + name='k8s', full_name='istio.operator.v1alpha1.GatewaySpec.k8s', index=6, number=50, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -695,8 +681,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2627, - serialized_end=3045, + serialized_start=2556, + serialized_end=2903, ) @@ -733,8 +719,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4123, - serialized_end=4174, + serialized_start=4052, + serialized_end=4103, ) _KUBERNETESRESOURCESSPEC_PODANNOTATIONSENTRY = _descriptor.Descriptor( @@ -770,8 +756,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4176, - serialized_end=4229, + serialized_start=4105, + serialized_end=4158, ) _KUBERNETESRESOURCESSPEC_SERVICEANNOTATIONSENTRY = _descriptor.Descriptor( @@ -807,8 +793,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4231, - serialized_end=4288, + serialized_start=4160, + serialized_end=4217, ) _KUBERNETESRESOURCESSPEC = _descriptor.Descriptor( @@ -931,7 +917,14 @@ is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='overlays', full_name='istio.operator.v1alpha1.KubernetesResourcesSpec.overlays', index=16, + name='autoScaleEnabled', full_name='istio.operator.v1alpha1.KubernetesResourcesSpec.autoScaleEnabled', index=16, + number=17, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='overlays', full_name='istio.operator.v1alpha1.KubernetesResourcesSpec.overlays', index=17, number=100, type=11, cpp_type=10, label=3, has_default_value=False, default_value=[], message_type=None, enum_type=None, containing_type=None, @@ -949,8 +942,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3048, - serialized_end=4288, + serialized_start=2906, + serialized_end=4217, ) @@ -987,8 +980,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4430, - serialized_end=4510, + serialized_start=4359, + serialized_end=4439, ) _K8SOBJECTOVERLAY = _descriptor.Descriptor( @@ -1038,8 +1031,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4291, - serialized_end=4510, + serialized_start=4220, + serialized_end=4439, ) @@ -1083,8 +1076,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4513, - serialized_end=4710, + serialized_start=4442, + serialized_end=4639, ) @@ -1128,8 +1121,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4713, - serialized_end=4843, + serialized_start=4642, + serialized_end=4772, ) @@ -1159,8 +1152,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4845, - serialized_end=4885, + serialized_start=4774, + serialized_end=4814, ) @@ -1204,8 +1197,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4887, - serialized_end=4964, + serialized_start=4816, + serialized_end=4893, ) @@ -1242,8 +1235,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4966, - serialized_end=5073, + serialized_start=4895, + serialized_end=5002, ) @@ -1287,8 +1280,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5075, - serialized_end=5170, + serialized_start=5004, + serialized_end=5099, ) @@ -1339,8 +1332,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5173, - serialized_end=5463, + serialized_start=5102, + serialized_end=5392, ) @@ -1370,8 +1363,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5465, - serialized_end=5494, + serialized_start=5394, + serialized_end=5423, ) @@ -1422,8 +1415,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5497, - serialized_end=5759, + serialized_start=5426, + serialized_end=5688, ) @@ -1481,8 +1474,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5762, - serialized_end=5940, + serialized_start=5691, + serialized_end=5869, ) @@ -1519,8 +1512,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5942, - serialized_end=5983, + serialized_start=5871, + serialized_end=5912, ) @@ -1571,8 +1564,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5986, - serialized_end=6189, + serialized_start=5915, + serialized_end=6118, ) @@ -1602,8 +1595,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6191, - serialized_end=6227, + serialized_start=6120, + serialized_end=6156, ) @@ -1661,8 +1654,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6230, - serialized_end=6504, + serialized_start=6159, + serialized_end=6433, ) @@ -1699,8 +1692,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6507, - serialized_end=6723, + serialized_start=6436, + serialized_end=6652, ) @@ -1730,8 +1723,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6725, - serialized_end=6809, + serialized_start=6654, + serialized_end=6738, ) @@ -1768,8 +1761,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6812, - serialized_end=6977, + serialized_start=6741, + serialized_end=6906, ) @@ -1813,8 +1806,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6979, - serialized_end=7051, + serialized_start=6908, + serialized_end=6980, ) @@ -1851,8 +1844,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7053, - serialized_end=7113, + serialized_start=6982, + serialized_end=7042, ) @@ -1889,8 +1882,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7115, - serialized_end=7160, + serialized_start=7044, + serialized_end=7089, ) @@ -1948,8 +1941,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7163, - serialized_end=7481, + serialized_start=7092, + serialized_end=7410, ) @@ -1986,8 +1979,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7484, - serialized_end=7702, + serialized_start=7413, + serialized_end=7631, ) @@ -2024,8 +2017,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7705, - serialized_end=7927, + serialized_start=7634, + serialized_end=7856, ) @@ -2069,8 +2062,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7930, - serialized_end=8064, + serialized_start=7859, + serialized_end=7993, ) @@ -2121,8 +2114,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8067, - serialized_end=8271, + serialized_start=7996, + serialized_end=8200, ) @@ -2166,8 +2159,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8274, - serialized_end=8458, + serialized_start=8203, + serialized_end=8387, ) @@ -2204,8 +2197,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8460, - serialized_end=8564, + serialized_start=8389, + serialized_end=8493, ) @@ -2284,8 +2277,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8567, - serialized_end=8880, + serialized_start=8496, + serialized_end=8809, ) @@ -2329,8 +2322,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8883, - serialized_end=9011, + serialized_start=8812, + serialized_end=8940, ) @@ -2374,8 +2367,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9014, - serialized_end=9159, + serialized_start=8943, + serialized_end=9088, ) @@ -2412,8 +2405,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9307, - serialized_end=9352, + serialized_start=9236, + serialized_end=9281, ) _RESOURCES_REQUESTSENTRY = _descriptor.Descriptor( @@ -2449,8 +2442,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9354, - serialized_end=9401, + serialized_start=9283, + serialized_end=9330, ) _RESOURCES = _descriptor.Descriptor( @@ -2486,8 +2479,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9162, - serialized_end=9401, + serialized_start=9091, + serialized_end=9330, ) @@ -2524,8 +2517,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9404, - serialized_end=9565, + serialized_start=9333, + serialized_end=9494, ) @@ -2569,8 +2562,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9567, - serialized_end=9694, + serialized_start=9496, + serialized_end=9623, ) @@ -2607,8 +2600,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10167, - serialized_end=10214, + serialized_start=10096, + serialized_end=10143, ) _SERVICESPEC = _descriptor.Descriptor( @@ -2721,8 +2714,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9697, - serialized_end=10214, + serialized_start=9626, + serialized_end=10143, ) @@ -2780,8 +2773,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10217, - serialized_end=10361, + serialized_start=10146, + serialized_end=10290, ) @@ -2811,8 +2804,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10363, - serialized_end=10445, + serialized_start=10292, + serialized_end=10374, ) @@ -2849,8 +2842,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10447, - serialized_end=10539, + serialized_start=10376, + serialized_end=10468, ) @@ -2908,8 +2901,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10541, - serialized_end=10642, + serialized_start=10470, + serialized_end=10571, ) @@ -2946,8 +2939,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10644, - serialized_end=10752, + serialized_start=10573, + serialized_end=10681, ) @@ -3040,8 +3033,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10755, - serialized_end=11170, + serialized_start=10684, + serialized_end=11099, ) @@ -3092,8 +3085,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11172, - serialized_end=11245, + serialized_start=11101, + serialized_end=11174, ) @@ -3130,8 +3123,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11247, - serialized_end=11284, + serialized_start=11176, + serialized_end=11213, ) @@ -3175,8 +3168,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11286, - serialized_end=11400, + serialized_start=11215, + serialized_end=11329, ) @@ -3213,8 +3206,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11402, - serialized_end=11458, + serialized_start=11331, + serialized_end=11387, ) @@ -3237,8 +3230,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11460, - serialized_end=11475, + serialized_start=11389, + serialized_end=11404, ) @@ -3261,8 +3254,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11477, - serialized_end=11501, + serialized_start=11406, + serialized_end=11430, ) @@ -3285,8 +3278,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11503, - serialized_end=11525, + serialized_start=11432, + serialized_end=11454, ) @@ -3309,8 +3302,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11527, - serialized_end=11547, + serialized_start=11456, + serialized_end=11476, ) _ISTIOOPERATORSPEC_ADDONCOMPONENTSENTRY.fields_by_name['value'].message_type = _EXTERNALCOMPONENTSPEC @@ -3337,7 +3330,6 @@ _BASECOMPONENTSPEC.fields_by_name['enabled'].message_type = _TYPEBOOLVALUEFORPB _BASECOMPONENTSPEC.fields_by_name['k8s'].message_type = _KUBERNETESRESOURCESSPEC _COMPONENTSPEC.fields_by_name['enabled'].message_type = _TYPEBOOLVALUEFORPB -_COMPONENTSPEC.fields_by_name['autoScaleEnabled'].message_type = _TYPEBOOLVALUEFORPB _COMPONENTSPEC.fields_by_name['tag'].message_type = _TYPEINTERFACE _COMPONENTSPEC.fields_by_name['spec'].message_type = _TYPEINTERFACE _COMPONENTSPEC.fields_by_name['k8s'].message_type = _KUBERNETESRESOURCESSPEC @@ -3348,7 +3340,6 @@ _GATEWAYSPEC_LABELENTRY.containing_type = _GATEWAYSPEC _GATEWAYSPEC.fields_by_name['enabled'].message_type = _TYPEBOOLVALUEFORPB _GATEWAYSPEC.fields_by_name['label'].message_type = _GATEWAYSPEC_LABELENTRY -_GATEWAYSPEC.fields_by_name['autoScaleEnabled'].message_type = _TYPEBOOLVALUEFORPB _GATEWAYSPEC.fields_by_name['tag'].message_type = _TYPEINTERFACE _GATEWAYSPEC.fields_by_name['k8s'].message_type = _KUBERNETESRESOURCESSPEC _KUBERNETESRESOURCESSPEC_NODESELECTORENTRY.containing_type = _KUBERNETESRESOURCESSPEC @@ -3367,6 +3358,7 @@ _KUBERNETESRESOURCESSPEC.fields_by_name['tolerations'].message_type = _TOLERATION _KUBERNETESRESOURCESSPEC.fields_by_name['service_annotations'].message_type = _KUBERNETESRESOURCESSPEC_SERVICEANNOTATIONSENTRY _KUBERNETESRESOURCESSPEC.fields_by_name['securityContext'].message_type = _PODSECURITYCONTEXT +_KUBERNETESRESOURCESSPEC.fields_by_name['autoScaleEnabled'].message_type = _TYPEBOOLVALUEFORPB _KUBERNETESRESOURCESSPEC.fields_by_name['overlays'].message_type = _K8SOBJECTOVERLAY _K8SOBJECTOVERLAY_PATHVALUE.fields_by_name['value'].message_type = _TYPEINTERFACE _K8SOBJECTOVERLAY_PATHVALUE.containing_type = _K8SOBJECTOVERLAY From 70fa780a6d48404a1e516b4364a60ac89baf16cf Mon Sep 17 00:00:00 2001 From: carolynhu Date: Tue, 10 Nov 2020 10:34:40 -0800 Subject: [PATCH 3/5] move pdb enabled to k8s spec --- .../v1alpha1/istio.operator.v1alpha1.pb.html | 22 +- operator/v1alpha1/operator.pb.go | 513 +++++++++--------- operator/v1alpha1/operator.proto | 5 +- .../operator/v1alpha1/operator_pb2.py | 246 ++++----- 4 files changed, 393 insertions(+), 393 deletions(-) diff --git a/operator/v1alpha1/istio.operator.v1alpha1.pb.html b/operator/v1alpha1/istio.operator.v1alpha1.pb.html index b9f31b8ad19..2c027f0caa3 100644 --- a/operator/v1alpha1/istio.operator.v1alpha1.pb.html +++ b/operator/v1alpha1/istio.operator.v1alpha1.pb.html @@ -828,6 +828,17 @@

KubernetesResourcesSpec

Check whether autoScale is enabled.

+ + +No + + + +podDisruptionBudgetEnabled +TypeBoolValueForPB + +

Check whether PodDisruptionBudget is enabled

+ No @@ -1938,17 +1949,6 @@

PodDisruptionBudgetSpec

maxUnavailable uint32 - - -No - - - -enabled -TypeBoolValueForPB - -

Check whether PodDisruptionBudget is enabled

- No diff --git a/operator/v1alpha1/operator.pb.go b/operator/v1alpha1/operator.pb.go index 731e8f378d4..a46d2c846ea 100644 --- a/operator/v1alpha1/operator.pb.go +++ b/operator/v1alpha1/operator.pb.go @@ -746,6 +746,8 @@ type KubernetesResourcesSpec struct { SecurityContext *PodSecurityContext `protobuf:"bytes,16,opt,name=securityContext,proto3" json:"securityContext,omitempty"` // Check whether autoScale is enabled. AutoScaleEnabled *BoolValueForPB `protobuf:"bytes,17,opt,name=autoScaleEnabled,proto3" json:"autoScaleEnabled,omitempty"` + // Check whether PodDisruptionBudget is enabled + PodDisruptionBudgetEnabled *BoolValueForPB `protobuf:"bytes,18,opt,name=podDisruptionBudgetEnabled,proto3" json:"podDisruptionBudgetEnabled,omitempty"` // Overlays for k8s resources in rendered manifests. Overlays []*K8SObjectOverlay `protobuf:"bytes,100,rep,name=overlays,proto3" json:"overlays,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` @@ -890,6 +892,7 @@ func (m *KubernetesResourcesSpec) GetSecurityContext() *PodSecurityContext { } + func (m *KubernetesResourcesSpec) GetOverlays() []*K8SObjectOverlay { if m != nil { return m.Overlays @@ -2250,14 +2253,12 @@ func (m *PodAffinityTerm) GetTopologyKey() string { // See k8s.io.api.policy.v1beta1.PodDisruptionBudget. type PodDisruptionBudgetSpec struct { - MinAvailable uint32 `protobuf:"varint,1,opt,name=minAvailable,proto3" json:"minAvailable,omitempty"` - Selector *v1.LabelSelector `protobuf:"bytes,2,opt,name=selector,proto3" json:"selector,omitempty"` - MaxUnavailable uint32 `protobuf:"varint,3,opt,name=maxUnavailable,proto3" json:"maxUnavailable,omitempty"` - // Check whether PodDisruptionBudget is enabled - Enabled *BoolValueForPB `protobuf:"bytes,4,opt,name=enabled,proto3" json:"enabled,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + MinAvailable uint32 `protobuf:"varint,1,opt,name=minAvailable,proto3" json:"minAvailable,omitempty"` + Selector *v1.LabelSelector `protobuf:"bytes,2,opt,name=selector,proto3" json:"selector,omitempty"` + MaxUnavailable uint32 `protobuf:"varint,3,opt,name=maxUnavailable,proto3" json:"maxUnavailable,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *PodDisruptionBudgetSpec) Reset() { *m = PodDisruptionBudgetSpec{} } @@ -2305,7 +2306,6 @@ func (m *PodDisruptionBudgetSpec) GetMaxUnavailable() uint32 { return 0 } - // See k8s.io.api.core.v1.PodsMetricSource. type PodsMetricSource struct { MetricName string `protobuf:"bytes,1,opt,name=metricName,proto3" json:"metricName,omitempty"` @@ -3532,252 +3532,253 @@ func init() { func init() { proto.RegisterFile("operator/v1alpha1/operator.proto", fileDescriptor_8023ebf2dcfea843) } var fileDescriptor_8023ebf2dcfea843 = []byte{ - // 3950 bytes of a gzipped FileDescriptorProto + // 3957 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0x4d, 0x6c, 0x1c, 0x47, - 0x76, 0xf6, 0xfc, 0x90, 0x1c, 0xbe, 0xe1, 0xcf, 0xb0, 0x44, 0x49, 0x13, 0xee, 0x5a, 0x96, 0x5b, - 0xb6, 0x56, 0x96, 0x9d, 0xa1, 0x25, 0x1b, 0x8e, 0xd6, 0x1b, 0x7b, 0x97, 0xa2, 0x46, 0x12, 0x65, - 0x89, 0x9c, 0xad, 0xa1, 0x6c, 0xec, 0xc6, 0xeb, 0x41, 0xb1, 0xbb, 0x66, 0xa6, 0xc3, 0x9e, 0xae, - 0xde, 0xae, 0x1a, 0x8a, 0xb3, 0xc8, 0x21, 0x97, 0x04, 0xc8, 0x21, 0x40, 0x4e, 0x09, 0x92, 0x43, - 0x0e, 0x41, 0x80, 0x1c, 0x82, 0x64, 0xef, 0xf1, 0x06, 0xc8, 0x22, 0x09, 0x90, 0xdc, 0x72, 0xcd, - 0x21, 0x40, 0xe0, 0x43, 0xee, 0x39, 0xe5, 0x94, 0x20, 0xa8, 0x9f, 0xee, 0xe9, 0x9e, 0xe9, 0xe6, - 0x68, 0x68, 0x66, 0xb1, 0x87, 0x9c, 0x38, 0xf5, 0xaa, 0xde, 0x57, 0x55, 0xaf, 0x5e, 0xbd, 0xbf, - 0x6a, 0xc2, 0x75, 0x16, 0xd0, 0x90, 0x08, 0x16, 0x6e, 0x9f, 0xdc, 0x21, 0x5e, 0xd0, 0x27, 0x77, - 0xb6, 0x23, 0x4a, 0x23, 0x08, 0x99, 0x60, 0xe8, 0xaa, 0xcb, 0x85, 0xcb, 0x1a, 0x31, 0x35, 0x1a, - 0xb7, 0xf5, 0x2b, 0x3d, 0xc6, 0x7a, 0x1e, 0xdd, 0x56, 0xc3, 0x8e, 0x86, 0xdd, 0x6d, 0xe2, 0x8f, - 0x34, 0xcf, 0xd6, 0xfb, 0xc7, 0xf7, 0x78, 0xc3, 0x65, 0xdb, 0x24, 0x70, 0x07, 0xc4, 0xee, 0xbb, - 0x3e, 0x0d, 0x47, 0xdb, 0xc1, 0x71, 0x4f, 0x12, 0xf8, 0xf6, 0x80, 0x0a, 0xb2, 0x7d, 0x72, 0x67, - 0xbb, 0x47, 0x7d, 0x89, 0x49, 0x1d, 0xc3, 0xb5, 0xd9, 0x63, 0x3d, 0xa6, 0x7e, 0x6e, 0xcb, 0x5f, - 0x9a, 0x6a, 0xfd, 0x7c, 0x11, 0x36, 0xf6, 0xe4, 0x12, 0x0e, 0xcc, 0x0a, 0xda, 0x01, 0xb5, 0x51, - 0x1d, 0x96, 0x82, 0x90, 0x75, 0x5d, 0x8f, 0xd6, 0xe1, 0x7a, 0xe1, 0xd6, 0x32, 0x8e, 0x9a, 0xe8, - 0x5d, 0xd8, 0x74, 0x7d, 0x2e, 0x88, 0xe7, 0x75, 0x02, 0x62, 0x1f, 0x93, 0x1e, 0xed, 0x04, 0x44, - 0xf4, 0xeb, 0x55, 0x35, 0x0c, 0x99, 0xbe, 0x96, 0xee, 0x6a, 0x11, 0xd1, 0x47, 0x35, 0x28, 0xf5, - 0x87, 0x47, 0xf5, 0x15, 0x35, 0x40, 0xfe, 0x44, 0xf7, 0xa0, 0x24, 0x48, 0xaf, 0xbe, 0x7a, 0xbd, - 0x70, 0xab, 0x7a, 0xf7, 0x66, 0x23, 0x47, 0x02, 0x8d, 0xc3, 0x51, 0x40, 0xf7, 0x7c, 0x41, 0xc3, - 0x2e, 0xb1, 0x29, 0x96, 0x2c, 0xe8, 0x6d, 0x58, 0x0f, 0x29, 0x67, 0xc3, 0xd0, 0xa6, 0x1d, 0x3e, - 0xec, 0x76, 0xdd, 0xd3, 0xfa, 0x9a, 0xc4, 0xbd, 0x5f, 0xac, 0x17, 0xf0, 0x5a, 0xd4, 0xd5, 0x56, - 0x3d, 0xe8, 0x9b, 0xb0, 0xec, 0x93, 0x01, 0xe5, 0x01, 0xb1, 0x69, 0x7d, 0x5d, 0x4d, 0x3f, 0x26, - 0xa0, 0x2d, 0xa8, 0x84, 0xf4, 0xc4, 0xe5, 0x2e, 0xf3, 0xeb, 0x35, 0xd5, 0x19, 0xb7, 0x51, 0x0b, - 0xaa, 0x03, 0xca, 0xfb, 0x1d, 0x9b, 0xf9, 0x5d, 0xb7, 0x57, 0xbf, 0xa5, 0x16, 0xba, 0x7d, 0xe6, - 0x42, 0x9f, 0x91, 0xa0, 0x2d, 0x42, 0xd7, 0xef, 0x8d, 0x57, 0x0c, 0x12, 0x63, 0x57, 0x41, 0xa0, - 0x7d, 0x00, 0x9b, 0x0d, 0x02, 0xe6, 0x53, 0x5f, 0xf0, 0xfa, 0x5d, 0x05, 0xd8, 0xc8, 0x05, 0x54, - 0x07, 0xb2, 0x1b, 0x8d, 0x6f, 0x53, 0x21, 0x0f, 0x05, 0x27, 0x10, 0x90, 0x0f, 0x35, 0xe2, 0x38, - 0xcc, 0xef, 0x24, 0x50, 0xdf, 0xbb, 0x5e, 0xba, 0x55, 0xbd, 0xfb, 0xdd, 0xb3, 0x51, 0x93, 0xc7, - 0xdc, 0xd8, 0x91, 0x10, 0xf1, 0x3c, 0xbc, 0xe9, 0x8b, 0x70, 0xa4, 0x44, 0xb9, 0x4e, 0xd2, 0x3d, - 0xe8, 0x11, 0x2c, 0x9e, 0x10, 0x6f, 0x48, 0x79, 0xdd, 0x39, 0x9f, 0x30, 0x0c, 0x3b, 0xfa, 0x02, - 0xd0, 0xd0, 0x3f, 0x21, 0x9e, 0xeb, 0x48, 0xd5, 0xec, 0x18, 0x50, 0x7a, 0x3e, 0xd0, 0x8d, 0x04, - 0xd4, 0xa7, 0x0a, 0x69, 0x2b, 0x84, 0xcd, 0xac, 0x5d, 0x49, 0x2d, 0x3c, 0xa6, 0xa3, 0x7a, 0x41, - 0x6b, 0xe1, 0x31, 0x1d, 0xa1, 0x07, 0xb0, 0xa0, 0x66, 0xaf, 0x17, 0x67, 0x9c, 0x46, 0xf3, 0x54, - 0xd0, 0xd0, 0x27, 0xde, 0xf8, 0x40, 0xe4, 0x69, 0x68, 0xe6, 0x0f, 0x8b, 0xf7, 0x0a, 0xd6, 0x97, - 0x65, 0x58, 0xdd, 0xd3, 0x8a, 0xdf, 0x16, 0x44, 0x0c, 0x39, 0x6a, 0xc2, 0x22, 0x57, 0xbf, 0xd4, - 0x84, 0x6b, 0x77, 0x7f, 0x35, 0xff, 0x50, 0x92, 0x7c, 0x0d, 0xfd, 0x07, 0x1b, 0x66, 0x79, 0x0d, - 0x07, 0x94, 0x73, 0xd2, 0xa3, 0xf5, 0x92, 0xbe, 0x86, 0xa6, 0x89, 0xba, 0x50, 0x8b, 0x4f, 0xbe, - 0x63, 0xa6, 0x2a, 0xaa, 0xf3, 0xff, 0xce, 0x4b, 0x4e, 0x35, 0xde, 0x8d, 0x6a, 0x2b, 0x29, 0xe1, - 0x75, 0x3b, 0x4d, 0xdd, 0xfa, 0xdd, 0x02, 0xac, 0x7e, 0x4a, 0x43, 0x79, 0x2b, 0xda, 0xf1, 0x9a, - 0x4e, 0x34, 0xc1, 0x08, 0x33, 0x6a, 0x26, 0x36, 0x5d, 0xfc, 0x3a, 0x9b, 0xde, 0x84, 0x05, 0x1a, - 0x86, 0x2c, 0xac, 0x97, 0x15, 0xbc, 0x6e, 0x6c, 0x9d, 0xc2, 0x66, 0xd6, 0x8a, 0x33, 0xce, 0xf5, - 0x49, 0xfa, 0x5c, 0xdf, 0x7f, 0xc9, 0x55, 0xa4, 0x76, 0x99, 0x3c, 0xdd, 0x2f, 0x60, 0xd1, 0x6c, - 0xbd, 0x02, 0xe5, 0xfd, 0x83, 0xfd, 0x66, 0xed, 0x15, 0xb4, 0x02, 0x95, 0xe7, 0xad, 0x07, 0x3b, - 0x87, 0x7b, 0xfb, 0x8f, 0x6a, 0x05, 0xb4, 0x0e, 0x55, 0xdc, 0xdc, 0x3d, 0xd8, 0xdf, 0xdd, 0x7b, - 0x2a, 0x09, 0x45, 0x54, 0x85, 0xa5, 0xc7, 0xcd, 0x9d, 0xa7, 0x87, 0x8f, 0x7f, 0x50, 0x2b, 0xa1, - 0x65, 0x58, 0x68, 0x62, 0x7c, 0x80, 0x6b, 0x65, 0x74, 0x09, 0xd6, 0x77, 0x76, 0x0f, 0xf7, 0x0e, - 0xf6, 0x3b, 0xb8, 0xf9, 0xfd, 0xe7, 0x7b, 0xb8, 0xf9, 0xa0, 0xb6, 0x60, 0xfd, 0xb4, 0x0c, 0x97, - 0x33, 0x2f, 0x3c, 0xfa, 0x18, 0xca, 0x47, 0x84, 0xd3, 0xfa, 0xab, 0x6a, 0x23, 0xb7, 0x73, 0x37, - 0x72, 0x9f, 0x70, 0x9a, 0x56, 0x4e, 0xc5, 0x87, 0x7e, 0x1d, 0x16, 0x02, 0xd7, 0x63, 0xa2, 0x7e, - 0x6d, 0x86, 0xa5, 0x9d, 0xd0, 0x6c, 0xc5, 0x24, 0xad, 0xb4, 0xed, 0xbb, 0xf5, 0x9b, 0x73, 0xf1, - 0x4a, 0x16, 0xf4, 0x09, 0xac, 0xaa, 0xd1, 0x4e, 0x27, 0xa4, 0x03, 0x26, 0x68, 0xfd, 0x5b, 0x73, - 0x61, 0xac, 0x68, 0x66, 0xac, 0x78, 0xd1, 0x01, 0xd4, 0x5c, 0xbf, 0x17, 0x52, 0xce, 0x3b, 0x3d, - 0x22, 0xe8, 0x0b, 0x32, 0xe2, 0xf5, 0x5b, 0x4a, 0xd3, 0xdf, 0xc8, 0xc5, 0x7b, 0xa4, 0x07, 0x2a, - 0xb4, 0x75, 0xc3, 0x6d, 0x68, 0x1c, 0x3d, 0x83, 0x75, 0x3a, 0x81, 0xf7, 0xd6, 0x1c, 0x78, 0x6b, - 0x34, 0x05, 0xf7, 0xa4, 0x5c, 0x79, 0xad, 0x76, 0xfd, 0x49, 0xb9, 0x72, 0xbd, 0xf6, 0xfa, 0x93, - 0x72, 0xe5, 0xf5, 0x9a, 0xf5, 0xa4, 0x5c, 0xb1, 0x6a, 0x37, 0x9e, 0x94, 0x2b, 0x37, 0x6a, 0x6f, - 0x3c, 0x29, 0x57, 0xde, 0xa8, 0xbd, 0xf9, 0xa4, 0x5c, 0x79, 0xb3, 0x76, 0x13, 0x2f, 0xd9, 0xae, - 0x20, 0x0e, 0xf5, 0xf0, 0x62, 0xc0, 0x3c, 0xd7, 0x1e, 0xe1, 0x65, 0x41, 0x3d, 0x3a, 0xa0, 0xf2, - 0xe2, 0x2d, 0xf6, 0x88, 0xe7, 0xd1, 0x11, 0x06, 0x9f, 0x39, 0xb4, 0x43, 0x7a, 0xd4, 0x17, 0x78, - 0x21, 0x08, 0xd9, 0xe9, 0x08, 0xd7, 0xb8, 0xeb, 0x50, 0x9b, 0x84, 0x1d, 0xd7, 0xff, 0x4d, 0x6a, - 0x0b, 0x16, 0x5a, 0x7f, 0x5a, 0x80, 0x8d, 0xa9, 0x33, 0x47, 0x4d, 0x58, 0xa2, 0x3e, 0x39, 0xf2, - 0xa8, 0xa3, 0x6e, 0x43, 0xf5, 0xee, 0xdb, 0x67, 0x9a, 0xd3, 0xfb, 0x8c, 0x79, 0xca, 0x66, 0x3e, - 0x64, 0x61, 0xeb, 0x3e, 0x8e, 0x78, 0xd1, 0x7d, 0x28, 0x1d, 0xdf, 0x8b, 0x5c, 0xd4, 0xbb, 0xb9, - 0x10, 0x9f, 0x0c, 0x8f, 0x68, 0xe8, 0x53, 0x41, 0x39, 0x36, 0x5e, 0x97, 0x6b, 0x05, 0x38, 0xbe, - 0xc7, 0xad, 0xbf, 0x2b, 0xc2, 0xea, 0xff, 0xc9, 0xe2, 0x52, 0x2e, 0xbd, 0x38, 0xe9, 0xd2, 0x4d, - 0xa4, 0x01, 0x53, 0x91, 0x46, 0x75, 0xfe, 0x48, 0xe3, 0x43, 0x28, 0xf3, 0x80, 0xda, 0x33, 0xaf, - 0x4e, 0x9a, 0x55, 0xf1, 0x5c, 0x88, 0x08, 0xff, 0xb9, 0x08, 0x97, 0x33, 0x1d, 0xcf, 0x2f, 0x46, - 0x94, 0xd1, 0xf6, 0xe1, 0x1c, 0xdb, 0x7f, 0x15, 0xc0, 0xee, 0x93, 0x50, 0xe8, 0xc0, 0xf0, 0x9a, - 0x86, 0x56, 0x14, 0x15, 0x0f, 0xbe, 0x03, 0x8b, 0xdc, 0xee, 0xd3, 0x01, 0xa9, 0xdf, 0x50, 0xe0, - 0x9b, 0x0d, 0x1d, 0xe9, 0x36, 0xa2, 0x48, 0xb7, 0xb1, 0xe3, 0x8f, 0xb0, 0x19, 0x73, 0x21, 0xb2, - 0xfc, 0xa3, 0x12, 0x54, 0x13, 0x57, 0xf8, 0x17, 0x23, 0x41, 0x04, 0x65, 0xd9, 0x30, 0x8e, 0x5b, - 0xfd, 0x46, 0x4d, 0x58, 0xf0, 0xc8, 0x11, 0xf5, 0xea, 0x65, 0x65, 0x70, 0xb6, 0x5f, 0xc6, 0xe0, - 0x34, 0x9e, 0x4a, 0x0e, 0xed, 0x9e, 0x35, 0xf7, 0x85, 0xea, 0xf9, 0x05, 0xc8, 0x77, 0xeb, 0x1e, - 0xc0, 0x78, 0x91, 0x19, 0x1e, 0x79, 0x33, 0xe9, 0x91, 0x97, 0x93, 0xbe, 0xf5, 0x67, 0x2b, 0x70, - 0x35, 0x07, 0x1a, 0x7d, 0x04, 0x15, 0xd2, 0xed, 0xba, 0xbe, 0x2b, 0x46, 0xe6, 0x98, 0x5e, 0xcf, - 0x5d, 0xde, 0x8e, 0x19, 0x88, 0x63, 0x16, 0x74, 0x07, 0x4a, 0xd4, 0x3f, 0x31, 0x41, 0xd1, 0x6b, - 0xf9, 0xc1, 0x9d, 0x7f, 0xf2, 0x29, 0x09, 0xb1, 0x1c, 0x8b, 0x0e, 0xa0, 0xd2, 0x0f, 0x48, 0x47, - 0x29, 0x7e, 0x69, 0x46, 0xf0, 0xf0, 0x98, 0x85, 0xee, 0x4f, 0x98, 0x2f, 0x88, 0xd7, 0x62, 0xce, - 0xce, 0x50, 0x30, 0x6e, 0x13, 0x8f, 0xaa, 0xb0, 0x1a, 0x2f, 0xf5, 0x03, 0xa2, 0xb6, 0x70, 0x1b, - 0x36, 0xdc, 0x81, 0x4a, 0x91, 0x86, 0x32, 0x5f, 0x52, 0x56, 0xdf, 0x84, 0x35, 0xeb, 0xaa, 0xa3, - 0x35, 0xf4, 0xbc, 0x96, 0x22, 0xa3, 0x1e, 0xac, 0x2a, 0xdb, 0xcf, 0xa9, 0xa7, 0xac, 0x7c, 0x7d, - 0x41, 0xad, 0xfc, 0xfe, 0xbc, 0x47, 0xd2, 0xd8, 0x67, 0x0e, 0x6d, 0x1b, 0x10, 0xad, 0x36, 0x2b, - 0x7e, 0x82, 0x84, 0x1c, 0xb8, 0x1c, 0x30, 0xa7, 0xe3, 0xb8, 0x3c, 0x1c, 0x06, 0xc2, 0x65, 0x7e, - 0xe7, 0x68, 0xe8, 0xf4, 0xa8, 0xa8, 0x2f, 0xce, 0xd0, 0x81, 0x16, 0x73, 0x1e, 0xc4, 0x4c, 0xf7, - 0x15, 0x8f, 0xda, 0xee, 0xa5, 0x60, 0xba, 0x03, 0x0d, 0x60, 0x5d, 0xce, 0x42, 0x7c, 0x9f, 0x09, - 0x22, 0xe9, 0xbc, 0xbe, 0xa4, 0x36, 0xf4, 0x60, 0xee, 0x0d, 0x49, 0x01, 0x8f, 0x61, 0xf4, 0x96, - 0xd6, 0x82, 0x14, 0x11, 0x35, 0xe0, 0x52, 0x10, 0xba, 0x2c, 0x74, 0xc5, 0xa8, 0x63, 0x7b, 0x84, - 0xf3, 0x8e, 0xba, 0x7c, 0x15, 0x25, 0xeb, 0x8d, 0xa8, 0x6b, 0x57, 0xf6, 0xec, 0xcb, 0x9b, 0xd8, - 0x92, 0x89, 0x24, 0x71, 0x5c, 0x5f, 0xc6, 0x01, 0x41, 0xc8, 0x8e, 0x68, 0x7d, 0x59, 0x6d, 0xff, - 0x5b, 0xb9, 0xcb, 0xc3, 0xd1, 0xf8, 0x96, 0x1c, 0x2e, 0xb3, 0xcd, 0x64, 0x1b, 0xdd, 0x80, 0xd5, - 0x90, 0x06, 0x9e, 0x6b, 0x93, 0x8e, 0xcd, 0x86, 0xbe, 0x50, 0xd7, 0x73, 0x15, 0xaf, 0x18, 0xe2, - 0xae, 0xa4, 0xa1, 0xef, 0xc1, 0x72, 0x94, 0xa4, 0x72, 0x73, 0x5b, 0xad, 0x33, 0x26, 0x34, 0x23, - 0xf1, 0x98, 0x09, 0x7d, 0x0c, 0x4b, 0x9c, 0x86, 0x27, 0xae, 0x4d, 0x55, 0x46, 0x7d, 0x56, 0xd4, - 0xd2, 0xd6, 0xe3, 0xb4, 0x4a, 0x1a, 0x26, 0xf4, 0x08, 0x2a, 0x5c, 0x84, 0x44, 0xd0, 0xde, 0xc8, - 0x24, 0xe0, 0xf9, 0xc6, 0xef, 0x01, 0x0d, 0x3c, 0x36, 0x1a, 0xa8, 0x88, 0x5b, 0xb3, 0xe0, 0x98, - 0x19, 0x35, 0xa1, 0x2a, 0x98, 0x27, 0x59, 0xd4, 0xe1, 0xae, 0xa9, 0xc3, 0xbd, 0x91, 0x6f, 0x7a, - 0xe2, 0xb1, 0x38, 0xc9, 0x87, 0x46, 0x70, 0xc9, 0x2c, 0x2d, 0xa5, 0x2b, 0xeb, 0x0a, 0xee, 0xf1, - 0xdc, 0xba, 0x62, 0xf6, 0x3c, 0xa5, 0x2f, 0x88, 0x4f, 0x75, 0xa0, 0xe7, 0xb0, 0xce, 0xa9, 0x3d, - 0x54, 0x8a, 0xc1, 0x7c, 0x41, 0x4f, 0x85, 0x2a, 0x04, 0x9c, 0x25, 0x91, 0x16, 0x73, 0xda, 0x69, - 0x16, 0x3c, 0x89, 0x81, 0x3e, 0x83, 0x1a, 0x19, 0x0a, 0xd6, 0x96, 0xf6, 0xa0, 0x69, 0xdc, 0xcc, - 0xc6, 0xfc, 0x6e, 0x66, 0x0a, 0x04, 0x35, 0xa1, 0xc2, 0x4e, 0x68, 0xe8, 0xc9, 0x88, 0xd5, 0x51, - 0xf2, 0x79, 0x2b, 0x5f, 0x3e, 0xf7, 0xf8, 0xc1, 0x91, 0x0c, 0x17, 0x0f, 0x34, 0x07, 0x8e, 0x59, - 0xb7, 0xbe, 0x0b, 0x1b, 0x53, 0x26, 0x62, 0x1e, 0xa3, 0xbd, 0xb5, 0x03, 0x97, 0x32, 0xae, 0xe4, - 0x5c, 0x10, 0x4d, 0xb8, 0x9a, 0x73, 0x52, 0x73, 0xb9, 0x8f, 0xdf, 0x2b, 0x42, 0x6d, 0x72, 0xa7, - 0xe8, 0x35, 0xa8, 0x92, 0xc0, 0xed, 0xa4, 0x93, 0x54, 0x20, 0x81, 0x6b, 0x32, 0x3c, 0xe9, 0x99, - 0x8f, 0x5d, 0xdf, 0x31, 0x70, 0xea, 0x77, 0xa6, 0xb7, 0x7e, 0x06, 0x4b, 0x01, 0x11, 0x76, 0x9f, - 0x72, 0xe3, 0xaf, 0xdf, 0x7b, 0x69, 0x71, 0x37, 0x64, 0xa4, 0xa3, 0x0e, 0x13, 0x47, 0x18, 0x5b, - 0x3f, 0x82, 0xe5, 0x98, 0x2a, 0xe7, 0x53, 0xd1, 0x91, 0x5e, 0x9d, 0xfa, 0x2d, 0xd3, 0xb5, 0x64, - 0xe2, 0xfa, 0xb2, 0x6e, 0x5c, 0x33, 0x59, 0xff, 0x59, 0x80, 0x4a, 0xe4, 0x06, 0xd1, 0x1e, 0x28, - 0x9b, 0xbf, 0x93, 0xf6, 0x9f, 0x6f, 0xe6, 0x22, 0xee, 0x27, 0x06, 0xe3, 0x14, 0x2b, 0x7a, 0x08, - 0x55, 0x69, 0x6b, 0x23, 0xa4, 0xe2, 0x0c, 0xa3, 0xd3, 0x1a, 0x8f, 0xc5, 0x49, 0x46, 0x84, 0x95, - 0x43, 0xd8, 0xf1, 0x85, 0x1b, 0x63, 0x69, 0x1f, 0x7b, 0xeb, 0x4c, 0xac, 0xc4, 0x78, 0x3c, 0x09, - 0x60, 0xfd, 0x45, 0x01, 0x36, 0x75, 0x81, 0xed, 0x19, 0x09, 0x3e, 0xa1, 0xa3, 0xd8, 0xc7, 0x11, - 0xd8, 0xf4, 0x98, 0x4d, 0x3c, 0x7d, 0x28, 0x98, 0x76, 0x69, 0x48, 0x7d, 0x9b, 0x1a, 0x39, 0xe4, - 0x17, 0x26, 0x9e, 0x66, 0x30, 0xe1, 0x4c, 0xa8, 0x48, 0x4f, 0x8b, 0x63, 0x3d, 0xdd, 0x82, 0x0a, - 0x53, 0x2e, 0x90, 0x78, 0x6a, 0x6b, 0x15, 0x1c, 0xb7, 0xad, 0x7b, 0xb0, 0xb6, 0xeb, 0xb9, 0xd4, - 0x17, 0x7b, 0x2d, 0x53, 0x11, 0xbc, 0x09, 0x6b, 0xc2, 0x1d, 0x50, 0x36, 0x14, 0x6d, 0x6a, 0x33, - 0xdf, 0xd1, 0xa5, 0xa2, 0x05, 0x3c, 0x41, 0xb5, 0x28, 0x7c, 0x63, 0x37, 0x64, 0x9c, 0x1b, 0xed, - 0x9d, 0x5c, 0x46, 0xa4, 0xcc, 0x85, 0x0c, 0x65, 0x2e, 0x26, 0x94, 0xf9, 0x1a, 0x24, 0xae, 0x80, - 0x51, 0xf3, 0x04, 0xc5, 0xfa, 0xed, 0x02, 0xa0, 0x69, 0x7b, 0x2f, 0xa1, 0xc4, 0x28, 0xa0, 0x11, - 0xbc, 0xfc, 0x8d, 0x3e, 0x85, 0xd5, 0x90, 0x79, 0x9e, 0xeb, 0xf7, 0x9e, 0x07, 0x0e, 0x11, 0x91, - 0xbe, 0xe6, 0x07, 0x0e, 0x38, 0x39, 0x7a, 0x3c, 0x09, 0x4e, 0xc3, 0x58, 0x2f, 0x60, 0x51, 0x47, - 0x63, 0xf1, 0x06, 0x0a, 0x89, 0x0d, 0x64, 0x5a, 0x01, 0xb4, 0x0b, 0xcb, 0xea, 0xc7, 0xc3, 0x90, - 0x0d, 0x8c, 0x3e, 0xbd, 0x39, 0x23, 0xd6, 0x6b, 0x2b, 0x77, 0x81, 0xc7, 0x7c, 0xd6, 0xbf, 0x15, - 0x61, 0x25, 0xd9, 0x87, 0x1e, 0x43, 0xa5, 0xeb, 0x52, 0xcf, 0xc1, 0xb4, 0x6b, 0x54, 0xe6, 0x9d, - 0x5c, 0x50, 0x7d, 0x20, 0x0f, 0xe5, 0xf0, 0x48, 0xfd, 0x70, 0xcc, 0x8d, 0x7e, 0x08, 0xb5, 0xc8, - 0x77, 0x3f, 0x8c, 0x10, 0x67, 0xd5, 0x1b, 0x71, 0x92, 0x21, 0xc6, 0x9c, 0xc2, 0x41, 0x9f, 0xc1, - 0xba, 0x9d, 0x50, 0x7e, 0x09, 0x5d, 0x9a, 0xa1, 0xdf, 0x59, 0x97, 0x05, 0x4f, 0xa2, 0xa0, 0x7d, - 0x58, 0xe1, 0xd4, 0x0e, 0xa9, 0x30, 0xa8, 0xe5, 0x19, 0xf5, 0xa7, 0x76, 0x34, 0x38, 0x86, 0x4c, - 0xf1, 0x5b, 0x37, 0x01, 0x9a, 0xa7, 0xd4, 0xde, 0xb1, 0xe5, 0x65, 0x40, 0x75, 0x58, 0xb2, 0xd9, - 0x60, 0x40, 0x94, 0xd2, 0x96, 0x6e, 0x2d, 0xe3, 0xa8, 0x69, 0xfd, 0x7d, 0x11, 0x36, 0xa3, 0x9c, - 0xf7, 0x19, 0x15, 0xa1, 0x6b, 0x9b, 0xf3, 0xb8, 0x06, 0x30, 0x50, 0xed, 0xfd, 0xb1, 0x56, 0x24, - 0x28, 0xe8, 0x37, 0x60, 0x4d, 0xb7, 0xa2, 0x05, 0x18, 0x19, 0xbf, 0xd7, 0xd0, 0x2f, 0x25, 0x8d, - 0xe4, 0x4b, 0x49, 0x23, 0x38, 0xee, 0x49, 0x02, 0x6f, 0x0c, 0xa8, 0x20, 0x8d, 0x93, 0x3b, 0x3a, - 0xc3, 0x8a, 0xd7, 0x3e, 0x01, 0x85, 0x0e, 0xa0, 0x2a, 0x48, 0xd8, 0xa3, 0x42, 0x59, 0xee, 0x99, - 0x22, 0x36, 0xc6, 0xf9, 0x20, 0xd4, 0xc5, 0x6a, 0xed, 0xcc, 0x93, 0x08, 0xe8, 0x47, 0x80, 0x74, - 0x73, 0xe7, 0x84, 0x86, 0xa4, 0x47, 0x35, 0x6e, 0xf9, 0x3c, 0xb8, 0x19, 0x40, 0xd6, 0xbf, 0x16, - 0x60, 0xf5, 0xf1, 0xe1, 0x61, 0xeb, 0x11, 0x15, 0x46, 0xe2, 0x59, 0xce, 0x66, 0x07, 0xca, 0x01, - 0x0b, 0x85, 0x11, 0xd4, 0x9c, 0xd3, 0x2a, 0x56, 0x09, 0xdb, 0x67, 0x5c, 0x44, 0x3e, 0x53, 0xfe, - 0x46, 0x57, 0x4c, 0x72, 0x4f, 0x4d, 0x9a, 0x63, 0x5a, 0x32, 0x5a, 0xec, 0x0b, 0x11, 0x3c, 0xa6, - 0xc4, 0xa1, 0x21, 0x37, 0xb9, 0x4d, 0x7e, 0xb4, 0x28, 0xd7, 0xaf, 0xc7, 0xe2, 0x24, 0x9f, 0xf5, - 0x01, 0xc0, 0xb8, 0xeb, 0xe5, 0xcd, 0x84, 0xf5, 0x3f, 0x05, 0xf8, 0xc6, 0x19, 0x19, 0x1b, 0xfa, - 0x1c, 0xd6, 0x54, 0xeb, 0x50, 0x89, 0x73, 0x7c, 0xed, 0xf3, 0xf3, 0xbf, 0x33, 0x6c, 0x32, 0x9e, - 0xc0, 0x42, 0xd7, 0xa1, 0x3a, 0x70, 0x7d, 0xac, 0x13, 0x01, 0x5d, 0x1d, 0x5f, 0xc0, 0x49, 0x92, - 0x1a, 0x41, 0x4e, 0xe3, 0x11, 0x25, 0x33, 0x62, 0x4c, 0x42, 0x1f, 0xc1, 0x92, 0xd6, 0xcb, 0x28, - 0x18, 0xc9, 0x17, 0x9e, 0xb9, 0x3a, 0x2a, 0xec, 0x37, 0x3c, 0xd6, 0x6d, 0xd8, 0xcc, 0xf2, 0x6d, - 0x59, 0x22, 0xb4, 0xfe, 0xa6, 0x08, 0x30, 0xc6, 0xc8, 0x74, 0x01, 0xbb, 0xb0, 0xc8, 0x14, 0x92, - 0xd1, 0x9f, 0xb7, 0x67, 0x98, 0xc7, 0xe4, 0x6d, 0xc6, 0x86, 0x15, 0x7d, 0x24, 0x55, 0xd0, 0xe1, - 0xe6, 0x46, 0xbd, 0x75, 0x56, 0x18, 0xc0, 0x53, 0x00, 0x8a, 0x0d, 0xed, 0x41, 0x25, 0x32, 0x89, - 0x33, 0x2f, 0x4f, 0x64, 0x52, 0x53, 0x30, 0x31, 0xbb, 0x84, 0xa2, 0xc6, 0xee, 0xd4, 0x17, 0x66, - 0x40, 0x65, 0x19, 0x28, 0x1c, 0xb3, 0x5b, 0x5f, 0x16, 0x61, 0x25, 0x19, 0x4d, 0xa1, 0xdf, 0x2f, - 0x40, 0x23, 0xa4, 0x3f, 0x1e, 0xba, 0x21, 0x75, 0x1e, 0x0c, 0xe5, 0x1d, 0x6a, 0xdb, 0x7d, 0xea, - 0x0c, 0xa5, 0xe3, 0xdb, 0xeb, 0xf9, 0x2c, 0x26, 0x4b, 0x13, 0x39, 0x14, 0x51, 0xc8, 0x3a, 0x2b, - 0x5a, 0x8b, 0xcd, 0xd5, 0x9c, 0xe0, 0xe8, 0x4f, 0x0a, 0xb0, 0x1d, 0x84, 0x52, 0x01, 0x5e, 0x7e, - 0x41, 0xba, 0x88, 0x72, 0x46, 0x65, 0x20, 0xc2, 0x1b, 0x23, 0x1d, 0xd2, 0x70, 0x80, 0xe7, 0x9d, - 0xc8, 0xea, 0x69, 0xe1, 0xc5, 0xb6, 0xf7, 0x33, 0xd8, 0x48, 0xd6, 0x2e, 0x24, 0x28, 0x57, 0x5e, - 0xe3, 0x2c, 0x7d, 0xd9, 0x9f, 0xe0, 0xc0, 0xd3, 0x18, 0xd6, 0x3f, 0x14, 0xa0, 0x36, 0x39, 0x0e, - 0x7d, 0x0e, 0xb5, 0x81, 0x0c, 0xd6, 0x9b, 0xa7, 0x41, 0x48, 0x39, 0x57, 0x89, 0x68, 0x61, 0xc6, - 0xd6, 0x53, 0x67, 0xa1, 0x4f, 0x42, 0xc5, 0x36, 0x53, 0x48, 0x08, 0xcb, 0x3b, 0x2e, 0xec, 0xbe, - 0xf2, 0xdf, 0x7c, 0xa6, 0x4c, 0xf3, 0x80, 0x93, 0x20, 0x56, 0x07, 0xae, 0xe6, 0x8c, 0xcb, 0xc8, - 0xa3, 0x54, 0x7c, 0xaa, 0xa7, 0x31, 0xd6, 0x31, 0x6e, 0x4b, 0xbb, 0x6d, 0x9e, 0x62, 0x4b, 0xca, - 0x27, 0x9b, 0x96, 0xd5, 0x86, 0x4b, 0x19, 0x01, 0xce, 0x44, 0x34, 0x39, 0x9d, 0x62, 0x7d, 0x13, - 0x96, 0x55, 0x08, 0x24, 0x13, 0x9e, 0xa8, 0x34, 0x1a, 0x13, 0xac, 0x8f, 0x01, 0x62, 0xb3, 0x40, - 0x62, 0x13, 0xb4, 0x90, 0xb0, 0xe2, 0xa9, 0xd2, 0xea, 0xe2, 0x44, 0x69, 0xd5, 0xfa, 0xaf, 0x22, - 0xa0, 0x69, 0xbb, 0x82, 0x9e, 0xc2, 0xa2, 0x76, 0x87, 0x5f, 0xcb, 0x78, 0x1b, 0x8c, 0x89, 0x98, - 0xa3, 0x38, 0x15, 0x73, 0x5c, 0x78, 0x58, 0x70, 0x00, 0x95, 0xb8, 0xf6, 0x57, 0x3e, 0x7f, 0xf8, - 0x12, 0x83, 0xa0, 0xef, 0xc3, 0x0a, 0x49, 0x46, 0x18, 0x0b, 0xe7, 0x59, 0x62, 0x0a, 0xc2, 0xfa, - 0xdb, 0x22, 0x54, 0x13, 0x19, 0x1e, 0xfa, 0x83, 0xf3, 0x18, 0xb7, 0xd2, 0xcc, 0xa4, 0xcf, 0xc0, - 0xab, 0xcb, 0xfb, 0xcb, 0x60, 0xdf, 0x3e, 0xa3, 0x6e, 0xaf, 0x2f, 0xa8, 0x33, 0xb9, 0xb6, 0xb9, - 0xed, 0xdb, 0xcf, 0x8b, 0xb0, 0x3e, 0x91, 0xd5, 0xfe, 0xbf, 0x0c, 0xe7, 0x94, 0xe1, 0x5f, 0x17, - 0xb4, 0x0c, 0x13, 0x20, 0xe8, 0x07, 0xb0, 0xea, 0x25, 0x6f, 0x81, 0xb1, 0x00, 0xe7, 0xba, 0x40, - 0x69, 0x24, 0x69, 0x07, 0x62, 0xcb, 0xa3, 0xad, 0xf6, 0x32, 0x4e, 0x50, 0x64, 0xe8, 0x26, 0x58, - 0xc0, 0x3c, 0xd6, 0x1b, 0x7d, 0x42, 0x47, 0x26, 0x18, 0x4e, 0x92, 0xac, 0xff, 0x2e, 0xc0, 0xd5, - 0x9c, 0xda, 0x39, 0xb2, 0x60, 0x65, 0xe0, 0xfa, 0x3b, 0x27, 0xc4, 0xf5, 0xc8, 0x91, 0xa7, 0x83, - 0xac, 0x55, 0x9c, 0xa2, 0xa5, 0x0c, 0x43, 0xf1, 0x22, 0x0c, 0xc3, 0x4d, 0x58, 0x1b, 0x90, 0xd3, - 0xe7, 0x3e, 0x89, 0xa7, 0x2d, 0xa9, 0x69, 0x27, 0xa8, 0xc9, 0x77, 0xb2, 0xf2, 0xf9, 0xdf, 0xc9, - 0xac, 0xaf, 0x0a, 0x50, 0x9b, 0x8c, 0xe1, 0x66, 0xa6, 0x74, 0xd9, 0x49, 0x52, 0xf1, 0x82, 0x92, - 0xa4, 0x94, 0x4c, 0x4b, 0x17, 0x20, 0x53, 0xeb, 0xb7, 0xe0, 0x6a, 0x4e, 0x14, 0x24, 0x7d, 0xeb, - 0x0b, 0xa5, 0xfc, 0xa6, 0xc2, 0x63, 0x5a, 0x68, 0x0f, 0x40, 0xeb, 0xbe, 0x2a, 0x4d, 0x15, 0x67, - 0x44, 0xc1, 0x53, 0x51, 0x4d, 0x82, 0xd9, 0xfa, 0xcb, 0x12, 0xac, 0xa5, 0xdf, 0x27, 0xd0, 0xaf, - 0x41, 0x99, 0x9e, 0x52, 0xdb, 0xdc, 0x84, 0x1b, 0x67, 0xc4, 0xb3, 0x51, 0x66, 0x8e, 0x15, 0x03, - 0xfa, 0x1e, 0x2c, 0xc9, 0x94, 0xeb, 0x11, 0x15, 0x33, 0x0b, 0x91, 0xa9, 0x34, 0x13, 0x47, 0x6c, - 0xe8, 0x21, 0x2c, 0x0b, 0x3b, 0x68, 0x33, 0xfb, 0x98, 0x8a, 0x99, 0x45, 0xbe, 0xc3, 0xdd, 0x96, - 0x1e, 0x69, 0x50, 0xc6, 0xac, 0xe8, 0x5d, 0xb8, 0x24, 0xaf, 0xb8, 0x4b, 0xbc, 0x07, 0xd4, 0x23, - 0xa3, 0xa8, 0x4e, 0x56, 0x56, 0x52, 0xcc, 0xea, 0xca, 0x28, 0xaa, 0x2d, 0x64, 0x15, 0xd5, 0xd0, - 0x1b, 0xb0, 0x1a, 0xd0, 0xd0, 0x55, 0xd5, 0x7c, 0x35, 0x6c, 0x51, 0x0d, 0x4b, 0x13, 0xd1, 0x6d, - 0xa8, 0xf1, 0xa1, 0x6d, 0x53, 0xce, 0x0f, 0xfb, 0x21, 0xe5, 0x7d, 0xe6, 0x39, 0xf5, 0x25, 0x35, - 0x70, 0x8a, 0x2e, 0xc7, 0x76, 0x89, 0xeb, 0x0d, 0x43, 0x3a, 0x1e, 0x5b, 0xd1, 0x63, 0x27, 0xe9, - 0xd6, 0x9f, 0x15, 0xe0, 0x72, 0x66, 0x91, 0x47, 0xae, 0xcb, 0x96, 0x29, 0xaa, 0x54, 0xbe, 0xc4, - 0xc5, 0x48, 0x13, 0xf5, 0xa7, 0x8b, 0x26, 0xf3, 0x29, 0x46, 0x9f, 0x2e, 0x9a, 0x54, 0xe6, 0x11, - 0x2c, 0x39, 0xee, 0x89, 0xcb, 0x63, 0xbd, 0x9e, 0xf3, 0xb2, 0x44, 0xdc, 0xd6, 0x3f, 0x16, 0x60, - 0x33, 0x2b, 0x6d, 0xca, 0xcc, 0xba, 0x3f, 0x84, 0x7a, 0xea, 0x92, 0x3d, 0x17, 0xae, 0xe7, 0xfe, - 0x84, 0x18, 0xc7, 0x20, 0xa5, 0x90, 0xdb, 0x9f, 0x73, 0xd3, 0x4b, 0x17, 0x55, 0x0e, 0xf9, 0xe3, - 0x22, 0x2c, 0xc7, 0x6f, 0x44, 0xe8, 0x21, 0x2c, 0x7a, 0xee, 0xc0, 0x15, 0x51, 0x60, 0x3f, 0xbb, - 0x0a, 0xc7, 0x1b, 0x4f, 0x15, 0x83, 0x7e, 0x47, 0x32, 0xdc, 0xe8, 0xa9, 0x3c, 0x82, 0x1f, 0x0f, - 0x29, 0x17, 0xb3, 0x23, 0xf9, 0x31, 0x12, 0x36, 0x2c, 0x1a, 0x2b, 0x46, 0xd8, 0xfa, 0x36, 0x54, - 0x13, 0x93, 0xcc, 0xf5, 0x92, 0xf2, 0x1d, 0x58, 0x4d, 0xa1, 0xce, 0xf5, 0x7e, 0xf2, 0x65, 0x01, - 0xae, 0xe6, 0x14, 0x67, 0xd1, 0xf3, 0x29, 0x27, 0x51, 0x38, 0xcf, 0x91, 0x4c, 0xfa, 0x94, 0x3d, - 0xa8, 0x0c, 0xc8, 0x69, 0x7b, 0x18, 0xf6, 0xce, 0x69, 0xcd, 0x63, 0x76, 0xeb, 0xcf, 0x0b, 0xb0, - 0x31, 0x55, 0x7a, 0xfc, 0xe5, 0x2b, 0xfd, 0xff, 0xc7, 0x02, 0x54, 0x13, 0x4f, 0xb1, 0xe8, 0x43, - 0x58, 0x08, 0x58, 0x18, 0x6b, 0xe0, 0xcc, 0xf7, 0xdb, 0x16, 0x0b, 0x05, 0xd6, 0x2c, 0x68, 0x3f, - 0x15, 0x0a, 0x48, 0xf6, 0xbb, 0x2f, 0xf3, 0xfc, 0xdb, 0x48, 0x7f, 0x0f, 0x30, 0x8e, 0x04, 0xbe, - 0x09, 0xcb, 0xb6, 0x37, 0xe4, 0x82, 0x86, 0x7b, 0x2d, 0x13, 0xba, 0x8c, 0x09, 0x71, 0xe5, 0xa7, - 0x9c, 0xa8, 0xfc, 0x5c, 0x87, 0x6a, 0x54, 0xeb, 0xd8, 0x6b, 0xe9, 0x42, 0xde, 0x32, 0x4e, 0x92, - 0xd0, 0x2d, 0x58, 0xe7, 0x3a, 0xe7, 0x8d, 0x1f, 0x7a, 0x96, 0xf4, 0x27, 0x0f, 0x13, 0x64, 0x69, - 0xad, 0x3d, 0x46, 0x9c, 0xfb, 0xc4, 0x23, 0xbe, 0xad, 0x96, 0xa0, 0xdf, 0xeb, 0x27, 0xa8, 0xd2, - 0xba, 0x24, 0x29, 0xa6, 0xe6, 0x42, 0xfc, 0x1e, 0xe5, 0xf5, 0x65, 0xb5, 0x80, 0xdc, 0x7e, 0x19, - 0x60, 0x45, 0x8b, 0x53, 0x06, 0x55, 0x7f, 0x34, 0x93, 0xa2, 0xa1, 0xf7, 0xe1, 0x72, 0xd4, 0x3e, - 0x0c, 0x49, 0xb7, 0xeb, 0xda, 0xfa, 0x9b, 0x0c, 0xf3, 0x51, 0x7b, 0x76, 0xa7, 0xf4, 0x4e, 0x7d, - 0x4a, 0x3c, 0xd1, 0xdf, 0xed, 0x53, 0xfb, 0x58, 0xba, 0x67, 0x79, 0x52, 0xea, 0x55, 0x7e, 0x01, - 0x67, 0x75, 0xc9, 0x7d, 0x04, 0xc3, 0x23, 0xcf, 0xe5, 0xfd, 0x7d, 0x26, 0xa4, 0xbb, 0x1e, 0xed, - 0x38, 0x4e, 0x48, 0x39, 0xa7, 0x5c, 0xbd, 0xc5, 0x57, 0x70, 0x6e, 0x3f, 0x72, 0xe0, 0xf2, 0x84, - 0xf8, 0x74, 0x2d, 0x5f, 0x7d, 0xff, 0x7e, 0x96, 0x1d, 0x6b, 0x67, 0x71, 0xe1, 0x6c, 0x30, 0x69, - 0x4d, 0xce, 0xfd, 0x2e, 0x6c, 0xfd, 0xac, 0x10, 0x2b, 0x7a, 0xcb, 0xd4, 0x87, 0xa7, 0x1c, 0xc5, - 0x16, 0x54, 0xd4, 0x67, 0x5e, 0x36, 0xf3, 0x22, 0xd7, 0x15, 0xb5, 0x55, 0x99, 0x5a, 0x4a, 0x50, - 0x57, 0x3f, 0x75, 0x8d, 0xf9, 0x19, 0x80, 0xb6, 0xe9, 0x4a, 0xb6, 0xe7, 0xaa, 0x91, 0x27, 0x00, - 0xe4, 0xf4, 0x7e, 0x74, 0x50, 0x3a, 0x32, 0x88, 0xdb, 0xd6, 0xe7, 0x70, 0x39, 0x53, 0x56, 0x68, - 0x17, 0x2a, 0xb6, 0x79, 0xbb, 0x33, 0x56, 0x24, 0xff, 0x23, 0x91, 0xf4, 0x23, 0x1f, 0x8e, 0x19, - 0xad, 0x3e, 0xac, 0x4f, 0x44, 0x3a, 0x71, 0x09, 0xbe, 0xf0, 0xf5, 0x4b, 0xf0, 0xc5, 0x71, 0x09, - 0xde, 0xfa, 0xc3, 0x02, 0xc0, 0xf8, 0x6b, 0x8b, 0x39, 0xeb, 0x40, 0xf1, 0xe9, 0x96, 0x92, 0xaf, - 0x6c, 0x57, 0x60, 0x91, 0x76, 0xbb, 0xd4, 0x16, 0x51, 0x55, 0x5f, 0xb7, 0xd0, 0x3b, 0xb0, 0x31, - 0xfe, 0x96, 0x23, 0x19, 0x71, 0x95, 0xf0, 0x74, 0x87, 0xf5, 0x3b, 0x05, 0xb8, 0x9a, 0x93, 0x05, - 0xe6, 0xc6, 0xc8, 0xe6, 0xd5, 0x38, 0x31, 0xd4, 0x78, 0x8d, 0x97, 0x4f, 0x7e, 0x27, 0x01, 0xac, - 0x9f, 0x96, 0x01, 0x4d, 0x7f, 0xc8, 0x81, 0x0e, 0x60, 0x8d, 0xd3, 0xa7, 0xae, 0x3f, 0x3c, 0x3d, - 0x08, 0x84, 0xa9, 0xfd, 0x9d, 0x7d, 0xd8, 0xed, 0x66, 0x72, 0x38, 0x9e, 0x60, 0x97, 0xc6, 0x35, - 0x1c, 0xfa, 0x3b, 0xfc, 0x39, 0xa7, 0x5a, 0xd0, 0x25, 0x3c, 0x26, 0x48, 0xc3, 0xa4, 0x1a, 0xfb, - 0xcc, 0xc7, 0x8c, 0x09, 0xe3, 0x36, 0x52, 0x34, 0xd4, 0x00, 0xc4, 0x87, 0x41, 0xe0, 0xa9, 0x8a, - 0x1e, 0xf1, 0x1e, 0x85, 0x6c, 0x18, 0xe8, 0xfa, 0x7f, 0x09, 0x67, 0xf4, 0xa0, 0x3a, 0x2c, 0x75, - 0xb9, 0xfa, 0x6d, 0x4e, 0x21, 0x6a, 0xca, 0x74, 0x4b, 0x21, 0xeb, 0xce, 0x45, 0xd5, 0x99, 0xa0, - 0xa0, 0x6f, 0xc3, 0x12, 0x1f, 0x71, 0x5b, 0x78, 0xd1, 0x67, 0x5a, 0xf9, 0x5f, 0xcc, 0xb5, 0xd5, - 0x38, 0x1c, 0x8d, 0x47, 0x5f, 0xc0, 0xda, 0x0b, 0xd7, 0x77, 0xd8, 0x0b, 0x1e, 0xc9, 0xad, 0xa2, - 0xe4, 0xf6, 0x41, 0x7e, 0x29, 0x40, 0x0f, 0x9f, 0x38, 0x80, 0x58, 0x8c, 0x69, 0x34, 0x69, 0x67, - 0xcd, 0x2e, 0x76, 0xfb, 0xd2, 0xa6, 0x1b, 0xdb, 0xbc, 0xac, 0x34, 0x31, 0xab, 0x4b, 0x9f, 0xa4, - 0x6d, 0xb3, 0x41, 0xd0, 0x4a, 0xfc, 0x13, 0xd3, 0x99, 0x27, 0x99, 0x1a, 0x8e, 0x27, 0xd8, 0xad, - 0x23, 0x58, 0x4b, 0x9f, 0xb5, 0xbc, 0x78, 0x43, 0x79, 0xac, 0xc6, 0xb6, 0xc9, 0xdf, 0x92, 0x16, - 0x32, 0x2f, 0x7e, 0x76, 0x97, 0xbf, 0x63, 0x17, 0x5a, 0x4a, 0xb8, 0xd0, 0x4d, 0x58, 0xf0, 0xe8, - 0x89, 0xfa, 0x0a, 0x54, 0xdd, 0x31, 0xd5, 0xb0, 0xee, 0xc2, 0xa2, 0x96, 0xec, 0x1c, 0xcf, 0x5a, - 0x7f, 0x55, 0x80, 0x57, 0xcf, 0x14, 0x26, 0xfa, 0x00, 0xae, 0xf4, 0x06, 0x9c, 0xec, 0x86, 0xd4, - 0xa1, 0xbe, 0x4c, 0x97, 0x64, 0x38, 0x90, 0xc8, 0x2c, 0x72, 0x7a, 0xa5, 0xe6, 0x4d, 0xf7, 0x98, - 0xc9, 0x33, 0x7a, 0x64, 0xe2, 0x12, 0xab, 0xf6, 0xfe, 0xf8, 0x43, 0x9a, 0x34, 0xd1, 0x6a, 0xc1, - 0x5a, 0x5a, 0xd2, 0x99, 0x8f, 0x4b, 0xb7, 0xa1, 0xa6, 0xc2, 0x2e, 0x69, 0xcd, 0xa2, 0x03, 0xd4, - 0x33, 0x4f, 0xd1, 0xad, 0x75, 0x58, 0x4d, 0x7d, 0x0d, 0x63, 0xd5, 0xe1, 0x4a, 0xf6, 0x3f, 0x0b, - 0x59, 0x57, 0x60, 0x33, 0xcb, 0x92, 0x5a, 0x9b, 0x80, 0xa6, 0xab, 0x17, 0xf7, 0xdf, 0xf9, 0xa7, - 0xaf, 0xae, 0xbd, 0xf2, 0x2f, 0x5f, 0x5d, 0x7b, 0xe5, 0xdf, 0xbf, 0xba, 0xf6, 0xca, 0x0f, 0xaf, - 0x69, 0xc5, 0xd1, 0xff, 0x73, 0xb7, 0x3d, 0xf5, 0x4f, 0x7d, 0x47, 0x8b, 0xca, 0x89, 0xbd, 0xf7, - 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x66, 0x46, 0x79, 0x63, 0xf0, 0x37, 0x00, 0x00, + 0x76, 0xf6, 0xfc, 0x90, 0x1c, 0x3e, 0xfe, 0x0d, 0x4b, 0x94, 0x34, 0xe1, 0xae, 0x65, 0xb9, 0x65, + 0x6b, 0x65, 0xd9, 0x19, 0x5a, 0xb2, 0xe1, 0x68, 0xbd, 0xb1, 0x77, 0x29, 0x6a, 0x24, 0x51, 0x96, + 0xc8, 0xd9, 0x1a, 0xca, 0xc6, 0x6e, 0xbc, 0x1e, 0x14, 0xbb, 0x6b, 0x66, 0x3a, 0xec, 0xe9, 0xea, + 0xed, 0xaa, 0xa1, 0x38, 0x8b, 0x1c, 0x72, 0x49, 0x80, 0x1c, 0x02, 0xe4, 0x94, 0x20, 0x39, 0xe4, + 0x10, 0x04, 0x08, 0x82, 0x20, 0xd9, 0x5b, 0x0e, 0x71, 0x02, 0x64, 0x91, 0x04, 0x48, 0x6e, 0xb9, + 0xe6, 0x10, 0x20, 0xf0, 0x21, 0xf7, 0x9c, 0x72, 0x0b, 0x82, 0xfa, 0xe9, 0x9e, 0xee, 0x99, 0xee, + 0x19, 0x0d, 0xcd, 0x2c, 0xf6, 0x90, 0x13, 0xa7, 0x5e, 0xd5, 0xfb, 0xaa, 0xea, 0xd5, 0xab, 0xf7, + 0x57, 0x4d, 0xb8, 0xce, 0x02, 0x1a, 0x12, 0xc1, 0xc2, 0x9d, 0xd3, 0x3b, 0xc4, 0x0b, 0x7a, 0xe4, + 0xce, 0x4e, 0x44, 0xa9, 0x07, 0x21, 0x13, 0x0c, 0x5d, 0x75, 0xb9, 0x70, 0x59, 0x3d, 0xa6, 0x46, + 0xe3, 0xb6, 0x7f, 0xa9, 0xcb, 0x58, 0xd7, 0xa3, 0x3b, 0x6a, 0xd8, 0xf1, 0xa0, 0xb3, 0x43, 0xfc, + 0xa1, 0xe6, 0xd9, 0x7e, 0xff, 0xe4, 0x1e, 0xaf, 0xbb, 0x6c, 0x87, 0x04, 0x6e, 0x9f, 0xd8, 0x3d, + 0xd7, 0xa7, 0xe1, 0x70, 0x27, 0x38, 0xe9, 0x4a, 0x02, 0xdf, 0xe9, 0x53, 0x41, 0x76, 0x4e, 0xef, + 0xec, 0x74, 0xa9, 0x2f, 0x31, 0xa9, 0x63, 0xb8, 0xb6, 0xba, 0xac, 0xcb, 0xd4, 0xcf, 0x1d, 0xf9, + 0x4b, 0x53, 0xad, 0x9f, 0x2d, 0xc2, 0xe6, 0xbe, 0x5c, 0xc2, 0xa1, 0x59, 0x41, 0x2b, 0xa0, 0x36, + 0xaa, 0xc1, 0x52, 0x10, 0xb2, 0x8e, 0xeb, 0xd1, 0x1a, 0x5c, 0x2f, 0xdc, 0x5a, 0xc6, 0x51, 0x13, + 0xbd, 0x0b, 0x5b, 0xae, 0xcf, 0x05, 0xf1, 0xbc, 0x76, 0x40, 0xec, 0x13, 0xd2, 0xa5, 0xed, 0x80, + 0x88, 0x5e, 0x6d, 0x45, 0x0d, 0x43, 0xa6, 0xaf, 0xa9, 0xbb, 0x9a, 0x44, 0xf4, 0x50, 0x15, 0x4a, + 0xbd, 0xc1, 0x71, 0x6d, 0x55, 0x0d, 0x90, 0x3f, 0xd1, 0x3d, 0x28, 0x09, 0xd2, 0xad, 0xad, 0x5d, + 0x2f, 0xdc, 0x5a, 0xb9, 0x7b, 0xb3, 0x9e, 0x23, 0x81, 0xfa, 0xd1, 0x30, 0xa0, 0xfb, 0xbe, 0xa0, + 0x61, 0x87, 0xd8, 0x14, 0x4b, 0x16, 0xf4, 0x36, 0x6c, 0x84, 0x94, 0xb3, 0x41, 0x68, 0xd3, 0x36, + 0x1f, 0x74, 0x3a, 0xee, 0x59, 0x6d, 0x5d, 0xe2, 0xde, 0x2f, 0xd6, 0x0a, 0x78, 0x3d, 0xea, 0x6a, + 0xa9, 0x1e, 0xf4, 0x4d, 0x58, 0xf6, 0x49, 0x9f, 0xf2, 0x80, 0xd8, 0xb4, 0xb6, 0xa1, 0xa6, 0x1f, + 0x11, 0xd0, 0x36, 0x54, 0x42, 0x7a, 0xea, 0x72, 0x97, 0xf9, 0xb5, 0xaa, 0xea, 0x8c, 0xdb, 0xa8, + 0x09, 0x2b, 0x7d, 0xca, 0x7b, 0x6d, 0x9b, 0xf9, 0x1d, 0xb7, 0x5b, 0xbb, 0xa5, 0x16, 0xba, 0x33, + 0x75, 0xa1, 0xcf, 0x48, 0xd0, 0x12, 0xa1, 0xeb, 0x77, 0x47, 0x2b, 0x06, 0x89, 0xb1, 0xa7, 0x20, + 0xd0, 0x01, 0x80, 0xcd, 0xfa, 0x01, 0xf3, 0xa9, 0x2f, 0x78, 0xed, 0xae, 0x02, 0xac, 0xe7, 0x02, + 0xaa, 0x03, 0xd9, 0x8b, 0xc6, 0xb7, 0xa8, 0x90, 0x87, 0x82, 0x13, 0x08, 0xc8, 0x87, 0x2a, 0x71, + 0x1c, 0xe6, 0xb7, 0x13, 0xa8, 0xef, 0x5d, 0x2f, 0xdd, 0x5a, 0xb9, 0xfb, 0xdd, 0xe9, 0xa8, 0xc9, + 0x63, 0xae, 0xef, 0x4a, 0x88, 0x78, 0x1e, 0xde, 0xf0, 0x45, 0x38, 0x54, 0xa2, 0xdc, 0x20, 0xe9, + 0x1e, 0xf4, 0x08, 0x16, 0x4f, 0x89, 0x37, 0xa0, 0xbc, 0xe6, 0x9c, 0x4f, 0x18, 0x86, 0x1d, 0x7d, + 0x01, 0x68, 0xe0, 0x9f, 0x12, 0xcf, 0x75, 0xa4, 0x6a, 0xb6, 0x0d, 0x28, 0x3d, 0x1f, 0xe8, 0x66, + 0x02, 0xea, 0x53, 0x85, 0xb4, 0x1d, 0xc2, 0x56, 0xd6, 0xae, 0xa4, 0x16, 0x9e, 0xd0, 0x61, 0xad, + 0xa0, 0xb5, 0xf0, 0x84, 0x0e, 0xd1, 0x03, 0x58, 0x50, 0xb3, 0xd7, 0x8a, 0x33, 0x4e, 0xa3, 0x71, + 0x26, 0x68, 0xe8, 0x13, 0x6f, 0x74, 0x20, 0xf2, 0x34, 0x34, 0xf3, 0x87, 0xc5, 0x7b, 0x05, 0xeb, + 0xcb, 0x32, 0xac, 0xed, 0x6b, 0xc5, 0x6f, 0x09, 0x22, 0x06, 0x1c, 0x35, 0x60, 0x91, 0xab, 0x5f, + 0x6a, 0xc2, 0xf5, 0xbb, 0xbf, 0x9c, 0x7f, 0x28, 0x49, 0xbe, 0xba, 0xfe, 0x83, 0x0d, 0xb3, 0xbc, + 0x86, 0x7d, 0xca, 0x39, 0xe9, 0xd2, 0x5a, 0x49, 0x5f, 0x43, 0xd3, 0x44, 0x1d, 0xa8, 0xc6, 0x27, + 0xdf, 0x36, 0x53, 0x15, 0xd5, 0xf9, 0x7f, 0xe7, 0x25, 0xa7, 0x1a, 0xed, 0x46, 0xb5, 0x95, 0x94, + 0xf0, 0x86, 0x9d, 0xa6, 0x6e, 0xff, 0x76, 0x01, 0xd6, 0x3e, 0xa5, 0xa1, 0xbc, 0x15, 0xad, 0x78, + 0x4d, 0xa7, 0x9a, 0x60, 0x84, 0x19, 0x35, 0x13, 0x9b, 0x2e, 0x7e, 0x9d, 0x4d, 0x6f, 0xc1, 0x02, + 0x0d, 0x43, 0x16, 0xd6, 0xca, 0x0a, 0x5e, 0x37, 0xb6, 0xcf, 0x60, 0x2b, 0x6b, 0xc5, 0x19, 0xe7, + 0xfa, 0x24, 0x7d, 0xae, 0xef, 0xbf, 0xe4, 0x2a, 0x52, 0xbb, 0x4c, 0x9e, 0xee, 0x17, 0xb0, 0x68, + 0xb6, 0x5e, 0x81, 0xf2, 0xc1, 0xe1, 0x41, 0xa3, 0xfa, 0x0a, 0x5a, 0x85, 0xca, 0xf3, 0xe6, 0x83, + 0xdd, 0xa3, 0xfd, 0x83, 0x47, 0xd5, 0x02, 0xda, 0x80, 0x15, 0xdc, 0xd8, 0x3b, 0x3c, 0xd8, 0xdb, + 0x7f, 0x2a, 0x09, 0x45, 0xb4, 0x02, 0x4b, 0x8f, 0x1b, 0xbb, 0x4f, 0x8f, 0x1e, 0xff, 0xa0, 0x5a, + 0x42, 0xcb, 0xb0, 0xd0, 0xc0, 0xf8, 0x10, 0x57, 0xcb, 0xe8, 0x12, 0x6c, 0xec, 0xee, 0x1d, 0xed, + 0x1f, 0x1e, 0xb4, 0x71, 0xe3, 0xfb, 0xcf, 0xf7, 0x71, 0xe3, 0x41, 0x75, 0xc1, 0xfa, 0x69, 0x19, + 0x2e, 0x67, 0x5e, 0x78, 0xf4, 0x31, 0x94, 0x8f, 0x09, 0xa7, 0xb5, 0x57, 0xd5, 0x46, 0x6e, 0xe7, + 0x6e, 0xe4, 0x3e, 0xe1, 0x34, 0xad, 0x9c, 0x8a, 0x0f, 0xfd, 0x2a, 0x2c, 0x04, 0xae, 0xc7, 0x44, + 0xed, 0xda, 0x0c, 0x4b, 0x3b, 0xa6, 0xd9, 0x8a, 0x49, 0x5a, 0x69, 0xdb, 0x77, 0x6b, 0x37, 0xe7, + 0xe2, 0x95, 0x2c, 0xe8, 0x13, 0x58, 0x53, 0xa3, 0x9d, 0x76, 0x48, 0xfb, 0x4c, 0xd0, 0xda, 0xb7, + 0xe6, 0xc2, 0x58, 0xd5, 0xcc, 0x58, 0xf1, 0xa2, 0x43, 0xa8, 0xba, 0x7e, 0x37, 0xa4, 0x9c, 0xb7, + 0xbb, 0x44, 0xd0, 0x17, 0x64, 0xc8, 0x6b, 0xb7, 0x94, 0xa6, 0xbf, 0x91, 0x8b, 0xf7, 0x48, 0x0f, + 0x54, 0x68, 0x1b, 0x86, 0xdb, 0xd0, 0x38, 0x7a, 0x06, 0x1b, 0x74, 0x0c, 0xef, 0xad, 0x39, 0xf0, + 0xd6, 0x69, 0x0a, 0xee, 0x49, 0xb9, 0xf2, 0x5a, 0xf5, 0xfa, 0x93, 0x72, 0xe5, 0x7a, 0xf5, 0xf5, + 0x27, 0xe5, 0xca, 0xeb, 0x55, 0xeb, 0x49, 0xb9, 0x62, 0x55, 0x6f, 0x3c, 0x29, 0x57, 0x6e, 0x54, + 0xdf, 0x78, 0x52, 0xae, 0xbc, 0x51, 0x7d, 0xf3, 0x49, 0xb9, 0xf2, 0x66, 0xf5, 0x26, 0x5e, 0xb2, + 0x5d, 0x41, 0x1c, 0xea, 0xe1, 0xc5, 0x80, 0x79, 0xae, 0x3d, 0xc4, 0xcb, 0x82, 0x7a, 0xb4, 0x4f, + 0xe5, 0xc5, 0x5b, 0xec, 0x12, 0xcf, 0xa3, 0x43, 0x0c, 0x3e, 0x73, 0x68, 0x9b, 0x74, 0xa9, 0x2f, + 0xf0, 0x42, 0x10, 0xb2, 0xb3, 0x21, 0xae, 0x72, 0xd7, 0xa1, 0x36, 0x09, 0xdb, 0xae, 0xff, 0xeb, + 0xd4, 0x16, 0x2c, 0xb4, 0xfe, 0xb8, 0x00, 0x9b, 0x13, 0x67, 0x8e, 0x1a, 0xb0, 0x44, 0x7d, 0x72, + 0xec, 0x51, 0x47, 0xdd, 0x86, 0x95, 0xbb, 0x6f, 0x4f, 0x35, 0xa7, 0xf7, 0x19, 0xf3, 0x94, 0xcd, + 0x7c, 0xc8, 0xc2, 0xe6, 0x7d, 0x1c, 0xf1, 0xa2, 0xfb, 0x50, 0x3a, 0xb9, 0x17, 0xb9, 0xa8, 0x77, + 0x73, 0x21, 0x3e, 0x19, 0x1c, 0xd3, 0xd0, 0xa7, 0x82, 0x72, 0x6c, 0xbc, 0x2e, 0xd7, 0x0a, 0x70, + 0x72, 0x8f, 0x5b, 0x7f, 0x5f, 0x84, 0xb5, 0xff, 0x93, 0xc5, 0xa5, 0x5c, 0x7a, 0x71, 0xdc, 0xa5, + 0x9b, 0x48, 0x03, 0x26, 0x22, 0x8d, 0x95, 0xf9, 0x23, 0x8d, 0x0f, 0xa1, 0xcc, 0x03, 0x6a, 0xcf, + 0xbc, 0x3a, 0x69, 0x56, 0xc5, 0x73, 0x21, 0x22, 0xfc, 0x97, 0x22, 0x5c, 0xce, 0x74, 0x3c, 0x3f, + 0x1f, 0x51, 0x46, 0xdb, 0x87, 0x73, 0x6c, 0xff, 0x55, 0x00, 0xbb, 0x47, 0x42, 0xa1, 0x03, 0xc3, + 0x6b, 0x1a, 0x5a, 0x51, 0x54, 0x3c, 0xf8, 0x0e, 0x2c, 0x72, 0xbb, 0x47, 0xfb, 0xa4, 0x76, 0x43, + 0x81, 0x6f, 0xd5, 0x75, 0xa4, 0x5b, 0x8f, 0x22, 0xdd, 0xfa, 0xae, 0x3f, 0xc4, 0x66, 0xcc, 0x85, + 0xc8, 0xf2, 0x0f, 0x4a, 0xb0, 0x92, 0xb8, 0xc2, 0x3f, 0x1f, 0x09, 0x22, 0x28, 0xcb, 0x86, 0x71, + 0xdc, 0xea, 0x37, 0x6a, 0xc0, 0x82, 0x47, 0x8e, 0xa9, 0x57, 0x2b, 0x2b, 0x83, 0xb3, 0xf3, 0x32, + 0x06, 0xa7, 0xfe, 0x54, 0x72, 0x68, 0xf7, 0xac, 0xb9, 0x2f, 0x54, 0xcf, 0x2f, 0x40, 0xbe, 0xdb, + 0xf7, 0x00, 0x46, 0x8b, 0xcc, 0xf0, 0xc8, 0x5b, 0x49, 0x8f, 0xbc, 0x9c, 0xf4, 0xad, 0x7f, 0xbe, + 0x06, 0x57, 0x73, 0xa0, 0xd1, 0x47, 0x50, 0x21, 0x9d, 0x8e, 0xeb, 0xbb, 0x62, 0x68, 0x8e, 0xe9, + 0xf5, 0xdc, 0xe5, 0xed, 0x9a, 0x81, 0x38, 0x66, 0x41, 0x77, 0xa0, 0x44, 0xfd, 0x53, 0x13, 0x14, + 0xbd, 0x96, 0x1f, 0xdc, 0xf9, 0xa7, 0x9f, 0x92, 0x10, 0xcb, 0xb1, 0xe8, 0x10, 0x2a, 0xbd, 0x80, + 0xb4, 0x95, 0xe2, 0x97, 0x66, 0x04, 0x0f, 0x8f, 0x59, 0xe8, 0xfe, 0x84, 0xf9, 0x82, 0x78, 0x4d, + 0xe6, 0xec, 0x0e, 0x04, 0xe3, 0x36, 0xf1, 0xa8, 0x0a, 0xab, 0xf1, 0x52, 0x2f, 0x20, 0x6a, 0x0b, + 0xb7, 0x61, 0xd3, 0xed, 0xab, 0x14, 0x69, 0x20, 0xf3, 0x25, 0x65, 0xf5, 0x4d, 0x58, 0xb3, 0xa1, + 0x3a, 0x9a, 0x03, 0xcf, 0x6b, 0x2a, 0x32, 0xea, 0xc2, 0x9a, 0xb2, 0xfd, 0x9c, 0x7a, 0xca, 0xca, + 0xd7, 0x16, 0xd4, 0xca, 0xef, 0xcf, 0x7b, 0x24, 0xf5, 0x03, 0xe6, 0xd0, 0x96, 0x01, 0xd1, 0x6a, + 0xb3, 0xea, 0x27, 0x48, 0xc8, 0x81, 0xcb, 0x01, 0x73, 0xda, 0x8e, 0xcb, 0xc3, 0x41, 0x20, 0x5c, + 0xe6, 0xb7, 0x8f, 0x07, 0x4e, 0x97, 0x8a, 0xda, 0xe2, 0x0c, 0x1d, 0x68, 0x32, 0xe7, 0x41, 0xcc, + 0x74, 0x5f, 0xf1, 0xa8, 0xed, 0x5e, 0x0a, 0x26, 0x3b, 0x50, 0x1f, 0x36, 0xe4, 0x2c, 0xc4, 0xf7, + 0x99, 0x20, 0x92, 0xce, 0x6b, 0x4b, 0x6a, 0x43, 0x0f, 0xe6, 0xde, 0x90, 0x14, 0xf0, 0x08, 0x46, + 0x6f, 0x69, 0x3d, 0x48, 0x11, 0x51, 0x1d, 0x2e, 0x05, 0xa1, 0xcb, 0x42, 0x57, 0x0c, 0xdb, 0xb6, + 0x47, 0x38, 0x6f, 0xab, 0xcb, 0x57, 0x51, 0xb2, 0xde, 0x8c, 0xba, 0xf6, 0x64, 0xcf, 0x81, 0xbc, + 0x89, 0x4d, 0x99, 0x48, 0x12, 0xc7, 0xf5, 0x65, 0x1c, 0x10, 0x84, 0xec, 0x98, 0xd6, 0x96, 0xd5, + 0xf6, 0xbf, 0x95, 0xbb, 0x3c, 0x1c, 0x8d, 0x6f, 0xca, 0xe1, 0x32, 0xdb, 0x4c, 0xb6, 0xd1, 0x0d, + 0x58, 0x0b, 0x69, 0xe0, 0xb9, 0x36, 0x69, 0xdb, 0x6c, 0xe0, 0x0b, 0x75, 0x3d, 0xd7, 0xf0, 0xaa, + 0x21, 0xee, 0x49, 0x1a, 0xfa, 0x1e, 0x2c, 0x47, 0x49, 0x2a, 0x37, 0xb7, 0xd5, 0x9a, 0x32, 0xa1, + 0x19, 0x89, 0x47, 0x4c, 0xe8, 0x63, 0x58, 0xe2, 0x34, 0x3c, 0x75, 0x6d, 0xaa, 0x32, 0xea, 0x69, + 0x51, 0x4b, 0x4b, 0x8f, 0xd3, 0x2a, 0x69, 0x98, 0xd0, 0x23, 0xa8, 0x70, 0x11, 0x12, 0x41, 0xbb, + 0x43, 0x93, 0x80, 0xe7, 0x1b, 0xbf, 0x07, 0x34, 0xf0, 0xd8, 0xb0, 0xaf, 0x22, 0x6e, 0xcd, 0x82, + 0x63, 0x66, 0xd4, 0x80, 0x15, 0xc1, 0x3c, 0xc9, 0xa2, 0x0e, 0x77, 0x5d, 0x1d, 0xee, 0x8d, 0x7c, + 0xd3, 0x13, 0x8f, 0xc5, 0x49, 0x3e, 0x34, 0x84, 0x4b, 0x66, 0x69, 0x29, 0x5d, 0xd9, 0x50, 0x70, + 0x8f, 0xe7, 0xd6, 0x15, 0xb3, 0xe7, 0x09, 0x7d, 0x41, 0x7c, 0xa2, 0x03, 0x3d, 0x87, 0x0d, 0x4e, + 0xed, 0x81, 0x52, 0x0c, 0xe6, 0x0b, 0x7a, 0x26, 0x54, 0x21, 0x60, 0x9a, 0x44, 0x9a, 0xcc, 0x69, + 0xa5, 0x59, 0xf0, 0x38, 0x06, 0xfa, 0x0c, 0xaa, 0x64, 0x20, 0x58, 0x4b, 0xda, 0x83, 0x86, 0x71, + 0x33, 0x9b, 0xf3, 0xbb, 0x99, 0x09, 0x10, 0x74, 0x02, 0xdb, 0x19, 0x37, 0x2d, 0x9a, 0x02, 0xcd, + 0x3f, 0xc5, 0x14, 0x38, 0xd4, 0x80, 0x0a, 0x3b, 0xa5, 0xa1, 0x27, 0xc3, 0x63, 0x47, 0x1d, 0xc6, + 0x5b, 0xf9, 0x87, 0x71, 0x8f, 0x1f, 0x1e, 0xcb, 0xd8, 0xf4, 0x50, 0x73, 0xe0, 0x98, 0x75, 0xfb, + 0xbb, 0xb0, 0x39, 0x61, 0x8f, 0xe6, 0xf1, 0x10, 0xdb, 0xbb, 0x70, 0x29, 0xe3, 0xfe, 0xcf, 0x05, + 0xd1, 0x80, 0xab, 0x39, 0x6a, 0x31, 0x97, 0xaf, 0xfa, 0x9d, 0x22, 0x54, 0xc7, 0x77, 0x8a, 0x5e, + 0x83, 0x15, 0x12, 0xb8, 0xed, 0x74, 0x46, 0x0c, 0x24, 0x70, 0x4d, 0x3a, 0x29, 0xc3, 0x80, 0x13, + 0xd7, 0x77, 0x0c, 0x9c, 0xfa, 0x9d, 0x19, 0x1a, 0x3c, 0x83, 0xa5, 0x80, 0x08, 0xbb, 0x47, 0xb9, + 0x09, 0x0e, 0xde, 0x7b, 0x69, 0x71, 0xd7, 0x65, 0x58, 0xa5, 0x8e, 0x15, 0x47, 0x18, 0xdb, 0x3f, + 0x82, 0xe5, 0x98, 0x2a, 0xe7, 0x53, 0xa1, 0x98, 0x5e, 0x9d, 0xfa, 0x2d, 0x73, 0xc3, 0x64, 0x96, + 0xfc, 0xb2, 0x31, 0x83, 0x66, 0xb2, 0xfe, 0xab, 0x00, 0x95, 0xc8, 0xe7, 0xa2, 0x7d, 0x50, 0x0e, + 0x66, 0x37, 0xed, 0xac, 0xdf, 0xcc, 0x45, 0x3c, 0x48, 0x0c, 0xc6, 0x29, 0x56, 0xf4, 0x10, 0x56, + 0xa4, 0x61, 0x8f, 0x90, 0x8a, 0x33, 0x2c, 0x5c, 0x73, 0x34, 0x16, 0x27, 0x19, 0x11, 0x56, 0xde, + 0x67, 0xd7, 0x17, 0x6e, 0x8c, 0xa5, 0x1d, 0xfa, 0xad, 0xa9, 0x58, 0x89, 0xf1, 0x78, 0x1c, 0xc0, + 0xfa, 0xb3, 0x02, 0x6c, 0xe9, 0x6a, 0xde, 0x33, 0x12, 0x7c, 0x42, 0x87, 0xb1, 0x43, 0x25, 0xb0, + 0xe5, 0x31, 0x9b, 0x78, 0xfa, 0x50, 0x30, 0xed, 0xd0, 0x90, 0xfa, 0x36, 0x35, 0x72, 0xc8, 0xaf, + 0x82, 0x3c, 0xcd, 0x60, 0xc2, 0x99, 0x50, 0x91, 0x9e, 0x16, 0x47, 0x7a, 0xba, 0x0d, 0x15, 0xa6, + 0xae, 0x2d, 0xf1, 0xd4, 0xd6, 0x2a, 0x38, 0x6e, 0x5b, 0xf7, 0x60, 0x7d, 0xcf, 0x73, 0xa9, 0x2f, + 0xf6, 0x9b, 0xa6, 0xfc, 0x78, 0x13, 0xd6, 0x85, 0xdb, 0xa7, 0x6c, 0x20, 0x5a, 0xd4, 0x66, 0xbe, + 0xa3, 0xeb, 0x52, 0x0b, 0x78, 0x8c, 0x6a, 0x51, 0xf8, 0xc6, 0x5e, 0xc8, 0x38, 0x37, 0xda, 0x3b, + 0xbe, 0x8c, 0x48, 0x99, 0x0b, 0x19, 0xca, 0x5c, 0x4c, 0x28, 0xf3, 0x35, 0x48, 0x5c, 0x01, 0xa3, + 0xe6, 0x09, 0x8a, 0xf5, 0x9b, 0x05, 0x40, 0x93, 0xce, 0x45, 0x42, 0x89, 0x61, 0x40, 0x23, 0x78, + 0xf9, 0x1b, 0x7d, 0x0a, 0x6b, 0x21, 0xf3, 0x3c, 0xd7, 0xef, 0x3e, 0x0f, 0x1c, 0x22, 0x22, 0x7d, + 0xcd, 0x8f, 0x52, 0x70, 0x72, 0xf4, 0x68, 0x12, 0x9c, 0x86, 0xb1, 0x5e, 0xc0, 0xa2, 0x0e, 0xfd, + 0xe2, 0x0d, 0x14, 0x12, 0x1b, 0xc8, 0xb4, 0x02, 0x68, 0x0f, 0x96, 0xd5, 0x8f, 0x87, 0x21, 0xeb, + 0x1b, 0x7d, 0x7a, 0x73, 0x46, 0x60, 0xd9, 0x52, 0xbe, 0x09, 0x8f, 0xf8, 0xac, 0x7f, 0x2f, 0xc2, + 0x6a, 0xb2, 0x0f, 0x3d, 0x86, 0x4a, 0xc7, 0xa5, 0x9e, 0x83, 0x69, 0xc7, 0xa8, 0xcc, 0x3b, 0xb9, + 0xa0, 0xfa, 0x40, 0x1e, 0xca, 0xe1, 0x91, 0xfa, 0xe1, 0x98, 0x1b, 0xfd, 0x10, 0xaa, 0x51, 0xa0, + 0xf0, 0x30, 0x42, 0x9c, 0x55, 0xdc, 0xc4, 0x49, 0x86, 0x18, 0x73, 0x02, 0x07, 0x7d, 0x06, 0x1b, + 0x76, 0x42, 0xf9, 0x25, 0x74, 0x69, 0x86, 0x7e, 0x67, 0x5d, 0x16, 0x3c, 0x8e, 0x82, 0x0e, 0x60, + 0x95, 0x53, 0x3b, 0xa4, 0xc2, 0xa0, 0x96, 0x67, 0x14, 0xbb, 0x5a, 0xd1, 0xe0, 0x18, 0x32, 0xc5, + 0x6f, 0xdd, 0x04, 0x68, 0x9c, 0x51, 0x7b, 0xd7, 0x96, 0x97, 0x01, 0xd5, 0x60, 0xc9, 0x66, 0xfd, + 0x3e, 0x51, 0x4a, 0x5b, 0xba, 0xb5, 0x8c, 0xa3, 0xa6, 0xf5, 0x0f, 0x45, 0xd8, 0x8a, 0x12, 0xec, + 0x67, 0x54, 0x84, 0xae, 0x6d, 0xce, 0xe3, 0x1a, 0x40, 0x5f, 0xb5, 0x0f, 0x46, 0x5a, 0x91, 0xa0, + 0xa0, 0x5f, 0x83, 0x75, 0xdd, 0x8a, 0x16, 0x60, 0x64, 0xfc, 0x5e, 0x5d, 0x3f, 0xcb, 0xd4, 0x93, + 0xcf, 0x32, 0xf5, 0xe0, 0xa4, 0x2b, 0x09, 0xbc, 0xde, 0xa7, 0x82, 0xd4, 0x4f, 0xef, 0xe8, 0x74, + 0x2e, 0x5e, 0xfb, 0x18, 0x14, 0x3a, 0x84, 0x15, 0x41, 0xc2, 0x2e, 0x15, 0xca, 0x72, 0xcf, 0x14, + 0xb1, 0x31, 0xce, 0x87, 0xa1, 0xae, 0x8c, 0x6b, 0xb7, 0x9e, 0x44, 0x40, 0x3f, 0x02, 0xa4, 0x9b, + 0xbb, 0xa7, 0x34, 0x24, 0x5d, 0xaa, 0x71, 0xcb, 0xe7, 0xc1, 0xcd, 0x00, 0xb2, 0xfe, 0xad, 0x00, + 0x6b, 0x8f, 0x8f, 0x8e, 0x9a, 0x8f, 0xa8, 0x30, 0x12, 0xcf, 0x72, 0x36, 0xbb, 0x50, 0x0e, 0x58, + 0x28, 0x8c, 0xa0, 0xe6, 0x9c, 0x56, 0xb1, 0x4a, 0xd8, 0x1e, 0xe3, 0x22, 0xf2, 0x99, 0xf2, 0x37, + 0xba, 0x62, 0x2a, 0x09, 0xd4, 0xe4, 0x54, 0xa6, 0x25, 0x43, 0xd3, 0x9e, 0x10, 0xc1, 0x63, 0x4a, + 0x1c, 0x1a, 0x72, 0x93, 0x48, 0xe5, 0x87, 0xa6, 0x72, 0xfd, 0x7a, 0x2c, 0x4e, 0xf2, 0x59, 0x1f, + 0x00, 0x8c, 0xba, 0x5e, 0xde, 0x4c, 0x58, 0xff, 0x53, 0x80, 0x6f, 0x4c, 0x49, 0x0f, 0xd1, 0xe7, + 0xb0, 0xae, 0x5a, 0x47, 0x4a, 0x9c, 0xa3, 0x6b, 0x9f, 0x9f, 0x6c, 0x4e, 0xb1, 0xc9, 0x78, 0x0c, + 0x0b, 0x5d, 0x87, 0x95, 0xbe, 0xeb, 0x63, 0x9d, 0x75, 0xe8, 0x52, 0xfc, 0x02, 0x4e, 0x92, 0xd4, + 0x08, 0x72, 0x16, 0x8f, 0x28, 0x99, 0x11, 0x23, 0x12, 0xfa, 0x08, 0x96, 0xb4, 0x5e, 0x46, 0xc1, + 0x48, 0xbe, 0xf0, 0xcc, 0xd5, 0x51, 0x39, 0x86, 0xe1, 0xb1, 0x6e, 0xc3, 0x56, 0x96, 0x6f, 0xcb, + 0x12, 0xa1, 0xf5, 0x37, 0x45, 0x80, 0x11, 0x46, 0xa6, 0x0b, 0xd8, 0x83, 0x45, 0xa6, 0x90, 0x8c, + 0xfe, 0xbc, 0x3d, 0xc3, 0x3c, 0x26, 0x6f, 0x33, 0x36, 0xac, 0xe8, 0x23, 0xa9, 0x82, 0x0e, 0x37, + 0x37, 0xea, 0xad, 0x69, 0x61, 0x00, 0x4f, 0x01, 0x28, 0x36, 0xb4, 0x0f, 0x95, 0xc8, 0x24, 0xce, + 0xbc, 0x3c, 0x91, 0x49, 0x4d, 0xc1, 0xc4, 0xec, 0x12, 0x8a, 0x1a, 0xbb, 0x53, 0x5b, 0x98, 0x01, + 0x95, 0x65, 0xa0, 0x70, 0xcc, 0x6e, 0x7d, 0x59, 0x84, 0xd5, 0x64, 0x34, 0x85, 0x7e, 0xb7, 0x00, + 0xf5, 0x90, 0xfe, 0x78, 0xe0, 0x86, 0xd4, 0x79, 0x30, 0x90, 0x77, 0xa8, 0x65, 0xf7, 0xa8, 0x33, + 0x90, 0x8e, 0x6f, 0xbf, 0xeb, 0xb3, 0x98, 0x2c, 0x4d, 0xe4, 0x40, 0x44, 0x21, 0xeb, 0xac, 0x68, + 0x2d, 0x36, 0x57, 0x73, 0x82, 0xa3, 0x3f, 0x2a, 0xc0, 0x4e, 0x10, 0x4a, 0x05, 0x78, 0xf9, 0x05, + 0xe9, 0x8a, 0xcd, 0x94, 0x32, 0x44, 0x84, 0x37, 0x42, 0x3a, 0xa2, 0x61, 0x1f, 0xcf, 0x3b, 0x91, + 0xd5, 0xd5, 0xc2, 0x8b, 0x6d, 0xef, 0x67, 0xb0, 0x99, 0x2c, 0x94, 0x48, 0x50, 0xae, 0xbc, 0xc6, + 0x34, 0x7d, 0x39, 0x18, 0xe3, 0xc0, 0x93, 0x18, 0xd6, 0x3f, 0x16, 0xa0, 0x3a, 0x3e, 0x0e, 0x7d, + 0x0e, 0xd5, 0xbe, 0x0c, 0xd6, 0x1b, 0x67, 0x41, 0x48, 0x39, 0x57, 0x59, 0x6f, 0x61, 0xc6, 0xd6, + 0x53, 0x67, 0xa1, 0x4f, 0x42, 0xc5, 0x36, 0x13, 0x48, 0x08, 0xcb, 0x3b, 0x2e, 0xec, 0x9e, 0xf2, + 0xdf, 0x7c, 0xa6, 0x4c, 0xf3, 0x80, 0x93, 0x20, 0x56, 0x1b, 0xae, 0xe6, 0x8c, 0xcb, 0xc8, 0xa3, + 0x54, 0x7c, 0xaa, 0xa7, 0x31, 0xd6, 0x31, 0x6e, 0x4b, 0xbb, 0x6d, 0xde, 0x7d, 0x4b, 0xca, 0x27, + 0x9b, 0x96, 0xd5, 0x82, 0x4b, 0x19, 0x01, 0xce, 0x58, 0x34, 0x39, 0x99, 0x62, 0x7d, 0x13, 0x96, + 0x55, 0x08, 0x24, 0x13, 0x9e, 0xa8, 0x0e, 0x1b, 0x13, 0xac, 0x8f, 0x01, 0x62, 0xb3, 0x40, 0x62, + 0x13, 0xb4, 0x90, 0xb0, 0xe2, 0xa9, 0x3a, 0xee, 0xe2, 0x58, 0x1d, 0xd7, 0xfa, 0xef, 0x22, 0xa0, + 0x49, 0xbb, 0x82, 0x9e, 0xc2, 0xa2, 0x76, 0x87, 0x5f, 0xcb, 0x78, 0x1b, 0x8c, 0xb1, 0x98, 0xa3, + 0x38, 0x11, 0x73, 0x5c, 0x78, 0x58, 0x70, 0x08, 0x95, 0xb8, 0xd0, 0x58, 0x3e, 0x7f, 0xf8, 0x12, + 0x83, 0xa0, 0xef, 0xc3, 0x2a, 0x49, 0x46, 0x18, 0x0b, 0xe7, 0x59, 0x62, 0x0a, 0xc2, 0xfa, 0xbb, + 0x22, 0xac, 0x24, 0x32, 0x3c, 0xf4, 0x7b, 0xe7, 0x31, 0x6e, 0xa5, 0x99, 0x49, 0x9f, 0x81, 0x57, + 0x97, 0xf7, 0x17, 0xc1, 0xbe, 0x7d, 0x46, 0xdd, 0x6e, 0x4f, 0x50, 0x67, 0x7c, 0x6d, 0x73, 0xdb, + 0xb7, 0x9f, 0x15, 0x61, 0x63, 0x2c, 0xab, 0xfd, 0x7f, 0x19, 0xce, 0x29, 0xc3, 0xbf, 0x2a, 0x68, + 0x19, 0x26, 0x40, 0xd0, 0x0f, 0x60, 0xcd, 0x4b, 0xde, 0x02, 0x63, 0x01, 0xce, 0x75, 0x81, 0xd2, + 0x48, 0xd2, 0x0e, 0xc4, 0x96, 0x47, 0x5b, 0xed, 0x65, 0x9c, 0xa0, 0xc8, 0xd0, 0x4d, 0xb0, 0x80, + 0x79, 0xac, 0x3b, 0xfc, 0x84, 0x0e, 0x4d, 0x30, 0x9c, 0x24, 0x59, 0x7f, 0x5d, 0x80, 0xab, 0x39, + 0x85, 0x7a, 0x64, 0xc1, 0x6a, 0xdf, 0xf5, 0x77, 0x4f, 0x89, 0xeb, 0x91, 0x63, 0x4f, 0x07, 0x59, + 0x6b, 0x38, 0x45, 0x4b, 0x19, 0x86, 0xe2, 0x45, 0x18, 0x86, 0x9b, 0xb0, 0xde, 0x27, 0x67, 0xcf, + 0x7d, 0x12, 0x4f, 0x5b, 0x52, 0xd3, 0x8e, 0x51, 0xad, 0xaf, 0x0a, 0x50, 0x1d, 0x0f, 0xbe, 0x66, + 0xe6, 0x62, 0xd9, 0xd9, 0x4d, 0xf1, 0x82, 0xb2, 0x9b, 0x94, 0x30, 0x4a, 0x17, 0x20, 0x0c, 0xeb, + 0x37, 0xe0, 0x6a, 0x4e, 0xf8, 0x22, 0x9d, 0xe2, 0x0b, 0xa5, 0xb5, 0xa6, 0x34, 0x63, 0x5a, 0x68, + 0x1f, 0x40, 0x2b, 0xad, 0xaa, 0x29, 0x15, 0x67, 0x84, 0xaf, 0x13, 0xe1, 0x48, 0x82, 0xd9, 0xfa, + 0x8b, 0x12, 0xac, 0xa7, 0x5f, 0x31, 0xd0, 0xaf, 0x40, 0x99, 0x9e, 0x51, 0xdb, 0xa8, 0xf0, 0x8d, + 0x29, 0x81, 0x68, 0x94, 0x52, 0x63, 0xc5, 0x80, 0xbe, 0x07, 0x4b, 0x32, 0x57, 0x7a, 0x44, 0xc5, + 0xcc, 0x0a, 0x62, 0x2a, 0x3f, 0xc4, 0x11, 0x1b, 0x7a, 0x08, 0xcb, 0xc2, 0x0e, 0x5a, 0xcc, 0x3e, + 0xa1, 0x62, 0x66, 0x75, 0xee, 0x68, 0xaf, 0xa9, 0x47, 0x1a, 0x94, 0x11, 0x2b, 0x7a, 0x17, 0x2e, + 0xc9, 0xbb, 0xe9, 0x12, 0xef, 0x01, 0xf5, 0xc8, 0x30, 0x2a, 0x70, 0x95, 0x95, 0x14, 0xb3, 0xba, + 0x32, 0xaa, 0x61, 0x0b, 0x59, 0xd5, 0x30, 0xf4, 0x06, 0xac, 0x05, 0x34, 0x74, 0x55, 0xcd, 0x5f, + 0x0d, 0x5b, 0x54, 0xc3, 0xd2, 0x44, 0x74, 0x1b, 0xaa, 0x7c, 0x60, 0xdb, 0x94, 0xf3, 0xa3, 0x5e, + 0x48, 0x79, 0x8f, 0x79, 0x4e, 0x6d, 0x49, 0x0d, 0x9c, 0xa0, 0xcb, 0xb1, 0x1d, 0xe2, 0x7a, 0x83, + 0x90, 0x8e, 0xc6, 0x56, 0xf4, 0xd8, 0x71, 0xba, 0xf5, 0x27, 0x05, 0xb8, 0x9c, 0x59, 0x9d, 0x91, + 0xeb, 0xb2, 0x65, 0x6e, 0x29, 0x95, 0x2f, 0x71, 0x31, 0xd2, 0x44, 0xfd, 0x81, 0xa3, 0x49, 0x59, + 0x8a, 0xd1, 0x07, 0x8e, 0x26, 0x07, 0x79, 0x04, 0x4b, 0x8e, 0x7b, 0xea, 0xf2, 0x58, 0xaf, 0xe7, + 0xbc, 0x2c, 0x11, 0xb7, 0xf5, 0x4f, 0x05, 0xd8, 0xca, 0xca, 0x77, 0x32, 0xd3, 0xe5, 0x0f, 0xa1, + 0x96, 0xba, 0x64, 0xcf, 0x85, 0xeb, 0xb9, 0x3f, 0x21, 0xc6, 0xa2, 0x4b, 0x29, 0xe4, 0xf6, 0xe7, + 0xdc, 0xf4, 0xd2, 0x45, 0xd5, 0x31, 0xfe, 0xb0, 0x08, 0xcb, 0xf1, 0x4b, 0x12, 0x7a, 0x08, 0x8b, + 0x9e, 0xdb, 0x77, 0x45, 0x14, 0x91, 0xcf, 0x2e, 0x9f, 0xf1, 0xfa, 0x53, 0xc5, 0xa0, 0x5f, 0x9b, + 0x0c, 0x37, 0x7a, 0x2a, 0x8f, 0xe0, 0xc7, 0x03, 0xca, 0xc5, 0xec, 0x10, 0x7c, 0x84, 0x84, 0x0d, + 0x8b, 0xc6, 0x8a, 0x11, 0xb6, 0xbf, 0x0d, 0x2b, 0x89, 0x49, 0xe6, 0x7a, 0x02, 0xf9, 0x0e, 0xac, + 0xa5, 0x50, 0xe7, 0x7a, 0xf8, 0xf8, 0xb2, 0x00, 0x57, 0x73, 0xaa, 0xaa, 0xe8, 0xf9, 0x84, 0x75, + 0x2f, 0x9c, 0xe7, 0x48, 0xc6, 0x40, 0x64, 0x8e, 0xdc, 0x27, 0x67, 0xad, 0x41, 0xd8, 0x3d, 0xa7, + 0x35, 0x8f, 0xd9, 0xad, 0x3f, 0x2d, 0xc0, 0xe6, 0x44, 0xcd, 0xf0, 0x17, 0xaf, 0x66, 0xff, 0x9f, + 0x0b, 0xb0, 0x92, 0x78, 0xb0, 0x45, 0x1f, 0xc2, 0x42, 0xc0, 0xc2, 0x58, 0x03, 0x67, 0xbe, 0xf2, + 0x36, 0x59, 0x28, 0xb0, 0x66, 0x41, 0x07, 0x29, 0x1f, 0x2e, 0xd9, 0xef, 0xbe, 0xcc, 0x23, 0x71, + 0x3d, 0xfd, 0xd5, 0xc0, 0xc8, 0x85, 0x7f, 0x13, 0x96, 0x6d, 0x6f, 0xc0, 0x05, 0x0d, 0xf7, 0x9b, + 0x26, 0xe6, 0x18, 0x11, 0xe2, 0x92, 0x4d, 0x39, 0x51, 0xb2, 0xb9, 0x0e, 0x2b, 0x51, 0x91, 0x62, + 0xbf, 0xa9, 0x2b, 0x70, 0xcb, 0x38, 0x49, 0x42, 0xb7, 0x60, 0x83, 0xeb, 0x64, 0x35, 0x7e, 0xa1, + 0x59, 0xd2, 0x1f, 0x46, 0x8c, 0x91, 0xa5, 0xb5, 0xf6, 0x18, 0x71, 0xee, 0x13, 0x8f, 0xf8, 0xb6, + 0x5a, 0x82, 0x7e, 0xd5, 0x1f, 0xa3, 0x4a, 0xeb, 0x92, 0xa4, 0x98, 0x62, 0x09, 0xf1, 0xbb, 0x94, + 0xd7, 0x96, 0xd5, 0x02, 0x72, 0xfb, 0x65, 0x64, 0x14, 0x2d, 0x4e, 0x19, 0x54, 0xfd, 0x69, 0x4d, + 0x8a, 0x86, 0xde, 0x87, 0xcb, 0x51, 0xfb, 0x28, 0x24, 0x9d, 0x8e, 0x6b, 0xeb, 0x2f, 0x37, 0xcc, + 0xa7, 0xef, 0xd9, 0x9d, 0xd2, 0x3b, 0xf5, 0x28, 0xf1, 0x44, 0x6f, 0xaf, 0x47, 0xed, 0x13, 0xe9, + 0x9e, 0xe5, 0x49, 0xa9, 0xb7, 0xfb, 0x05, 0x9c, 0xd5, 0x25, 0xf7, 0x11, 0x0c, 0x8e, 0x3d, 0x97, + 0xf7, 0x0e, 0x98, 0x90, 0xee, 0x7a, 0xb8, 0xeb, 0x38, 0x32, 0xb1, 0xa7, 0x5c, 0xbd, 0xd8, 0x57, + 0x70, 0x6e, 0x3f, 0x72, 0xe0, 0xf2, 0x98, 0xf8, 0x74, 0x11, 0x5e, 0x7d, 0x25, 0x3f, 0xcd, 0x8e, + 0xb5, 0xb2, 0xb8, 0x70, 0x36, 0x98, 0xb4, 0x26, 0xe7, 0x7e, 0xd0, 0xb5, 0xfe, 0xb6, 0x10, 0x2b, + 0x7a, 0xd3, 0x14, 0x76, 0x27, 0x1c, 0xc5, 0x36, 0x54, 0xd4, 0xc7, 0x60, 0x36, 0xf3, 0x22, 0xd7, + 0x15, 0xb5, 0x55, 0x7d, 0x59, 0x4a, 0x50, 0x97, 0x2d, 0x75, 0x71, 0xf8, 0x19, 0x80, 0xb6, 0xe9, + 0x4a, 0xb6, 0xe7, 0x2a, 0x6e, 0x27, 0x00, 0xe4, 0xf4, 0x7e, 0x74, 0x50, 0x3a, 0x32, 0x88, 0xdb, + 0xd6, 0xe7, 0x70, 0x39, 0x53, 0x56, 0x68, 0x0f, 0x2a, 0xb6, 0x79, 0x74, 0x33, 0x56, 0x24, 0xff, + 0x53, 0x92, 0xf4, 0xeb, 0x1c, 0x8e, 0x19, 0xad, 0x1e, 0x6c, 0x8c, 0x45, 0x3a, 0x71, 0xed, 0xbc, + 0xf0, 0xf5, 0x6b, 0xe7, 0xc5, 0x51, 0xed, 0xdc, 0xfa, 0xfd, 0x02, 0xc0, 0xe8, 0x9b, 0x8c, 0x39, + 0x0b, 0x38, 0xf1, 0xe9, 0x96, 0x92, 0xcf, 0x63, 0x57, 0x60, 0x91, 0x76, 0x3a, 0xd4, 0x16, 0x51, + 0x39, 0x5e, 0xb7, 0xd0, 0x3b, 0xb0, 0x39, 0xfa, 0xe2, 0x23, 0x19, 0x71, 0x95, 0xf0, 0x64, 0x87, + 0xf5, 0x5b, 0x05, 0xb8, 0x9a, 0x93, 0xbe, 0xe5, 0xc6, 0xc8, 0xe6, 0xb9, 0x37, 0x31, 0xd4, 0x78, + 0x8d, 0x97, 0xcf, 0x5a, 0xc7, 0x01, 0xac, 0x9f, 0x96, 0x01, 0x4d, 0x7e, 0xee, 0x81, 0x0e, 0x61, + 0x9d, 0xd3, 0xa7, 0xae, 0x3f, 0x38, 0x3b, 0x0c, 0x84, 0x29, 0xda, 0x4d, 0x3f, 0xec, 0x56, 0x23, + 0x39, 0x1c, 0x8f, 0xb1, 0x4b, 0xe3, 0x1a, 0x0e, 0xfc, 0x5d, 0xfe, 0x9c, 0x53, 0x2d, 0xe8, 0x12, + 0x1e, 0x11, 0xa4, 0x61, 0x52, 0x8d, 0x03, 0xe6, 0x63, 0xc6, 0x84, 0x71, 0x1b, 0x29, 0x1a, 0xaa, + 0x03, 0xe2, 0x83, 0x20, 0xf0, 0x54, 0x29, 0x8e, 0x78, 0x8f, 0x42, 0x36, 0x08, 0x74, 0xe1, 0xbe, + 0x84, 0x33, 0x7a, 0x50, 0x0d, 0x96, 0x3a, 0x5c, 0xfd, 0x36, 0xa7, 0x10, 0x35, 0x65, 0xba, 0xa5, + 0x90, 0x75, 0xe7, 0xa2, 0xea, 0x4c, 0x50, 0xd0, 0xb7, 0x61, 0x89, 0x0f, 0xb9, 0x2d, 0xbc, 0xe8, + 0x63, 0xae, 0xfc, 0xef, 0xea, 0x5a, 0x6a, 0x1c, 0x8e, 0xc6, 0xa3, 0x2f, 0x60, 0xfd, 0x85, 0xeb, + 0x3b, 0xec, 0x05, 0x8f, 0xe4, 0x56, 0x51, 0x72, 0xfb, 0x20, 0x3f, 0x87, 0xd7, 0xc3, 0xc7, 0x0e, + 0x20, 0x16, 0x63, 0x1a, 0x4d, 0xda, 0x59, 0xb3, 0x8b, 0xbd, 0x9e, 0xb4, 0xe9, 0xc6, 0x36, 0x2f, + 0x2b, 0x4d, 0xcc, 0xea, 0xd2, 0x27, 0x69, 0xdb, 0xac, 0x1f, 0x34, 0x13, 0xff, 0xea, 0x34, 0xf5, + 0x24, 0x53, 0xc3, 0xf1, 0x18, 0xbb, 0x75, 0x0c, 0xeb, 0xe9, 0xb3, 0x96, 0x17, 0x6f, 0x20, 0x8f, + 0xd5, 0xd8, 0x36, 0xf9, 0x5b, 0xd2, 0x42, 0xe6, 0xc5, 0xef, 0xe5, 0xf2, 0x77, 0xec, 0x42, 0x4b, + 0x09, 0x17, 0xba, 0x05, 0x0b, 0x1e, 0x3d, 0x55, 0xdf, 0x8a, 0xaa, 0x3b, 0xa6, 0x1a, 0xd6, 0x5d, + 0x58, 0xd4, 0x92, 0x9d, 0xe3, 0x3d, 0xea, 0x2f, 0x0b, 0xf0, 0xea, 0x54, 0x61, 0xa2, 0x0f, 0xe0, + 0x4a, 0xb7, 0xcf, 0xc9, 0x5e, 0x48, 0x1d, 0xea, 0xcb, 0x74, 0x49, 0x86, 0x03, 0x89, 0xcc, 0x22, + 0xa7, 0x57, 0x6a, 0xde, 0x64, 0x8f, 0x99, 0x3c, 0xa3, 0x47, 0x26, 0x2e, 0xb1, 0x6a, 0x1f, 0x8c, + 0xbe, 0x80, 0x49, 0x13, 0xad, 0x26, 0xac, 0xa7, 0x25, 0x9d, 0xf9, 0x2a, 0x74, 0x1b, 0xaa, 0x2a, + 0xec, 0x92, 0xd6, 0x2c, 0x3a, 0x40, 0x3d, 0xf3, 0x04, 0xdd, 0xda, 0x80, 0xb5, 0xd4, 0x67, 0x2c, + 0x56, 0x0d, 0xae, 0x64, 0xff, 0x4b, 0x91, 0x75, 0x05, 0xb6, 0xb2, 0x2c, 0xa9, 0xb5, 0x05, 0x68, + 0xf2, 0x0b, 0xaa, 0xfb, 0xef, 0xfc, 0xf3, 0x57, 0xd7, 0x5e, 0xf9, 0xd7, 0xaf, 0xae, 0xbd, 0xf2, + 0x1f, 0x5f, 0x5d, 0x7b, 0xe5, 0x87, 0xd7, 0xb4, 0xe2, 0xe8, 0xff, 0xcc, 0xdb, 0x99, 0xf8, 0xd7, + 0xbf, 0xe3, 0x45, 0xe5, 0xc4, 0xde, 0xfb, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x68, 0xee, 0x31, + 0xee, 0x16, 0x38, 0x00, 0x00, } diff --git a/operator/v1alpha1/operator.proto b/operator/v1alpha1/operator.proto index 10d14f9eef1..2521825f16f 100644 --- a/operator/v1alpha1/operator.proto +++ b/operator/v1alpha1/operator.proto @@ -287,7 +287,8 @@ message KubernetesResourcesSpec { PodSecurityContext securityContext = 16; // Check whether autoScale is enabled. TypeBoolValueForPB autoScaleEnabled = 17; - + // Check whether PodDisruptionBudget is enabled + TypeBoolValueForPB podDisruptionBudgetEnabled = 18; // Overlays for k8s resources in rendered manifests. repeated K8sObjectOverlay overlays = 100; } @@ -486,8 +487,6 @@ message PodDisruptionBudgetSpec { uint32 minAvailable = 1; k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 2; uint32 maxUnavailable = 3; - // Check whether PodDisruptionBudget is enabled - TypeBoolValueForPB enabled = 4; } // See k8s.io.api.core.v1.PodsMetricSource. diff --git a/python/istio_api/operator/v1alpha1/operator_pb2.py b/python/istio_api/operator/v1alpha1/operator_pb2.py index 6325ec0c52e..54c528d7098 100644 --- a/python/istio_api/operator/v1alpha1/operator_pb2.py +++ b/python/istio_api/operator/v1alpha1/operator_pb2.py @@ -23,7 +23,7 @@ package='istio.operator.v1alpha1', syntax='proto3', serialized_options=_b('Z\036istio.io/api/operator/v1alpha1\310\342\036\000\320\342\036\000\340\342\036\000'), - serialized_pb=_b('\n operator/v1alpha1/operator.proto\x12\x17istio.operator.v1alpha1\x1a\x19google/protobuf/any.proto\x1a\x34k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto\x1a\x14gogoproto/gogo.proto\"\xa5\x05\n\x11IstioOperatorSpec\x12\x0f\n\x07profile\x18\n \x01(\t\x12\x1c\n\x14install_package_path\x18\x0b \x01(\t\x12\x0b\n\x03hub\x18\x0c \x01(\t\x12\x33\n\x03tag\x18\r \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x1b\n\x0fresource_suffix\x18\x0e \x01(\tB\x02\x18\x01\x12\x11\n\tnamespace\x18\x0f \x01(\t\x12\x10\n\x08revision\x18\x10 \x01(\t\x12\x44\n\x0bmesh_config\x18( \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12\x42\n\ncomponents\x18\x32 \x01(\x0b\x32..istio.operator.v1alpha1.IstioComponentSetSpec\x12]\n\x10\x61\x64\x64on_components\x18\x33 \x03(\x0b\x32?.istio.operator.v1alpha1.IstioOperatorSpec.AddonComponentsEntryB\x02\x18\x01\x12?\n\x06values\x18\x64 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12K\n\x12unvalidated_values\x18\x65 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x1a\x66\n\x14\x41\x64\x64onComponentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ExternalComponentSpec:\x02\x38\x01\"\xf4\x03\n\rInstallStatus\x12=\n\x06status\x18\x01 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\x0f\n\x07message\x18\x03 \x01(\t\x12U\n\x10\x63omponent_status\x18\x02 \x03(\x0b\x32;.istio.operator.v1alpha1.InstallStatus.ComponentStatusEntry\x1an\n\rVersionStatus\x12\x0f\n\x07version\x18\x01 \x01(\t\x12=\n\x06status\x18\x02 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\r\n\x05\x65rror\x18\x04 \x01(\t\x1al\n\x14\x43omponentStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.istio.operator.v1alpha1.InstallStatus.VersionStatus:\x02\x38\x01\"^\n\x06Status\x12\x08\n\x04NONE\x10\x00\x12\x0c\n\x08UPDATING\x10\x01\x12\x0f\n\x0bRECONCILING\x10\x02\x12\x0b\n\x07HEALTHY\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x12\x13\n\x0f\x41\x43TION_REQUIRED\x10\x05\"\xee\x03\n\x15IstioComponentSetSpec\x12\x38\n\x04\x62\x61se\x18\x1d \x01(\x0b\x32*.istio.operator.v1alpha1.BaseComponentSpec\x12\x35\n\x05pilot\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12\x33\n\x03\x63ni\x18& \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12=\n\ristiod_remote\x18\' \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12>\n\x10ingress_gateways\x18( \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpec\x12=\n\x0f\x65gress_gateways\x18) \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpecJ\x04\x08\x1f\x10 J\x04\x08 \x10!J\x04\x08!\x10\"J\x04\x08\"\x10#J\x04\x08#\x10$J\x04\x08$\x10%J\x04\x08%\x10&R\x07\x63itadelR\x06policyR\ttelemetryR\x06galleyR\nnode_agentR\x05proxyR\x10sidecar_injector\"\x90\x01\n\x11\x42\x61seComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\rComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x34\n\x04spec\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\x15\x45xternalComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x34\n\x04spec\x18\n \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x12\n\nchart_path\x18\x1e \x01(\t\x12$\n\x06schema\x18# \x01(\x0b\x32\x14.google.protobuf.Any\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\xdb\x02\n\x0bGatewaySpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12>\n\x05label\x18\x04 \x03(\x0b\x32/.istio.operator.v1alpha1.GatewaySpec.LabelEntry\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\x1a,\n\nLabelEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9f\n\n\x17KubernetesResourcesSpec\x12\x33\n\x08\x61\x66\x66inity\x18\x01 \x01(\x0b\x32!.istio.operator.v1alpha1.Affinity\x12,\n\x03\x65nv\x18\x02 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.EnvVar\x12\x46\n\x08hpa_spec\x18\x03 \x01(\x0b\x32\x34.istio.operator.v1alpha1.HorizontalPodAutoscalerSpec\x12\x19\n\x11image_pull_policy\x18\x04 \x01(\t\x12Y\n\rnode_selector\x18\x05 \x03(\x0b\x32\x42.istio.operator.v1alpha1.KubernetesResourcesSpec.NodeSelectorEntry\x12O\n\x15pod_disruption_budget\x18\x06 \x01(\x0b\x32\x30.istio.operator.v1alpha1.PodDisruptionBudgetSpec\x12]\n\x0fpod_annotations\x18\x07 \x03(\x0b\x32\x44.istio.operator.v1alpha1.KubernetesResourcesSpec.PodAnnotationsEntry\x12\x1b\n\x13priority_class_name\x18\x08 \x01(\t\x12@\n\x0freadiness_probe\x18\t \x01(\x0b\x32\'.istio.operator.v1alpha1.ReadinessProbe\x12\x15\n\rreplica_count\x18\n \x01(\r\x12\x35\n\tresources\x18\x0b \x01(\x0b\x32\".istio.operator.v1alpha1.Resources\x12\x35\n\x07service\x18\x0c \x01(\x0b\x32$.istio.operator.v1alpha1.ServiceSpec\x12=\n\x08strategy\x18\r \x01(\x0b\x32+.istio.operator.v1alpha1.DeploymentStrategy\x12\x38\n\x0btolerations\x18\x0e \x03(\x0b\x32#.istio.operator.v1alpha1.Toleration\x12\x65\n\x13service_annotations\x18\x0f \x03(\x0b\x32H.istio.operator.v1alpha1.KubernetesResourcesSpec.ServiceAnnotationsEntry\x12\x44\n\x0fsecurityContext\x18\x10 \x01(\x0b\x32+.istio.operator.v1alpha1.PodSecurityContext\x12\x45\n\x10\x61utoScaleEnabled\x18\x11 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12;\n\x08overlays\x18\x64 \x03(\x0b\x32).istio.operator.v1alpha1.K8sObjectOverlay\x1a\x33\n\x11NodeSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x35\n\x13PodAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17ServiceAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xdb\x01\n\x10K8sObjectOverlay\x12\x13\n\x0b\x61pi_version\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x44\n\x07patches\x18\x04 \x03(\x0b\x32\x33.istio.operator.v1alpha1.K8sObjectOverlay.PathValue\x1aP\n\tPathValue\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\"\xc5\x01\n\x08\x41\x66\x66inity\x12;\n\x0cnodeAffinity\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeAffinity\x12\x39\n\x0bpodAffinity\x18\x02 \x01(\x0b\x32$.istio.operator.v1alpha1.PodAffinity\x12\x41\n\x0fpodAntiAffinity\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAntiAffinity\"\x82\x01\n\x14\x43onfigMapKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"(\n\x0e\x43lientIPConfig\x12\x16\n\x0etimeoutSeconds\x18\x01 \x01(\x05\"M\n\x1b\x43rossVersionObjectReference\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\napiVersion\x18\x03 \x01(\t\"k\n\x12\x44\x65ploymentStrategy\x12\x0c\n\x04type\x18\x01 \x01(\t\x12G\n\rrollingUpdate\x18\x02 \x01(\x0b\x32\x30.istio.operator.v1alpha1.RollingUpdateDeployment\"_\n\x06\x45nvVar\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x38\n\tvalueFrom\x18\x03 \x01(\x0b\x32%.istio.operator.v1alpha1.EnvVarSource\"\xa2\x02\n\x0c\x45nvVarSource\x12>\n\x08\x66ieldRef\x18\x01 \x01(\x0b\x32,.istio.operator.v1alpha1.ObjectFieldSelector\x12H\n\x10resourceFieldRef\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ResourceFieldSelector\x12\x46\n\x0f\x63onfigMapKeyRef\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.ConfigMapKeySelector\x12@\n\x0csecretKeyRef\x18\x04 \x01(\x0b\x32*.istio.operator.v1alpha1.SecretKeySelector\"\x1d\n\nExecAction\x12\x0f\n\x07\x63ommand\x18\x01 \x03(\t\"\x86\x02\n\x14\x45xternalMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12K\n\x0emetricSelector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12I\n\x12targetAverageValue\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xb2\x01\n\rHTTPGetAction\x12\x0c\n\x04path\x18\x01 \x01(\t\x12;\n\x04port\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x03 \x01(\t\x12\x0e\n\x06scheme\x18\x04 \x01(\t\x12\x38\n\x0bhttpHeaders\x18\x05 \x03(\x0b\x32#.istio.operator.v1alpha1.HTTPHeader\")\n\nHTTPHeader\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xcb\x01\n\x1bHorizontalPodAutoscalerSpec\x12L\n\x0escaleTargetRef\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x13\n\x0bminReplicas\x18\x02 \x01(\x05\x12\x13\n\x0bmaxReplicas\x18\x03 \x01(\x05\x12\x34\n\x07metrics\x18\x04 \x03(\x0b\x32#.istio.operator.v1alpha1.MetricSpec\"$\n\x14LocalObjectReference\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x92\x02\n\nMetricSpec\x12\x0c\n\x04type\x18\x01 \x01(\t\x12;\n\x06object\x18\x02 \x01(\x0b\x32+.istio.operator.v1alpha1.ObjectMetricSource\x12\x37\n\x04pods\x18\x03 \x01(\x0b\x32).istio.operator.v1alpha1.PodsMetricSource\x12?\n\x08resource\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.ResourceMetricSource\x12?\n\x08\x65xternal\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.ExternalMetricSource\"\xd8\x01\n\x0cNodeAffinity\x12]\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeSelector\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.PreferredSchedulingTerm\"T\n\x0cNodeSelector\x12\x44\n\x11nodeSelectorTerms\x18\x01 \x03(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xa5\x01\n\x10NodeSelectorTerm\x12J\n\x10matchExpressions\x18\x01 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\x12\x45\n\x0bmatchFields\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\"H\n\x17NodeSelectorRequirement\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\x0e\n\x06values\x18\x03 \x03(\t\"<\n\x13ObjectFieldSelector\x12\x12\n\napiVersion\x18\x01 \x01(\t\x12\x11\n\tfieldPath\x18\x02 \x01(\t\"-\n\nObjectMeta\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x11\n\tnamespace\x18\x06 \x01(\t\"\xbe\x02\n\x12ObjectMetricSource\x12\x44\n\x06target\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x12\n\nmetricName\x18\x02 \x01(\t\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x04 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x43\n\x0c\x61verageValue\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xda\x01\n\x0bPodAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\xde\x01\n\x0fPodAntiAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\x86\x01\n\x0fPodAffinityTerm\x12J\n\rlabelSelector\x18\x01 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x12\n\nnamespaces\x18\x02 \x03(\t\x12\x13\n\x0btopologyKey\x18\x03 \x01(\t\"\xcc\x01\n\x17PodDisruptionBudgetSpec\x12\x14\n\x0cminAvailable\x18\x01 \x01(\r\x12\x45\n\x08selector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x16\n\x0emaxUnavailable\x18\x03 \x01(\r\x12<\n\x07\x65nabled\x18\x04 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\"\xb8\x01\n\x10PodsMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12I\n\x12targetAverageValue\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x03 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\"h\n\x17PreferredSchedulingTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12=\n\npreference\x18\x02 \x01(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xb9\x02\n\x0eReadinessProbe\x12\x31\n\x04\x65xec\x18\x01 \x01(\x0b\x32#.istio.operator.v1alpha1.ExecAction\x12\x37\n\x07httpGet\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.HTTPGetAction\x12;\n\ttcpSocket\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.TCPSocketAction\x12\x1b\n\x13initialDelaySeconds\x18\x04 \x01(\x05\x12\x16\n\x0etimeoutSeconds\x18\x05 \x01(\x05\x12\x15\n\rperiodSeconds\x18\x06 \x01(\x05\x12\x18\n\x10successThreshold\x18\x07 \x01(\x05\x12\x18\n\x10\x66\x61ilureThreshold\x18\x08 \x01(\x05\"\x80\x01\n\x15ResourceFieldSelector\x12\x15\n\rcontainerName\x18\x01 \x01(\t\x12\x10\n\x08resource\x18\x02 \x01(\t\x12>\n\x07\x64ivisor\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x91\x01\n\x14ResourceMetricSource\x12\x0c\n\x04name\x18\x01 \x01(\t\x12 \n\x18targetAverageUtilization\x18\x02 \x01(\x05\x12I\n\x12targetAverageValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xef\x01\n\tResources\x12>\n\x06limits\x18\x01 \x03(\x0b\x32..istio.operator.v1alpha1.Resources.LimitsEntry\x12\x42\n\x08requests\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.Resources.RequestsEntry\x1a-\n\x0bLimitsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rRequestsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa1\x01\n\x17RollingUpdateDeployment\x12\x45\n\x0emaxUnavailable\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12?\n\x08maxSurge\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x7f\n\x11SecretKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"\x85\x04\n\x0bServiceSpec\x12\x33\n\x05ports\x18\x01 \x03(\x0b\x32$.istio.operator.v1alpha1.ServicePort\x12\x44\n\x08selector\x18\x02 \x03(\x0b\x32\x32.istio.operator.v1alpha1.ServiceSpec.SelectorEntry\x12\x11\n\tclusterIP\x18\x03 \x01(\t\x12\x0c\n\x04type\x18\x04 \x01(\t\x12\x13\n\x0b\x65xternalIPs\x18\x05 \x03(\t\x12\x17\n\x0fsessionAffinity\x18\x07 \x01(\t\x12\x16\n\x0eloadBalancerIP\x18\x08 \x01(\t\x12 \n\x18loadBalancerSourceRanges\x18\t \x03(\t\x12\x14\n\x0c\x65xternalName\x18\n \x01(\t\x12\x1d\n\x15\x65xternalTrafficPolicy\x18\x0b \x01(\t\x12\x1b\n\x13healthCheckNodePort\x18\x0c \x01(\x05\x12 \n\x18publishNotReadyAddresses\x18\r \x01(\x08\x12M\n\x15sessionAffinityConfig\x18\x0e \x01(\x0b\x32..istio.operator.v1alpha1.SessionAffinityConfig\x1a/\n\rSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x90\x01\n\x0bServicePort\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08protocol\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\x05\x12\x41\n\ntargetPort\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x10\n\x08nodePort\x18\x05 \x01(\x05\"R\n\x15SessionAffinityConfig\x12\x39\n\x08\x63lientIP\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.ClientIPConfig\"\\\n\x0fTCPSocketAction\x12;\n\x04port\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x02 \x01(\t\"e\n\nToleration\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\t\x12\x0e\n\x06\x65\x66\x66\x65\x63t\x18\x04 \x01(\t\x12\x19\n\x11tolerationSeconds\x18\x05 \x01(\x03\"l\n\x17WeightedPodAffinityTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12\x41\n\x0fpodAffinityTerm\x18\x02 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\"\x9f\x03\n\x12PodSecurityContext\x12?\n\x0eseLinuxOptions\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.SELinuxOptions\x12\x11\n\trunAsUser\x18\x02 \x01(\x03\x12\x14\n\x0crunAsNonRoot\x18\x03 \x01(\x08\x12\x1a\n\x12supplementalGroups\x18\x04 \x03(\x03\x12\x0f\n\x07\x66sGroup\x18\x05 \x01(\x03\x12\x12\n\nrunAsGroup\x18\x06 \x01(\x03\x12\x30\n\x07sysctls\x18\x07 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.Sysctl\x12N\n\x0ewindowsOptions\x18\x08 \x01(\x0b\x32\x36.istio.operator.v1alpha1.WindowsSecurityContextOptions\x12\x1b\n\x13\x66sGroupChangePolicy\x18\t \x01(\t\x12?\n\x0eseccompProfile\x18\n \x01(\x0b\x32\'.istio.operator.v1alpha1.SeccompProfile\"I\n\x0eSELinuxOptions\x12\x0c\n\x04user\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\r\n\x05level\x18\x04 \x01(\t\"%\n\x06Sysctl\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"r\n\x1dWindowsSecurityContextOptions\x12\x1e\n\x16gmsaCredentialSpecName\x18\x01 \x01(\t\x12\x1a\n\x12gmsaCredentialSpec\x18\x02 \x01(\t\x12\x15\n\rrunAsUserName\x18\x03 \x01(\t\"8\n\x0eSeccompProfile\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x18\n\x10localhostProfile\x18\x02 \x01(\t\"\x0f\n\rTypeInterface\"\x18\n\x16TypeMapStringInterface\"\x16\n\x14TypeIntOrStringForPB\"\x14\n\x12TypeBoolValueForPBB,Z\x1eistio.io/api/operator/v1alpha1\xc8\xe2\x1e\x00\xd0\xe2\x1e\x00\xe0\xe2\x1e\x00\x62\x06proto3') + serialized_pb=_b('\n operator/v1alpha1/operator.proto\x12\x17istio.operator.v1alpha1\x1a\x19google/protobuf/any.proto\x1a\x34k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto\x1a\x14gogoproto/gogo.proto\"\xa5\x05\n\x11IstioOperatorSpec\x12\x0f\n\x07profile\x18\n \x01(\t\x12\x1c\n\x14install_package_path\x18\x0b \x01(\t\x12\x0b\n\x03hub\x18\x0c \x01(\t\x12\x33\n\x03tag\x18\r \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x1b\n\x0fresource_suffix\x18\x0e \x01(\tB\x02\x18\x01\x12\x11\n\tnamespace\x18\x0f \x01(\t\x12\x10\n\x08revision\x18\x10 \x01(\t\x12\x44\n\x0bmesh_config\x18( \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12\x42\n\ncomponents\x18\x32 \x01(\x0b\x32..istio.operator.v1alpha1.IstioComponentSetSpec\x12]\n\x10\x61\x64\x64on_components\x18\x33 \x03(\x0b\x32?.istio.operator.v1alpha1.IstioOperatorSpec.AddonComponentsEntryB\x02\x18\x01\x12?\n\x06values\x18\x64 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x12K\n\x12unvalidated_values\x18\x65 \x01(\x0b\x32/.istio.operator.v1alpha1.TypeMapStringInterface\x1a\x66\n\x14\x41\x64\x64onComponentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ExternalComponentSpec:\x02\x38\x01\"\xf4\x03\n\rInstallStatus\x12=\n\x06status\x18\x01 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\x0f\n\x07message\x18\x03 \x01(\t\x12U\n\x10\x63omponent_status\x18\x02 \x03(\x0b\x32;.istio.operator.v1alpha1.InstallStatus.ComponentStatusEntry\x1an\n\rVersionStatus\x12\x0f\n\x07version\x18\x01 \x01(\t\x12=\n\x06status\x18\x02 \x01(\x0e\x32-.istio.operator.v1alpha1.InstallStatus.Status\x12\r\n\x05\x65rror\x18\x04 \x01(\t\x1al\n\x14\x43omponentStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.istio.operator.v1alpha1.InstallStatus.VersionStatus:\x02\x38\x01\"^\n\x06Status\x12\x08\n\x04NONE\x10\x00\x12\x0c\n\x08UPDATING\x10\x01\x12\x0f\n\x0bRECONCILING\x10\x02\x12\x0b\n\x07HEALTHY\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x12\x13\n\x0f\x41\x43TION_REQUIRED\x10\x05\"\xee\x03\n\x15IstioComponentSetSpec\x12\x38\n\x04\x62\x61se\x18\x1d \x01(\x0b\x32*.istio.operator.v1alpha1.BaseComponentSpec\x12\x35\n\x05pilot\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12\x33\n\x03\x63ni\x18& \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12=\n\ristiod_remote\x18\' \x01(\x0b\x32&.istio.operator.v1alpha1.ComponentSpec\x12>\n\x10ingress_gateways\x18( \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpec\x12=\n\x0f\x65gress_gateways\x18) \x03(\x0b\x32$.istio.operator.v1alpha1.GatewaySpecJ\x04\x08\x1f\x10 J\x04\x08 \x10!J\x04\x08!\x10\"J\x04\x08\"\x10#J\x04\x08#\x10$J\x04\x08$\x10%J\x04\x08%\x10&R\x07\x63itadelR\x06policyR\ttelemetryR\x06galleyR\nnode_agentR\x05proxyR\x10sidecar_injector\"\x90\x01\n\x11\x42\x61seComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\rComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x34\n\x04spec\x18\x1e \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\x97\x02\n\x15\x45xternalComponentSpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x34\n\x04spec\x18\n \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12\x12\n\nchart_path\x18\x1e \x01(\t\x12$\n\x06schema\x18# \x01(\x0b\x32\x14.google.protobuf.Any\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\"\xdb\x02\n\x0bGatewaySpec\x12<\n\x07\x65nabled\x18\x01 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12\x11\n\tnamespace\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12>\n\x05label\x18\x04 \x03(\x0b\x32/.istio.operator.v1alpha1.GatewaySpec.LabelEntry\x12\x0b\n\x03hub\x18\n \x01(\t\x12\x33\n\x03tag\x18\x0b \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\x12=\n\x03k8s\x18\x32 \x01(\x0b\x32\x30.istio.operator.v1alpha1.KubernetesResourcesSpec\x1a,\n\nLabelEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xf0\n\n\x17KubernetesResourcesSpec\x12\x33\n\x08\x61\x66\x66inity\x18\x01 \x01(\x0b\x32!.istio.operator.v1alpha1.Affinity\x12,\n\x03\x65nv\x18\x02 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.EnvVar\x12\x46\n\x08hpa_spec\x18\x03 \x01(\x0b\x32\x34.istio.operator.v1alpha1.HorizontalPodAutoscalerSpec\x12\x19\n\x11image_pull_policy\x18\x04 \x01(\t\x12Y\n\rnode_selector\x18\x05 \x03(\x0b\x32\x42.istio.operator.v1alpha1.KubernetesResourcesSpec.NodeSelectorEntry\x12O\n\x15pod_disruption_budget\x18\x06 \x01(\x0b\x32\x30.istio.operator.v1alpha1.PodDisruptionBudgetSpec\x12]\n\x0fpod_annotations\x18\x07 \x03(\x0b\x32\x44.istio.operator.v1alpha1.KubernetesResourcesSpec.PodAnnotationsEntry\x12\x1b\n\x13priority_class_name\x18\x08 \x01(\t\x12@\n\x0freadiness_probe\x18\t \x01(\x0b\x32\'.istio.operator.v1alpha1.ReadinessProbe\x12\x15\n\rreplica_count\x18\n \x01(\r\x12\x35\n\tresources\x18\x0b \x01(\x0b\x32\".istio.operator.v1alpha1.Resources\x12\x35\n\x07service\x18\x0c \x01(\x0b\x32$.istio.operator.v1alpha1.ServiceSpec\x12=\n\x08strategy\x18\r \x01(\x0b\x32+.istio.operator.v1alpha1.DeploymentStrategy\x12\x38\n\x0btolerations\x18\x0e \x03(\x0b\x32#.istio.operator.v1alpha1.Toleration\x12\x65\n\x13service_annotations\x18\x0f \x03(\x0b\x32H.istio.operator.v1alpha1.KubernetesResourcesSpec.ServiceAnnotationsEntry\x12\x44\n\x0fsecurityContext\x18\x10 \x01(\x0b\x32+.istio.operator.v1alpha1.PodSecurityContext\x12\x45\n\x10\x61utoScaleEnabled\x18\x11 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12O\n\x1apodDisruptionBudgetEnabled\x18\x12 \x01(\x0b\x32+.istio.operator.v1alpha1.TypeBoolValueForPB\x12;\n\x08overlays\x18\x64 \x03(\x0b\x32).istio.operator.v1alpha1.K8sObjectOverlay\x1a\x33\n\x11NodeSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x35\n\x13PodAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17ServiceAnnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xdb\x01\n\x10K8sObjectOverlay\x12\x13\n\x0b\x61pi_version\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x44\n\x07patches\x18\x04 \x03(\x0b\x32\x33.istio.operator.v1alpha1.K8sObjectOverlay.PathValue\x1aP\n\tPathValue\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.TypeInterface\"\xc5\x01\n\x08\x41\x66\x66inity\x12;\n\x0cnodeAffinity\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeAffinity\x12\x39\n\x0bpodAffinity\x18\x02 \x01(\x0b\x32$.istio.operator.v1alpha1.PodAffinity\x12\x41\n\x0fpodAntiAffinity\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAntiAffinity\"\x82\x01\n\x14\x43onfigMapKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"(\n\x0e\x43lientIPConfig\x12\x16\n\x0etimeoutSeconds\x18\x01 \x01(\x05\"M\n\x1b\x43rossVersionObjectReference\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\napiVersion\x18\x03 \x01(\t\"k\n\x12\x44\x65ploymentStrategy\x12\x0c\n\x04type\x18\x01 \x01(\t\x12G\n\rrollingUpdate\x18\x02 \x01(\x0b\x32\x30.istio.operator.v1alpha1.RollingUpdateDeployment\"_\n\x06\x45nvVar\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x38\n\tvalueFrom\x18\x03 \x01(\x0b\x32%.istio.operator.v1alpha1.EnvVarSource\"\xa2\x02\n\x0c\x45nvVarSource\x12>\n\x08\x66ieldRef\x18\x01 \x01(\x0b\x32,.istio.operator.v1alpha1.ObjectFieldSelector\x12H\n\x10resourceFieldRef\x18\x02 \x01(\x0b\x32..istio.operator.v1alpha1.ResourceFieldSelector\x12\x46\n\x0f\x63onfigMapKeyRef\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.ConfigMapKeySelector\x12@\n\x0csecretKeyRef\x18\x04 \x01(\x0b\x32*.istio.operator.v1alpha1.SecretKeySelector\"\x1d\n\nExecAction\x12\x0f\n\x07\x63ommand\x18\x01 \x03(\t\"\x86\x02\n\x14\x45xternalMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12K\n\x0emetricSelector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12I\n\x12targetAverageValue\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xb2\x01\n\rHTTPGetAction\x12\x0c\n\x04path\x18\x01 \x01(\t\x12;\n\x04port\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x03 \x01(\t\x12\x0e\n\x06scheme\x18\x04 \x01(\t\x12\x38\n\x0bhttpHeaders\x18\x05 \x03(\x0b\x32#.istio.operator.v1alpha1.HTTPHeader\")\n\nHTTPHeader\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xcb\x01\n\x1bHorizontalPodAutoscalerSpec\x12L\n\x0escaleTargetRef\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x13\n\x0bminReplicas\x18\x02 \x01(\x05\x12\x13\n\x0bmaxReplicas\x18\x03 \x01(\x05\x12\x34\n\x07metrics\x18\x04 \x03(\x0b\x32#.istio.operator.v1alpha1.MetricSpec\"$\n\x14LocalObjectReference\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x92\x02\n\nMetricSpec\x12\x0c\n\x04type\x18\x01 \x01(\t\x12;\n\x06object\x18\x02 \x01(\x0b\x32+.istio.operator.v1alpha1.ObjectMetricSource\x12\x37\n\x04pods\x18\x03 \x01(\x0b\x32).istio.operator.v1alpha1.PodsMetricSource\x12?\n\x08resource\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.ResourceMetricSource\x12?\n\x08\x65xternal\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.ExternalMetricSource\"\xd8\x01\n\x0cNodeAffinity\x12]\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x01(\x0b\x32%.istio.operator.v1alpha1.NodeSelector\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.PreferredSchedulingTerm\"T\n\x0cNodeSelector\x12\x44\n\x11nodeSelectorTerms\x18\x01 \x03(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xa5\x01\n\x10NodeSelectorTerm\x12J\n\x10matchExpressions\x18\x01 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\x12\x45\n\x0bmatchFields\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.NodeSelectorRequirement\"H\n\x17NodeSelectorRequirement\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\x0e\n\x06values\x18\x03 \x03(\t\"<\n\x13ObjectFieldSelector\x12\x12\n\napiVersion\x18\x01 \x01(\t\x12\x11\n\tfieldPath\x18\x02 \x01(\t\"-\n\nObjectMeta\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x11\n\tnamespace\x18\x06 \x01(\t\"\xbe\x02\n\x12ObjectMetricSource\x12\x44\n\x06target\x18\x01 \x01(\x0b\x32\x34.istio.operator.v1alpha1.CrossVersionObjectReference\x12\x12\n\nmetricName\x18\x02 \x01(\t\x12\x42\n\x0btargetValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x04 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x43\n\x0c\x61verageValue\x18\x05 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xda\x01\n\x0bPodAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\xde\x01\n\x0fPodAntiAffinity\x12`\n.requiredDuringSchedulingIgnoredDuringExecution\x18\x01 \x03(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\x12i\n/preferredDuringSchedulingIgnoredDuringExecution\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.WeightedPodAffinityTerm\"\x86\x01\n\x0fPodAffinityTerm\x12J\n\rlabelSelector\x18\x01 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x12\n\nnamespaces\x18\x02 \x03(\t\x12\x13\n\x0btopologyKey\x18\x03 \x01(\t\"\x8e\x01\n\x17PodDisruptionBudgetSpec\x12\x14\n\x0cminAvailable\x18\x01 \x01(\r\x12\x45\n\x08selector\x18\x02 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\x12\x16\n\x0emaxUnavailable\x18\x03 \x01(\r\"\xb8\x01\n\x10PodsMetricSource\x12\x12\n\nmetricName\x18\x01 \x01(\t\x12I\n\x12targetAverageValue\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x45\n\x08selector\x18\x03 \x01(\x0b\x32\x33.k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector\"h\n\x17PreferredSchedulingTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12=\n\npreference\x18\x02 \x01(\x0b\x32).istio.operator.v1alpha1.NodeSelectorTerm\"\xb9\x02\n\x0eReadinessProbe\x12\x31\n\x04\x65xec\x18\x01 \x01(\x0b\x32#.istio.operator.v1alpha1.ExecAction\x12\x37\n\x07httpGet\x18\x02 \x01(\x0b\x32&.istio.operator.v1alpha1.HTTPGetAction\x12;\n\ttcpSocket\x18\x03 \x01(\x0b\x32(.istio.operator.v1alpha1.TCPSocketAction\x12\x1b\n\x13initialDelaySeconds\x18\x04 \x01(\x05\x12\x16\n\x0etimeoutSeconds\x18\x05 \x01(\x05\x12\x15\n\rperiodSeconds\x18\x06 \x01(\x05\x12\x18\n\x10successThreshold\x18\x07 \x01(\x05\x12\x18\n\x10\x66\x61ilureThreshold\x18\x08 \x01(\x05\"\x80\x01\n\x15ResourceFieldSelector\x12\x15\n\rcontainerName\x18\x01 \x01(\t\x12\x10\n\x08resource\x18\x02 \x01(\t\x12>\n\x07\x64ivisor\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x91\x01\n\x14ResourceMetricSource\x12\x0c\n\x04name\x18\x01 \x01(\t\x12 \n\x18targetAverageUtilization\x18\x02 \x01(\x05\x12I\n\x12targetAverageValue\x18\x03 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\xef\x01\n\tResources\x12>\n\x06limits\x18\x01 \x03(\x0b\x32..istio.operator.v1alpha1.Resources.LimitsEntry\x12\x42\n\x08requests\x18\x02 \x03(\x0b\x32\x30.istio.operator.v1alpha1.Resources.RequestsEntry\x1a-\n\x0bLimitsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rRequestsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa1\x01\n\x17RollingUpdateDeployment\x12\x45\n\x0emaxUnavailable\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12?\n\x08maxSurge\x18\x02 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\"\x7f\n\x11SecretKeySelector\x12K\n\x14localObjectReference\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.LocalObjectReference\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\x10\n\x08optional\x18\x03 \x01(\x08\"\x85\x04\n\x0bServiceSpec\x12\x33\n\x05ports\x18\x01 \x03(\x0b\x32$.istio.operator.v1alpha1.ServicePort\x12\x44\n\x08selector\x18\x02 \x03(\x0b\x32\x32.istio.operator.v1alpha1.ServiceSpec.SelectorEntry\x12\x11\n\tclusterIP\x18\x03 \x01(\t\x12\x0c\n\x04type\x18\x04 \x01(\t\x12\x13\n\x0b\x65xternalIPs\x18\x05 \x03(\t\x12\x17\n\x0fsessionAffinity\x18\x07 \x01(\t\x12\x16\n\x0eloadBalancerIP\x18\x08 \x01(\t\x12 \n\x18loadBalancerSourceRanges\x18\t \x03(\t\x12\x14\n\x0c\x65xternalName\x18\n \x01(\t\x12\x1d\n\x15\x65xternalTrafficPolicy\x18\x0b \x01(\t\x12\x1b\n\x13healthCheckNodePort\x18\x0c \x01(\x05\x12 \n\x18publishNotReadyAddresses\x18\r \x01(\x08\x12M\n\x15sessionAffinityConfig\x18\x0e \x01(\x0b\x32..istio.operator.v1alpha1.SessionAffinityConfig\x1a/\n\rSelectorEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x90\x01\n\x0bServicePort\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08protocol\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\x05\x12\x41\n\ntargetPort\x18\x04 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x10\n\x08nodePort\x18\x05 \x01(\x05\"R\n\x15SessionAffinityConfig\x12\x39\n\x08\x63lientIP\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.ClientIPConfig\"\\\n\x0fTCPSocketAction\x12;\n\x04port\x18\x01 \x01(\x0b\x32-.istio.operator.v1alpha1.TypeIntOrStringForPB\x12\x0c\n\x04host\x18\x02 \x01(\t\"e\n\nToleration\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x10\n\x08operator\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\t\x12\x0e\n\x06\x65\x66\x66\x65\x63t\x18\x04 \x01(\t\x12\x19\n\x11tolerationSeconds\x18\x05 \x01(\x03\"l\n\x17WeightedPodAffinityTerm\x12\x0e\n\x06weight\x18\x01 \x01(\x05\x12\x41\n\x0fpodAffinityTerm\x18\x02 \x01(\x0b\x32(.istio.operator.v1alpha1.PodAffinityTerm\"\x9f\x03\n\x12PodSecurityContext\x12?\n\x0eseLinuxOptions\x18\x01 \x01(\x0b\x32\'.istio.operator.v1alpha1.SELinuxOptions\x12\x11\n\trunAsUser\x18\x02 \x01(\x03\x12\x14\n\x0crunAsNonRoot\x18\x03 \x01(\x08\x12\x1a\n\x12supplementalGroups\x18\x04 \x03(\x03\x12\x0f\n\x07\x66sGroup\x18\x05 \x01(\x03\x12\x12\n\nrunAsGroup\x18\x06 \x01(\x03\x12\x30\n\x07sysctls\x18\x07 \x03(\x0b\x32\x1f.istio.operator.v1alpha1.Sysctl\x12N\n\x0ewindowsOptions\x18\x08 \x01(\x0b\x32\x36.istio.operator.v1alpha1.WindowsSecurityContextOptions\x12\x1b\n\x13\x66sGroupChangePolicy\x18\t \x01(\t\x12?\n\x0eseccompProfile\x18\n \x01(\x0b\x32\'.istio.operator.v1alpha1.SeccompProfile\"I\n\x0eSELinuxOptions\x12\x0c\n\x04user\x18\x01 \x01(\t\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\r\n\x05level\x18\x04 \x01(\t\"%\n\x06Sysctl\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"r\n\x1dWindowsSecurityContextOptions\x12\x1e\n\x16gmsaCredentialSpecName\x18\x01 \x01(\t\x12\x1a\n\x12gmsaCredentialSpec\x18\x02 \x01(\t\x12\x15\n\rrunAsUserName\x18\x03 \x01(\t\"8\n\x0eSeccompProfile\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x18\n\x10localhostProfile\x18\x02 \x01(\t\"\x0f\n\rTypeInterface\"\x18\n\x16TypeMapStringInterface\"\x16\n\x14TypeIntOrStringForPB\"\x14\n\x12TypeBoolValueForPBB,Z\x1eistio.io/api/operator/v1alpha1\xc8\xe2\x1e\x00\xd0\xe2\x1e\x00\xe0\xe2\x1e\x00\x62\x06proto3') , dependencies=[google_dot_protobuf_dot_any__pb2.DESCRIPTOR,k8s_dot_io_dot_apimachinery_dot_pkg_dot_apis_dot_meta_dot_v1_dot_generated__pb2.DESCRIPTOR,gogoproto_dot_gogo__pb2.DESCRIPTOR,]) @@ -719,8 +719,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4052, - serialized_end=4103, + serialized_start=4133, + serialized_end=4184, ) _KUBERNETESRESOURCESSPEC_PODANNOTATIONSENTRY = _descriptor.Descriptor( @@ -756,8 +756,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4105, - serialized_end=4158, + serialized_start=4186, + serialized_end=4239, ) _KUBERNETESRESOURCESSPEC_SERVICEANNOTATIONSENTRY = _descriptor.Descriptor( @@ -793,8 +793,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4160, - serialized_end=4217, + serialized_start=4241, + serialized_end=4298, ) _KUBERNETESRESOURCESSPEC = _descriptor.Descriptor( @@ -924,7 +924,14 @@ is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( - name='overlays', full_name='istio.operator.v1alpha1.KubernetesResourcesSpec.overlays', index=17, + name='podDisruptionBudgetEnabled', full_name='istio.operator.v1alpha1.KubernetesResourcesSpec.podDisruptionBudgetEnabled', index=17, + number=18, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR), + _descriptor.FieldDescriptor( + name='overlays', full_name='istio.operator.v1alpha1.KubernetesResourcesSpec.overlays', index=18, number=100, type=11, cpp_type=10, label=3, has_default_value=False, default_value=[], message_type=None, enum_type=None, containing_type=None, @@ -943,7 +950,7 @@ oneofs=[ ], serialized_start=2906, - serialized_end=4217, + serialized_end=4298, ) @@ -980,8 +987,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4359, - serialized_end=4439, + serialized_start=4440, + serialized_end=4520, ) _K8SOBJECTOVERLAY = _descriptor.Descriptor( @@ -1031,8 +1038,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4220, - serialized_end=4439, + serialized_start=4301, + serialized_end=4520, ) @@ -1076,8 +1083,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4442, - serialized_end=4639, + serialized_start=4523, + serialized_end=4720, ) @@ -1121,8 +1128,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4642, - serialized_end=4772, + serialized_start=4723, + serialized_end=4853, ) @@ -1152,8 +1159,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4774, - serialized_end=4814, + serialized_start=4855, + serialized_end=4895, ) @@ -1197,8 +1204,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4816, - serialized_end=4893, + serialized_start=4897, + serialized_end=4974, ) @@ -1235,8 +1242,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4895, - serialized_end=5002, + serialized_start=4976, + serialized_end=5083, ) @@ -1280,8 +1287,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5004, - serialized_end=5099, + serialized_start=5085, + serialized_end=5180, ) @@ -1332,8 +1339,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5102, - serialized_end=5392, + serialized_start=5183, + serialized_end=5473, ) @@ -1363,8 +1370,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5394, - serialized_end=5423, + serialized_start=5475, + serialized_end=5504, ) @@ -1415,8 +1422,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5426, - serialized_end=5688, + serialized_start=5507, + serialized_end=5769, ) @@ -1474,8 +1481,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5691, - serialized_end=5869, + serialized_start=5772, + serialized_end=5950, ) @@ -1512,8 +1519,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5871, - serialized_end=5912, + serialized_start=5952, + serialized_end=5993, ) @@ -1564,8 +1571,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5915, - serialized_end=6118, + serialized_start=5996, + serialized_end=6199, ) @@ -1595,8 +1602,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6120, - serialized_end=6156, + serialized_start=6201, + serialized_end=6237, ) @@ -1654,8 +1661,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6159, - serialized_end=6433, + serialized_start=6240, + serialized_end=6514, ) @@ -1692,8 +1699,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6436, - serialized_end=6652, + serialized_start=6517, + serialized_end=6733, ) @@ -1723,8 +1730,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6654, - serialized_end=6738, + serialized_start=6735, + serialized_end=6819, ) @@ -1761,8 +1768,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6741, - serialized_end=6906, + serialized_start=6822, + serialized_end=6987, ) @@ -1806,8 +1813,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6908, - serialized_end=6980, + serialized_start=6989, + serialized_end=7061, ) @@ -1844,8 +1851,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6982, - serialized_end=7042, + serialized_start=7063, + serialized_end=7123, ) @@ -1882,8 +1889,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7044, - serialized_end=7089, + serialized_start=7125, + serialized_end=7170, ) @@ -1941,8 +1948,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7092, - serialized_end=7410, + serialized_start=7173, + serialized_end=7491, ) @@ -1979,8 +1986,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7413, - serialized_end=7631, + serialized_start=7494, + serialized_end=7712, ) @@ -2017,8 +2024,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7634, - serialized_end=7856, + serialized_start=7715, + serialized_end=7937, ) @@ -2062,8 +2069,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7859, - serialized_end=7993, + serialized_start=7940, + serialized_end=8074, ) @@ -2095,13 +2102,6 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), - _descriptor.FieldDescriptor( - name='enabled', full_name='istio.operator.v1alpha1.PodDisruptionBudgetSpec.enabled', index=3, - number=4, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], @@ -2114,8 +2114,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7996, - serialized_end=8200, + serialized_start=8077, + serialized_end=8219, ) @@ -2159,8 +2159,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8203, - serialized_end=8387, + serialized_start=8222, + serialized_end=8406, ) @@ -2197,8 +2197,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8389, - serialized_end=8493, + serialized_start=8408, + serialized_end=8512, ) @@ -2277,8 +2277,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8496, - serialized_end=8809, + serialized_start=8515, + serialized_end=8828, ) @@ -2322,8 +2322,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8812, - serialized_end=8940, + serialized_start=8831, + serialized_end=8959, ) @@ -2367,8 +2367,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8943, - serialized_end=9088, + serialized_start=8962, + serialized_end=9107, ) @@ -2405,8 +2405,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9236, - serialized_end=9281, + serialized_start=9255, + serialized_end=9300, ) _RESOURCES_REQUESTSENTRY = _descriptor.Descriptor( @@ -2442,8 +2442,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9283, - serialized_end=9330, + serialized_start=9302, + serialized_end=9349, ) _RESOURCES = _descriptor.Descriptor( @@ -2479,8 +2479,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9091, - serialized_end=9330, + serialized_start=9110, + serialized_end=9349, ) @@ -2517,8 +2517,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9333, - serialized_end=9494, + serialized_start=9352, + serialized_end=9513, ) @@ -2562,8 +2562,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9496, - serialized_end=9623, + serialized_start=9515, + serialized_end=9642, ) @@ -2600,8 +2600,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10096, - serialized_end=10143, + serialized_start=10115, + serialized_end=10162, ) _SERVICESPEC = _descriptor.Descriptor( @@ -2714,8 +2714,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9626, - serialized_end=10143, + serialized_start=9645, + serialized_end=10162, ) @@ -2773,8 +2773,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10146, - serialized_end=10290, + serialized_start=10165, + serialized_end=10309, ) @@ -2804,8 +2804,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10292, - serialized_end=10374, + serialized_start=10311, + serialized_end=10393, ) @@ -2842,8 +2842,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10376, - serialized_end=10468, + serialized_start=10395, + serialized_end=10487, ) @@ -2901,8 +2901,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10470, - serialized_end=10571, + serialized_start=10489, + serialized_end=10590, ) @@ -2939,8 +2939,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10573, - serialized_end=10681, + serialized_start=10592, + serialized_end=10700, ) @@ -3033,8 +3033,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10684, - serialized_end=11099, + serialized_start=10703, + serialized_end=11118, ) @@ -3085,8 +3085,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11101, - serialized_end=11174, + serialized_start=11120, + serialized_end=11193, ) @@ -3123,8 +3123,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11176, - serialized_end=11213, + serialized_start=11195, + serialized_end=11232, ) @@ -3168,8 +3168,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11215, - serialized_end=11329, + serialized_start=11234, + serialized_end=11348, ) @@ -3206,8 +3206,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11331, - serialized_end=11387, + serialized_start=11350, + serialized_end=11406, ) @@ -3230,8 +3230,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11389, - serialized_end=11404, + serialized_start=11408, + serialized_end=11423, ) @@ -3254,8 +3254,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11406, - serialized_end=11430, + serialized_start=11425, + serialized_end=11449, ) @@ -3278,8 +3278,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11432, - serialized_end=11454, + serialized_start=11451, + serialized_end=11473, ) @@ -3302,8 +3302,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=11456, - serialized_end=11476, + serialized_start=11475, + serialized_end=11495, ) _ISTIOOPERATORSPEC_ADDONCOMPONENTSENTRY.fields_by_name['value'].message_type = _EXTERNALCOMPONENTSPEC @@ -3359,6 +3359,7 @@ _KUBERNETESRESOURCESSPEC.fields_by_name['service_annotations'].message_type = _KUBERNETESRESOURCESSPEC_SERVICEANNOTATIONSENTRY _KUBERNETESRESOURCESSPEC.fields_by_name['securityContext'].message_type = _PODSECURITYCONTEXT _KUBERNETESRESOURCESSPEC.fields_by_name['autoScaleEnabled'].message_type = _TYPEBOOLVALUEFORPB +_KUBERNETESRESOURCESSPEC.fields_by_name['podDisruptionBudgetEnabled'].message_type = _TYPEBOOLVALUEFORPB _KUBERNETESRESOURCESSPEC.fields_by_name['overlays'].message_type = _K8SOBJECTOVERLAY _K8SOBJECTOVERLAY_PATHVALUE.fields_by_name['value'].message_type = _TYPEINTERFACE _K8SOBJECTOVERLAY_PATHVALUE.containing_type = _K8SOBJECTOVERLAY @@ -3399,7 +3400,6 @@ _PODANTIAFFINITY.fields_by_name['preferredDuringSchedulingIgnoredDuringExecution'].message_type = _WEIGHTEDPODAFFINITYTERM _PODAFFINITYTERM.fields_by_name['labelSelector'].message_type = k8s_dot_io_dot_apimachinery_dot_pkg_dot_apis_dot_meta_dot_v1_dot_generated__pb2._LABELSELECTOR _PODDISRUPTIONBUDGETSPEC.fields_by_name['selector'].message_type = k8s_dot_io_dot_apimachinery_dot_pkg_dot_apis_dot_meta_dot_v1_dot_generated__pb2._LABELSELECTOR -_PODDISRUPTIONBUDGETSPEC.fields_by_name['enabled'].message_type = _TYPEBOOLVALUEFORPB _PODSMETRICSOURCE.fields_by_name['targetAverageValue'].message_type = _TYPEINTORSTRINGFORPB _PODSMETRICSOURCE.fields_by_name['selector'].message_type = k8s_dot_io_dot_apimachinery_dot_pkg_dot_apis_dot_meta_dot_v1_dot_generated__pb2._LABELSELECTOR _PREFERREDSCHEDULINGTERM.fields_by_name['preference'].message_type = _NODESELECTORTERM From 93e6deef7fcefaf730b323e01017aff5bceaa0c1 Mon Sep 17 00:00:00 2001 From: carolynhu Date: Tue, 10 Nov 2020 10:48:21 -0800 Subject: [PATCH 4/5] update comment --- operator/v1alpha1/istio.operator.v1alpha1.pb.html | 4 ++-- operator/v1alpha1/operator.pb.go | 4 ++-- operator/v1alpha1/operator.proto | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/operator/v1alpha1/istio.operator.v1alpha1.pb.html b/operator/v1alpha1/istio.operator.v1alpha1.pb.html index 2c027f0caa3..cd6e1ca5f9d 100644 --- a/operator/v1alpha1/istio.operator.v1alpha1.pb.html +++ b/operator/v1alpha1/istio.operator.v1alpha1.pb.html @@ -826,7 +826,7 @@

KubernetesResourcesSpec

autoScaleEnabled TypeBoolValueForPB -

Check whether autoScale is enabled.

+

Enable autoScale. If this is enabled, HPAs will be installed.

@@ -837,7 +837,7 @@

KubernetesResourcesSpec

podDisruptionBudgetEnabled TypeBoolValueForPB -

Check whether PodDisruptionBudget is enabled

+

Enable PodDisruptionBudget. If this is enabled, PDBs will be installed.

diff --git a/operator/v1alpha1/operator.pb.go b/operator/v1alpha1/operator.pb.go index a46d2c846ea..04dbea2eddb 100644 --- a/operator/v1alpha1/operator.pb.go +++ b/operator/v1alpha1/operator.pb.go @@ -744,9 +744,9 @@ type KubernetesResourcesSpec struct { // k8s pod security context // [https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod) SecurityContext *PodSecurityContext `protobuf:"bytes,16,opt,name=securityContext,proto3" json:"securityContext,omitempty"` - // Check whether autoScale is enabled. + // Enable autoScale. If this is enabled, HPAs will be installed. AutoScaleEnabled *BoolValueForPB `protobuf:"bytes,17,opt,name=autoScaleEnabled,proto3" json:"autoScaleEnabled,omitempty"` - // Check whether PodDisruptionBudget is enabled + // Enable PodDisruptionBudget. If this is enabled, PDBs will be installed. PodDisruptionBudgetEnabled *BoolValueForPB `protobuf:"bytes,18,opt,name=podDisruptionBudgetEnabled,proto3" json:"podDisruptionBudgetEnabled,omitempty"` // Overlays for k8s resources in rendered manifests. Overlays []*K8SObjectOverlay `protobuf:"bytes,100,rep,name=overlays,proto3" json:"overlays,omitempty"` diff --git a/operator/v1alpha1/operator.proto b/operator/v1alpha1/operator.proto index 2521825f16f..76717fb98f8 100644 --- a/operator/v1alpha1/operator.proto +++ b/operator/v1alpha1/operator.proto @@ -285,9 +285,9 @@ message KubernetesResourcesSpec { // k8s pod security context // [https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod) PodSecurityContext securityContext = 16; - // Check whether autoScale is enabled. + // Enable autoScale. If this is enabled, HPAs will be installed. TypeBoolValueForPB autoScaleEnabled = 17; - // Check whether PodDisruptionBudget is enabled + // Enable PodDisruptionBudget. If this is enabled, PDBs will be installed. TypeBoolValueForPB podDisruptionBudgetEnabled = 18; // Overlays for k8s resources in rendered manifests. repeated K8sObjectOverlay overlays = 100; From 042dc70b6eef4c35238ed7c5b4fceb6e1382fc0e Mon Sep 17 00:00:00 2001 From: carolynhu Date: Sat, 21 Nov 2020 17:06:56 -0800 Subject: [PATCH 5/5] update comment to be more descriptive --- .../v1alpha1/istio.operator.v1alpha1.pb.html | 24 +++++++++++++++++-- operator/v1alpha1/operator.pb.go | 24 +++++++++++++++++-- operator/v1alpha1/operator.proto | 24 +++++++++++++++++-- 3 files changed, 66 insertions(+), 6 deletions(-) diff --git a/operator/v1alpha1/istio.operator.v1alpha1.pb.html b/operator/v1alpha1/istio.operator.v1alpha1.pb.html index cd6e1ca5f9d..880ea0a42ee 100644 --- a/operator/v1alpha1/istio.operator.v1alpha1.pb.html +++ b/operator/v1alpha1/istio.operator.v1alpha1.pb.html @@ -826,7 +826,17 @@

KubernetesResourcesSpec

autoScaleEnabled TypeBoolValueForPB -

Enable autoScale. If this is enabled, HPAs will be installed.

+

Setting this field to true will create a HorizonalPodAutoscaler (HPA) for the Deployment in this component, +with default settings defined by spec.components..k8s.hpaSpec in the selected profile. These +defaults can be overridden e.g.: +spec: + profile: demo + components: + pilot: + k8s: + autoScaleEnabled: true + hpaSpec: + minReplicas: 5 # changes from the default defined in the demo profile.

@@ -837,7 +847,17 @@

KubernetesResourcesSpec

podDisruptionBudgetEnabled TypeBoolValueForPB -

Enable PodDisruptionBudget. If this is enabled, PDBs will be installed.

+

Setting this field to true will create a PodDisruptionBudget (PDB) for the Deployment in this component, +with default settings defined by spec.components.k8s. podDisruptionBudget in the selected +profile. These defaults can be overridden e.g.: +spec: + profile: demo + components: + pilot: + k8s: + podDisruptionBudgetEnabled: true + podDisruptionBudget: + minAvailable: 2 # changes from the default defined in the demo profile.

diff --git a/operator/v1alpha1/operator.pb.go b/operator/v1alpha1/operator.pb.go index 04dbea2eddb..d9aab5af127 100644 --- a/operator/v1alpha1/operator.pb.go +++ b/operator/v1alpha1/operator.pb.go @@ -744,9 +744,29 @@ type KubernetesResourcesSpec struct { // k8s pod security context // [https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod) SecurityContext *PodSecurityContext `protobuf:"bytes,16,opt,name=securityContext,proto3" json:"securityContext,omitempty"` - // Enable autoScale. If this is enabled, HPAs will be installed. + // Setting this field to true will create a HorizonalPodAutoscaler (HPA) for the Deployment in this component, + // with default settings defined by spec.components..k8s.hpaSpec in the selected profile. These + // defaults can be overridden e.g.: + // spec: + // profile: demo + // components: + // pilot: + // k8s: + // autoScaleEnabled: true + // hpaSpec: + // minReplicas: 5 # changes from the default defined in the `demo` profile. AutoScaleEnabled *BoolValueForPB `protobuf:"bytes,17,opt,name=autoScaleEnabled,proto3" json:"autoScaleEnabled,omitempty"` - // Enable PodDisruptionBudget. If this is enabled, PDBs will be installed. + // Setting this field to true will create a PodDisruptionBudget (PDB) for the Deployment in this component, + // with default settings defined by spec.components.k8s. podDisruptionBudget in the selected + // profile. These defaults can be overridden e.g.: + // spec: + // profile: demo + // components: + // pilot: + // k8s: + // podDisruptionBudgetEnabled: true + // podDisruptionBudget: + // minAvailable: 2 # changes from the default defined in the `demo` profile. PodDisruptionBudgetEnabled *BoolValueForPB `protobuf:"bytes,18,opt,name=podDisruptionBudgetEnabled,proto3" json:"podDisruptionBudgetEnabled,omitempty"` // Overlays for k8s resources in rendered manifests. Overlays []*K8SObjectOverlay `protobuf:"bytes,100,rep,name=overlays,proto3" json:"overlays,omitempty"` diff --git a/operator/v1alpha1/operator.proto b/operator/v1alpha1/operator.proto index 76717fb98f8..30a6402cdc7 100644 --- a/operator/v1alpha1/operator.proto +++ b/operator/v1alpha1/operator.proto @@ -285,9 +285,29 @@ message KubernetesResourcesSpec { // k8s pod security context // [https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod) PodSecurityContext securityContext = 16; - // Enable autoScale. If this is enabled, HPAs will be installed. + // Setting this field to true will create a HorizonalPodAutoscaler (HPA) for the Deployment in this component, + // with default settings defined by spec.components..k8s.hpaSpec in the selected profile. These + // defaults can be overridden e.g.: + // spec: + // profile: demo + // components: + // pilot: + // k8s: + // autoScaleEnabled: true + // hpaSpec: + // minReplicas: 5 # changes from the default defined in the `demo` profile. TypeBoolValueForPB autoScaleEnabled = 17; - // Enable PodDisruptionBudget. If this is enabled, PDBs will be installed. + // Setting this field to true will create a PodDisruptionBudget (PDB) for the Deployment in this component, + // with default settings defined by spec.components.k8s. podDisruptionBudget in the selected + // profile. These defaults can be overridden e.g.: + // spec: + // profile: demo + // components: + // pilot: + // k8s: + // podDisruptionBudgetEnabled: true + // podDisruptionBudget: + // minAvailable: 2 # changes from the default defined in the `demo` profile. TypeBoolValueForPB podDisruptionBudgetEnabled = 18; // Overlays for k8s resources in rendered manifests. repeated K8sObjectOverlay overlays = 100;