Merge pull request #38520 from thaJeztah/fix_update_status_check
Bump SwarmKit to 1a0ebd43b2d156983a695f90e56f4ecba6ced902
diff --git a/integration/service/update_test.go b/integration/service/update_test.go
index 4c1b94f..0fdc238 100644
--- a/integration/service/update_test.go
+++ b/integration/service/update_test.go
@@ -32,7 +32,7 @@
service.Spec.Labels["foo"] = "bar"
_, err := cli.ServiceUpdate(ctx, serviceID, service.Version, service.Spec, types.ServiceUpdateOptions{})
assert.NilError(t, err)
- poll.WaitOn(t, serviceSpecIsUpdated(cli, serviceID, service.Version.Index), swarm.ServicePoll)
+ poll.WaitOn(t, serviceIsUpdated(cli, serviceID), swarm.ServicePoll)
service = getService(t, cli, serviceID)
assert.Check(t, is.DeepEqual(service.Spec.Labels, map[string]string{"foo": "bar"}))
@@ -40,21 +40,21 @@
service.Spec.Labels["foo2"] = "bar"
_, err = cli.ServiceUpdate(ctx, serviceID, service.Version, service.Spec, types.ServiceUpdateOptions{})
assert.NilError(t, err)
- poll.WaitOn(t, serviceSpecIsUpdated(cli, serviceID, service.Version.Index), swarm.ServicePoll)
+ poll.WaitOn(t, serviceIsUpdated(cli, serviceID), swarm.ServicePoll)
service = getService(t, cli, serviceID)
assert.Check(t, is.DeepEqual(service.Spec.Labels, map[string]string{"foo": "bar", "foo2": "bar"}))
delete(service.Spec.Labels, "foo2")
_, err = cli.ServiceUpdate(ctx, serviceID, service.Version, service.Spec, types.ServiceUpdateOptions{})
assert.NilError(t, err)
- poll.WaitOn(t, serviceSpecIsUpdated(cli, serviceID, service.Version.Index), swarm.ServicePoll)
+ poll.WaitOn(t, serviceIsUpdated(cli, serviceID), swarm.ServicePoll)
service = getService(t, cli, serviceID)
assert.Check(t, is.DeepEqual(service.Spec.Labels, map[string]string{"foo": "bar"}))
delete(service.Spec.Labels, "foo")
_, err = cli.ServiceUpdate(ctx, serviceID, service.Version, service.Spec, types.ServiceUpdateOptions{})
assert.NilError(t, err)
- poll.WaitOn(t, serviceSpecIsUpdated(cli, serviceID, service.Version.Index), swarm.ServicePoll)
+ poll.WaitOn(t, serviceIsUpdated(cli, serviceID), swarm.ServicePoll)
service = getService(t, cli, serviceID)
assert.Check(t, is.DeepEqual(service.Spec.Labels, map[string]string{}))
@@ -62,7 +62,7 @@
service.Spec.Labels["foo"] = "bar"
_, err = cli.ServiceUpdate(ctx, serviceID, service.Version, service.Spec, types.ServiceUpdateOptions{})
assert.NilError(t, err)
- poll.WaitOn(t, serviceSpecIsUpdated(cli, serviceID, service.Version.Index), swarm.ServicePoll)
+ poll.WaitOn(t, serviceIsUpdated(cli, serviceID), swarm.ServicePoll)
service = getService(t, cli, serviceID)
assert.Check(t, is.DeepEqual(service.Spec.Labels, map[string]string{"foo": "bar"}))
@@ -217,17 +217,3 @@
}
}
}
-
-func serviceSpecIsUpdated(client client.ServiceAPIClient, serviceID string, serviceOldVersion uint64) func(log poll.LogT) poll.Result {
- return func(log poll.LogT) poll.Result {
- service, _, err := client.ServiceInspectWithRaw(context.Background(), serviceID, types.ServiceInspectOptions{})
- switch {
- case err != nil:
- return poll.Error(err)
- case service.Version.Index > serviceOldVersion:
- return poll.Success()
- default:
- return poll.Continue("waiting for service %s to be updated", serviceID)
- }
- }
-}
diff --git a/vendor.conf b/vendor.conf
index 29e1599..2960f95 100644
--- a/vendor.conf
+++ b/vendor.conf
@@ -130,7 +130,7 @@
github.com/gogo/googleapis 08a7655d27152912db7aaf4f983275eaf8d128ef
# cluster
-github.com/docker/swarmkit 8af8c420f491f006ab1730e08d446a795b1667d7
+github.com/docker/swarmkit 1a0ebd43b2d156983a695f90e56f4ecba6ced902
github.com/gogo/protobuf v1.0.0
github.com/cloudflare/cfssl 1.3.2
github.com/fernet/fernet-go 1b2437bc582b3cfbb341ee5a29f8ef5b42912ff2
diff --git a/vendor/github.com/docker/swarmkit/api/ca.pb.go b/vendor/github.com/docker/swarmkit/api/ca.pb.go
index 23d375f..206ba21 100644
--- a/vendor/github.com/docker/swarmkit/api/ca.pb.go
+++ b/vendor/github.com/docker/swarmkit/api/ca.pb.go
@@ -205,6 +205,7 @@
EncryptionKey
ManagerStatus
FileTarget
+ RuntimeTarget
SecretReference
ConfigReference
BlacklistedCertificate
diff --git a/vendor/github.com/docker/swarmkit/api/types.pb.go b/vendor/github.com/docker/swarmkit/api/types.pb.go
index 0fef5d7..a7be06a 100644
--- a/vendor/github.com/docker/swarmkit/api/types.pb.go
+++ b/vendor/github.com/docker/swarmkit/api/types.pb.go
@@ -603,7 +603,7 @@
return proto.EnumName(MaybeEncryptedRecord_Algorithm_name, int32(x))
}
func (MaybeEncryptedRecord_Algorithm) EnumDescriptor() ([]byte, []int) {
- return fileDescriptorTypes, []int{52, 0}
+ return fileDescriptorTypes, []int{53, 0}
}
// Version tracks the last time an object in the store was updated.
@@ -952,6 +952,8 @@
type Mount_BindOptions struct {
// Propagation mode of mount.
Propagation Mount_BindOptions_MountPropagation `protobuf:"varint,1,opt,name=propagation,proto3,enum=docker.swarmkit.v1.Mount_BindOptions_MountPropagation" json:"propagation,omitempty"`
+ // allows non-recursive bind-mount, i.e. mount(2) with "bind" rather than "rbind".
+ NonRecursive bool `protobuf:"varint,2,opt,name=nonrecursive,proto3" json:"nonrecursive,omitempty"`
}
func (m *Mount_BindOptions) Reset() { *m = Mount_BindOptions{} }
@@ -1717,6 +1719,17 @@
func (*FileTarget) ProtoMessage() {}
func (*FileTarget) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{47} }
+// RuntimeTarget represents that this secret is _not_ mounted into the
+// container, but is used for some other purpose by the container runtime.
+//
+// Currently, RuntimeTarget has no fields; it's just a placeholder.
+type RuntimeTarget struct {
+}
+
+func (m *RuntimeTarget) Reset() { *m = RuntimeTarget{} }
+func (*RuntimeTarget) ProtoMessage() {}
+func (*RuntimeTarget) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{48} }
+
// SecretReference is the linkage between a service and a secret that it uses.
type SecretReference struct {
// SecretID represents the ID of the specific Secret that we're
@@ -1735,7 +1748,7 @@
func (m *SecretReference) Reset() { *m = SecretReference{} }
func (*SecretReference) ProtoMessage() {}
-func (*SecretReference) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{48} }
+func (*SecretReference) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{49} }
type isSecretReference_Target interface {
isSecretReference_Target()
@@ -1826,16 +1839,17 @@
// ConfigName is the name of the config that this references, but this is just provided for
// lookup/display purposes. The config in the reference will be identified by its ID.
ConfigName string `protobuf:"bytes,2,opt,name=config_name,json=configName,proto3" json:"config_name,omitempty"`
- // Target specifies how this secret should be exposed to the task.
+ // Target specifies how this config should be exposed to the task.
//
// Types that are valid to be assigned to Target:
// *ConfigReference_File
+ // *ConfigReference_Runtime
Target isConfigReference_Target `protobuf_oneof:"target"`
}
func (m *ConfigReference) Reset() { *m = ConfigReference{} }
func (*ConfigReference) ProtoMessage() {}
-func (*ConfigReference) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{49} }
+func (*ConfigReference) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{50} }
type isConfigReference_Target interface {
isConfigReference_Target()
@@ -1846,8 +1860,12 @@
type ConfigReference_File struct {
File *FileTarget `protobuf:"bytes,3,opt,name=file,oneof"`
}
+type ConfigReference_Runtime struct {
+ Runtime *RuntimeTarget `protobuf:"bytes,4,opt,name=runtime,oneof"`
+}
-func (*ConfigReference_File) isConfigReference_Target() {}
+func (*ConfigReference_File) isConfigReference_Target() {}
+func (*ConfigReference_Runtime) isConfigReference_Target() {}
func (m *ConfigReference) GetTarget() isConfigReference_Target {
if m != nil {
@@ -1863,10 +1881,18 @@
return nil
}
+func (m *ConfigReference) GetRuntime() *RuntimeTarget {
+ if x, ok := m.GetTarget().(*ConfigReference_Runtime); ok {
+ return x.Runtime
+ }
+ return nil
+}
+
// XXX_OneofFuncs is for the internal use of the proto package.
func (*ConfigReference) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
return _ConfigReference_OneofMarshaler, _ConfigReference_OneofUnmarshaler, _ConfigReference_OneofSizer, []interface{}{
(*ConfigReference_File)(nil),
+ (*ConfigReference_Runtime)(nil),
}
}
@@ -1879,6 +1905,11 @@
if err := b.EncodeMessage(x.File); err != nil {
return err
}
+ case *ConfigReference_Runtime:
+ _ = b.EncodeVarint(4<<3 | proto.WireBytes)
+ if err := b.EncodeMessage(x.Runtime); err != nil {
+ return err
+ }
case nil:
default:
return fmt.Errorf("ConfigReference.Target has unexpected type %T", x)
@@ -1897,6 +1928,14 @@
err := b.DecodeMessage(msg)
m.Target = &ConfigReference_File{msg}
return true, err
+ case 4: // target.runtime
+ if wire != proto.WireBytes {
+ return true, proto.ErrInternalBadWireType
+ }
+ msg := new(RuntimeTarget)
+ err := b.DecodeMessage(msg)
+ m.Target = &ConfigReference_Runtime{msg}
+ return true, err
default:
return false, nil
}
@@ -1911,6 +1950,11 @@
n += proto.SizeVarint(3<<3 | proto.WireBytes)
n += proto.SizeVarint(uint64(s))
n += s
+ case *ConfigReference_Runtime:
+ s := proto.Size(x.Runtime)
+ n += proto.SizeVarint(4<<3 | proto.WireBytes)
+ n += proto.SizeVarint(uint64(s))
+ n += s
case nil:
default:
panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
@@ -1929,7 +1973,7 @@
func (m *BlacklistedCertificate) Reset() { *m = BlacklistedCertificate{} }
func (*BlacklistedCertificate) ProtoMessage() {}
-func (*BlacklistedCertificate) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{50} }
+func (*BlacklistedCertificate) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{51} }
// HealthConfig holds configuration settings for the HEALTHCHECK feature.
type HealthConfig struct {
@@ -1959,7 +2003,7 @@
func (m *HealthConfig) Reset() { *m = HealthConfig{} }
func (*HealthConfig) ProtoMessage() {}
-func (*HealthConfig) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{51} }
+func (*HealthConfig) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{52} }
type MaybeEncryptedRecord struct {
Algorithm MaybeEncryptedRecord_Algorithm `protobuf:"varint,1,opt,name=algorithm,proto3,enum=docker.swarmkit.v1.MaybeEncryptedRecord_Algorithm" json:"algorithm,omitempty"`
@@ -1969,7 +2013,7 @@
func (m *MaybeEncryptedRecord) Reset() { *m = MaybeEncryptedRecord{} }
func (*MaybeEncryptedRecord) ProtoMessage() {}
-func (*MaybeEncryptedRecord) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{52} }
+func (*MaybeEncryptedRecord) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{53} }
type RootRotation struct {
CACert []byte `protobuf:"bytes,1,opt,name=ca_cert,json=caCert,proto3" json:"ca_cert,omitempty"`
@@ -1980,7 +2024,7 @@
func (m *RootRotation) Reset() { *m = RootRotation{} }
func (*RootRotation) ProtoMessage() {}
-func (*RootRotation) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{53} }
+func (*RootRotation) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{54} }
// Privileges specifies security configuration/permissions.
type Privileges struct {
@@ -1990,20 +2034,21 @@
func (m *Privileges) Reset() { *m = Privileges{} }
func (*Privileges) ProtoMessage() {}
-func (*Privileges) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{54} }
+func (*Privileges) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{55} }
// CredentialSpec for managed service account (Windows only).
type Privileges_CredentialSpec struct {
// Types that are valid to be assigned to Source:
// *Privileges_CredentialSpec_File
// *Privileges_CredentialSpec_Registry
+ // *Privileges_CredentialSpec_Config
Source isPrivileges_CredentialSpec_Source `protobuf_oneof:"source"`
}
func (m *Privileges_CredentialSpec) Reset() { *m = Privileges_CredentialSpec{} }
func (*Privileges_CredentialSpec) ProtoMessage() {}
func (*Privileges_CredentialSpec) Descriptor() ([]byte, []int) {
- return fileDescriptorTypes, []int{54, 0}
+ return fileDescriptorTypes, []int{55, 0}
}
type isPrivileges_CredentialSpec_Source interface {
@@ -2018,9 +2063,13 @@
type Privileges_CredentialSpec_Registry struct {
Registry string `protobuf:"bytes,2,opt,name=registry,proto3,oneof"`
}
+type Privileges_CredentialSpec_Config struct {
+ Config string `protobuf:"bytes,3,opt,name=Config,proto3,oneof"`
+}
func (*Privileges_CredentialSpec_File) isPrivileges_CredentialSpec_Source() {}
func (*Privileges_CredentialSpec_Registry) isPrivileges_CredentialSpec_Source() {}
+func (*Privileges_CredentialSpec_Config) isPrivileges_CredentialSpec_Source() {}
func (m *Privileges_CredentialSpec) GetSource() isPrivileges_CredentialSpec_Source {
if m != nil {
@@ -2043,11 +2092,19 @@
return ""
}
+func (m *Privileges_CredentialSpec) GetConfig() string {
+ if x, ok := m.GetSource().(*Privileges_CredentialSpec_Config); ok {
+ return x.Config
+ }
+ return ""
+}
+
// XXX_OneofFuncs is for the internal use of the proto package.
func (*Privileges_CredentialSpec) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
return _Privileges_CredentialSpec_OneofMarshaler, _Privileges_CredentialSpec_OneofUnmarshaler, _Privileges_CredentialSpec_OneofSizer, []interface{}{
(*Privileges_CredentialSpec_File)(nil),
(*Privileges_CredentialSpec_Registry)(nil),
+ (*Privileges_CredentialSpec_Config)(nil),
}
}
@@ -2061,6 +2118,9 @@
case *Privileges_CredentialSpec_Registry:
_ = b.EncodeVarint(2<<3 | proto.WireBytes)
_ = b.EncodeStringBytes(x.Registry)
+ case *Privileges_CredentialSpec_Config:
+ _ = b.EncodeVarint(3<<3 | proto.WireBytes)
+ _ = b.EncodeStringBytes(x.Config)
case nil:
default:
return fmt.Errorf("Privileges_CredentialSpec.Source has unexpected type %T", x)
@@ -2085,6 +2145,13 @@
x, err := b.DecodeStringBytes()
m.Source = &Privileges_CredentialSpec_Registry{x}
return true, err
+ case 3: // source.Config
+ if wire != proto.WireBytes {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeStringBytes()
+ m.Source = &Privileges_CredentialSpec_Config{x}
+ return true, err
default:
return false, nil
}
@@ -2102,6 +2169,10 @@
n += proto.SizeVarint(2<<3 | proto.WireBytes)
n += proto.SizeVarint(uint64(len(x.Registry)))
n += len(x.Registry)
+ case *Privileges_CredentialSpec_Config:
+ n += proto.SizeVarint(3<<3 | proto.WireBytes)
+ n += proto.SizeVarint(uint64(len(x.Config)))
+ n += len(x.Config)
case nil:
default:
panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
@@ -2121,7 +2192,7 @@
func (m *Privileges_SELinuxContext) Reset() { *m = Privileges_SELinuxContext{} }
func (*Privileges_SELinuxContext) ProtoMessage() {}
func (*Privileges_SELinuxContext) Descriptor() ([]byte, []int) {
- return fileDescriptorTypes, []int{54, 1}
+ return fileDescriptorTypes, []int{55, 1}
}
func init() {
@@ -2178,6 +2249,7 @@
proto.RegisterType((*EncryptionKey)(nil), "docker.swarmkit.v1.EncryptionKey")
proto.RegisterType((*ManagerStatus)(nil), "docker.swarmkit.v1.ManagerStatus")
proto.RegisterType((*FileTarget)(nil), "docker.swarmkit.v1.FileTarget")
+ proto.RegisterType((*RuntimeTarget)(nil), "docker.swarmkit.v1.RuntimeTarget")
proto.RegisterType((*SecretReference)(nil), "docker.swarmkit.v1.SecretReference")
proto.RegisterType((*ConfigReference)(nil), "docker.swarmkit.v1.ConfigReference")
proto.RegisterType((*BlacklistedCertificate)(nil), "docker.swarmkit.v1.BlacklistedCertificate")
@@ -3327,6 +3399,16 @@
*m = *o
}
+func (m *RuntimeTarget) Copy() *RuntimeTarget {
+ if m == nil {
+ return nil
+ }
+ o := &RuntimeTarget{}
+ o.CopyFrom(m)
+ return o
+}
+
+func (m *RuntimeTarget) CopyFrom(src interface{}) {}
func (m *SecretReference) Copy() *SecretReference {
if m == nil {
return nil
@@ -3374,6 +3456,12 @@
}
deepcopy.Copy(v.File, o.GetFile())
m.Target = &v
+ case *ConfigReference_Runtime:
+ v := ConfigReference_Runtime{
+ Runtime: &RuntimeTarget{},
+ }
+ deepcopy.Copy(v.Runtime, o.GetRuntime())
+ m.Target = &v
}
}
@@ -3528,6 +3616,11 @@
Registry: o.GetRegistry(),
}
m.Source = &v
+ case *Privileges_CredentialSpec_Config:
+ v := Privileges_CredentialSpec_Config{
+ Config: o.GetConfig(),
+ }
+ m.Source = &v
}
}
@@ -4265,6 +4358,16 @@
i++
i = encodeVarintTypes(dAtA, i, uint64(m.Propagation))
}
+ if m.NonRecursive {
+ dAtA[i] = 0x10
+ i++
+ if m.NonRecursive {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i++
+ }
return i, nil
}
@@ -5763,6 +5866,24 @@
return i, nil
}
+func (m *RuntimeTarget) Marshal() (dAtA []byte, err error) {
+ size := m.Size()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalTo(dAtA)
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *RuntimeTarget) MarshalTo(dAtA []byte) (int, error) {
+ var i int
+ _ = i
+ var l int
+ _ = l
+ return i, nil
+}
+
func (m *SecretReference) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
@@ -5865,6 +5986,20 @@
}
return i, nil
}
+func (m *ConfigReference_Runtime) MarshalTo(dAtA []byte) (int, error) {
+ i := 0
+ if m.Runtime != nil {
+ dAtA[i] = 0x22
+ i++
+ i = encodeVarintTypes(dAtA, i, uint64(m.Runtime.Size()))
+ n40, err := m.Runtime.MarshalTo(dAtA[i:])
+ if err != nil {
+ return 0, err
+ }
+ i += n40
+ }
+ return i, nil
+}
func (m *BlacklistedCertificate) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
@@ -5884,11 +6019,11 @@
dAtA[i] = 0xa
i++
i = encodeVarintTypes(dAtA, i, uint64(m.Expiry.Size()))
- n40, err := m.Expiry.MarshalTo(dAtA[i:])
+ n41, err := m.Expiry.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
- i += n40
+ i += n41
}
return i, nil
}
@@ -5927,21 +6062,21 @@
dAtA[i] = 0x12
i++
i = encodeVarintTypes(dAtA, i, uint64(m.Interval.Size()))
- n41, err := m.Interval.MarshalTo(dAtA[i:])
+ n42, err := m.Interval.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
- i += n41
+ i += n42
}
if m.Timeout != nil {
dAtA[i] = 0x1a
i++
i = encodeVarintTypes(dAtA, i, uint64(m.Timeout.Size()))
- n42, err := m.Timeout.MarshalTo(dAtA[i:])
+ n43, err := m.Timeout.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
- i += n42
+ i += n43
}
if m.Retries != 0 {
dAtA[i] = 0x20
@@ -5952,11 +6087,11 @@
dAtA[i] = 0x2a
i++
i = encodeVarintTypes(dAtA, i, uint64(m.StartPeriod.Size()))
- n43, err := m.StartPeriod.MarshalTo(dAtA[i:])
+ n44, err := m.StartPeriod.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
- i += n43
+ i += n44
}
return i, nil
}
@@ -6051,21 +6186,21 @@
dAtA[i] = 0xa
i++
i = encodeVarintTypes(dAtA, i, uint64(m.CredentialSpec.Size()))
- n44, err := m.CredentialSpec.MarshalTo(dAtA[i:])
+ n45, err := m.CredentialSpec.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
- i += n44
+ i += n45
}
if m.SELinuxContext != nil {
dAtA[i] = 0x12
i++
i = encodeVarintTypes(dAtA, i, uint64(m.SELinuxContext.Size()))
- n45, err := m.SELinuxContext.MarshalTo(dAtA[i:])
+ n46, err := m.SELinuxContext.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
- i += n45
+ i += n46
}
return i, nil
}
@@ -6086,11 +6221,11 @@
var l int
_ = l
if m.Source != nil {
- nn46, err := m.Source.MarshalTo(dAtA[i:])
+ nn47, err := m.Source.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
- i += nn46
+ i += nn47
}
return i, nil
}
@@ -6111,6 +6246,14 @@
i += copy(dAtA[i:], m.Registry)
return i, nil
}
+func (m *Privileges_CredentialSpec_Config) MarshalTo(dAtA []byte) (int, error) {
+ i := 0
+ dAtA[i] = 0x1a
+ i++
+ i = encodeVarintTypes(dAtA, i, uint64(len(m.Config)))
+ i += copy(dAtA[i:], m.Config)
+ return i, nil
+}
func (m *Privileges_SELinuxContext) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
@@ -6489,6 +6632,9 @@
if m.Propagation != 0 {
n += 1 + sovTypes(uint64(m.Propagation))
}
+ if m.NonRecursive {
+ n += 2
+ }
return n
}
@@ -7154,6 +7300,12 @@
return n
}
+func (m *RuntimeTarget) Size() (n int) {
+ var l int
+ _ = l
+ return n
+}
+
func (m *SecretReference) Size() (n int) {
var l int
_ = l
@@ -7206,6 +7358,15 @@
}
return n
}
+func (m *ConfigReference_Runtime) Size() (n int) {
+ var l int
+ _ = l
+ if m.Runtime != nil {
+ l = m.Runtime.Size()
+ n += 1 + l + sovTypes(uint64(l))
+ }
+ return n
+}
func (m *BlacklistedCertificate) Size() (n int) {
var l int
_ = l
@@ -7315,6 +7476,13 @@
n += 1 + l + sovTypes(uint64(l))
return n
}
+func (m *Privileges_CredentialSpec_Config) Size() (n int) {
+ var l int
+ _ = l
+ l = len(m.Config)
+ n += 1 + l + sovTypes(uint64(l))
+ return n
+}
func (m *Privileges_SELinuxContext) Size() (n int) {
var l int
_ = l
@@ -7599,6 +7767,7 @@
}
s := strings.Join([]string{`&Mount_BindOptions{`,
`Propagation:` + fmt.Sprintf("%v", this.Propagation) + `,`,
+ `NonRecursive:` + fmt.Sprintf("%v", this.NonRecursive) + `,`,
`}`,
}, "")
return s
@@ -8099,6 +8268,15 @@
}, "")
return s
}
+func (this *RuntimeTarget) String() string {
+ if this == nil {
+ return "nil"
+ }
+ s := strings.Join([]string{`&RuntimeTarget{`,
+ `}`,
+ }, "")
+ return s
+}
func (this *SecretReference) String() string {
if this == nil {
return "nil"
@@ -8143,6 +8321,16 @@
}, "")
return s
}
+func (this *ConfigReference_Runtime) String() string {
+ if this == nil {
+ return "nil"
+ }
+ s := strings.Join([]string{`&ConfigReference_Runtime{`,
+ `Runtime:` + strings.Replace(fmt.Sprintf("%v", this.Runtime), "RuntimeTarget", "RuntimeTarget", 1) + `,`,
+ `}`,
+ }, "")
+ return s
+}
func (this *BlacklistedCertificate) String() string {
if this == nil {
return "nil"
@@ -8232,6 +8420,16 @@
}, "")
return s
}
+func (this *Privileges_CredentialSpec_Config) String() string {
+ if this == nil {
+ return "nil"
+ }
+ s := strings.Join([]string{`&Privileges_CredentialSpec_Config{`,
+ `Config:` + fmt.Sprintf("%v", this.Config) + `,`,
+ `}`,
+ }, "")
+ return s
+}
func (this *Privileges_SELinuxContext) String() string {
if this == nil {
return "nil"
@@ -10669,6 +10867,26 @@
break
}
}
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NonRecursive", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowTypes
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= (int(b) & 0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.NonRecursive = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := skipTypes(dAtA[iNdEx:])
@@ -15803,6 +16021,56 @@
}
return nil
}
+func (m *RuntimeTarget) Unmarshal(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowTypes
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= (uint64(b) & 0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: RuntimeTarget: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: RuntimeTarget: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := skipTypes(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if skippy < 0 {
+ return ErrInvalidLengthTypes
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
func (m *SecretReference) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
@@ -16062,6 +16330,38 @@
}
m.Target = &ConfigReference_File{v}
iNdEx = postIndex
+ case 4:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Runtime", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowTypes
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= (int(b) & 0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return ErrInvalidLengthTypes
+ }
+ postIndex := iNdEx + msglen
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ v := &RuntimeTarget{}
+ if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.Target = &ConfigReference_Runtime{v}
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipTypes(dAtA[iNdEx:])
@@ -16840,6 +17140,35 @@
}
m.Source = &Privileges_CredentialSpec_Registry{string(dAtA[iNdEx:postIndex])}
iNdEx = postIndex
+ case 3:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Config", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return ErrIntOverflowTypes
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= (uint64(b) & 0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return ErrInvalidLengthTypes
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Source = &Privileges_CredentialSpec_Config{string(dAtA[iNdEx:postIndex])}
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipTypes(dAtA[iNdEx:])
@@ -17155,327 +17484,332 @@
func init() { proto.RegisterFile("github.com/docker/swarmkit/api/types.proto", fileDescriptorTypes) }
var fileDescriptorTypes = []byte{
- // 5152 bytes of a gzipped FileDescriptorProto
+ // 5220 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x5a, 0x4d, 0x70, 0x23, 0x49,
0x56, 0xb6, 0x64, 0x49, 0x96, 0x9e, 0x64, 0xbb, 0x3a, 0xdb, 0xdb, 0xe3, 0xd6, 0xf6, 0xd8, 0x9a,
- 0x9a, 0xe9, 0x9d, 0xd9, 0xde, 0x41, 0xfd, 0xb7, 0xbb, 0xd1, 0x33, 0xc3, 0xee, 0x8c, 0x7e, 0xca,
- 0xb6, 0xb6, 0x6d, 0x49, 0x91, 0x92, 0xbb, 0x77, 0x89, 0x80, 0xa2, 0x5c, 0x95, 0x96, 0x6b, 0x5c,
- 0xaa, 0x14, 0x55, 0x25, 0xbb, 0xc5, 0x42, 0x30, 0xc1, 0x01, 0x08, 0x9f, 0xe0, 0x02, 0xbb, 0x41,
- 0x98, 0x20, 0x02, 0x6e, 0x7b, 0xe0, 0xc0, 0x81, 0x80, 0xd3, 0x10, 0x41, 0x10, 0x1b, 0x5c, 0x60,
- 0x21, 0x02, 0x36, 0x20, 0xc2, 0xb0, 0x3e, 0x70, 0x23, 0xe0, 0x42, 0x70, 0xe1, 0x40, 0xe4, 0x4f,
- 0x95, 0xca, 0xea, 0xb2, 0xdd, 0xc3, 0xec, 0xc5, 0x56, 0xbe, 0xf7, 0xbd, 0x97, 0x99, 0x2f, 0x33,
- 0x5f, 0xbe, 0xf7, 0xb2, 0xe0, 0xde, 0xc0, 0x0e, 0x0e, 0xc6, 0x7b, 0x55, 0x93, 0x0e, 0xef, 0x5b,
- 0xd4, 0x3c, 0x24, 0xde, 0x7d, 0xff, 0xd8, 0xf0, 0x86, 0x87, 0x76, 0x70, 0xdf, 0x18, 0xd9, 0xf7,
- 0x83, 0xc9, 0x88, 0xf8, 0xd5, 0x91, 0x47, 0x03, 0x8a, 0x90, 0x00, 0x54, 0x43, 0x40, 0xf5, 0xe8,
- 0x61, 0x79, 0x7d, 0x40, 0xe9, 0xc0, 0x21, 0xf7, 0x39, 0x62, 0x6f, 0xbc, 0x7f, 0x3f, 0xb0, 0x87,
- 0xc4, 0x0f, 0x8c, 0xe1, 0x48, 0x08, 0x95, 0xd7, 0x66, 0x01, 0xd6, 0xd8, 0x33, 0x02, 0x9b, 0xba,
- 0x92, 0xbf, 0x32, 0xa0, 0x03, 0xca, 0x7f, 0xde, 0x67, 0xbf, 0x04, 0x55, 0x5d, 0x87, 0x85, 0x67,
- 0xc4, 0xf3, 0x6d, 0xea, 0xa2, 0x15, 0xc8, 0xda, 0xae, 0x45, 0x5e, 0xac, 0xa6, 0x2a, 0xa9, 0x77,
- 0x32, 0x58, 0x34, 0xd4, 0x07, 0x00, 0x2d, 0xf6, 0x43, 0x73, 0x03, 0x6f, 0x82, 0x14, 0x98, 0x3f,
- 0x24, 0x13, 0x8e, 0x28, 0x60, 0xf6, 0x93, 0x51, 0x8e, 0x0c, 0x67, 0x35, 0x2d, 0x28, 0x47, 0x86,
- 0xa3, 0xfe, 0x24, 0x05, 0xc5, 0x9a, 0xeb, 0xd2, 0x80, 0xf7, 0xee, 0x23, 0x04, 0x19, 0xd7, 0x18,
- 0x12, 0x29, 0xc4, 0x7f, 0xa3, 0x06, 0xe4, 0x1c, 0x63, 0x8f, 0x38, 0xfe, 0x6a, 0xba, 0x32, 0xff,
- 0x4e, 0xf1, 0xd1, 0x57, 0xaa, 0x2f, 0x4f, 0xb9, 0x1a, 0x53, 0x52, 0xdd, 0xe6, 0x68, 0x3e, 0x08,
- 0x2c, 0x45, 0xd1, 0x37, 0x61, 0xc1, 0x76, 0x2d, 0xdb, 0x24, 0xfe, 0x6a, 0x86, 0x6b, 0x59, 0x4b,
- 0xd2, 0x32, 0x1d, 0x7d, 0x3d, 0xf3, 0xc3, 0xb3, 0xf5, 0x39, 0x1c, 0x0a, 0x95, 0xdf, 0x83, 0x62,
- 0x4c, 0x6d, 0xc2, 0xdc, 0x56, 0x20, 0x7b, 0x64, 0x38, 0x63, 0x22, 0x67, 0x27, 0x1a, 0xef, 0xa7,
- 0x9f, 0xa4, 0xd4, 0x8f, 0x60, 0xa5, 0x6d, 0x0c, 0x89, 0xb5, 0x49, 0x5c, 0xe2, 0xd9, 0x26, 0x26,
- 0x3e, 0x1d, 0x7b, 0x26, 0x61, 0x73, 0x3d, 0xb4, 0x5d, 0x2b, 0x9c, 0x2b, 0xfb, 0x9d, 0xac, 0x45,
- 0x6d, 0xc0, 0x6b, 0x4d, 0xdb, 0x37, 0x3d, 0x12, 0x90, 0xcf, 0xac, 0x64, 0x3e, 0x54, 0x72, 0x96,
- 0x82, 0xe5, 0x59, 0xe9, 0x9f, 0x83, 0x9b, 0xcc, 0xc4, 0x96, 0xee, 0x49, 0x8a, 0xee, 0x8f, 0x88,
- 0xc9, 0x95, 0x15, 0x1f, 0xbd, 0x93, 0x64, 0xa1, 0xa4, 0x99, 0x6c, 0xcd, 0xe1, 0x1b, 0x5c, 0x4d,
- 0x48, 0xe8, 0x8d, 0x88, 0x89, 0x4c, 0xb8, 0x65, 0xc9, 0x41, 0xcf, 0xa8, 0x4f, 0x73, 0xf5, 0x89,
- 0xcb, 0x78, 0xc9, 0x34, 0xb7, 0xe6, 0xf0, 0x4a, 0xa8, 0x2c, 0xde, 0x49, 0x1d, 0x20, 0x1f, 0xea,
- 0x56, 0xbf, 0x97, 0x82, 0x42, 0xc8, 0xf4, 0xd1, 0x97, 0xa1, 0xe0, 0x1a, 0x2e, 0xd5, 0xcd, 0xd1,
- 0xd8, 0xe7, 0x13, 0x9a, 0xaf, 0x97, 0xce, 0xcf, 0xd6, 0xf3, 0x6d, 0xc3, 0xa5, 0x8d, 0xee, 0xae,
- 0x8f, 0xf3, 0x8c, 0xdd, 0x18, 0x8d, 0x7d, 0xf4, 0x06, 0x94, 0x86, 0x64, 0x48, 0xbd, 0x89, 0xbe,
- 0x37, 0x09, 0x88, 0x2f, 0xcd, 0x56, 0x14, 0xb4, 0x3a, 0x23, 0xa1, 0x6f, 0xc0, 0xc2, 0x40, 0x0c,
- 0x69, 0x75, 0x9e, 0x6f, 0x9f, 0x37, 0x93, 0x46, 0x3f, 0x33, 0x6a, 0x1c, 0xca, 0xa8, 0xbf, 0x9d,
- 0x82, 0x95, 0x88, 0x4a, 0x7e, 0x69, 0x6c, 0x7b, 0x64, 0x48, 0xdc, 0xc0, 0x47, 0x5f, 0x83, 0x9c,
- 0x63, 0x0f, 0xed, 0xc0, 0x97, 0x36, 0x7f, 0x3d, 0x49, 0x6d, 0x34, 0x29, 0x2c, 0xc1, 0xa8, 0x06,
- 0x25, 0x8f, 0xf8, 0xc4, 0x3b, 0x12, 0x3b, 0x5e, 0x5a, 0xf4, 0x1a, 0xe1, 0x0b, 0x22, 0xea, 0x06,
- 0xe4, 0xbb, 0x8e, 0x11, 0xec, 0x53, 0x6f, 0x88, 0x54, 0x28, 0x19, 0x9e, 0x79, 0x60, 0x07, 0xc4,
- 0x0c, 0xc6, 0x5e, 0x78, 0xfa, 0x2e, 0xd0, 0xd0, 0x2d, 0x48, 0x53, 0xd1, 0x51, 0xa1, 0x9e, 0x3b,
- 0x3f, 0x5b, 0x4f, 0x77, 0x7a, 0x38, 0x4d, 0x7d, 0xf5, 0x03, 0xb8, 0xd1, 0x75, 0xc6, 0x03, 0xdb,
- 0x6d, 0x12, 0xdf, 0xf4, 0xec, 0x11, 0xd3, 0xce, 0x76, 0x25, 0xf3, 0x51, 0xe1, 0xae, 0x64, 0xbf,
- 0xa3, 0xa3, 0x9d, 0x9e, 0x1e, 0x6d, 0xf5, 0x37, 0xd3, 0x70, 0x43, 0x73, 0x07, 0xb6, 0x4b, 0xe2,
- 0xd2, 0x77, 0x61, 0x89, 0x70, 0xa2, 0x7e, 0x24, 0xdc, 0x8d, 0xd4, 0xb3, 0x28, 0xa8, 0xa1, 0x0f,
- 0x6a, 0xcd, 0xf8, 0x85, 0x87, 0x49, 0xd3, 0x7f, 0x49, 0x7b, 0xa2, 0x77, 0xd0, 0x60, 0x61, 0xc4,
- 0x27, 0xe1, 0xcb, 0xe5, 0xbd, 0x9b, 0xa4, 0xeb, 0xa5, 0x79, 0x86, 0x4e, 0x42, 0xca, 0x7e, 0x1e,
- 0x27, 0xf1, 0x37, 0x69, 0x58, 0x6e, 0x53, 0xeb, 0x82, 0x1d, 0xca, 0x90, 0x3f, 0xa0, 0x7e, 0x10,
- 0x73, 0x88, 0x51, 0x1b, 0x3d, 0x81, 0xfc, 0x48, 0x2e, 0x9f, 0x5c, 0xfd, 0x3b, 0xc9, 0x43, 0x16,
- 0x18, 0x1c, 0xa1, 0xd1, 0x07, 0x50, 0x08, 0x8f, 0x0c, 0x9b, 0xed, 0x2b, 0x6c, 0x9c, 0x29, 0x1e,
- 0x7d, 0x03, 0x72, 0x62, 0x11, 0x56, 0x33, 0x5c, 0xf2, 0xee, 0x2b, 0xd9, 0x1c, 0x4b, 0x21, 0xb4,
- 0x09, 0xf9, 0xc0, 0xf1, 0x75, 0xdb, 0xdd, 0xa7, 0xab, 0x59, 0xae, 0x60, 0x3d, 0xd1, 0xc9, 0x50,
- 0x8b, 0xf4, 0xb7, 0x7b, 0x2d, 0x77, 0x9f, 0xd6, 0x8b, 0xe7, 0x67, 0xeb, 0x0b, 0xb2, 0x81, 0x17,
- 0x02, 0xc7, 0x67, 0x3f, 0xd0, 0x1d, 0xc8, 0xec, 0xdb, 0x23, 0x7f, 0x35, 0x57, 0x49, 0xbd, 0x93,
- 0xaf, 0xe7, 0xcf, 0xcf, 0xd6, 0x33, 0x1b, 0xad, 0x6e, 0x0f, 0x73, 0xaa, 0xfa, 0x3b, 0x29, 0x28,
- 0xc6, 0x74, 0xa0, 0xd7, 0x01, 0x02, 0x6f, 0xec, 0x07, 0xba, 0x47, 0x69, 0xc0, 0x4d, 0x59, 0xc2,
- 0x05, 0x4e, 0xc1, 0x94, 0x06, 0xa8, 0x0a, 0x37, 0x4d, 0xe2, 0x05, 0xba, 0xed, 0xfb, 0x63, 0xe2,
- 0xe9, 0xfe, 0x78, 0xef, 0x63, 0x62, 0x06, 0xdc, 0xac, 0x25, 0x7c, 0x83, 0xb1, 0x5a, 0x9c, 0xd3,
- 0x13, 0x0c, 0xf4, 0x18, 0x6e, 0xc5, 0xf1, 0xa3, 0xf1, 0x9e, 0x63, 0x9b, 0x3a, 0x5b, 0xea, 0x79,
- 0x2e, 0x72, 0x73, 0x2a, 0xd2, 0xe5, 0xbc, 0xa7, 0x64, 0xa2, 0xfe, 0x38, 0x05, 0x0a, 0x36, 0xf6,
- 0x83, 0x1d, 0x32, 0xdc, 0x23, 0x5e, 0x2f, 0x30, 0x82, 0xb1, 0x8f, 0x6e, 0x41, 0xce, 0x21, 0x86,
- 0x45, 0x3c, 0x3e, 0xa8, 0x3c, 0x96, 0x2d, 0xb4, 0xcb, 0xce, 0xb7, 0x61, 0x1e, 0x18, 0x7b, 0xb6,
- 0x63, 0x07, 0x13, 0x3e, 0x94, 0xa5, 0xe4, 0x0d, 0x3e, 0xab, 0xb3, 0x8a, 0x63, 0x82, 0xf8, 0x82,
- 0x1a, 0xb4, 0x0a, 0x0b, 0x43, 0xe2, 0xfb, 0xc6, 0x80, 0xf0, 0x91, 0x16, 0x70, 0xd8, 0x54, 0x3f,
- 0x80, 0x52, 0x5c, 0x0e, 0x15, 0x61, 0x61, 0xb7, 0xfd, 0xb4, 0xdd, 0x79, 0xde, 0x56, 0xe6, 0xd0,
- 0x32, 0x14, 0x77, 0xdb, 0x58, 0xab, 0x35, 0xb6, 0x6a, 0xf5, 0x6d, 0x4d, 0x49, 0xa1, 0x45, 0x28,
- 0x4c, 0x9b, 0x69, 0xf5, 0x4f, 0x53, 0x00, 0xcc, 0xdc, 0x72, 0x52, 0xef, 0x43, 0xd6, 0x0f, 0x8c,
- 0x40, 0xec, 0xd9, 0xa5, 0x47, 0x6f, 0x5d, 0xb6, 0xc2, 0x72, 0xbc, 0xec, 0x1f, 0xc1, 0x42, 0x24,
- 0x3e, 0xc2, 0xf4, 0x85, 0x11, 0x32, 0xf7, 0x61, 0x58, 0x96, 0x27, 0x07, 0xce, 0x7f, 0xab, 0x1f,
- 0x40, 0x96, 0x4b, 0x5f, 0x1c, 0x6e, 0x1e, 0x32, 0x4d, 0xf6, 0x2b, 0x85, 0x0a, 0x90, 0xc5, 0x5a,
- 0xad, 0xf9, 0x1d, 0x25, 0x8d, 0x14, 0x28, 0x35, 0x5b, 0xbd, 0x46, 0xa7, 0xdd, 0xd6, 0x1a, 0x7d,
- 0xad, 0xa9, 0xcc, 0xab, 0x77, 0x21, 0xdb, 0x1a, 0x32, 0xcd, 0x77, 0xd8, 0x81, 0xd8, 0x27, 0x1e,
- 0x71, 0xcd, 0xf0, 0x9c, 0x4d, 0x09, 0xea, 0x0f, 0x4a, 0x90, 0xdd, 0xa1, 0x63, 0x37, 0x40, 0x8f,
- 0x62, 0x4e, 0x6d, 0x29, 0x39, 0x7e, 0xe0, 0xc0, 0x6a, 0x7f, 0x32, 0x22, 0xd2, 0xe9, 0xdd, 0x82,
- 0x9c, 0x38, 0x3a, 0x72, 0x3a, 0xb2, 0xc5, 0xe8, 0x81, 0xe1, 0x0d, 0x48, 0x20, 0xe7, 0x23, 0x5b,
- 0xe8, 0x1d, 0x76, 0x9f, 0x19, 0x16, 0x75, 0x9d, 0x09, 0x3f, 0x61, 0x79, 0x71, 0x69, 0x61, 0x62,
- 0x58, 0x1d, 0xd7, 0x99, 0xe0, 0x88, 0x8b, 0xb6, 0xa0, 0xb4, 0x67, 0xbb, 0x96, 0x4e, 0x47, 0xe2,
- 0x0a, 0xc8, 0x5e, 0x7e, 0x1e, 0xc5, 0xa8, 0xea, 0xb6, 0x6b, 0x75, 0x04, 0x18, 0x17, 0xf7, 0xa6,
- 0x0d, 0xd4, 0x86, 0xa5, 0x23, 0xea, 0x8c, 0x87, 0x24, 0xd2, 0x95, 0xe3, 0xba, 0xde, 0xbe, 0x5c,
- 0xd7, 0x33, 0x8e, 0x0f, 0xb5, 0x2d, 0x1e, 0xc5, 0x9b, 0xe8, 0x29, 0x2c, 0x06, 0xc3, 0xd1, 0xbe,
- 0x1f, 0xa9, 0x5b, 0xe0, 0xea, 0xbe, 0x74, 0x85, 0xc1, 0x18, 0x3c, 0xd4, 0x56, 0x0a, 0x62, 0x2d,
- 0xb4, 0x09, 0x45, 0x93, 0xba, 0xbe, 0xed, 0x07, 0xc4, 0x35, 0x27, 0xab, 0x79, 0x6e, 0xfb, 0x2b,
- 0x66, 0xd9, 0x98, 0x82, 0x71, 0x5c, 0xb2, 0xfc, 0xeb, 0xf3, 0x50, 0x8c, 0x99, 0x00, 0xf5, 0xa0,
- 0x38, 0xf2, 0xe8, 0xc8, 0x18, 0xf0, 0xfb, 0x50, 0x2e, 0xea, 0xc3, 0x57, 0x32, 0x5f, 0xb5, 0x3b,
- 0x15, 0xc4, 0x71, 0x2d, 0xea, 0x69, 0x1a, 0x8a, 0x31, 0x26, 0xba, 0x07, 0x79, 0xdc, 0xc5, 0xad,
- 0x67, 0xb5, 0xbe, 0xa6, 0xcc, 0x95, 0xef, 0x9c, 0x9c, 0x56, 0x56, 0xb9, 0xb6, 0xb8, 0x82, 0xae,
- 0x67, 0x1f, 0xb1, 0x3d, 0xfc, 0x0e, 0x2c, 0x84, 0xd0, 0x54, 0xf9, 0x8b, 0x27, 0xa7, 0x95, 0xd7,
- 0x66, 0xa1, 0x31, 0x24, 0xee, 0x6d, 0xd5, 0xb0, 0xd6, 0x54, 0xd2, 0xc9, 0x48, 0xdc, 0x3b, 0x30,
- 0x3c, 0x62, 0xa1, 0x2f, 0x41, 0x4e, 0x02, 0xe7, 0xcb, 0xe5, 0x93, 0xd3, 0xca, 0xad, 0x59, 0xe0,
- 0x14, 0x87, 0x7b, 0xdb, 0xb5, 0x67, 0x9a, 0x92, 0x49, 0xc6, 0xe1, 0x9e, 0x63, 0x1c, 0x11, 0xf4,
- 0x16, 0x64, 0x05, 0x2c, 0x5b, 0xbe, 0x7d, 0x72, 0x5a, 0xf9, 0xc2, 0x4b, 0xea, 0x18, 0xaa, 0xbc,
- 0xfa, 0x5b, 0x7f, 0xb4, 0x36, 0xf7, 0x17, 0x7f, 0xbc, 0xa6, 0xcc, 0xb2, 0xcb, 0xff, 0x9b, 0x82,
- 0xc5, 0x0b, 0x7b, 0x07, 0xa9, 0x90, 0x73, 0xa9, 0x49, 0x47, 0xe2, 0x9a, 0xcc, 0xd7, 0xe1, 0xfc,
- 0x6c, 0x3d, 0xd7, 0xa6, 0x0d, 0x3a, 0x9a, 0x60, 0xc9, 0x41, 0x4f, 0x67, 0x2e, 0xfa, 0xc7, 0xaf,
- 0xb8, 0x31, 0x13, 0xaf, 0xfa, 0x0f, 0x61, 0xd1, 0xf2, 0xec, 0x23, 0xe2, 0xe9, 0x26, 0x75, 0xf7,
- 0xed, 0x81, 0xbc, 0x02, 0xcb, 0x89, 0xd1, 0x28, 0x07, 0xe2, 0x92, 0x10, 0x68, 0x70, 0xfc, 0xe7,
- 0xb8, 0xe4, 0xcb, 0x23, 0x28, 0xc5, 0xb7, 0x3a, 0xbb, 0x97, 0x7c, 0xfb, 0x97, 0x89, 0x0c, 0x3b,
- 0x79, 0x90, 0x8a, 0x0b, 0x8c, 0x22, 0x82, 0xce, 0xb7, 0x21, 0x33, 0xa4, 0x96, 0xd0, 0xb3, 0x58,
- 0xbf, 0xc9, 0x62, 0x8d, 0x7f, 0x3e, 0x5b, 0x2f, 0x52, 0xbf, 0xba, 0x61, 0x3b, 0x64, 0x87, 0x5a,
- 0x04, 0x73, 0x00, 0xf3, 0x9a, 0xe1, 0x59, 0x93, 0x7e, 0x5d, 0x36, 0xd5, 0xef, 0xa7, 0x20, 0xc3,
- 0xdc, 0x11, 0xfa, 0x22, 0x64, 0xea, 0xad, 0x76, 0x53, 0x99, 0x2b, 0xdf, 0x38, 0x39, 0xad, 0x2c,
- 0x72, 0x6b, 0x31, 0x06, 0xdb, 0xd6, 0x68, 0x1d, 0x72, 0xcf, 0x3a, 0xdb, 0xbb, 0x3b, 0x6c, 0xe7,
- 0xdd, 0x3c, 0x39, 0xad, 0x2c, 0x47, 0x6c, 0x61, 0x4f, 0xf4, 0x3a, 0x64, 0xfb, 0x3b, 0xdd, 0x8d,
- 0x9e, 0x92, 0x2e, 0xa3, 0x93, 0xd3, 0xca, 0x52, 0xc4, 0xe7, 0xd3, 0x41, 0x6f, 0x40, 0xb6, 0xdd,
- 0x6d, 0x75, 0x35, 0x65, 0xbe, 0x7c, 0xeb, 0xe4, 0xb4, 0x82, 0x22, 0x36, 0xcf, 0x16, 0xba, 0xf6,
- 0x88, 0x94, 0x6f, 0xc8, 0x3d, 0x51, 0x88, 0x78, 0xea, 0x8f, 0x52, 0x50, 0x8c, 0x1d, 0x57, 0xb6,
- 0xad, 0x9b, 0xda, 0x46, 0x6d, 0x77, 0xbb, 0xaf, 0xcc, 0xc5, 0xb6, 0x75, 0x0c, 0xd2, 0x24, 0xfb,
- 0xc6, 0xd8, 0x61, 0x5e, 0x12, 0x1a, 0x9d, 0x76, 0xaf, 0xd5, 0xeb, 0x6b, 0xed, 0xbe, 0x92, 0x2a,
- 0xaf, 0x9e, 0x9c, 0x56, 0x56, 0x66, 0xc1, 0x1b, 0x63, 0xc7, 0x61, 0x1b, 0xbb, 0x51, 0x6b, 0x6c,
- 0xf1, 0x93, 0x32, 0xdd, 0xd8, 0x31, 0x54, 0xc3, 0x30, 0x0f, 0x88, 0x85, 0xde, 0x85, 0x42, 0x53,
- 0xdb, 0xd6, 0x36, 0x6b, 0xfc, 0x6e, 0x28, 0xbf, 0x7e, 0x72, 0x5a, 0xb9, 0xfd, 0x72, 0xef, 0x0e,
- 0x19, 0x18, 0x01, 0xb1, 0x66, 0x36, 0x78, 0x0c, 0xa2, 0xfe, 0x77, 0x1a, 0x16, 0x31, 0x4b, 0xb5,
- 0xbd, 0xa0, 0x4b, 0x1d, 0xdb, 0x9c, 0xa0, 0x2e, 0x14, 0x4c, 0xea, 0x5a, 0x76, 0xcc, 0xcb, 0x3c,
- 0xba, 0x24, 0xdc, 0x9a, 0x4a, 0x85, 0xad, 0x46, 0x28, 0x89, 0xa7, 0x4a, 0xd0, 0x7d, 0xc8, 0x5a,
- 0xc4, 0x31, 0x26, 0x32, 0xee, 0xbb, 0x5d, 0x15, 0xc9, 0x7c, 0x35, 0x4c, 0xe6, 0xab, 0x4d, 0x99,
- 0xcc, 0x63, 0x81, 0xe3, 0xf9, 0x8d, 0xf1, 0x42, 0x37, 0x82, 0x80, 0x0c, 0x47, 0x81, 0xd8, 0x23,
- 0x19, 0x5c, 0x1c, 0x1a, 0x2f, 0x6a, 0x92, 0x84, 0x1e, 0x42, 0xee, 0xd8, 0x76, 0x2d, 0x7a, 0x2c,
- 0xe3, 0xba, 0x2b, 0x94, 0x4a, 0xa0, 0x7a, 0xc2, 0x02, 0x9a, 0x99, 0x61, 0xb2, 0x6d, 0xd6, 0xee,
- 0xb4, 0xb5, 0x70, 0x9b, 0x49, 0x7e, 0xc7, 0x6d, 0x53, 0x97, 0x79, 0x0f, 0xe8, 0xb4, 0xf5, 0x8d,
- 0x5a, 0x6b, 0x7b, 0x17, 0xb3, 0xad, 0xb6, 0x72, 0x72, 0x5a, 0x51, 0x22, 0xc8, 0x86, 0x61, 0x3b,
- 0x2c, 0xd1, 0xb8, 0x0d, 0xf3, 0xb5, 0xf6, 0x77, 0x94, 0x74, 0x59, 0x39, 0x39, 0xad, 0x94, 0x22,
- 0x76, 0xcd, 0x9d, 0x4c, 0xed, 0x3e, 0xdb, 0xaf, 0xfa, 0xb7, 0xf3, 0x50, 0xda, 0x1d, 0x59, 0x46,
- 0x40, 0xc4, 0x29, 0x45, 0x15, 0x28, 0x8e, 0x0c, 0xcf, 0x70, 0x1c, 0xe2, 0xd8, 0xfe, 0x50, 0x96,
- 0x29, 0xe2, 0x24, 0xf4, 0xde, 0xab, 0x9a, 0xb1, 0x9e, 0x67, 0x27, 0xef, 0x7b, 0xff, 0xba, 0x9e,
- 0x0a, 0x0d, 0xba, 0x0b, 0x4b, 0xfb, 0x62, 0xb4, 0xba, 0x61, 0xf2, 0x85, 0x9d, 0xe7, 0x0b, 0x5b,
- 0x4d, 0x5a, 0xd8, 0xf8, 0xb0, 0xaa, 0x72, 0x92, 0x35, 0x2e, 0x85, 0x17, 0xf7, 0xe3, 0x4d, 0xf4,
- 0x18, 0x16, 0x86, 0xd4, 0xb5, 0x03, 0xea, 0x5d, 0xbf, 0x0a, 0x21, 0x12, 0xdd, 0x83, 0x1b, 0x6c,
- 0x71, 0xc3, 0xf1, 0x70, 0x36, 0x0f, 0x06, 0xd2, 0x78, 0x79, 0x68, 0xbc, 0x90, 0x1d, 0x62, 0x46,
- 0x46, 0x75, 0xc8, 0x52, 0x8f, 0x45, 0x9b, 0x39, 0x3e, 0xdc, 0x77, 0xaf, 0x1d, 0xae, 0x68, 0x74,
- 0x98, 0x0c, 0x16, 0xa2, 0xea, 0xd7, 0x61, 0xf1, 0xc2, 0x24, 0x58, 0x90, 0xd5, 0xad, 0xed, 0xf6,
- 0x34, 0x65, 0x0e, 0x95, 0x20, 0xdf, 0xe8, 0xb4, 0xfb, 0xad, 0xf6, 0x2e, 0x8b, 0x12, 0x4b, 0x90,
- 0xc7, 0x9d, 0xed, 0xed, 0x7a, 0xad, 0xf1, 0x54, 0x49, 0xab, 0x55, 0x28, 0xc6, 0xb4, 0xa1, 0x25,
- 0x80, 0x5e, 0xbf, 0xd3, 0xd5, 0x37, 0x5a, 0xb8, 0xd7, 0x17, 0x31, 0x66, 0xaf, 0x5f, 0xc3, 0x7d,
- 0x49, 0x48, 0xa9, 0xff, 0x99, 0x0e, 0x57, 0x54, 0x86, 0x95, 0xf5, 0x8b, 0x61, 0xe5, 0x15, 0x83,
- 0x97, 0x81, 0xe5, 0xb4, 0x11, 0x85, 0x97, 0xef, 0x01, 0xf0, 0x8d, 0x43, 0x2c, 0xdd, 0x08, 0xe4,
- 0xc2, 0x97, 0x5f, 0x32, 0x72, 0x3f, 0xac, 0x96, 0xe1, 0x82, 0x44, 0xd7, 0x02, 0xf4, 0x0d, 0x28,
- 0x99, 0x74, 0x38, 0x72, 0x88, 0x14, 0x9e, 0xbf, 0x56, 0xb8, 0x18, 0xe1, 0x6b, 0x41, 0x3c, 0xb0,
- 0xcd, 0x5c, 0x0c, 0xbd, 0x7f, 0x23, 0x15, 0x5a, 0x26, 0x21, 0x96, 0x2d, 0x41, 0x7e, 0xb7, 0xdb,
- 0xac, 0xf5, 0x5b, 0xed, 0x4d, 0x25, 0x85, 0x00, 0x72, 0xdc, 0xd4, 0x4d, 0x25, 0xcd, 0x62, 0xf0,
- 0x46, 0x67, 0xa7, 0xbb, 0xad, 0x71, 0x8f, 0x85, 0x56, 0x40, 0x09, 0x8d, 0xad, 0x73, 0x43, 0x6a,
- 0x4d, 0x25, 0x83, 0x6e, 0xc2, 0x72, 0x44, 0x95, 0x92, 0x59, 0x74, 0x0b, 0x50, 0x44, 0x9c, 0xaa,
- 0xc8, 0xa9, 0xbf, 0x0a, 0xcb, 0x0d, 0xea, 0x06, 0x86, 0xed, 0x46, 0xf9, 0xc9, 0x23, 0x36, 0x69,
- 0x49, 0xd2, 0x6d, 0x59, 0x65, 0xaa, 0x2f, 0x9f, 0x9f, 0xad, 0x17, 0x23, 0x68, 0xab, 0xc9, 0x03,
- 0x2d, 0xd9, 0xb0, 0xd8, 0xf9, 0x1d, 0xd9, 0x16, 0x37, 0x6e, 0xb6, 0xbe, 0x70, 0x7e, 0xb6, 0x3e,
- 0xdf, 0x6d, 0x35, 0x31, 0xa3, 0xa1, 0x2f, 0x42, 0x81, 0xbc, 0xb0, 0x03, 0xdd, 0x64, 0xb7, 0x1a,
- 0x33, 0x60, 0x16, 0xe7, 0x19, 0xa1, 0x41, 0x2d, 0xa2, 0xd6, 0x01, 0xba, 0xd4, 0x0b, 0x64, 0xcf,
- 0x5f, 0x85, 0xec, 0x88, 0x7a, 0xbc, 0x2e, 0x72, 0x69, 0xb5, 0x8e, 0xc1, 0xc5, 0x46, 0xc5, 0x02,
- 0xac, 0x7e, 0x7f, 0x1e, 0xa0, 0x6f, 0xf8, 0x87, 0x52, 0xc9, 0x13, 0x28, 0x44, 0x95, 0x4f, 0x59,
- 0x60, 0xb9, 0x72, 0xb5, 0x23, 0x30, 0x7a, 0x1c, 0x6e, 0x36, 0x91, 0x79, 0x25, 0x26, 0xc8, 0x61,
- 0x47, 0x49, 0xc9, 0xcb, 0xc5, 0xf4, 0x8a, 0x05, 0x09, 0xc4, 0xf3, 0xe4, 0xca, 0xb3, 0x9f, 0xa8,
- 0xc1, 0xaf, 0x05, 0x61, 0x34, 0x19, 0xbb, 0x27, 0x96, 0x94, 0x66, 0x56, 0x64, 0x6b, 0x0e, 0x4f,
- 0xe5, 0xd0, 0x87, 0x50, 0x64, 0xf3, 0xd6, 0x7d, 0xce, 0x93, 0x61, 0xfb, 0xa5, 0xa6, 0x12, 0x1a,
- 0x30, 0x8c, 0xa6, 0x56, 0x7e, 0x1d, 0xc0, 0x18, 0x8d, 0x1c, 0x9b, 0x58, 0xfa, 0xde, 0x84, 0xc7,
- 0xe9, 0x05, 0x5c, 0x90, 0x94, 0xfa, 0x84, 0x1d, 0x97, 0x90, 0x6d, 0x04, 0x3c, 0xf6, 0xbe, 0xc6,
- 0x80, 0x12, 0x5d, 0x0b, 0xea, 0x0a, 0x2c, 0x79, 0x63, 0x97, 0x19, 0x54, 0x8e, 0x4e, 0xfd, 0x93,
- 0x34, 0xbc, 0xd6, 0x26, 0xc1, 0x31, 0xf5, 0x0e, 0x6b, 0x41, 0x60, 0x98, 0x07, 0x43, 0xe2, 0xca,
- 0xe5, 0x8b, 0xa5, 0x43, 0xa9, 0x0b, 0xe9, 0xd0, 0x2a, 0x2c, 0x18, 0x8e, 0x6d, 0xf8, 0x44, 0x84,
- 0x7e, 0x05, 0x1c, 0x36, 0x59, 0xd2, 0xc6, 0x52, 0x40, 0xe2, 0xfb, 0x44, 0xd4, 0x6c, 0xd8, 0xc0,
- 0x43, 0x02, 0xfa, 0x2e, 0xdc, 0x92, 0x41, 0x9e, 0x11, 0x75, 0xc5, 0xd2, 0x91, 0xb0, 0xf8, 0xab,
- 0x25, 0xe6, 0xa4, 0xc9, 0x83, 0x93, 0x51, 0xe0, 0x94, 0xdc, 0x19, 0x05, 0x32, 0xa6, 0x5c, 0xb1,
- 0x12, 0x58, 0xe5, 0x4d, 0xb8, 0x7d, 0xa9, 0xc8, 0x67, 0xaa, 0x09, 0xfd, 0x43, 0x1a, 0xa0, 0xd5,
- 0xad, 0xed, 0x48, 0x23, 0x35, 0x21, 0xb7, 0x6f, 0x0c, 0x6d, 0x67, 0x72, 0x95, 0x07, 0x9c, 0xe2,
- 0xab, 0x35, 0x61, 0x8e, 0x0d, 0x2e, 0x83, 0xa5, 0x2c, 0xcf, 0x48, 0xc7, 0x7b, 0x2e, 0x09, 0xa2,
- 0x8c, 0x94, 0xb7, 0xd8, 0x30, 0x3c, 0xc3, 0x8d, 0xb6, 0xae, 0x68, 0xb0, 0x05, 0x60, 0x21, 0xcf,
- 0xb1, 0x31, 0x09, 0xdd, 0x96, 0x6c, 0xa2, 0x2d, 0x5e, 0x79, 0x25, 0xde, 0x11, 0xb1, 0x56, 0xb3,
- 0xdc, 0xa8, 0xd7, 0x8d, 0x07, 0x4b, 0xb8, 0xb0, 0x5d, 0x24, 0x5d, 0xfe, 0x80, 0x87, 0x4c, 0x53,
- 0xd6, 0x67, 0xb2, 0xd1, 0x03, 0x58, 0xbc, 0x30, 0xcf, 0x97, 0x4a, 0x01, 0xad, 0xee, 0xb3, 0xaf,
- 0x2a, 0x19, 0xf9, 0xeb, 0xeb, 0x4a, 0x4e, 0xfd, 0xeb, 0x79, 0xe1, 0x68, 0xa4, 0x55, 0x93, 0x5f,
- 0x1c, 0xf2, 0x7c, 0x77, 0x9b, 0xd4, 0x91, 0x0e, 0xe0, 0xed, 0xab, 0xfd, 0x0f, 0xcb, 0x08, 0x39,
- 0x1c, 0x47, 0x82, 0x68, 0x1d, 0x8a, 0x62, 0x17, 0xeb, 0xec, 0xc0, 0x71, 0xb3, 0x2e, 0x62, 0x10,
- 0x24, 0x26, 0x89, 0xee, 0xc2, 0x12, 0x2f, 0x1d, 0xf9, 0x07, 0xc4, 0x12, 0x98, 0x0c, 0xc7, 0x2c,
- 0x46, 0x54, 0x0e, 0xdb, 0x81, 0x92, 0x24, 0xe8, 0x3c, 0x1b, 0xc8, 0xf2, 0x01, 0xdd, 0xbb, 0x6e,
- 0x40, 0x42, 0x84, 0x27, 0x09, 0xc5, 0xd1, 0xb4, 0xa1, 0xfe, 0x22, 0xe4, 0xc3, 0xc1, 0xa2, 0x55,
- 0x98, 0xef, 0x37, 0xba, 0xca, 0x5c, 0x79, 0xf9, 0xe4, 0xb4, 0x52, 0x0c, 0xc9, 0xfd, 0x46, 0x97,
- 0x71, 0x76, 0x9b, 0x5d, 0x25, 0x75, 0x91, 0xb3, 0xdb, 0xec, 0xa2, 0x32, 0x64, 0x7a, 0x8d, 0x7e,
- 0x37, 0x8c, 0xcf, 0x42, 0x16, 0xa3, 0x95, 0x33, 0x2c, 0x3e, 0x53, 0xf7, 0xa1, 0x18, 0xeb, 0x1d,
- 0xbd, 0x09, 0x0b, 0xad, 0xf6, 0x26, 0xd6, 0x7a, 0x3d, 0x65, 0x4e, 0xa4, 0x07, 0x31, 0x6e, 0xcb,
- 0x1d, 0xb0, 0xb5, 0x43, 0xaf, 0x43, 0x66, 0xab, 0xc3, 0xee, 0x7d, 0x91, 0x7f, 0xc4, 0x10, 0x5b,
- 0xd4, 0x0f, 0xca, 0x37, 0x65, 0xe0, 0x17, 0x57, 0xac, 0xfe, 0x7e, 0x0a, 0x72, 0xe2, 0xa0, 0x25,
- 0x2e, 0x62, 0x6d, 0x9a, 0x14, 0x89, 0xb4, 0xf1, 0xed, 0xcb, 0x53, 0xbc, 0xaa, 0xcc, 0xc8, 0xc4,
- 0xd6, 0x0c, 0xe5, 0xca, 0xef, 0x43, 0x29, 0xce, 0xf8, 0x4c, 0x1b, 0xf3, 0xbb, 0x50, 0x64, 0x7b,
- 0x3f, 0x4c, 0xf5, 0x1e, 0x41, 0x4e, 0x38, 0x8b, 0xe8, 0x1e, 0xba, 0x3c, 0xdf, 0x94, 0x48, 0xf4,
- 0x04, 0x16, 0x44, 0x8e, 0x1a, 0x56, 0xa5, 0xd7, 0xae, 0x3e, 0x61, 0x38, 0x84, 0xab, 0x1f, 0x42,
- 0xa6, 0x4b, 0x88, 0xc7, 0x6c, 0xef, 0x52, 0x8b, 0x4c, 0xaf, 0x6e, 0x99, 0x5e, 0x5b, 0xa4, 0xd5,
- 0x64, 0xe9, 0xb5, 0x45, 0x5a, 0x56, 0x54, 0x59, 0x4b, 0xc7, 0x2a, 0x6b, 0x7d, 0x28, 0x3d, 0x27,
- 0xf6, 0xe0, 0x20, 0x20, 0x16, 0x57, 0xf4, 0x2e, 0x64, 0x46, 0x24, 0x1a, 0xfc, 0x6a, 0xe2, 0xe6,
- 0x23, 0xc4, 0xc3, 0x1c, 0xc5, 0x7c, 0xcc, 0x31, 0x97, 0x96, 0x4f, 0x29, 0xb2, 0xa5, 0xfe, 0x7d,
- 0x1a, 0x96, 0x5a, 0xbe, 0x3f, 0x36, 0x5c, 0x33, 0x8c, 0xea, 0xbe, 0x79, 0x31, 0xaa, 0x4b, 0x7c,
- 0x73, 0xba, 0x28, 0x72, 0xb1, 0x60, 0x28, 0x6f, 0xd6, 0x74, 0x74, 0xb3, 0xaa, 0xff, 0x91, 0x0a,
- 0xab, 0x82, 0x77, 0x63, 0xae, 0x40, 0xe4, 0x88, 0x71, 0x4d, 0x64, 0xd7, 0x3d, 0x74, 0xe9, 0xb1,
- 0xcb, 0xb2, 0x57, 0xac, 0xb5, 0xb5, 0xe7, 0x4a, 0x4a, 0x6c, 0xcf, 0x0b, 0x20, 0x4c, 0x5c, 0x72,
- 0xcc, 0x34, 0x75, 0xb5, 0x76, 0x93, 0x45, 0x61, 0xe9, 0x04, 0x4d, 0x5d, 0xe2, 0x5a, 0xb6, 0x3b,
- 0x40, 0x6f, 0x42, 0xae, 0xd5, 0xeb, 0xed, 0xf2, 0x14, 0xf2, 0xb5, 0x93, 0xd3, 0xca, 0xcd, 0x0b,
- 0x28, 0x5e, 0x11, 0xb6, 0x18, 0x88, 0xa5, 0x40, 0x2c, 0x3e, 0x4b, 0x00, 0xb1, 0xd8, 0x5a, 0x80,
- 0x70, 0xa7, 0x5f, 0xeb, 0x6b, 0x4a, 0x36, 0x01, 0x84, 0x29, 0xfb, 0x2b, 0x8f, 0xdb, 0xbf, 0xa4,
- 0x41, 0xa9, 0x99, 0x26, 0x19, 0x05, 0x8c, 0x2f, 0xb3, 0xce, 0x3e, 0xe4, 0x47, 0xec, 0x97, 0x4d,
- 0xc2, 0x08, 0xea, 0x49, 0xe2, 0xab, 0xe9, 0x8c, 0x5c, 0x15, 0x53, 0x87, 0xd4, 0xac, 0xa1, 0xed,
- 0xfb, 0x36, 0x75, 0x05, 0x0d, 0x47, 0x9a, 0xca, 0xff, 0x95, 0x82, 0x9b, 0x09, 0x08, 0xf4, 0x00,
- 0x32, 0x1e, 0x75, 0xc2, 0x35, 0xbc, 0x73, 0x59, 0xc1, 0x97, 0x89, 0x62, 0x8e, 0x44, 0x6b, 0x00,
- 0xc6, 0x38, 0xa0, 0x06, 0xef, 0x9f, 0xaf, 0x5e, 0x1e, 0xc7, 0x28, 0xe8, 0x39, 0xe4, 0x7c, 0x62,
- 0x7a, 0x24, 0x8c, 0xb3, 0x3f, 0xfc, 0xff, 0x8e, 0xbe, 0xda, 0xe3, 0x6a, 0xb0, 0x54, 0x57, 0xae,
- 0x42, 0x4e, 0x50, 0xd8, 0xb6, 0xb7, 0x8c, 0xc0, 0x90, 0xcf, 0x01, 0xfc, 0x37, 0xdb, 0x4d, 0x86,
- 0x33, 0x08, 0x77, 0x93, 0xe1, 0x0c, 0xd4, 0xbf, 0x4a, 0x03, 0x68, 0x2f, 0x02, 0xe2, 0xb9, 0x86,
- 0xd3, 0xa8, 0x21, 0x2d, 0x76, 0x33, 0x88, 0xd9, 0x7e, 0x39, 0xf1, 0x05, 0x24, 0x92, 0xa8, 0x36,
- 0x6a, 0x09, 0x77, 0xc3, 0x6d, 0x98, 0x1f, 0x7b, 0xf2, 0x21, 0x5c, 0xc4, 0xc8, 0xbb, 0x78, 0x1b,
- 0x33, 0x1a, 0xd2, 0xe2, 0xb5, 0x9c, 0x4b, 0x9f, 0xbb, 0x63, 0x1d, 0x24, 0xba, 0x2e, 0x76, 0xf2,
- 0x4d, 0x43, 0x37, 0x89, 0xbc, 0x55, 0x4a, 0xe2, 0xe4, 0x37, 0x6a, 0x0d, 0xe2, 0x05, 0x38, 0x67,
- 0x1a, 0xec, 0xff, 0xe7, 0xf2, 0x6f, 0xef, 0x02, 0x4c, 0xa7, 0x86, 0xd6, 0x20, 0xdb, 0xd8, 0xe8,
- 0xf5, 0xb6, 0x95, 0x39, 0xe1, 0xc0, 0xa7, 0x2c, 0x4e, 0x56, 0xff, 0x3c, 0x0d, 0xf9, 0x46, 0x4d,
- 0x5e, 0xb9, 0x0d, 0x50, 0xb8, 0x57, 0xe2, 0x8f, 0x28, 0xe4, 0xc5, 0xc8, 0xf6, 0x26, 0xd2, 0xb1,
- 0x5c, 0x91, 0xf0, 0x2e, 0x31, 0x11, 0x36, 0x6a, 0x8d, 0x0b, 0x20, 0x0c, 0x25, 0x22, 0x8d, 0xa0,
- 0x9b, 0x46, 0xe8, 0xe3, 0xd7, 0xae, 0x36, 0x96, 0x48, 0x5d, 0xa6, 0x6d, 0x1f, 0x17, 0x43, 0x25,
- 0x0d, 0xc3, 0x47, 0xef, 0xc1, 0xb2, 0x6f, 0x0f, 0x5c, 0xdb, 0x1d, 0xe8, 0xa1, 0xf1, 0xf8, 0x8b,
- 0x4e, 0xfd, 0xc6, 0xf9, 0xd9, 0xfa, 0x62, 0x4f, 0xb0, 0xa4, 0x0d, 0x17, 0x25, 0xb2, 0xc1, 0x4d,
- 0x89, 0xbe, 0x0e, 0x4b, 0x31, 0x51, 0x66, 0x45, 0x61, 0x76, 0xe5, 0xfc, 0x6c, 0xbd, 0x14, 0x49,
- 0x3e, 0x25, 0x13, 0x5c, 0x8a, 0x04, 0x9f, 0x12, 0x5e, 0x9b, 0xd9, 0xa7, 0x9e, 0x49, 0x74, 0x8f,
- 0x9f, 0x69, 0x7e, 0xbb, 0x67, 0x70, 0x91, 0xd3, 0xc4, 0x31, 0x57, 0x9f, 0xc1, 0xcd, 0x8e, 0x67,
- 0x1e, 0x10, 0x3f, 0x10, 0xa6, 0x90, 0x56, 0xfc, 0x10, 0xee, 0x04, 0x86, 0x7f, 0xa8, 0x1f, 0xd8,
- 0x7e, 0x40, 0xbd, 0x89, 0xee, 0x91, 0x80, 0xb8, 0x8c, 0xaf, 0xf3, 0x47, 0x62, 0x59, 0x4e, 0xbc,
- 0xcd, 0x30, 0x5b, 0x02, 0x82, 0x43, 0xc4, 0x36, 0x03, 0xa8, 0x2d, 0x28, 0xb1, 0x14, 0x46, 0x16,
- 0xd5, 0xd8, 0xec, 0xc1, 0xa1, 0x03, 0xfd, 0x95, 0xaf, 0xa9, 0x82, 0x43, 0x07, 0xe2, 0xa7, 0xfa,
- 0x6d, 0x50, 0x9a, 0xb6, 0x3f, 0x32, 0x02, 0xf3, 0x20, 0xac, 0x93, 0xa2, 0x26, 0x28, 0x07, 0xc4,
- 0xf0, 0x82, 0x3d, 0x62, 0x04, 0xfa, 0x88, 0x78, 0x36, 0xb5, 0xae, 0x5f, 0xe5, 0xe5, 0x48, 0xa4,
- 0xcb, 0x25, 0xd4, 0xff, 0x49, 0x01, 0x60, 0x63, 0x3f, 0x8c, 0xd6, 0xbe, 0x02, 0x37, 0x7c, 0xd7,
- 0x18, 0xf9, 0x07, 0x34, 0xd0, 0x6d, 0x37, 0x20, 0xde, 0x91, 0xe1, 0xc8, 0xe2, 0x8e, 0x12, 0x32,
- 0x5a, 0x92, 0x8e, 0xde, 0x05, 0x74, 0x48, 0xc8, 0x48, 0xa7, 0x8e, 0xa5, 0x87, 0x4c, 0xf1, 0x84,
- 0x9d, 0xc1, 0x0a, 0xe3, 0x74, 0x1c, 0xab, 0x17, 0xd2, 0x51, 0x1d, 0xd6, 0xd8, 0xf4, 0x89, 0x1b,
- 0x78, 0x36, 0xf1, 0xf5, 0x7d, 0xea, 0xe9, 0xbe, 0x43, 0x8f, 0xf5, 0x7d, 0xea, 0x38, 0xf4, 0x98,
- 0x78, 0x61, 0xdd, 0xac, 0xec, 0xd0, 0x81, 0x26, 0x40, 0x1b, 0xd4, 0xeb, 0x39, 0xf4, 0x78, 0x23,
- 0x44, 0xb0, 0x90, 0x6e, 0x3a, 0xe7, 0xc0, 0x36, 0x0f, 0xc3, 0x90, 0x2e, 0xa2, 0xf6, 0x6d, 0xf3,
- 0x10, 0xbd, 0x09, 0x8b, 0xc4, 0x21, 0xbc, 0x7c, 0x22, 0x50, 0x59, 0x8e, 0x2a, 0x85, 0x44, 0x06,
- 0x52, 0x3f, 0x02, 0x45, 0x73, 0x4d, 0x6f, 0x32, 0x8a, 0xad, 0xf9, 0xbb, 0x80, 0x98, 0x93, 0xd4,
- 0x1d, 0x6a, 0x1e, 0xea, 0x43, 0xc3, 0x35, 0x06, 0x6c, 0x5c, 0xe2, 0xed, 0x50, 0x61, 0x9c, 0x6d,
- 0x6a, 0x1e, 0xee, 0x48, 0xba, 0xfa, 0x1e, 0x40, 0x6f, 0xe4, 0x11, 0xc3, 0xea, 0xb0, 0x68, 0x82,
- 0x99, 0x8e, 0xb7, 0x74, 0x4b, 0xbe, 0xcc, 0x52, 0x4f, 0x1e, 0x75, 0x45, 0x30, 0x9a, 0x11, 0x5d,
- 0xfd, 0x79, 0xb8, 0xd9, 0x75, 0x0c, 0x93, 0x7f, 0xa5, 0xd0, 0x8d, 0x1e, 0xc3, 0xd0, 0x13, 0xc8,
- 0x09, 0xa8, 0x5c, 0xc9, 0xc4, 0xe3, 0x36, 0xed, 0x73, 0x6b, 0x0e, 0x4b, 0x7c, 0xbd, 0x04, 0x30,
- 0xd5, 0xa3, 0xfe, 0x53, 0x0a, 0x0a, 0x91, 0x7e, 0x54, 0x11, 0x6f, 0x3c, 0x81, 0x67, 0xd8, 0xae,
- 0xcc, 0xf8, 0x0b, 0x38, 0x4e, 0x42, 0x2d, 0x28, 0x8e, 0x22, 0xe9, 0x2b, 0xe3, 0xb9, 0x84, 0x51,
- 0xe3, 0xb8, 0x2c, 0x7a, 0x1f, 0x0a, 0xe1, 0x53, 0x78, 0xe8, 0x61, 0xaf, 0x7e, 0x39, 0x9f, 0xc2,
- 0xc3, 0x42, 0xaa, 0x47, 0x46, 0x8e, 0xcd, 0x7c, 0x4e, 0x26, 0x2a, 0xa4, 0x62, 0x49, 0x52, 0xbf,
- 0x09, 0xf0, 0x2d, 0x6a, 0xbb, 0x7d, 0x7a, 0x48, 0x5c, 0xfe, 0xbe, 0xcb, 0x52, 0x4a, 0x12, 0x1a,
- 0x5a, 0xb6, 0x78, 0xa5, 0x40, 0xac, 0x52, 0xf4, 0xcc, 0x29, 0x9a, 0xea, 0x5f, 0xa6, 0x21, 0x87,
- 0x29, 0x0d, 0x1a, 0x35, 0x54, 0x81, 0x9c, 0x74, 0x25, 0xfc, 0x8a, 0xaa, 0x17, 0xce, 0xcf, 0xd6,
- 0xb3, 0xc2, 0x87, 0x64, 0x4d, 0xee, 0x3c, 0x62, 0x4e, 0x3e, 0x7d, 0x99, 0x93, 0x47, 0x0f, 0xa0,
- 0x24, 0x41, 0xfa, 0x81, 0xe1, 0x1f, 0x88, 0xfc, 0xae, 0xbe, 0x74, 0x7e, 0xb6, 0x0e, 0x02, 0xb9,
- 0x65, 0xf8, 0x07, 0x18, 0x04, 0x9a, 0xfd, 0x46, 0x1a, 0x14, 0x3f, 0xa6, 0xb6, 0xab, 0x07, 0x7c,
- 0x12, 0xb2, 0x16, 0x99, 0xb8, 0xd4, 0xd3, 0xa9, 0xca, 0x4f, 0x21, 0xe0, 0xe3, 0xe9, 0xe4, 0x35,
- 0x58, 0xf4, 0x28, 0x0d, 0x84, 0x67, 0xb3, 0xa9, 0x2b, 0xcb, 0x1c, 0x95, 0xc4, 0xea, 0x37, 0xa5,
- 0x01, 0x96, 0x38, 0x5c, 0xf2, 0x62, 0x2d, 0xf4, 0x00, 0x56, 0x1c, 0xc3, 0x0f, 0x74, 0xee, 0x12,
- 0xad, 0xa9, 0xb6, 0x1c, 0x37, 0x3e, 0x62, 0xbc, 0x0d, 0xce, 0x0a, 0x25, 0xd4, 0x7f, 0x4c, 0x41,
- 0x91, 0x4d, 0xc6, 0xde, 0xb7, 0x4d, 0x16, 0x07, 0x7e, 0xf6, 0xf0, 0xe4, 0x36, 0xcc, 0x9b, 0xbe,
- 0x27, 0x8d, 0xca, 0xef, 0xe7, 0x46, 0x0f, 0x63, 0x46, 0x43, 0x1f, 0x41, 0x4e, 0x96, 0x5b, 0x44,
- 0x64, 0xa2, 0x5e, 0x1f, 0xb1, 0x4a, 0xdb, 0x48, 0x39, 0xbe, 0xdd, 0xa7, 0xa3, 0x13, 0xf7, 0x04,
- 0x8e, 0x93, 0xd0, 0x2d, 0x48, 0x9b, 0xc2, 0x5c, 0xf2, 0x5b, 0x9b, 0x46, 0x1b, 0xa7, 0x4d, 0x57,
- 0xfd, 0x51, 0x0a, 0x16, 0xa7, 0x3e, 0x81, 0xed, 0x80, 0x3b, 0x50, 0xf0, 0xc7, 0x7b, 0xfe, 0xc4,
- 0x0f, 0xc8, 0x30, 0x7c, 0xbb, 0x8e, 0x08, 0xa8, 0x05, 0x05, 0xc3, 0x19, 0x50, 0xcf, 0x0e, 0x0e,
- 0x86, 0x32, 0x91, 0x4d, 0x8e, 0x26, 0xe2, 0x3a, 0xab, 0xb5, 0x50, 0x04, 0x4f, 0xa5, 0xc3, 0xd0,
- 0x40, 0x7c, 0xe0, 0xc0, 0x43, 0x83, 0x37, 0xa0, 0xe4, 0x18, 0x43, 0x5e, 0x7f, 0x0a, 0xec, 0x21,
- 0x09, 0x0f, 0x83, 0xa4, 0xf5, 0xed, 0x21, 0x51, 0x55, 0x28, 0x44, 0xca, 0xd0, 0x32, 0x14, 0x6b,
- 0x5a, 0x4f, 0x7f, 0xf8, 0xe8, 0x89, 0xbe, 0xd9, 0xd8, 0x51, 0xe6, 0x64, 0xf8, 0xfa, 0x67, 0x29,
- 0x58, 0x94, 0x1e, 0x4b, 0xa6, 0x04, 0x6f, 0xc2, 0x82, 0x67, 0xec, 0x07, 0x61, 0xd2, 0x92, 0x11,
- 0xbb, 0x9a, 0x5d, 0x02, 0x2c, 0x69, 0x61, 0xac, 0xe4, 0xa4, 0x25, 0xf6, 0x35, 0xc5, 0xfc, 0x95,
- 0x5f, 0x53, 0x64, 0x7e, 0x2a, 0x5f, 0x53, 0xa8, 0xbf, 0x06, 0xb0, 0x61, 0x3b, 0xa4, 0x2f, 0x4a,
- 0x55, 0x49, 0x29, 0x28, 0x0b, 0xf3, 0x64, 0x29, 0x34, 0x0c, 0xf3, 0x5a, 0x4d, 0xcc, 0x68, 0x8c,
- 0x35, 0xb0, 0x2d, 0x79, 0x18, 0x39, 0x6b, 0x93, 0xb1, 0x06, 0xb6, 0x15, 0x3d, 0xfb, 0x65, 0xae,
- 0x79, 0xf6, 0x53, 0x4f, 0x53, 0xb0, 0x2c, 0xc3, 0xdb, 0xc8, 0x43, 0x7f, 0x19, 0x0a, 0x22, 0xd2,
- 0x9d, 0xe6, 0x7c, 0xfc, 0x0b, 0x02, 0x81, 0x6b, 0x35, 0x71, 0x5e, 0xb0, 0x5b, 0x16, 0x5a, 0x87,
- 0xa2, 0x84, 0xc6, 0xbe, 0xcb, 0x02, 0x41, 0x6a, 0xb3, 0xe1, 0x7f, 0x15, 0x32, 0xfb, 0xb6, 0x43,
- 0xe4, 0x46, 0x4f, 0x74, 0x00, 0x53, 0x03, 0x6c, 0xcd, 0x61, 0x8e, 0xae, 0xe7, 0xc3, 0x5a, 0x1e,
- 0x1f, 0x9f, 0xcc, 0x4c, 0xe3, 0xe3, 0x13, 0x49, 0xea, 0xcc, 0xf8, 0x04, 0x8e, 0x8d, 0x4f, 0xb0,
- 0xc5, 0xf8, 0x24, 0x34, 0x3e, 0x3e, 0x41, 0xfa, 0xa9, 0x8c, 0x6f, 0x1b, 0x6e, 0xd5, 0x1d, 0xc3,
- 0x3c, 0x74, 0x6c, 0x3f, 0x20, 0x56, 0xdc, 0x63, 0x3c, 0x82, 0xdc, 0x85, 0xb8, 0xf4, 0xaa, 0xa2,
- 0xa7, 0x44, 0xaa, 0xff, 0x9e, 0x82, 0xd2, 0x16, 0x31, 0x9c, 0xe0, 0x60, 0x5a, 0x59, 0x0a, 0x88,
- 0x1f, 0xc8, 0xfb, 0x8c, 0xff, 0x46, 0x5f, 0x83, 0x7c, 0x14, 0xb6, 0x5c, 0xfb, 0x7c, 0x17, 0x41,
- 0xd1, 0x63, 0x58, 0x60, 0x67, 0x8c, 0x8e, 0xc3, 0x7c, 0xe8, 0xaa, 0x97, 0x21, 0x89, 0x64, 0x97,
- 0x8c, 0x47, 0x78, 0x9c, 0xc2, 0xb7, 0x52, 0x16, 0x87, 0x4d, 0xf4, 0xb3, 0x50, 0xe2, 0x0f, 0x1b,
- 0x61, 0x58, 0x96, 0xbd, 0x4e, 0x67, 0x51, 0xbc, 0x4d, 0x8a, 0x90, 0xec, 0x07, 0x69, 0x58, 0xd9,
- 0x31, 0x26, 0x7b, 0x44, 0xba, 0x0d, 0x62, 0x61, 0x62, 0x52, 0xcf, 0x42, 0xdd, 0xb8, 0xbb, 0xb9,
- 0xe2, 0xa9, 0x33, 0x49, 0x38, 0xd9, 0xeb, 0x84, 0x39, 0x5a, 0x3a, 0x96, 0xa3, 0xad, 0x40, 0xd6,
- 0xa5, 0xae, 0x49, 0xa4, 0x2f, 0x12, 0x0d, 0xf5, 0x77, 0x53, 0x71, 0x5f, 0x53, 0x8e, 0x9e, 0x21,
- 0x79, 0x91, 0xaa, 0x4d, 0x83, 0xa8, 0x3b, 0xf4, 0x11, 0x94, 0x7b, 0x5a, 0x03, 0x6b, 0xfd, 0x7a,
- 0xe7, 0xdb, 0x7a, 0xaf, 0xb6, 0xdd, 0xab, 0x3d, 0x7a, 0xa0, 0x77, 0x3b, 0xdb, 0xdf, 0x79, 0xf8,
- 0xf8, 0xc1, 0xd7, 0x94, 0x54, 0xb9, 0x72, 0x72, 0x5a, 0xb9, 0xd3, 0xae, 0x35, 0xb6, 0xc5, 0x91,
- 0xd9, 0xa3, 0x2f, 0x7a, 0x86, 0xe3, 0x1b, 0x8f, 0x1e, 0x74, 0xa9, 0x33, 0x61, 0x18, 0xf4, 0x15,
- 0x40, 0x1b, 0x1a, 0x6e, 0x6b, 0x7d, 0x3d, 0x74, 0x68, 0x8d, 0x7a, 0x43, 0x49, 0x8b, 0xcc, 0x67,
- 0x83, 0x78, 0x2e, 0x09, 0x6a, 0x5a, 0xef, 0xe1, 0xa3, 0x27, 0x8d, 0x7a, 0x83, 0x1d, 0x82, 0x52,
- 0xfc, 0x76, 0x8b, 0x5f, 0xda, 0xa9, 0x4b, 0x2f, 0xed, 0xe9, 0xdd, 0x9f, 0xbe, 0xe4, 0xee, 0xdf,
- 0x80, 0x15, 0xd3, 0xa3, 0xbe, 0xaf, 0xb3, 0x74, 0x82, 0x58, 0x33, 0x09, 0xcb, 0x17, 0xce, 0xcf,
- 0xd6, 0x6f, 0x34, 0x18, 0xbf, 0xc7, 0xd9, 0x52, 0xfd, 0x0d, 0x33, 0x46, 0xe2, 0x3d, 0xa9, 0x7f,
- 0x30, 0xcf, 0x22, 0x33, 0xfb, 0xc8, 0x76, 0xc8, 0x80, 0xf8, 0xe8, 0x19, 0x2c, 0x9b, 0x1e, 0xb1,
- 0x58, 0x9e, 0x60, 0x38, 0xf1, 0xaf, 0x81, 0x7f, 0x26, 0x31, 0x48, 0x8a, 0x04, 0xab, 0x8d, 0x48,
- 0xaa, 0x37, 0x22, 0x26, 0x5e, 0x32, 0x2f, 0xb4, 0xd1, 0xc7, 0xb0, 0xec, 0x13, 0xc7, 0x76, 0xc7,
- 0x2f, 0x74, 0x93, 0xba, 0x01, 0x79, 0x11, 0x3e, 0xbf, 0x5d, 0xa7, 0xb7, 0xa7, 0x6d, 0x33, 0xa9,
- 0x86, 0x10, 0xaa, 0xa3, 0xf3, 0xb3, 0xf5, 0xa5, 0x8b, 0x34, 0xbc, 0x24, 0x35, 0xcb, 0x76, 0xb9,
- 0x0d, 0x4b, 0x17, 0x47, 0x83, 0x56, 0xa4, 0xa7, 0xe0, 0x0e, 0x27, 0xf4, 0x04, 0xe8, 0x0e, 0xe4,
- 0x3d, 0x32, 0xb0, 0xfd, 0xc0, 0x13, 0x66, 0x66, 0x9c, 0x88, 0xc2, 0xfc, 0x84, 0xf8, 0x58, 0xab,
- 0xfc, 0x2b, 0x30, 0xd3, 0x23, 0x3b, 0x5a, 0x96, 0xed, 0x1b, 0x7b, 0x52, 0x65, 0x1e, 0x87, 0x4d,
- 0xb6, 0x63, 0xc7, 0x7e, 0x14, 0xd6, 0xf1, 0xdf, 0x8c, 0xc6, 0xe3, 0x0f, 0xf9, 0xe9, 0x1a, 0x8f,
- 0x30, 0xc2, 0x2f, 0x64, 0x33, 0xb1, 0x2f, 0x64, 0x57, 0x20, 0xeb, 0x90, 0x23, 0xe2, 0x88, 0x9b,
- 0x1f, 0x8b, 0xc6, 0xbd, 0x07, 0x50, 0x0a, 0x3f, 0xc5, 0xe4, 0x5f, 0x72, 0xe4, 0x21, 0xd3, 0xaf,
- 0xf5, 0x9e, 0x2a, 0x73, 0x08, 0x20, 0x27, 0x76, 0xb2, 0x78, 0x1a, 0x6c, 0x74, 0xda, 0x1b, 0xad,
- 0x4d, 0x25, 0x7d, 0xef, 0xf7, 0x32, 0x50, 0x88, 0x1e, 0xa7, 0xd8, 0x4d, 0xd3, 0xd6, 0x9e, 0x87,
- 0x47, 0x21, 0xa2, 0xb7, 0xc9, 0x31, 0x7a, 0x63, 0x5a, 0xd6, 0xfa, 0x48, 0xbc, 0xc6, 0x47, 0xec,
- 0xb0, 0xa4, 0xf5, 0x16, 0xe4, 0x6b, 0xbd, 0x5e, 0x6b, 0xb3, 0xad, 0x35, 0x95, 0x4f, 0x53, 0xe5,
- 0x2f, 0x9c, 0x9c, 0x56, 0x6e, 0x44, 0xa0, 0x9a, 0x2f, 0x36, 0x1f, 0x47, 0x35, 0x1a, 0x5a, 0xb7,
- 0xaf, 0x35, 0x95, 0x4f, 0xd2, 0xb3, 0x28, 0x5e, 0xa6, 0xe1, 0x5f, 0x19, 0x15, 0xba, 0x58, 0xeb,
- 0xd6, 0x30, 0xeb, 0xf0, 0xd3, 0xb4, 0xa8, 0xb6, 0x4d, 0x7b, 0xf4, 0xc8, 0xc8, 0xf0, 0x58, 0x9f,
- 0x6b, 0xe1, 0x67, 0x7b, 0x9f, 0xcc, 0x8b, 0xcf, 0x4d, 0xa6, 0x2f, 0x6d, 0xc4, 0xb0, 0x26, 0xac,
- 0x37, 0xfe, 0xc4, 0xc9, 0xd5, 0xcc, 0xcf, 0xf4, 0xd6, 0x63, 0x9e, 0x8a, 0x69, 0x51, 0x61, 0x01,
- 0xef, 0xb6, 0xdb, 0x0c, 0xf4, 0x49, 0x66, 0x66, 0x76, 0x78, 0xec, 0xb2, 0x14, 0x1c, 0xdd, 0x85,
- 0x7c, 0xf8, 0x02, 0xaa, 0x7c, 0x9a, 0x99, 0x19, 0x50, 0x23, 0x7c, 0xbe, 0xe5, 0x1d, 0x6e, 0xed,
- 0xf6, 0xf9, 0x57, 0x85, 0x9f, 0x64, 0x67, 0x3b, 0x3c, 0x18, 0x07, 0x16, 0x3d, 0x76, 0xd9, 0x99,
- 0x95, 0x85, 0xbd, 0x4f, 0xb3, 0xc2, 0x17, 0x44, 0x18, 0x59, 0xd5, 0x7b, 0x0b, 0xf2, 0x58, 0xfb,
- 0x96, 0xf8, 0x00, 0xf1, 0x93, 0xdc, 0x8c, 0x1e, 0x4c, 0x3e, 0x26, 0x26, 0xeb, 0xad, 0x02, 0x39,
- 0xac, 0xed, 0x74, 0x9e, 0x69, 0xca, 0x1f, 0xe6, 0x66, 0xf4, 0x60, 0x32, 0xa4, 0xfc, 0x33, 0xac,
- 0x7c, 0x07, 0x77, 0xb7, 0x6a, 0x7c, 0x51, 0x66, 0xf5, 0x74, 0xbc, 0xd1, 0x81, 0xe1, 0x12, 0x6b,
- 0xfa, 0xc9, 0x4d, 0xc4, 0xba, 0xf7, 0x0b, 0x90, 0x0f, 0x23, 0x5d, 0xb4, 0x06, 0xb9, 0xe7, 0x1d,
- 0xfc, 0x54, 0xc3, 0xca, 0x9c, 0xb0, 0x72, 0xc8, 0x79, 0x2e, 0x72, 0x94, 0x0a, 0x2c, 0xec, 0xd4,
- 0xda, 0xb5, 0x4d, 0x0d, 0x87, 0x55, 0xf9, 0x10, 0x20, 0xc3, 0xb5, 0xb2, 0x22, 0x3b, 0x88, 0x74,
- 0xd6, 0x57, 0x7f, 0xf8, 0x93, 0xb5, 0xb9, 0x1f, 0xff, 0x64, 0x6d, 0xee, 0x93, 0xf3, 0xb5, 0xd4,
- 0x0f, 0xcf, 0xd7, 0x52, 0x7f, 0x77, 0xbe, 0x96, 0xfa, 0xb7, 0xf3, 0xb5, 0xd4, 0x5e, 0x8e, 0x5f,
- 0x2a, 0x8f, 0xff, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x5a, 0x0b, 0x70, 0x5e, 0xdb, 0x32, 0x00, 0x00,
+ 0x9a, 0xe9, 0x9d, 0xd9, 0xde, 0x41, 0xfd, 0x37, 0xbb, 0xd1, 0x33, 0xc3, 0xec, 0x8c, 0x54, 0x2a,
+ 0xb7, 0xb5, 0xed, 0x96, 0x14, 0x29, 0xb9, 0x7b, 0x97, 0x08, 0x28, 0xca, 0x55, 0x69, 0xb9, 0xc6,
+ 0xa5, 0x4a, 0x51, 0x55, 0x72, 0xb7, 0x58, 0x08, 0xe6, 0x04, 0x84, 0x4f, 0x70, 0x81, 0xdd, 0x20,
+ 0x1c, 0x41, 0x04, 0xdc, 0x38, 0x70, 0xe0, 0xc0, 0xc2, 0x69, 0x88, 0x20, 0x88, 0x0d, 0x2e, 0xb0,
+ 0x10, 0x01, 0x1b, 0x40, 0x18, 0xc6, 0x07, 0x6e, 0x04, 0x5c, 0x08, 0x2e, 0x1c, 0x88, 0xfc, 0xa9,
+ 0x52, 0x59, 0x5d, 0x76, 0xcf, 0xec, 0x72, 0xb1, 0x95, 0xef, 0x7d, 0xef, 0x65, 0xe6, 0xcb, 0xcc,
+ 0x97, 0xef, 0xbd, 0x2c, 0xb8, 0x35, 0x74, 0xc2, 0x83, 0xc9, 0x5e, 0xdd, 0xa2, 0xa3, 0xdb, 0x36,
+ 0xb5, 0x0e, 0x89, 0x7f, 0x3b, 0x78, 0x66, 0xfa, 0xa3, 0x43, 0x27, 0xbc, 0x6d, 0x8e, 0x9d, 0xdb,
+ 0xe1, 0x74, 0x4c, 0x82, 0xfa, 0xd8, 0xa7, 0x21, 0x45, 0x48, 0x00, 0xea, 0x11, 0xa0, 0x7e, 0x74,
+ 0xb7, 0xba, 0x39, 0xa4, 0x74, 0xe8, 0x92, 0xdb, 0x1c, 0xb1, 0x37, 0xd9, 0xbf, 0x1d, 0x3a, 0x23,
+ 0x12, 0x84, 0xe6, 0x68, 0x2c, 0x84, 0xaa, 0x1b, 0xf3, 0x00, 0x7b, 0xe2, 0x9b, 0xa1, 0x43, 0x3d,
+ 0xc9, 0x5f, 0x1b, 0xd2, 0x21, 0xe5, 0x3f, 0x6f, 0xb3, 0x5f, 0x82, 0xaa, 0x6e, 0xc2, 0xd2, 0x13,
+ 0xe2, 0x07, 0x0e, 0xf5, 0xd0, 0x1a, 0xe4, 0x1d, 0xcf, 0x26, 0xcf, 0xd7, 0x33, 0xb5, 0xcc, 0x5b,
+ 0x39, 0x2c, 0x1a, 0xea, 0x1d, 0x80, 0x36, 0xfb, 0xa1, 0x7b, 0xa1, 0x3f, 0x45, 0x0a, 0x2c, 0x1e,
+ 0x92, 0x29, 0x47, 0x94, 0x30, 0xfb, 0xc9, 0x28, 0x47, 0xa6, 0xbb, 0x9e, 0x15, 0x94, 0x23, 0xd3,
+ 0x55, 0x3f, 0xcb, 0x40, 0xb9, 0xe1, 0x79, 0x34, 0xe4, 0xbd, 0x07, 0x08, 0x41, 0xce, 0x33, 0x47,
+ 0x44, 0x0a, 0xf1, 0xdf, 0x48, 0x83, 0x82, 0x6b, 0xee, 0x11, 0x37, 0x58, 0xcf, 0xd6, 0x16, 0xdf,
+ 0x2a, 0xdf, 0xfb, 0x5a, 0xfd, 0xc5, 0x29, 0xd7, 0x13, 0x4a, 0xea, 0x3b, 0x1c, 0xcd, 0x07, 0x81,
+ 0xa5, 0x28, 0xfa, 0x26, 0x2c, 0x39, 0x9e, 0xed, 0x58, 0x24, 0x58, 0xcf, 0x71, 0x2d, 0x1b, 0x69,
+ 0x5a, 0x66, 0xa3, 0x6f, 0xe6, 0x7e, 0x78, 0xba, 0xb9, 0x80, 0x23, 0xa1, 0xea, 0xbb, 0x50, 0x4e,
+ 0xa8, 0x4d, 0x99, 0xdb, 0x1a, 0xe4, 0x8f, 0x4c, 0x77, 0x42, 0xe4, 0xec, 0x44, 0xe3, 0xbd, 0xec,
+ 0x83, 0x8c, 0xfa, 0x11, 0xac, 0x75, 0xcc, 0x11, 0xb1, 0x1f, 0x12, 0x8f, 0xf8, 0x8e, 0x85, 0x49,
+ 0x40, 0x27, 0xbe, 0x45, 0xd8, 0x5c, 0x0f, 0x1d, 0xcf, 0x8e, 0xe6, 0xca, 0x7e, 0xa7, 0x6b, 0x51,
+ 0x35, 0x78, 0xa5, 0xe5, 0x04, 0x96, 0x4f, 0x42, 0xf2, 0x85, 0x95, 0x2c, 0x46, 0x4a, 0x4e, 0x33,
+ 0xb0, 0x3a, 0x2f, 0xfd, 0x73, 0x70, 0x95, 0x99, 0xd8, 0x36, 0x7c, 0x49, 0x31, 0x82, 0x31, 0xb1,
+ 0xb8, 0xb2, 0xf2, 0xbd, 0xb7, 0xd2, 0x2c, 0x94, 0x36, 0x93, 0xed, 0x05, 0x7c, 0x85, 0xab, 0x89,
+ 0x08, 0xfd, 0x31, 0xb1, 0x90, 0x05, 0xd7, 0x6c, 0x39, 0xe8, 0x39, 0xf5, 0x59, 0xae, 0x3e, 0x75,
+ 0x19, 0x2f, 0x98, 0xe6, 0xf6, 0x02, 0x5e, 0x8b, 0x94, 0x25, 0x3b, 0x69, 0x02, 0x14, 0x23, 0xdd,
+ 0xea, 0xf7, 0x32, 0x50, 0x8a, 0x98, 0x01, 0xfa, 0x2a, 0x94, 0x3c, 0xd3, 0xa3, 0x86, 0x35, 0x9e,
+ 0x04, 0x7c, 0x42, 0x8b, 0xcd, 0xca, 0xd9, 0xe9, 0x66, 0xb1, 0x63, 0x7a, 0x54, 0xeb, 0xed, 0x06,
+ 0xb8, 0xc8, 0xd8, 0xda, 0x78, 0x12, 0xa0, 0xd7, 0xa0, 0x32, 0x22, 0x23, 0xea, 0x4f, 0x8d, 0xbd,
+ 0x69, 0x48, 0x02, 0x69, 0xb6, 0xb2, 0xa0, 0x35, 0x19, 0x09, 0x7d, 0x00, 0x4b, 0x43, 0x31, 0xa4,
+ 0xf5, 0x45, 0xbe, 0x7d, 0x5e, 0x4f, 0x1b, 0xfd, 0xdc, 0xa8, 0x71, 0x24, 0xa3, 0xfe, 0x56, 0x06,
+ 0xd6, 0x62, 0x2a, 0xf9, 0xa5, 0x89, 0xe3, 0x93, 0x11, 0xf1, 0xc2, 0x00, 0x7d, 0x1d, 0x0a, 0xae,
+ 0x33, 0x72, 0xc2, 0x40, 0xda, 0xfc, 0xd5, 0x34, 0xb5, 0xf1, 0xa4, 0xb0, 0x04, 0xa3, 0x06, 0x54,
+ 0x7c, 0x12, 0x10, 0xff, 0x48, 0xec, 0x78, 0x69, 0xd1, 0x97, 0x08, 0x9f, 0x13, 0x51, 0xb7, 0xa0,
+ 0xd8, 0x73, 0xcd, 0x70, 0x9f, 0xfa, 0x23, 0xa4, 0x42, 0xc5, 0xf4, 0xad, 0x03, 0x27, 0x24, 0x56,
+ 0x38, 0xf1, 0xa3, 0xd3, 0x77, 0x8e, 0x86, 0xae, 0x41, 0x96, 0x8a, 0x8e, 0x4a, 0xcd, 0xc2, 0xd9,
+ 0xe9, 0x66, 0xb6, 0xdb, 0xc7, 0x59, 0x1a, 0xa8, 0xef, 0xc3, 0x95, 0x9e, 0x3b, 0x19, 0x3a, 0x5e,
+ 0x8b, 0x04, 0x96, 0xef, 0x8c, 0x99, 0x76, 0xb6, 0x2b, 0x99, 0x8f, 0x8a, 0x76, 0x25, 0xfb, 0x1d,
+ 0x1f, 0xed, 0xec, 0xec, 0x68, 0xab, 0xbf, 0x91, 0x85, 0x2b, 0xba, 0x37, 0x74, 0x3c, 0x92, 0x94,
+ 0xbe, 0x09, 0x2b, 0x84, 0x13, 0x8d, 0x23, 0xe1, 0x6e, 0xa4, 0x9e, 0x65, 0x41, 0x8d, 0x7c, 0x50,
+ 0x7b, 0xce, 0x2f, 0xdc, 0x4d, 0x9b, 0xfe, 0x0b, 0xda, 0x53, 0xbd, 0x83, 0x0e, 0x4b, 0x63, 0x3e,
+ 0x89, 0x40, 0x2e, 0xef, 0xcd, 0x34, 0x5d, 0x2f, 0xcc, 0x33, 0x72, 0x12, 0x52, 0xf6, 0xa7, 0x71,
+ 0x12, 0x7f, 0x9d, 0x85, 0xd5, 0x0e, 0xb5, 0xcf, 0xd9, 0xa1, 0x0a, 0xc5, 0x03, 0x1a, 0x84, 0x09,
+ 0x87, 0x18, 0xb7, 0xd1, 0x03, 0x28, 0x8e, 0xe5, 0xf2, 0xc9, 0xd5, 0xbf, 0x91, 0x3e, 0x64, 0x81,
+ 0xc1, 0x31, 0x1a, 0xbd, 0x0f, 0xa5, 0xe8, 0xc8, 0xb0, 0xd9, 0x7e, 0x8e, 0x8d, 0x33, 0xc3, 0xa3,
+ 0x0f, 0xa0, 0x20, 0x16, 0x61, 0x3d, 0xc7, 0x25, 0x6f, 0x7e, 0x2e, 0x9b, 0x63, 0x29, 0x84, 0x1e,
+ 0x42, 0x31, 0x74, 0x03, 0xc3, 0xf1, 0xf6, 0xe9, 0x7a, 0x9e, 0x2b, 0xd8, 0x4c, 0x75, 0x32, 0xd4,
+ 0x26, 0x83, 0x9d, 0x7e, 0xdb, 0xdb, 0xa7, 0xcd, 0xf2, 0xd9, 0xe9, 0xe6, 0x92, 0x6c, 0xe0, 0xa5,
+ 0xd0, 0x0d, 0xd8, 0x0f, 0x74, 0x03, 0x72, 0xfb, 0xce, 0x38, 0x58, 0x2f, 0xd4, 0x32, 0x6f, 0x15,
+ 0x9b, 0xc5, 0xb3, 0xd3, 0xcd, 0xdc, 0x56, 0xbb, 0xd7, 0xc7, 0x9c, 0xaa, 0xfe, 0x76, 0x06, 0xca,
+ 0x09, 0x1d, 0xe8, 0x55, 0x80, 0xd0, 0x9f, 0x04, 0xa1, 0xe1, 0x53, 0x1a, 0x72, 0x53, 0x56, 0x70,
+ 0x89, 0x53, 0x30, 0xa5, 0x21, 0xaa, 0xc3, 0x55, 0x8b, 0xf8, 0xa1, 0xe1, 0x04, 0xc1, 0x84, 0xf8,
+ 0x46, 0x30, 0xd9, 0xfb, 0x98, 0x58, 0x21, 0x37, 0x6b, 0x05, 0x5f, 0x61, 0xac, 0x36, 0xe7, 0xf4,
+ 0x05, 0x03, 0xdd, 0x87, 0x6b, 0x49, 0xfc, 0x78, 0xb2, 0xe7, 0x3a, 0x96, 0xc1, 0x96, 0x7a, 0x91,
+ 0x8b, 0x5c, 0x9d, 0x89, 0xf4, 0x38, 0xef, 0x11, 0x99, 0xaa, 0x3f, 0xce, 0x80, 0x82, 0xcd, 0xfd,
+ 0xf0, 0x31, 0x19, 0xed, 0x11, 0xbf, 0x1f, 0x9a, 0xe1, 0x24, 0x40, 0xd7, 0xa0, 0xe0, 0x12, 0xd3,
+ 0x26, 0x3e, 0x1f, 0x54, 0x11, 0xcb, 0x16, 0xda, 0x65, 0xe7, 0xdb, 0xb4, 0x0e, 0xcc, 0x3d, 0xc7,
+ 0x75, 0xc2, 0x29, 0x1f, 0xca, 0x4a, 0xfa, 0x06, 0x9f, 0xd7, 0x59, 0xc7, 0x09, 0x41, 0x7c, 0x4e,
+ 0x0d, 0x5a, 0x87, 0xa5, 0x11, 0x09, 0x02, 0x73, 0x48, 0xf8, 0x48, 0x4b, 0x38, 0x6a, 0xaa, 0xef,
+ 0x43, 0x25, 0x29, 0x87, 0xca, 0xb0, 0xb4, 0xdb, 0x79, 0xd4, 0xe9, 0x3e, 0xed, 0x28, 0x0b, 0x68,
+ 0x15, 0xca, 0xbb, 0x1d, 0xac, 0x37, 0xb4, 0xed, 0x46, 0x73, 0x47, 0x57, 0x32, 0x68, 0x19, 0x4a,
+ 0xb3, 0x66, 0x56, 0xfd, 0x93, 0x0c, 0x00, 0x33, 0xb7, 0x9c, 0xd4, 0x7b, 0x90, 0x0f, 0x42, 0x33,
+ 0x14, 0x7b, 0x76, 0xe5, 0xde, 0x1b, 0x17, 0xad, 0xb0, 0x1c, 0x2f, 0xfb, 0x47, 0xb0, 0x10, 0x49,
+ 0x8e, 0x30, 0x7b, 0x6e, 0x84, 0xcc, 0x7d, 0x98, 0xb6, 0xed, 0xcb, 0x81, 0xf3, 0xdf, 0xea, 0xfb,
+ 0x90, 0xe7, 0xd2, 0xe7, 0x87, 0x5b, 0x84, 0x5c, 0x8b, 0xfd, 0xca, 0xa0, 0x12, 0xe4, 0xb1, 0xde,
+ 0x68, 0x7d, 0x47, 0xc9, 0x22, 0x05, 0x2a, 0xad, 0x76, 0x5f, 0xeb, 0x76, 0x3a, 0xba, 0x36, 0xd0,
+ 0x5b, 0xca, 0xa2, 0x7a, 0x13, 0xf2, 0xed, 0x11, 0xd3, 0x7c, 0x83, 0x1d, 0x88, 0x7d, 0xe2, 0x13,
+ 0xcf, 0x8a, 0xce, 0xd9, 0x8c, 0xa0, 0x7e, 0x56, 0x81, 0xfc, 0x63, 0x3a, 0xf1, 0x42, 0x74, 0x2f,
+ 0xe1, 0xd4, 0x56, 0xd2, 0xe3, 0x07, 0x0e, 0xac, 0x0f, 0xa6, 0x63, 0x22, 0x9d, 0xde, 0x35, 0x28,
+ 0x88, 0xa3, 0x23, 0xa7, 0x23, 0x5b, 0x8c, 0x1e, 0x9a, 0xfe, 0x90, 0x84, 0x72, 0x3e, 0xb2, 0x85,
+ 0xde, 0x62, 0xf7, 0x99, 0x69, 0x53, 0xcf, 0x9d, 0xf2, 0x13, 0x56, 0x14, 0x97, 0x16, 0x26, 0xa6,
+ 0xdd, 0xf5, 0xdc, 0x29, 0x8e, 0xb9, 0x68, 0x1b, 0x2a, 0x7b, 0x8e, 0x67, 0x1b, 0x74, 0x2c, 0xae,
+ 0x80, 0xfc, 0xc5, 0xe7, 0x51, 0x8c, 0xaa, 0xe9, 0x78, 0x76, 0x57, 0x80, 0x71, 0x79, 0x6f, 0xd6,
+ 0x40, 0x1d, 0x58, 0x39, 0xa2, 0xee, 0x64, 0x44, 0x62, 0x5d, 0x05, 0xae, 0xeb, 0xcd, 0x8b, 0x75,
+ 0x3d, 0xe1, 0xf8, 0x48, 0xdb, 0xf2, 0x51, 0xb2, 0x89, 0x1e, 0xc1, 0x72, 0x38, 0x1a, 0xef, 0x07,
+ 0xb1, 0xba, 0x25, 0xae, 0xee, 0x2b, 0x97, 0x18, 0x8c, 0xc1, 0x23, 0x6d, 0x95, 0x30, 0xd1, 0x42,
+ 0x0f, 0xa1, 0x6c, 0x51, 0x2f, 0x70, 0x82, 0x90, 0x78, 0xd6, 0x74, 0xbd, 0xc8, 0x6d, 0x7f, 0xc9,
+ 0x2c, 0xb5, 0x19, 0x18, 0x27, 0x25, 0xab, 0x3f, 0x58, 0x84, 0x72, 0xc2, 0x04, 0xa8, 0x0f, 0xe5,
+ 0xb1, 0x4f, 0xc7, 0xe6, 0x90, 0xdf, 0x87, 0x72, 0x51, 0xef, 0x7e, 0x2e, 0xf3, 0xd5, 0x7b, 0x33,
+ 0x41, 0x9c, 0xd4, 0x82, 0xde, 0x81, 0x8a, 0x47, 0x3d, 0x9f, 0x58, 0x13, 0x3f, 0x70, 0x8e, 0xc4,
+ 0xa2, 0x17, 0x9b, 0xca, 0xd9, 0xe9, 0x66, 0xa5, 0x43, 0x3d, 0x1c, 0xd1, 0xf1, 0x39, 0x94, 0x7a,
+ 0x92, 0x85, 0x72, 0x42, 0x25, 0xba, 0x05, 0x45, 0xdc, 0xc3, 0xed, 0x27, 0x8d, 0x81, 0xae, 0x2c,
+ 0x54, 0x6f, 0x1c, 0x9f, 0xd4, 0xd6, 0xf9, 0x18, 0x92, 0xdd, 0xf6, 0x7c, 0xe7, 0x88, 0xed, 0xfc,
+ 0xb7, 0x60, 0x29, 0x82, 0x66, 0xaa, 0x5f, 0x3e, 0x3e, 0xa9, 0xbd, 0x32, 0x0f, 0x4d, 0x20, 0x71,
+ 0x7f, 0xbb, 0x81, 0xf5, 0x96, 0x92, 0x4d, 0x47, 0xe2, 0xfe, 0x81, 0xe9, 0x13, 0x1b, 0x7d, 0x05,
+ 0x0a, 0x12, 0xb8, 0x58, 0xad, 0x1e, 0x9f, 0xd4, 0xae, 0xcd, 0x03, 0x67, 0x38, 0xdc, 0xdf, 0x69,
+ 0x3c, 0xd1, 0x95, 0x5c, 0x3a, 0x0e, 0xf7, 0x5d, 0xf3, 0x88, 0xa0, 0x37, 0x20, 0x2f, 0x60, 0xf9,
+ 0xea, 0xf5, 0xe3, 0x93, 0xda, 0x97, 0x5e, 0x50, 0xc7, 0x50, 0xd5, 0xf5, 0xdf, 0xfc, 0x83, 0x8d,
+ 0x85, 0x3f, 0xff, 0xc3, 0x0d, 0x65, 0x9e, 0x5d, 0xfd, 0xdf, 0x0c, 0x2c, 0x9f, 0xdb, 0x71, 0x48,
+ 0x85, 0x82, 0x47, 0x2d, 0x3a, 0x16, 0x97, 0x6b, 0xb1, 0x09, 0x67, 0xa7, 0x9b, 0x85, 0x0e, 0xd5,
+ 0xe8, 0x78, 0x8a, 0x25, 0x07, 0x3d, 0x9a, 0x0b, 0x0f, 0xee, 0x7f, 0xce, 0xed, 0x9c, 0x1a, 0x20,
+ 0x7c, 0x08, 0xcb, 0xb6, 0xef, 0x1c, 0x11, 0xdf, 0xb0, 0xa8, 0xb7, 0xef, 0x0c, 0xe5, 0xc5, 0x59,
+ 0x4d, 0x8d, 0x61, 0x39, 0x10, 0x57, 0x84, 0x80, 0xc6, 0xf1, 0x3f, 0x45, 0x68, 0x50, 0x1d, 0x43,
+ 0x25, 0x79, 0x40, 0xd8, 0x6d, 0x16, 0x38, 0xbf, 0x4c, 0x64, 0xb0, 0xca, 0x43, 0x5b, 0x5c, 0x62,
+ 0x14, 0x11, 0xaa, 0xbe, 0x09, 0xb9, 0x11, 0xb5, 0x85, 0x9e, 0xe5, 0xe6, 0x55, 0x16, 0xa1, 0xfc,
+ 0xd3, 0xe9, 0x66, 0x99, 0x06, 0xf5, 0x2d, 0xc7, 0x25, 0x8f, 0xa9, 0x4d, 0x30, 0x07, 0x30, 0x5f,
+ 0x1b, 0x9d, 0x50, 0x79, 0x1b, 0xc8, 0xa6, 0xfa, 0xfd, 0x0c, 0xe4, 0x98, 0x13, 0x43, 0x5f, 0x86,
+ 0x5c, 0xb3, 0xdd, 0x69, 0x29, 0x0b, 0xd5, 0x2b, 0xc7, 0x27, 0xb5, 0x65, 0x6e, 0x2d, 0xc6, 0x60,
+ 0x87, 0x01, 0x6d, 0x42, 0xe1, 0x49, 0x77, 0x67, 0xf7, 0x31, 0xdb, 0x79, 0x57, 0x8f, 0x4f, 0x6a,
+ 0xab, 0x31, 0x5b, 0xd8, 0x13, 0xbd, 0x0a, 0xf9, 0xc1, 0xe3, 0xde, 0x56, 0x5f, 0xc9, 0x56, 0xd1,
+ 0xf1, 0x49, 0x6d, 0x25, 0xe6, 0xf3, 0xe9, 0xa0, 0xd7, 0x20, 0xdf, 0xe9, 0xb5, 0x7b, 0xba, 0xb2,
+ 0x58, 0xbd, 0x76, 0x7c, 0x52, 0x43, 0x31, 0x9b, 0xe7, 0x18, 0x3d, 0x67, 0x4c, 0xaa, 0x57, 0xe4,
+ 0x9e, 0x28, 0xc5, 0x3c, 0xf5, 0x47, 0x19, 0x28, 0x27, 0x0e, 0x39, 0xdb, 0xd6, 0x2d, 0x7d, 0xab,
+ 0xb1, 0xbb, 0x33, 0x50, 0x16, 0x12, 0xdb, 0x3a, 0x01, 0x69, 0x91, 0x7d, 0x73, 0xe2, 0x32, 0xdf,
+ 0x0a, 0x5a, 0xb7, 0xd3, 0x6f, 0xf7, 0x07, 0x7a, 0x67, 0xa0, 0x64, 0xaa, 0xeb, 0xc7, 0x27, 0xb5,
+ 0xb5, 0x79, 0xf0, 0xd6, 0xc4, 0x75, 0xd9, 0xc6, 0xd6, 0x1a, 0xda, 0x36, 0x3f, 0x29, 0xb3, 0x8d,
+ 0x9d, 0x40, 0x69, 0xa6, 0x75, 0x40, 0x6c, 0xf4, 0x36, 0x94, 0x5a, 0xfa, 0x8e, 0xfe, 0xb0, 0xc1,
+ 0x6f, 0x94, 0xea, 0xab, 0xc7, 0x27, 0xb5, 0xeb, 0x2f, 0xf6, 0xee, 0x92, 0xa1, 0x19, 0x12, 0x7b,
+ 0x6e, 0x83, 0x27, 0x20, 0xea, 0x7f, 0x67, 0x61, 0x19, 0xb3, 0x04, 0xdd, 0x0f, 0x7b, 0xd4, 0x75,
+ 0xac, 0x29, 0xea, 0x41, 0xc9, 0xa2, 0x9e, 0xed, 0x24, 0x7c, 0xd3, 0xbd, 0x0b, 0x82, 0xb4, 0x99,
+ 0x54, 0xd4, 0xd2, 0x22, 0x49, 0x3c, 0x53, 0x82, 0x6e, 0x43, 0xde, 0x26, 0xae, 0x39, 0x95, 0xd1,
+ 0xe2, 0xf5, 0xba, 0x28, 0x01, 0xd4, 0xa3, 0x12, 0x40, 0xbd, 0x25, 0x4b, 0x00, 0x58, 0xe0, 0x78,
+ 0x56, 0x64, 0x3e, 0x37, 0xcc, 0x30, 0x24, 0xa3, 0x71, 0x28, 0xf6, 0x48, 0x0e, 0x97, 0x47, 0xe6,
+ 0xf3, 0x86, 0x24, 0xa1, 0xbb, 0x50, 0x78, 0xe6, 0x78, 0x36, 0x7d, 0x26, 0xa3, 0xc1, 0x4b, 0x94,
+ 0x4a, 0xa0, 0x7a, 0xcc, 0xc2, 0xa0, 0xb9, 0x61, 0xb2, 0x6d, 0xd6, 0xe9, 0x76, 0xf4, 0x68, 0x9b,
+ 0x49, 0x7e, 0xd7, 0xeb, 0x50, 0x8f, 0x79, 0x0f, 0xe8, 0x76, 0x8c, 0xad, 0x46, 0x7b, 0x67, 0x17,
+ 0xb3, 0xad, 0xb6, 0x76, 0x7c, 0x52, 0x53, 0x62, 0xc8, 0x96, 0xe9, 0xb8, 0x2c, 0x3d, 0xb9, 0x0e,
+ 0x8b, 0x8d, 0xce, 0x77, 0x94, 0x6c, 0x55, 0x39, 0x3e, 0xa9, 0x55, 0x62, 0x76, 0xc3, 0x9b, 0xce,
+ 0xec, 0x3e, 0xdf, 0xaf, 0xfa, 0x37, 0x8b, 0x50, 0xd9, 0x1d, 0xdb, 0x66, 0x48, 0xc4, 0x29, 0x45,
+ 0x35, 0x28, 0x8f, 0x4d, 0xdf, 0x74, 0x5d, 0xe2, 0x3a, 0xc1, 0x48, 0x16, 0x37, 0x92, 0x24, 0xf4,
+ 0xee, 0xe7, 0x35, 0x63, 0xb3, 0xc8, 0x4e, 0xde, 0xf7, 0xfe, 0x75, 0x33, 0x13, 0x19, 0x74, 0x17,
+ 0x56, 0xf6, 0xc5, 0x68, 0x0d, 0xd3, 0xe2, 0x0b, 0xbb, 0xc8, 0x17, 0xb6, 0x9e, 0xb6, 0xb0, 0xc9,
+ 0x61, 0xd5, 0xe5, 0x24, 0x1b, 0x5c, 0x0a, 0x2f, 0xef, 0x27, 0x9b, 0xe8, 0x3e, 0x2c, 0x8d, 0xa8,
+ 0xe7, 0x84, 0xd4, 0x7f, 0xf9, 0x2a, 0x44, 0x48, 0x74, 0x0b, 0xae, 0xb0, 0xc5, 0x8d, 0xc6, 0xc3,
+ 0xd9, 0x3c, 0x84, 0xc8, 0xe2, 0xd5, 0x91, 0xf9, 0x5c, 0x76, 0x88, 0x19, 0x19, 0x35, 0x21, 0x4f,
+ 0x7d, 0x16, 0xa3, 0x16, 0xf8, 0x70, 0xdf, 0x7e, 0xe9, 0x70, 0x45, 0xa3, 0xcb, 0x64, 0xb0, 0x10,
+ 0x55, 0xbf, 0x01, 0xcb, 0xe7, 0x26, 0xc1, 0x42, 0xb3, 0x5e, 0x63, 0xb7, 0xaf, 0x2b, 0x0b, 0xa8,
+ 0x02, 0x45, 0xad, 0xdb, 0x19, 0xb4, 0x3b, 0xbb, 0x2c, 0xb6, 0xac, 0x40, 0x11, 0x77, 0x77, 0x76,
+ 0x9a, 0x0d, 0xed, 0x91, 0x92, 0x55, 0xeb, 0x50, 0x4e, 0x68, 0x43, 0x2b, 0x00, 0xfd, 0x41, 0xb7,
+ 0x67, 0x6c, 0xb5, 0x71, 0x7f, 0x20, 0x22, 0xd3, 0xfe, 0xa0, 0x81, 0x07, 0x92, 0x90, 0x51, 0xff,
+ 0x33, 0x1b, 0xad, 0xa8, 0x0c, 0x46, 0x9b, 0xe7, 0x83, 0xd1, 0x4b, 0x06, 0x2f, 0xc3, 0xd1, 0x59,
+ 0x23, 0x0e, 0x4a, 0xdf, 0x05, 0xe0, 0x1b, 0x87, 0xd8, 0x86, 0x19, 0xca, 0x85, 0xaf, 0xbe, 0x60,
+ 0xe4, 0x41, 0x54, 0x63, 0xc3, 0x25, 0x89, 0x6e, 0x84, 0xe8, 0x03, 0xa8, 0x58, 0x74, 0x34, 0x76,
+ 0x89, 0x14, 0x5e, 0x7c, 0xa9, 0x70, 0x39, 0xc6, 0x37, 0xc2, 0x64, 0x38, 0x9c, 0x3b, 0x1f, 0xb0,
+ 0xff, 0x7a, 0x26, 0xb2, 0x4c, 0x4a, 0x04, 0x5c, 0x81, 0xe2, 0x6e, 0xaf, 0xd5, 0x18, 0xb4, 0x3b,
+ 0x0f, 0x95, 0x0c, 0x02, 0x28, 0x70, 0x53, 0xb7, 0x94, 0x2c, 0x8b, 0xdc, 0xb5, 0xee, 0xe3, 0xde,
+ 0x8e, 0xce, 0x3d, 0x16, 0x5a, 0x03, 0x25, 0x32, 0xb6, 0xc1, 0x0d, 0xa9, 0xb7, 0x94, 0x1c, 0xba,
+ 0x0a, 0xab, 0x31, 0x55, 0x4a, 0xe6, 0xd1, 0x35, 0x40, 0x31, 0x71, 0xa6, 0xa2, 0xa0, 0xfe, 0x2a,
+ 0xac, 0x6a, 0xd4, 0x0b, 0x4d, 0xc7, 0x8b, 0xb3, 0x9a, 0x7b, 0x6c, 0xd2, 0x92, 0x64, 0x38, 0xb2,
+ 0x36, 0xd5, 0x5c, 0x3d, 0x3b, 0xdd, 0x2c, 0xc7, 0xd0, 0x76, 0x8b, 0x87, 0x67, 0xb2, 0x61, 0xb3,
+ 0xf3, 0x3b, 0x76, 0x6c, 0x6e, 0xdc, 0x7c, 0x73, 0xe9, 0xec, 0x74, 0x73, 0xb1, 0xd7, 0x6e, 0x61,
+ 0x46, 0x43, 0x5f, 0x86, 0x12, 0x79, 0xee, 0x84, 0x86, 0xc5, 0x6e, 0x35, 0x66, 0xc0, 0x3c, 0x2e,
+ 0x32, 0x82, 0x46, 0x6d, 0xa2, 0x36, 0x01, 0x7a, 0xd4, 0x0f, 0x65, 0xcf, 0xef, 0x40, 0x7e, 0x4c,
+ 0x7d, 0x5e, 0x4d, 0xb9, 0xb0, 0xc6, 0xc7, 0xe0, 0x62, 0xa3, 0x62, 0x01, 0x56, 0xbf, 0xbf, 0x08,
+ 0x30, 0x30, 0x83, 0x43, 0xa9, 0xe4, 0x01, 0x94, 0xe2, 0x7a, 0xa9, 0x2c, 0xcb, 0x5c, 0xba, 0xda,
+ 0x31, 0x18, 0xdd, 0x8f, 0x36, 0x9b, 0xc8, 0xd7, 0x52, 0xd3, 0xea, 0xa8, 0xa3, 0xb4, 0x94, 0xe7,
+ 0x7c, 0x52, 0xc6, 0x82, 0x04, 0xe2, 0xfb, 0x72, 0xe5, 0xd9, 0x4f, 0xa4, 0xf1, 0x6b, 0x41, 0x18,
+ 0x4d, 0x46, 0xfc, 0xa9, 0x85, 0xa8, 0xb9, 0x15, 0xd9, 0x5e, 0xc0, 0x33, 0x39, 0xf4, 0x21, 0x94,
+ 0xd9, 0xbc, 0x8d, 0x80, 0xf3, 0x64, 0xb0, 0x7f, 0xa1, 0xa9, 0x84, 0x06, 0x0c, 0xe3, 0x99, 0x95,
+ 0x5f, 0x05, 0x30, 0xc7, 0x63, 0xd7, 0x21, 0xb6, 0xb1, 0x37, 0xe5, 0xd1, 0x7d, 0x09, 0x97, 0x24,
+ 0xa5, 0x39, 0x65, 0xc7, 0x25, 0x62, 0x9b, 0x21, 0x8f, 0xd8, 0x5f, 0x62, 0x40, 0x89, 0x6e, 0x84,
+ 0x4d, 0x05, 0x56, 0xfc, 0x89, 0xc7, 0x0c, 0x2a, 0x47, 0xa7, 0xfe, 0x71, 0x16, 0x5e, 0xe9, 0x90,
+ 0xf0, 0x19, 0xf5, 0x0f, 0x1b, 0x61, 0x68, 0x5a, 0x07, 0x23, 0xe2, 0xc9, 0xe5, 0x4b, 0x24, 0x51,
+ 0x99, 0x73, 0x49, 0xd4, 0x3a, 0x2c, 0x99, 0xae, 0x63, 0x06, 0x44, 0x84, 0x7e, 0x25, 0x1c, 0x35,
+ 0x59, 0xaa, 0xc7, 0x12, 0x47, 0x12, 0x04, 0x44, 0x54, 0x7a, 0xd8, 0xc0, 0x23, 0x02, 0xfa, 0x2e,
+ 0x5c, 0x93, 0x41, 0x9e, 0x19, 0x77, 0xc5, 0x92, 0x98, 0xa8, 0x64, 0xac, 0xa7, 0x66, 0xb2, 0xe9,
+ 0x83, 0x93, 0x51, 0xe0, 0x8c, 0xdc, 0x1d, 0x87, 0x32, 0xa6, 0x5c, 0xb3, 0x53, 0x58, 0xd5, 0x87,
+ 0x70, 0xfd, 0x42, 0x91, 0x2f, 0x54, 0x49, 0xfa, 0xfb, 0x2c, 0x40, 0xbb, 0xd7, 0x78, 0x2c, 0x8d,
+ 0xd4, 0x82, 0xc2, 0xbe, 0x39, 0x72, 0xdc, 0xe9, 0x65, 0x1e, 0x70, 0x86, 0xaf, 0x37, 0x84, 0x39,
+ 0xb6, 0xb8, 0x0c, 0x96, 0xb2, 0x3c, 0x8f, 0x9d, 0xec, 0x79, 0x24, 0x8c, 0xf3, 0x58, 0xde, 0x62,
+ 0xc3, 0xf0, 0x4d, 0x2f, 0xde, 0xba, 0xa2, 0xc1, 0x16, 0x80, 0x85, 0x3c, 0xcf, 0xcc, 0x69, 0xe4,
+ 0xb6, 0x64, 0x13, 0x6d, 0xf3, 0x7a, 0x2d, 0xf1, 0x8f, 0x88, 0xbd, 0x9e, 0xe7, 0x46, 0x7d, 0xd9,
+ 0x78, 0xb0, 0x84, 0x0b, 0xdb, 0xc5, 0xd2, 0xd5, 0xf7, 0x79, 0xc8, 0x34, 0x63, 0x7d, 0x21, 0x1b,
+ 0xdd, 0x81, 0xe5, 0x73, 0xf3, 0x7c, 0xa1, 0x80, 0xd0, 0xee, 0x3d, 0x79, 0x47, 0xc9, 0xc9, 0x5f,
+ 0xdf, 0x50, 0x0a, 0xea, 0x5f, 0x2d, 0x0a, 0x47, 0x23, 0xad, 0x9a, 0xfe, 0x4e, 0x51, 0xe4, 0xbb,
+ 0xdb, 0xa2, 0xae, 0x74, 0x00, 0x6f, 0x5e, 0xee, 0x7f, 0x58, 0x1e, 0xc9, 0xe1, 0x38, 0x16, 0x44,
+ 0x9b, 0x50, 0x16, 0xbb, 0xd8, 0x60, 0x07, 0x8e, 0x9b, 0x75, 0x19, 0x83, 0x20, 0x31, 0x49, 0x74,
+ 0x13, 0x56, 0x78, 0xc1, 0x29, 0x38, 0x20, 0xb6, 0xc0, 0xe4, 0x38, 0x66, 0x39, 0xa6, 0x72, 0xd8,
+ 0x63, 0xa8, 0x48, 0x82, 0xc1, 0xb3, 0x81, 0x3c, 0x1f, 0xd0, 0xad, 0x97, 0x0d, 0x48, 0x88, 0xf0,
+ 0x24, 0xa1, 0x3c, 0x9e, 0x35, 0xd4, 0x5f, 0x84, 0x62, 0x34, 0x58, 0xb4, 0x0e, 0x8b, 0x03, 0xad,
+ 0xa7, 0x2c, 0x54, 0x57, 0x8f, 0x4f, 0x6a, 0xe5, 0x88, 0x3c, 0xd0, 0x7a, 0x8c, 0xb3, 0xdb, 0xea,
+ 0x29, 0x99, 0xf3, 0x9c, 0xdd, 0x56, 0x0f, 0x55, 0x21, 0xd7, 0xd7, 0x06, 0xbd, 0x28, 0x3e, 0x8b,
+ 0x58, 0x8c, 0x56, 0xcd, 0xb1, 0xf8, 0x4c, 0xdd, 0x87, 0x72, 0xa2, 0x77, 0xf4, 0x3a, 0x2c, 0xb5,
+ 0x3b, 0x0f, 0xb1, 0xde, 0xef, 0x2b, 0x0b, 0x22, 0x3d, 0x48, 0x70, 0xdb, 0xde, 0x90, 0xad, 0x1d,
+ 0x7a, 0x15, 0x72, 0xdb, 0x5d, 0x76, 0xef, 0x8b, 0xfc, 0x23, 0x81, 0xd8, 0xa6, 0x41, 0x58, 0xbd,
+ 0x2a, 0x03, 0xbf, 0xa4, 0x62, 0xf5, 0xf7, 0x32, 0x50, 0x10, 0x07, 0x2d, 0x75, 0x11, 0x1b, 0xb3,
+ 0xa4, 0x48, 0xa4, 0x8d, 0x6f, 0x5e, 0x9c, 0xe2, 0xd5, 0x65, 0x46, 0x26, 0xb6, 0x66, 0x24, 0x57,
+ 0x7d, 0x0f, 0x2a, 0x49, 0xc6, 0x17, 0xda, 0x98, 0xdf, 0x85, 0x32, 0xdb, 0xfb, 0x51, 0xaa, 0x77,
+ 0x0f, 0x0a, 0xc2, 0x59, 0xc4, 0xf7, 0xd0, 0xc5, 0xf9, 0xa6, 0x44, 0xa2, 0x07, 0xb0, 0x24, 0x72,
+ 0xd4, 0xa8, 0x96, 0xbd, 0x71, 0xf9, 0x09, 0xc3, 0x11, 0x5c, 0xfd, 0x10, 0x72, 0x3d, 0x42, 0x7c,
+ 0x66, 0x7b, 0x8f, 0xda, 0x64, 0x76, 0x75, 0xcb, 0xf4, 0xda, 0x26, 0xed, 0x16, 0x4b, 0xaf, 0x6d,
+ 0xd2, 0xb6, 0xe3, 0x7a, 0x5c, 0x36, 0x51, 0x8f, 0x1b, 0x40, 0xe5, 0x29, 0x71, 0x86, 0x07, 0x21,
+ 0xb1, 0xb9, 0xa2, 0xb7, 0x21, 0x37, 0x26, 0xf1, 0xe0, 0xd7, 0x53, 0x37, 0x1f, 0x21, 0x3e, 0xe6,
+ 0x28, 0xe6, 0x63, 0x9e, 0x71, 0x69, 0xf9, 0x00, 0x23, 0x5b, 0xea, 0xdf, 0x65, 0x61, 0xa5, 0x1d,
+ 0x04, 0x13, 0xd3, 0xb3, 0xa2, 0xa8, 0xee, 0x9b, 0xe7, 0xa3, 0xba, 0xd4, 0x97, 0xaa, 0xf3, 0x22,
+ 0xe7, 0xcb, 0x8c, 0xf2, 0x66, 0xcd, 0xc6, 0x37, 0xab, 0xfa, 0x1f, 0x99, 0xa8, 0x96, 0x78, 0x33,
+ 0xe1, 0x0a, 0x44, 0x8e, 0x98, 0xd4, 0x44, 0x76, 0xbd, 0x43, 0x8f, 0x3e, 0xf3, 0x58, 0xf6, 0x8a,
+ 0xf5, 0x8e, 0xfe, 0x54, 0xc9, 0x88, 0xed, 0x79, 0x0e, 0x84, 0x89, 0x47, 0x9e, 0x31, 0x4d, 0x3d,
+ 0xbd, 0xd3, 0x62, 0x51, 0x58, 0x36, 0x45, 0x53, 0x8f, 0x78, 0xb6, 0xe3, 0x0d, 0xd1, 0xeb, 0x50,
+ 0x68, 0xf7, 0xfb, 0xbb, 0x3c, 0x85, 0x7c, 0xe5, 0xf8, 0xa4, 0x76, 0xf5, 0x1c, 0x8a, 0xd7, 0x91,
+ 0x6d, 0x06, 0x62, 0x29, 0x10, 0x8b, 0xcf, 0x52, 0x40, 0x2c, 0xb6, 0x16, 0x20, 0xdc, 0x1d, 0x34,
+ 0x06, 0xba, 0x92, 0x4f, 0x01, 0x61, 0xca, 0xfe, 0xca, 0xe3, 0xf6, 0xcf, 0x59, 0x50, 0x1a, 0x96,
+ 0x45, 0xc6, 0x21, 0xe3, 0xcb, 0xac, 0x73, 0x00, 0xc5, 0x31, 0xfb, 0xe5, 0x90, 0x28, 0x82, 0x7a,
+ 0x90, 0xfa, 0xd6, 0x3a, 0x27, 0x57, 0xc7, 0xd4, 0x25, 0x0d, 0x7b, 0xe4, 0x04, 0x81, 0x43, 0x3d,
+ 0x41, 0xc3, 0xb1, 0xa6, 0xea, 0x7f, 0x65, 0xe0, 0x6a, 0x0a, 0x02, 0xdd, 0x81, 0x9c, 0x4f, 0xdd,
+ 0x68, 0x0d, 0x6f, 0x5c, 0x54, 0x26, 0x66, 0xa2, 0x98, 0x23, 0xd1, 0x06, 0x80, 0x39, 0x09, 0xa9,
+ 0xc9, 0xfb, 0x17, 0xc5, 0x35, 0x9c, 0xa0, 0xa0, 0xa7, 0x50, 0x08, 0x88, 0xe5, 0x93, 0x28, 0xce,
+ 0xfe, 0xf0, 0x27, 0x1d, 0x7d, 0xbd, 0xcf, 0xd5, 0x60, 0xa9, 0xae, 0x5a, 0x87, 0x82, 0xa0, 0xb0,
+ 0x6d, 0x6f, 0x9b, 0xa1, 0x29, 0x1f, 0x11, 0xf8, 0x6f, 0xb6, 0x9b, 0x4c, 0x77, 0x18, 0xed, 0x26,
+ 0xd3, 0x1d, 0xaa, 0x7f, 0x99, 0x05, 0xd0, 0x9f, 0x87, 0xc4, 0xf7, 0x4c, 0x57, 0x6b, 0x20, 0x3d,
+ 0x71, 0x33, 0x88, 0xd9, 0x7e, 0x35, 0xf5, 0xdd, 0x24, 0x96, 0xa8, 0x6b, 0x8d, 0x94, 0xbb, 0xe1,
+ 0x3a, 0x2c, 0x4e, 0x7c, 0xf9, 0x7c, 0x2e, 0x62, 0xe4, 0x5d, 0xbc, 0x83, 0x19, 0x0d, 0xe9, 0xc9,
+ 0x5a, 0xce, 0x85, 0x8f, 0xe4, 0x89, 0x0e, 0x52, 0x5d, 0x17, 0x3b, 0xf9, 0x96, 0x69, 0x58, 0x44,
+ 0xde, 0x2a, 0x15, 0x71, 0xf2, 0xb5, 0x86, 0x46, 0xfc, 0x10, 0x17, 0x2c, 0x93, 0xfd, 0xff, 0xa9,
+ 0xfc, 0xdb, 0xdb, 0x00, 0xb3, 0xa9, 0xa1, 0x0d, 0xc8, 0x6b, 0x5b, 0xfd, 0xfe, 0x8e, 0xb2, 0x20,
+ 0x1c, 0xf8, 0x8c, 0xc5, 0xc9, 0xea, 0x9f, 0x65, 0xa1, 0xa8, 0x35, 0xe4, 0x95, 0xab, 0x81, 0xc2,
+ 0xbd, 0x12, 0x7f, 0x7a, 0x21, 0xcf, 0xc7, 0x8e, 0x3f, 0x95, 0x8e, 0xe5, 0x92, 0x84, 0x77, 0x85,
+ 0x89, 0xb0, 0x51, 0xeb, 0x5c, 0x00, 0x61, 0xa8, 0x10, 0x69, 0x04, 0xc3, 0x32, 0x23, 0x1f, 0xbf,
+ 0x71, 0xb9, 0xb1, 0x44, 0xea, 0x32, 0x6b, 0x07, 0xb8, 0x1c, 0x29, 0xd1, 0xcc, 0x00, 0xbd, 0x0b,
+ 0xab, 0x81, 0x33, 0xf4, 0x1c, 0x6f, 0x68, 0x44, 0xc6, 0xe3, 0xef, 0x40, 0xcd, 0x2b, 0x67, 0xa7,
+ 0x9b, 0xcb, 0x7d, 0xc1, 0x92, 0x36, 0x5c, 0x96, 0x48, 0x8d, 0x9b, 0x12, 0x7d, 0x03, 0x56, 0x12,
+ 0xa2, 0xcc, 0x8a, 0xc2, 0xec, 0xbc, 0x62, 0x1c, 0x4b, 0x3e, 0x22, 0x53, 0x5c, 0x89, 0x05, 0x1f,
+ 0x11, 0x5e, 0x9b, 0xd9, 0xa7, 0xbe, 0x45, 0x0c, 0x9f, 0x9f, 0x69, 0x7e, 0xbb, 0xe7, 0x70, 0x99,
+ 0xd3, 0xc4, 0x31, 0x57, 0x9f, 0xc0, 0xd5, 0xae, 0x6f, 0x1d, 0x90, 0x20, 0x14, 0xa6, 0x90, 0x56,
+ 0xfc, 0x10, 0x6e, 0x84, 0x66, 0x70, 0x68, 0x1c, 0x38, 0x41, 0x48, 0xfd, 0xa9, 0xe1, 0x93, 0x90,
+ 0x78, 0x8c, 0x6f, 0xf0, 0xa7, 0x65, 0x59, 0x4e, 0xbc, 0xce, 0x30, 0xdb, 0x02, 0x82, 0x23, 0xc4,
+ 0x0e, 0x03, 0xa8, 0x6d, 0xa8, 0xb0, 0x14, 0x46, 0x16, 0xd5, 0xd8, 0xec, 0xc1, 0xa5, 0x43, 0xe3,
+ 0x73, 0x5f, 0x53, 0x25, 0x97, 0x0e, 0xc5, 0x4f, 0xf5, 0xdb, 0xa0, 0xb4, 0x9c, 0x60, 0x6c, 0x86,
+ 0xd6, 0x41, 0x54, 0x27, 0x45, 0x2d, 0x50, 0x0e, 0x88, 0xe9, 0x87, 0x7b, 0xc4, 0x0c, 0x8d, 0x31,
+ 0xf1, 0x1d, 0x6a, 0xbf, 0x7c, 0x95, 0x57, 0x63, 0x91, 0x1e, 0x97, 0x50, 0xff, 0x27, 0x03, 0x80,
+ 0xcd, 0xfd, 0x28, 0x5a, 0xfb, 0x1a, 0x5c, 0x09, 0x3c, 0x73, 0x1c, 0x1c, 0xd0, 0xd0, 0x70, 0xbc,
+ 0x90, 0xf8, 0x47, 0xa6, 0x2b, 0x8b, 0x3b, 0x4a, 0xc4, 0x68, 0x4b, 0x3a, 0x7a, 0x1b, 0xd0, 0x21,
+ 0x21, 0x63, 0x83, 0xba, 0xb6, 0x11, 0x31, 0xc5, 0xc3, 0x77, 0x0e, 0x2b, 0x8c, 0xd3, 0x75, 0xed,
+ 0x7e, 0x44, 0x47, 0x4d, 0xd8, 0x60, 0xd3, 0x27, 0x5e, 0xe8, 0x3b, 0x24, 0x30, 0xf6, 0xa9, 0x6f,
+ 0x04, 0x2e, 0x7d, 0x66, 0xec, 0x53, 0xd7, 0xa5, 0xcf, 0x88, 0x1f, 0xd5, 0xcd, 0xaa, 0x2e, 0x1d,
+ 0xea, 0x02, 0xb4, 0x45, 0xfd, 0xbe, 0x4b, 0x9f, 0x6d, 0x45, 0x08, 0x16, 0xd2, 0xcd, 0xe6, 0x1c,
+ 0x3a, 0xd6, 0x61, 0x14, 0xd2, 0xc5, 0xd4, 0x81, 0x63, 0x1d, 0xa2, 0xd7, 0x61, 0x99, 0xb8, 0x84,
+ 0x97, 0x4f, 0x04, 0x2a, 0xcf, 0x51, 0x95, 0x88, 0xc8, 0x40, 0xea, 0x47, 0xa0, 0xe8, 0x9e, 0xe5,
+ 0x4f, 0xc7, 0x89, 0x35, 0x7f, 0x1b, 0x10, 0x73, 0x92, 0x86, 0x4b, 0xad, 0x43, 0x63, 0x64, 0x7a,
+ 0xe6, 0x90, 0x8d, 0x4b, 0xbc, 0x38, 0x2a, 0x8c, 0xb3, 0x43, 0xad, 0xc3, 0xc7, 0x92, 0xae, 0xbe,
+ 0x0b, 0xd0, 0x1f, 0xfb, 0xc4, 0xb4, 0xbb, 0x2c, 0x9a, 0x60, 0xa6, 0xe3, 0x2d, 0xc3, 0x96, 0xef,
+ 0xb9, 0xd4, 0x97, 0x47, 0x5d, 0x11, 0x8c, 0x56, 0x4c, 0x57, 0x7f, 0x1e, 0xae, 0xf6, 0x5c, 0xd3,
+ 0xe2, 0xdf, 0x36, 0xf4, 0xe2, 0x27, 0x34, 0xf4, 0x00, 0x0a, 0x02, 0x2a, 0x57, 0x32, 0xf5, 0xb8,
+ 0xcd, 0xfa, 0xdc, 0x5e, 0xc0, 0x12, 0xdf, 0xac, 0x00, 0xcc, 0xf4, 0xa8, 0xff, 0x98, 0x81, 0x52,
+ 0xac, 0x1f, 0xd5, 0xc4, 0xcb, 0x50, 0xe8, 0x9b, 0x8e, 0x27, 0x33, 0xfe, 0x12, 0x4e, 0x92, 0x50,
+ 0x1b, 0xca, 0xe3, 0x58, 0xfa, 0xd2, 0x78, 0x2e, 0x65, 0xd4, 0x38, 0x29, 0x8b, 0xde, 0x83, 0x52,
+ 0xf4, 0x80, 0x1e, 0x79, 0xd8, 0xcb, 0xdf, 0xdb, 0x67, 0xf0, 0xa8, 0x90, 0xea, 0x93, 0xb1, 0xeb,
+ 0x30, 0x9f, 0x93, 0x8b, 0x0b, 0xa9, 0x58, 0x92, 0xd4, 0x6f, 0x02, 0x7c, 0x8b, 0x3a, 0xde, 0x80,
+ 0x1e, 0x12, 0x8f, 0xbf, 0x0a, 0xb3, 0x94, 0x92, 0x44, 0x86, 0x96, 0x2d, 0x5e, 0x29, 0x10, 0xab,
+ 0x14, 0x3f, 0x8e, 0x8a, 0xa6, 0xfa, 0x17, 0x59, 0x28, 0x60, 0x4a, 0x43, 0xad, 0x81, 0x6a, 0x50,
+ 0x90, 0xae, 0x84, 0x5f, 0x51, 0xcd, 0xd2, 0xd9, 0xe9, 0x66, 0x5e, 0xf8, 0x90, 0xbc, 0xc5, 0x9d,
+ 0x47, 0xc2, 0xc9, 0x67, 0x2f, 0x72, 0xf2, 0xe8, 0x0e, 0x54, 0x24, 0xc8, 0x38, 0x30, 0x83, 0x03,
+ 0x91, 0xdf, 0x35, 0x57, 0xce, 0x4e, 0x37, 0x41, 0x20, 0xb7, 0xcd, 0xe0, 0x00, 0x83, 0x40, 0xb3,
+ 0xdf, 0x48, 0x87, 0xf2, 0xc7, 0xd4, 0xf1, 0x8c, 0x90, 0x4f, 0x42, 0xd6, 0x22, 0x53, 0x97, 0x7a,
+ 0x36, 0x55, 0xf9, 0x01, 0x05, 0x7c, 0x3c, 0x9b, 0xbc, 0x0e, 0xcb, 0x3e, 0xa5, 0xa1, 0xf0, 0x6c,
+ 0x0e, 0xf5, 0x64, 0x99, 0xa3, 0x96, 0x5a, 0xfd, 0xa6, 0x34, 0xc4, 0x12, 0x87, 0x2b, 0x7e, 0xa2,
+ 0x85, 0xee, 0xc0, 0x9a, 0x6b, 0x06, 0xa1, 0xc1, 0x5d, 0xa2, 0x3d, 0xd3, 0x56, 0xe0, 0xc6, 0x47,
+ 0x8c, 0xb7, 0xc5, 0x59, 0x91, 0x84, 0xfa, 0x0f, 0x19, 0x28, 0xb3, 0xc9, 0x38, 0xfb, 0x8e, 0xc5,
+ 0xe2, 0xc0, 0x2f, 0x1e, 0x9e, 0x5c, 0x87, 0x45, 0x2b, 0xf0, 0xa5, 0x51, 0xf9, 0xfd, 0xac, 0xf5,
+ 0x31, 0x66, 0x34, 0xf4, 0x11, 0x14, 0x64, 0xb9, 0x45, 0x44, 0x26, 0xea, 0xcb, 0x23, 0x56, 0x69,
+ 0x1b, 0x29, 0xc7, 0xb7, 0xfb, 0x6c, 0x74, 0xe2, 0x9e, 0xc0, 0x49, 0x12, 0xba, 0x06, 0x59, 0x4b,
+ 0x98, 0x4b, 0x7e, 0xa1, 0xa3, 0x75, 0x70, 0xd6, 0xf2, 0xd4, 0x1f, 0x65, 0x60, 0x79, 0xe6, 0x13,
+ 0xd8, 0x0e, 0xb8, 0x01, 0xa5, 0x60, 0xb2, 0x17, 0x4c, 0x83, 0x90, 0x8c, 0xa2, 0x17, 0xef, 0x98,
+ 0x80, 0xda, 0x50, 0x32, 0xdd, 0x21, 0xf5, 0x9d, 0xf0, 0x60, 0x24, 0x13, 0xd9, 0xf4, 0x68, 0x22,
+ 0xa9, 0xb3, 0xde, 0x88, 0x44, 0xf0, 0x4c, 0x3a, 0x0a, 0x0d, 0xc4, 0x67, 0x11, 0x3c, 0x34, 0x78,
+ 0x0d, 0x2a, 0xae, 0x39, 0xe2, 0xf5, 0xa7, 0xd0, 0x19, 0x91, 0xe8, 0x30, 0x48, 0xda, 0xc0, 0x19,
+ 0x11, 0x55, 0x85, 0x52, 0xac, 0x0c, 0xad, 0x42, 0xb9, 0xa1, 0xf7, 0x8d, 0xbb, 0xf7, 0x1e, 0x18,
+ 0x0f, 0xb5, 0xc7, 0xca, 0x82, 0x0c, 0x5f, 0xff, 0x34, 0x03, 0xcb, 0xd2, 0x63, 0xc9, 0x94, 0xe0,
+ 0x75, 0x58, 0xf2, 0xcd, 0xfd, 0x30, 0x4a, 0x5a, 0x72, 0x62, 0x57, 0xb3, 0x4b, 0x80, 0x25, 0x2d,
+ 0x8c, 0x95, 0x9e, 0xb4, 0x24, 0xbe, 0xc1, 0x58, 0xbc, 0xf4, 0x1b, 0x8c, 0xdc, 0xff, 0xcb, 0x37,
+ 0x18, 0xea, 0xaf, 0x01, 0x6c, 0x39, 0x2e, 0x19, 0x88, 0x52, 0x55, 0x5a, 0x0a, 0xca, 0xc2, 0x3c,
+ 0x59, 0x0a, 0x8d, 0xc2, 0xbc, 0x76, 0x0b, 0x33, 0x1a, 0x63, 0x0d, 0x1d, 0x5b, 0x1e, 0x46, 0xce,
+ 0x7a, 0xc8, 0x58, 0x43, 0xc7, 0x8e, 0x9f, 0xfd, 0x72, 0x2f, 0x79, 0xf6, 0x53, 0x57, 0x61, 0x19,
+ 0x8b, 0x1a, 0x9b, 0x18, 0x83, 0x7a, 0x92, 0x81, 0x55, 0x19, 0xef, 0xc6, 0x2e, 0xfb, 0xab, 0x50,
+ 0x12, 0xa1, 0xef, 0x2c, 0x09, 0xe4, 0x1f, 0x22, 0x08, 0x5c, 0xbb, 0x85, 0x8b, 0x82, 0xdd, 0xb6,
+ 0xd1, 0x26, 0x94, 0x25, 0x34, 0xf1, 0x79, 0x17, 0x08, 0x52, 0x87, 0xcd, 0xe7, 0x1d, 0xc8, 0xed,
+ 0x3b, 0x2e, 0x91, 0x3b, 0x3f, 0xd5, 0x23, 0xcc, 0x2c, 0xb2, 0xbd, 0x80, 0x39, 0xba, 0x59, 0x8c,
+ 0x8a, 0x7b, 0xea, 0xbf, 0x64, 0x78, 0x89, 0x99, 0xa5, 0xaa, 0xc9, 0xf1, 0x89, 0xac, 0x75, 0x6e,
+ 0x7c, 0x02, 0xc7, 0xc6, 0x27, 0xd8, 0x62, 0x7c, 0x12, 0x9a, 0x1c, 0x9f, 0x20, 0xfd, 0xe4, 0xe3,
+ 0x43, 0x1f, 0xc0, 0x92, 0x2c, 0x55, 0x4a, 0x57, 0xf7, 0x5a, 0xea, 0xce, 0x48, 0x5a, 0x7a, 0x7b,
+ 0x01, 0x47, 0x32, 0x89, 0xe9, 0xed, 0xc0, 0xb5, 0xa6, 0x6b, 0x5a, 0x87, 0xae, 0x13, 0x84, 0xc4,
+ 0x4e, 0x7a, 0xa0, 0x7b, 0x50, 0x38, 0x17, 0xe7, 0x5e, 0x56, 0x44, 0x95, 0x48, 0xf5, 0xdf, 0x33,
+ 0x50, 0xd9, 0x26, 0xa6, 0x1b, 0x1e, 0xcc, 0x2a, 0x55, 0x21, 0x09, 0x42, 0x79, 0x3f, 0xf2, 0xdf,
+ 0xe8, 0xeb, 0x50, 0x8c, 0xc3, 0xa0, 0x97, 0x3e, 0x07, 0xc6, 0x50, 0x74, 0x1f, 0x96, 0xd8, 0xd8,
+ 0xe9, 0x24, 0xca, 0xaf, 0x2e, 0x7b, 0x69, 0x92, 0x48, 0x76, 0x69, 0xf9, 0x84, 0xc7, 0x3d, 0xdc,
+ 0x4e, 0x79, 0x1c, 0x35, 0xd1, 0xcf, 0x42, 0x85, 0x3f, 0x94, 0x44, 0x61, 0x5e, 0xfe, 0x65, 0x3a,
+ 0xcb, 0xe2, 0xad, 0x53, 0x84, 0x78, 0x7f, 0x94, 0x85, 0xb5, 0xc7, 0xe6, 0x74, 0x8f, 0x48, 0x37,
+ 0x44, 0x6c, 0x4c, 0x2c, 0xea, 0xdb, 0xa8, 0x97, 0x74, 0x5f, 0x97, 0x3c, 0x9d, 0xa6, 0x09, 0xa7,
+ 0x7b, 0xb1, 0x28, 0xe7, 0xcb, 0x26, 0x72, 0xbe, 0x35, 0xc8, 0x7b, 0xd4, 0xb3, 0x88, 0xf4, 0x6d,
+ 0xa2, 0xa1, 0xfe, 0x4e, 0x26, 0xe9, 0xbb, 0xaa, 0xf1, 0xb3, 0x26, 0x2f, 0x7a, 0x75, 0x68, 0x18,
+ 0x77, 0x87, 0x3e, 0x82, 0x6a, 0x5f, 0xd7, 0xb0, 0x3e, 0x68, 0x76, 0xbf, 0x6d, 0xf4, 0x1b, 0x3b,
+ 0xfd, 0xc6, 0xbd, 0x3b, 0x46, 0xaf, 0xbb, 0xf3, 0x9d, 0xbb, 0xf7, 0xef, 0x7c, 0x5d, 0xc9, 0x54,
+ 0x6b, 0xc7, 0x27, 0xb5, 0x1b, 0x9d, 0x86, 0xb6, 0x23, 0x4e, 0xdc, 0x1e, 0x7d, 0xde, 0x37, 0xdd,
+ 0xc0, 0xbc, 0x77, 0xa7, 0x47, 0xdd, 0x29, 0xc3, 0xa0, 0xaf, 0x01, 0xda, 0xd2, 0x71, 0x47, 0x1f,
+ 0x18, 0x91, 0x83, 0xd4, 0x9a, 0x9a, 0x92, 0x15, 0x99, 0xd4, 0x16, 0xf1, 0x3d, 0x12, 0x36, 0xf4,
+ 0xfe, 0xdd, 0x7b, 0x0f, 0xb4, 0xa6, 0xc6, 0xce, 0x78, 0x25, 0x79, 0x5b, 0x26, 0x83, 0x80, 0xcc,
+ 0x85, 0x41, 0xc0, 0x2c, 0x96, 0xc8, 0x5e, 0x10, 0x4b, 0x6c, 0xc1, 0x9a, 0xe5, 0xd3, 0x20, 0x30,
+ 0x58, 0x7a, 0x42, 0xec, 0xb9, 0x04, 0xe8, 0x4b, 0x67, 0xa7, 0x9b, 0x57, 0x34, 0xc6, 0xef, 0x73,
+ 0xb6, 0x54, 0x7f, 0xc5, 0x4a, 0x90, 0x78, 0x4f, 0xea, 0x0f, 0x16, 0x59, 0xa4, 0xe7, 0x1c, 0x39,
+ 0x2e, 0x19, 0x92, 0x00, 0x3d, 0x81, 0x55, 0xcb, 0x27, 0x36, 0xcb, 0x3b, 0x4c, 0x37, 0xf9, 0x4d,
+ 0xf2, 0xcf, 0xa4, 0x06, 0x5d, 0xb1, 0x60, 0x5d, 0x8b, 0xa5, 0xfa, 0x63, 0x62, 0xe1, 0x15, 0xeb,
+ 0x5c, 0x1b, 0x7d, 0x0c, 0xab, 0x01, 0x71, 0x1d, 0x6f, 0xf2, 0xdc, 0xb0, 0xa8, 0x17, 0x92, 0xe7,
+ 0xd1, 0x73, 0xde, 0xcb, 0xf4, 0xf6, 0xf5, 0x1d, 0x26, 0xa5, 0x09, 0xa1, 0x26, 0x3a, 0x3b, 0xdd,
+ 0x5c, 0x39, 0x4f, 0xc3, 0x2b, 0x52, 0xb3, 0x6c, 0x57, 0x0f, 0x60, 0xe5, 0xfc, 0x68, 0xd0, 0x9a,
+ 0x74, 0x34, 0xdc, 0x5f, 0xc5, 0x8e, 0xe4, 0x06, 0x14, 0x7d, 0x32, 0x74, 0x82, 0xd0, 0x17, 0x66,
+ 0x66, 0x9c, 0x98, 0x82, 0xd6, 0xa1, 0xa0, 0xcd, 0xbe, 0x38, 0x61, 0x3c, 0xd9, 0x66, 0x1e, 0x44,
+ 0x7c, 0x4c, 0x56, 0xfd, 0x15, 0x98, 0x1b, 0x0b, 0x3b, 0x74, 0xb6, 0x13, 0x98, 0x7b, 0xb2, 0xb3,
+ 0x22, 0x8e, 0x9a, 0x6c, 0x2f, 0x4f, 0x82, 0x38, 0x80, 0xe4, 0xbf, 0x19, 0x8d, 0x47, 0x3a, 0xf2,
+ 0xd3, 0x3a, 0x1e, 0xcb, 0x44, 0x5f, 0xf0, 0xe6, 0x12, 0x5f, 0xf0, 0xae, 0x41, 0xde, 0x25, 0x47,
+ 0xc4, 0x15, 0x31, 0x06, 0x16, 0x8d, 0x5b, 0x77, 0xa0, 0x12, 0x7d, 0x2a, 0xca, 0xbf, 0x19, 0x29,
+ 0x42, 0x6e, 0xd0, 0xe8, 0x3f, 0x52, 0x16, 0x10, 0x40, 0x41, 0xec, 0x71, 0xf1, 0x08, 0xa9, 0x75,
+ 0x3b, 0x5b, 0xed, 0x87, 0x4a, 0xf6, 0xd6, 0xef, 0xe6, 0xa0, 0x14, 0x3f, 0x83, 0xb1, 0x3b, 0xad,
+ 0xa3, 0x3f, 0x8d, 0x0e, 0x49, 0x4c, 0xef, 0x90, 0x67, 0xe8, 0xb5, 0x59, 0x01, 0xed, 0x23, 0xf1,
+ 0xee, 0x1f, 0xb3, 0xa3, 0xe2, 0xd9, 0x1b, 0x50, 0x6c, 0xf4, 0xfb, 0xed, 0x87, 0x1d, 0xbd, 0xa5,
+ 0x7c, 0x9a, 0xa9, 0x7e, 0xe9, 0xf8, 0xa4, 0x76, 0x25, 0x06, 0x35, 0x02, 0xb1, 0x2d, 0x39, 0x4a,
+ 0xd3, 0xf4, 0xde, 0x40, 0x6f, 0x29, 0x9f, 0x64, 0xe7, 0x51, 0xbc, 0x20, 0xc4, 0xbf, 0x67, 0x2a,
+ 0xf5, 0xb0, 0xde, 0x6b, 0x60, 0xd6, 0xe1, 0xa7, 0x59, 0x51, 0xd7, 0x9b, 0xf5, 0xe8, 0x93, 0xb1,
+ 0xe9, 0xb3, 0x3e, 0x37, 0xa2, 0xcf, 0x0a, 0x3f, 0x59, 0x14, 0x1f, 0xb6, 0xcc, 0xde, 0xf4, 0x88,
+ 0x69, 0x4f, 0x59, 0x6f, 0xfc, 0x31, 0x95, 0xab, 0x59, 0x9c, 0xeb, 0xad, 0xcf, 0x7c, 0x18, 0xd3,
+ 0xa2, 0xc2, 0x12, 0xde, 0xed, 0x74, 0x18, 0xe8, 0x93, 0xdc, 0xdc, 0xec, 0xf0, 0xc4, 0x63, 0xc9,
+ 0x3e, 0xba, 0x09, 0xc5, 0xe8, 0xad, 0x55, 0xf9, 0x34, 0x37, 0x37, 0x20, 0x2d, 0x7a, 0x28, 0xe6,
+ 0x1d, 0x6e, 0xef, 0x0e, 0xf8, 0x57, 0x8f, 0x9f, 0xe4, 0xe7, 0x3b, 0x3c, 0x98, 0x84, 0x36, 0x7d,
+ 0xe6, 0xb1, 0xd3, 0x2c, 0x4b, 0x88, 0x9f, 0xe6, 0x85, 0x97, 0x88, 0x31, 0xb2, 0x7e, 0xf8, 0x06,
+ 0x14, 0xb1, 0xfe, 0x2d, 0xf1, 0x81, 0xe4, 0x27, 0x85, 0x39, 0x3d, 0x98, 0x7c, 0x4c, 0x2c, 0xd6,
+ 0x5b, 0x0d, 0x0a, 0x58, 0x7f, 0xdc, 0x7d, 0xa2, 0x2b, 0xbf, 0x5f, 0x98, 0xd3, 0x83, 0xc9, 0x88,
+ 0xf2, 0x0f, 0xbe, 0x8a, 0x5d, 0xdc, 0xdb, 0x6e, 0xf0, 0x45, 0x99, 0xd7, 0xd3, 0xf5, 0xc7, 0x07,
+ 0xa6, 0x47, 0xec, 0xd9, 0xc7, 0x3d, 0x31, 0xeb, 0xd6, 0x2f, 0x40, 0x31, 0x8a, 0xa9, 0xd1, 0x06,
+ 0x14, 0x9e, 0x76, 0xf1, 0x23, 0x1d, 0x2b, 0x0b, 0xc2, 0xca, 0x11, 0xe7, 0xa9, 0xc8, 0x86, 0x6a,
+ 0xb0, 0xf4, 0xb8, 0xd1, 0x69, 0x3c, 0xd4, 0x71, 0x54, 0xff, 0x8f, 0x00, 0x32, 0x30, 0xac, 0x2a,
+ 0xb2, 0x83, 0x58, 0x67, 0x73, 0xfd, 0x87, 0x9f, 0x6d, 0x2c, 0xfc, 0xf8, 0xb3, 0x8d, 0x85, 0x4f,
+ 0xce, 0x36, 0x32, 0x3f, 0x3c, 0xdb, 0xc8, 0xfc, 0xed, 0xd9, 0x46, 0xe6, 0xdf, 0xce, 0x36, 0x32,
+ 0x7b, 0x05, 0x7e, 0xdd, 0xdc, 0xff, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x04, 0xe2, 0x9a, 0x0a,
+ 0x7b, 0x33, 0x00, 0x00,
}
diff --git a/vendor/github.com/docker/swarmkit/api/types.proto b/vendor/github.com/docker/swarmkit/api/types.proto
index e1567d7..04e2158 100644
--- a/vendor/github.com/docker/swarmkit/api/types.proto
+++ b/vendor/github.com/docker/swarmkit/api/types.proto
@@ -246,6 +246,8 @@
// Propagation mode of mount.
Propagation propagation = 1;
+ // allows non-recursive bind-mount, i.e. mount(2) with "bind" rather than "rbind".
+ bool nonrecursive = 2 [(gogoproto.customname) = "NonRecursive"];
}
// VolumeOptions contains parameters for mounting the volume.
@@ -976,6 +978,12 @@
uint32 mode = 4 [(gogoproto.customtype) = "os.FileMode", (gogoproto.nullable) = false];
}
+// RuntimeTarget represents that this secret is _not_ mounted into the
+// container, but is used for some other purpose by the container runtime.
+//
+// Currently, RuntimeTarget has no fields; it's just a placeholder.
+message RuntimeTarget {}
+
// SecretReference is the linkage between a service and a secret that it uses.
message SecretReference {
// SecretID represents the ID of the specific Secret that we're
@@ -1003,9 +1011,10 @@
// lookup/display purposes. The config in the reference will be identified by its ID.
string config_name = 2;
- // Target specifies how this secret should be exposed to the task.
+ // Target specifies how this config should be exposed to the task.
oneof target {
FileTarget file = 3;
+ RuntimeTarget runtime = 4;
}
}
@@ -1075,6 +1084,10 @@
oneof source {
string file = 1;
string registry = 2;
+
+ // Config represents a Config ID from which to get the CredentialSpec.
+ // The Config MUST be included in the SecretReferences with a RuntimeTarget
+ string Config = 3;
}
}
CredentialSpec credential_spec = 1;
diff --git a/vendor/github.com/docker/swarmkit/manager/controlapi/service.go b/vendor/github.com/docker/swarmkit/manager/controlapi/service.go
index 06141d2..a3ee2c7 100644
--- a/vendor/github.com/docker/swarmkit/manager/controlapi/service.go
+++ b/vendor/github.com/docker/swarmkit/manager/controlapi/service.go
@@ -682,7 +682,10 @@
})
switch err {
case store.ErrNameConflict:
- return nil, status.Errorf(codes.AlreadyExists, "service %s already exists", request.Spec.Annotations.Name)
+ // Enhance the name-confict error to include the service name. The original
+ // `ErrNameConflict` error-message is included for backward-compatibility
+ // with older consumers of the API performing string-matching.
+ return nil, status.Errorf(codes.AlreadyExists, "%s: service %s already exists", err.Error(), request.Spec.Annotations.Name)
case nil:
return &api.CreateServiceResponse{Service: service}, nil
default:
diff --git a/vendor/github.com/docker/swarmkit/manager/manager.go b/vendor/github.com/docker/swarmkit/manager/manager.go
index 241eee9..b66a8db 100644
--- a/vendor/github.com/docker/swarmkit/manager/manager.go
+++ b/vendor/github.com/docker/swarmkit/manager/manager.go
@@ -1010,10 +1010,16 @@
cluster = store.GetCluster(tx, clusterID)
})
if cluster.DefaultAddressPool != nil {
+ if m.config.NetworkConfig == nil {
+ m.config.NetworkConfig = &cnmallocator.NetworkConfig{}
+ }
m.config.NetworkConfig.DefaultAddrPool = append(m.config.NetworkConfig.DefaultAddrPool, cluster.DefaultAddressPool...)
m.config.NetworkConfig.SubnetSize = cluster.SubnetSize
}
if cluster.VXLANUDPPort != 0 {
+ if m.config.NetworkConfig == nil {
+ m.config.NetworkConfig = &cnmallocator.NetworkConfig{}
+ }
m.config.NetworkConfig.VXLANUDPPort = cluster.VXLANUDPPort
}
}
diff --git a/vendor/github.com/docker/swarmkit/manager/orchestrator/restart/restart.go b/vendor/github.com/docker/swarmkit/manager/orchestrator/restart/restart.go
index c034183..ed7bf3e 100644
--- a/vendor/github.com/docker/swarmkit/manager/orchestrator/restart/restart.go
+++ b/vendor/github.com/docker/swarmkit/manager/orchestrator/restart/restart.go
@@ -194,10 +194,18 @@
// restart policy.
func (r *Supervisor) shouldRestart(ctx context.Context, t *api.Task, service *api.Service) bool {
// TODO(aluzzardi): This function should not depend on `service`.
- condition := orchestrator.RestartCondition(t)
-
- if condition != api.RestartOnAny &&
- (condition != api.RestartOnFailure || t.Status.State == api.TaskStateCompleted) {
+ // There are 3 possible restart policies.
+ switch orchestrator.RestartCondition(t) {
+ case api.RestartOnAny:
+ // we will be restarting, we just need to do a few more checks
+ case api.RestartOnFailure:
+ // we won't restart if the task is in TaskStateCompleted, as this is a
+ // not a failed state -- it indicates that the task exited with 0
+ if t.Status.State == api.TaskStateCompleted {
+ return false
+ }
+ case api.RestartOnNone:
+ // RestartOnNone means we just don't restart, ever
return false
}
diff --git a/vendor/github.com/docker/swarmkit/manager/orchestrator/update/updater.go b/vendor/github.com/docker/swarmkit/manager/orchestrator/update/updater.go
index 7c977db..e5fe3fe 100644
--- a/vendor/github.com/docker/swarmkit/manager/orchestrator/update/updater.go
+++ b/vendor/github.com/docker/swarmkit/manager/orchestrator/update/updater.go
@@ -141,10 +141,17 @@
}
// Abort immediately if all tasks are clean.
if len(dirtySlots) == 0 {
- if service.UpdateStatus != nil &&
- (service.UpdateStatus.State == api.UpdateStatus_UPDATING ||
- service.UpdateStatus.State == api.UpdateStatus_ROLLBACK_STARTED) {
- u.completeUpdate(ctx, service.ID)
+ if service.UpdateStatus == nil {
+ if u.annotationsUpdated(service) {
+ // Annotation-only update; mark the update as completed
+ u.completeUpdate(ctx, service.ID, true)
+ }
+ return
+ }
+ if service.UpdateStatus.State == api.UpdateStatus_UPDATING || service.UpdateStatus.State == api.UpdateStatus_ROLLBACK_STARTED {
+ // Update or rollback was started, and is now complete
+ u.completeUpdate(ctx, service.ID, true)
+ return
}
return
}
@@ -303,7 +310,7 @@
// have reached RUNNING by this point.
if !stopped {
- u.completeUpdate(ctx, service.ID)
+ u.completeUpdate(ctx, service.ID, false)
}
}
@@ -616,25 +623,32 @@
}
}
-func (u *Updater) completeUpdate(ctx context.Context, serviceID string) {
+func (u *Updater) completeUpdate(ctx context.Context, serviceID string, force bool) {
log.G(ctx).Debugf("update of service %s complete", serviceID)
err := u.store.Update(func(tx store.Tx) error {
service := store.GetService(tx, serviceID)
- if service == nil {
+ switch {
+ case service == nil:
return nil
- }
- if service.UpdateStatus == nil {
+ case service.UpdateStatus == nil && force:
+ // Force marking the status as updated; to account for annotation-only updates.
+ service.UpdateStatus = &api.UpdateStatus{
+ StartedAt: ptypes.MustTimestampProto(time.Now()),
+ State: api.UpdateStatus_COMPLETED,
+ Message: "update completed",
+ }
+ case service.UpdateStatus == nil:
// The service was changed since we started this update
return nil
- }
- if service.UpdateStatus.State == api.UpdateStatus_ROLLBACK_STARTED {
+ case service.UpdateStatus.State == api.UpdateStatus_ROLLBACK_STARTED:
service.UpdateStatus.State = api.UpdateStatus_ROLLBACK_COMPLETED
service.UpdateStatus.Message = "rollback completed"
- } else {
+ default:
service.UpdateStatus.State = api.UpdateStatus_COMPLETED
service.UpdateStatus.Message = "update completed"
}
+
service.UpdateStatus.CompletedAt = ptypes.MustTimestampProto(time.Now())
return store.UpdateService(tx, service)
@@ -644,3 +658,10 @@
log.G(ctx).WithError(err).Errorf("failed to mark update of service %s complete", serviceID)
}
}
+
+func (u *Updater) annotationsUpdated(service *api.Service) bool {
+ if service.PreviousSpec == nil {
+ return false
+ }
+ return !reflect.DeepEqual(service.Spec, service.PreviousSpec)
+}
diff --git a/vendor/github.com/docker/swarmkit/vendor.conf b/vendor/github.com/docker/swarmkit/vendor.conf
index 7115c56..3a2c8f7 100644
--- a/vendor/github.com/docker/swarmkit/vendor.conf
+++ b/vendor/github.com/docker/swarmkit/vendor.conf
@@ -15,41 +15,41 @@
google.golang.org/genproto 694d95ba50e67b2e363f3483057db5d4910c18f9
# metrics
-github.com/grpc-ecosystem/go-grpc-prometheus 6b7015e65d366bf3f19b2b2a000a831940f0f7e0
+github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0
github.com/docker/go-metrics d466d4f6fd960e01820085bd7e1a24426ee7ef18
# etcd/raft
-github.com/coreos/etcd v3.2.1
+github.com/coreos/etcd v3.3.9
github.com/coreos/go-systemd v17
github.com/coreos/pkg v3
-github.com/prometheus/client_golang 52437c81da6b127a9925d17eb3a382a2e5fd395e
-github.com/prometheus/client_model fa8ad6fec33561be4280a8f0514318c79d7f6cb6
-github.com/prometheus/common ebdfc6da46522d58825777cf1f90490a5b1ef1d8
-github.com/prometheus/procfs abf152e5f3e97f2fafac028d2cc06c1feb87ffa5
+github.com/prometheus/client_golang v0.8.0
+github.com/prometheus/client_model 6f3806018612930941127f2a7c6c453ba2c527d2
+github.com/prometheus/common 7600349dcfe1abd18d72d3a1770870d9800a7801
+github.com/prometheus/procfs 7d6f385de8bea29190f15ba9931442a0eaef9af7
github.com/docker/distribution 83389a148052d74ac602f5f1d62f86ff2f3c4aa5
-github.com/docker/docker b9bb3bae5161f931c1dede43c67948c599197f50
-github.com/docker/go-connections 7beb39f0b969b075d1325fecb092faf27fd357b6
+github.com/docker/docker 5a718ef0f94f605fe4e4885937133c2f76ad2a41
+github.com/docker/go-connections 7395e3f8aa162843a74ed6d48e79627d9792ac55 # v0.4.0
github.com/docker/go-events 9461782956ad83b30282bf90e31fa6a70c255ba9
github.com/docker/go-units 9e638d38cf6977a37a8ea0078f3ee75a7cdb2dd1
-github.com/docker/libkv 1d8431073ae03cdaedb198a89722f3aab6d418ef
-github.com/docker/libnetwork 1f28166bb386cf9223d2d00a28382b0e474be314
-github.com/opencontainers/runc ad0f5255060d36872be04de22f8731f38ef2d7b1
+github.com/docker/libkv 458977154600b9f23984d9f4b82e79570b5ae12b
+github.com/docker/libnetwork 1a06131fb8a047d919f7deaf02a4c414d7884b83
+github.com/opencontainers/runc 96ec2177ae841256168fcf76954f7177af9446eb
github.com/opencontainers/go-digest v1.0.0-rc1
github.com/opencontainers/image-spec v1.0.1
github.com/ishidawataru/sctp 07191f837fedd2f13d1ec7b5f885f0f3ec54b1cb
github.com/davecgh/go-spew 346938d642f2ec3594ed81d874461961cd0faa76 # v1.1.0
-github.com/Microsoft/go-winio v0.4.8
-github.com/sirupsen/logrus v1.0.3
-github.com/beorn7/perks 4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9
+github.com/Microsoft/go-winio v0.4.11
+github.com/sirupsen/logrus v1.0.6
+github.com/beorn7/perks 3a771d992973f24aa725d07868b467d1ddfceaf
github.com/cloudflare/cfssl 1.3.2
github.com/dustin/go-humanize 8929fe90cee4b2cb9deb468b51fb34eba64d1bf0
github.com/fernet/fernet-go 1b2437bc582b3cfbb341ee5a29f8ef5b42912ff2
github.com/google/certificate-transparency-go v1.0.20
github.com/hashicorp/go-immutable-radix 826af9ccf0feeee615d546d69b11f8e98da8c8f1 git://github.com/tonistiigi/go-immutable-radix.git
github.com/hashicorp/go-memdb cb9a474f84cc5e41b273b20c6927680b2a8776ad
-github.com/hashicorp/golang-lru a0d98a5f288019575c6d1f4bb1573fef2d1fcdc4
+github.com/hashicorp/golang-lru 0fb14efe8c47ae851c0034ed7a448854d3d34cf3
github.com/inconshreveable/mousetrap 76626ae9c91c4f2a10f34cad8ce83ea42c93bb75
github.com/phayes/permbits f7e3ac5e859d0b919c5068d581cc4c5d4f4f9bc5
github.com/pivotal-golang/clock 3fd3c1944c59d9742e1cd333672181cd1a6f9fa0
@@ -60,8 +60,8 @@
github.com/spf13/pflag 7f60f83a2c81bc3c3c0d5297f61ddfa68da9d3b7
github.com/stretchr/testify v1.1.4
go.etcd.io/bbolt v1.3.1-etcd.8
-golang.org/x/crypto 1a580b3eff7814fc9b40602fd35256c63b50f491
-golang.org/x/net 0ed95abb35c445290478a5348a7b38bb154135fd
-golang.org/x/sys 37707fdb30a5b38865cfb95e5aab41707daec7fd
-golang.org/x/text f72d8390a633d5dfb0cc84043294db9f6c935756
-golang.org/x/time a4bde12657593d5e90d0533a3e4fd95e635124cb
+golang.org/x/crypto 0709b304e793a5edb4a2c0145f281ecdc20838a4
+golang.org/x/net a680a1efc54dd51c040b3b5ce4939ea3cf2ea0d1
+golang.org/x/sys 90868a75fefd03942536221d7c0e2f84ec62a668
+golang.org/x/text f21a4dfb5e38f5895301dc265a8def02365cc3d0 # v0.3.0
+golang.org/x/time fbb02b2291d28baffd63558aa44b4b56f178d650