Browse code

vndr swarmkit 941a01844b89c56aa61086fecb167ab3af1de22b

Signed-off-by: Pradip Dhara <pradipd@microsoft.com>

Pradip Dhara authored on 2017/09/27 07:07:16
Showing 19 changed files
... ...
@@ -110,7 +110,7 @@ github.com/tonistiigi/fifo 1405643975692217d6720f8b54aeee1bf2cd5cf4
110 110
 github.com/stevvooe/continuity cd7a8e21e2b6f84799f5dd4b65faf49c8d3ee02d
111 111
 
112 112
 # cluster
113
-github.com/docker/swarmkit bd7bafb8a61de1f5f23c8215ce7b9ecbcb30ff21
113
+github.com/docker/swarmkit 941a01844b89c56aa61086fecb167ab3af1de22b
114 114
 github.com/gogo/protobuf v0.4
115 115
 github.com/cloudflare/cfssl 7fb22c8cba7ecaf98e4082d22d65800cf45e042a
116 116
 github.com/google/certificate-transparency d90e65c3a07988180c5b1ece71791c0b6506826e
... ...
@@ -153,6 +153,12 @@ $ swarmd -d /tmp/node-2 --hostname node-2 --join-addr 127.0.0.1:4242 --join-toke
153 153
 $ swarmd -d /tmp/node-3 --hostname node-3 --join-addr 127.0.0.1:4242 --join-token <Worker Token>
154 154
 ```
155 155
 
156
+If joining as a manager, also specify the listen-control-api.
157
+
158
+```sh
159
+$ swarmd -d /tmp/node-4 --hostname node-4 --join-addr 127.0.0.1:4242 --join-token <Manager Token> --listen-control-api /tmp/node-4/swarm.sock --listen-remote-api 127.0.0.1:4245
160
+```
161
+
156 162
 In a fourth terminal, use `swarmctl` to explore and control the cluster. Before
157 163
 running `swarmctl`, set the `SWARM_SOCKET` environment variable to the path of the
158 164
 manager socket that was specified in `--listen-control-api` when starting the
... ...
@@ -168,6 +174,7 @@ ID                         Name    Membership  Status  Availability  Manager Sta
168 168
 3x12fpoi36eujbdkgdnbvbi6r  node-2  ACCEPTED    READY   ACTIVE
169 169
 4spl3tyipofoa2iwqgabsdcve  node-1  ACCEPTED    READY   ACTIVE        REACHABLE *
170 170
 dknwk1uqxhnyyujq66ho0h54t  node-3  ACCEPTED    READY   ACTIVE
171
+zw3rwfawdasdewfq66ho34eaw  node-4  ACCEPTED    READY   ACTIVE        REACHABLE
171 172
 
172 173
 
173 174
 ```
... ...
@@ -72,10 +72,10 @@ type Node struct {
72 72
 	// shows the privilege level that the CA would currently grant when
73 73
 	// issuing or renewing the node's certificate.
74 74
 	Role NodeRole `protobuf:"varint,9,opt,name=role,proto3,enum=docker.swarmkit.v1.NodeRole" json:"role,omitempty"`
75
-	// Each node uses the network attachment to set up an endpoint on the
76
-	// node to be used for load balancing.  Each overlay network, including
77
-	// ingress network, will have an NetworkAttachment.
78
-	LbAttachments []*NetworkAttachment `protobuf:"bytes,10,rep,name=lb_attachments,json=lbAttachments" json:"lb_attachments,omitempty"`
75
+	// Attachments enumerates the network attachments for the node to set up an
76
+	// endpoint on the node to be used for load balancing. Each overlay
77
+	// network, including ingress network, will have an NetworkAttachment.
78
+	Attachments []*NetworkAttachment `protobuf:"bytes,10,rep,name=attachments" json:"attachments,omitempty"`
79 79
 }
80 80
 
81 81
 func (m *Node) Reset()                    { *m = Node{} }
... ...
@@ -408,11 +408,11 @@ func (m *Node) CopyFrom(src interface{}) {
408 408
 		github_com_docker_swarmkit_api_deepcopy.Copy(m.Attachment, o.Attachment)
409 409
 	}
410 410
 	github_com_docker_swarmkit_api_deepcopy.Copy(&m.Certificate, &o.Certificate)
411
-	if o.LbAttachments != nil {
412
-		m.LbAttachments = make([]*NetworkAttachment, len(o.LbAttachments))
413
-		for i := range m.LbAttachments {
414
-			m.LbAttachments[i] = &NetworkAttachment{}
415
-			github_com_docker_swarmkit_api_deepcopy.Copy(m.LbAttachments[i], o.LbAttachments[i])
411
+	if o.Attachments != nil {
412
+		m.Attachments = make([]*NetworkAttachment, len(o.Attachments))
413
+		for i := range m.Attachments {
414
+			m.Attachments[i] = &NetworkAttachment{}
415
+			github_com_docker_swarmkit_api_deepcopy.Copy(m.Attachments[i], o.Attachments[i])
416 416
 		}
417 417
 	}
418 418
 
... ...
@@ -862,8 +862,8 @@ func (m *Node) MarshalTo(dAtA []byte) (int, error) {
862 862
 		i++
863 863
 		i = encodeVarintObjects(dAtA, i, uint64(m.Role))
864 864
 	}
865
-	if len(m.LbAttachments) > 0 {
866
-		for _, msg := range m.LbAttachments {
865
+	if len(m.Attachments) > 0 {
866
+		for _, msg := range m.Attachments {
867 867
 			dAtA[i] = 0x52
868 868
 			i++
869 869
 			i = encodeVarintObjects(dAtA, i, uint64(msg.Size()))
... ...
@@ -1695,8 +1695,8 @@ func (m *Node) Size() (n int) {
1695 1695
 	if m.Role != 0 {
1696 1696
 		n += 1 + sovObjects(uint64(m.Role))
1697 1697
 	}
1698
-	if len(m.LbAttachments) > 0 {
1699
-		for _, e := range m.LbAttachments {
1698
+	if len(m.Attachments) > 0 {
1699
+		for _, e := range m.Attachments {
1700 1700
 			l = e.Size()
1701 1701
 			n += 1 + l + sovObjects(uint64(l))
1702 1702
 		}
... ...
@@ -4414,7 +4414,7 @@ func (this *Node) String() string {
4414 4414
 		`Attachment:` + strings.Replace(fmt.Sprintf("%v", this.Attachment), "NetworkAttachment", "NetworkAttachment", 1) + `,`,
4415 4415
 		`Certificate:` + strings.Replace(strings.Replace(this.Certificate.String(), "Certificate", "Certificate", 1), `&`, ``, 1) + `,`,
4416 4416
 		`Role:` + fmt.Sprintf("%v", this.Role) + `,`,
4417
-		`LbAttachments:` + strings.Replace(fmt.Sprintf("%v", this.LbAttachments), "NetworkAttachment", "NetworkAttachment", 1) + `,`,
4417
+		`Attachments:` + strings.Replace(fmt.Sprintf("%v", this.Attachments), "NetworkAttachment", "NetworkAttachment", 1) + `,`,
4418 4418
 		`}`,
4419 4419
 	}, "")
4420 4420
 	return s
... ...
@@ -5051,7 +5051,7 @@ func (m *Node) Unmarshal(dAtA []byte) error {
5051 5051
 			}
5052 5052
 		case 10:
5053 5053
 			if wireType != 2 {
5054
-				return fmt.Errorf("proto: wrong wireType = %d for field LbAttachments", wireType)
5054
+				return fmt.Errorf("proto: wrong wireType = %d for field Attachments", wireType)
5055 5055
 			}
5056 5056
 			var msglen int
5057 5057
 			for shift := uint(0); ; shift += 7 {
... ...
@@ -5075,8 +5075,8 @@ func (m *Node) Unmarshal(dAtA []byte) error {
5075 5075
 			if postIndex > l {
5076 5076
 				return io.ErrUnexpectedEOF
5077 5077
 			}
5078
-			m.LbAttachments = append(m.LbAttachments, &NetworkAttachment{})
5079
-			if err := m.LbAttachments[len(m.LbAttachments)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
5078
+			m.Attachments = append(m.Attachments, &NetworkAttachment{})
5079
+			if err := m.Attachments[len(m.Attachments)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
5080 5080
 				return err
5081 5081
 			}
5082 5082
 			iNdEx = postIndex
... ...
@@ -7752,101 +7752,101 @@ var (
7752 7752
 func init() { proto.RegisterFile("github.com/docker/swarmkit/api/objects.proto", fileDescriptorObjects) }
7753 7753
 
7754 7754
 var fileDescriptorObjects = []byte{
7755
-	// 1536 bytes of a gzipped FileDescriptorProto
7756
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0xcd, 0x72, 0x1b, 0x4b,
7757
-	0x15, 0xce, 0x48, 0x63, 0xfd, 0x1c, 0xd9, 0xc2, 0xf4, 0x35, 0x66, 0x22, 0x8c, 0x64, 0x74, 0x0b,
7758
-	0xea, 0xd6, 0xad, 0x94, 0x1c, 0x4c, 0x00, 0xc7, 0x10, 0x12, 0xc9, 0x76, 0x25, 0xaa, 0x24, 0xc4,
7759
-	0xd5, 0x09, 0x09, 0xbb, 0xa1, 0x35, 0xd3, 0x51, 0x06, 0x8d, 0xa6, 0xa7, 0xa6, 0x5b, 0x0a, 0xda,
7760
-	0xb1, 0x61, 0x63, 0x1e, 0xc0, 0x3b, 0x16, 0x79, 0x06, 0x36, 0x6c, 0x58, 0xb0, 0xca, 0x92, 0x15,
7761
-	0xc5, 0xca, 0x45, 0xf4, 0x16, 0x54, 0xb1, 0xa0, 0xba, 0xa7, 0x47, 0x1a, 0x5b, 0xe3, 0x3f, 0x2a,
7762
-	0xe5, 0x62, 0xe5, 0xee, 0xe9, 0xef, 0x3b, 0x7f, 0x7d, 0xce, 0xe9, 0x63, 0xc1, 0x9d, 0xbe, 0x27,
7763
-	0xde, 0x8d, 0x7a, 0x2d, 0x87, 0x0d, 0xb7, 0x5c, 0xe6, 0x0c, 0x68, 0xb4, 0xc5, 0xdf, 0x93, 0x68,
7764
-	0x38, 0xf0, 0xc4, 0x16, 0x09, 0xbd, 0x2d, 0xd6, 0xfb, 0x2d, 0x75, 0x04, 0x6f, 0x85, 0x11, 0x13,
7765
-	0x0c, 0xa1, 0x18, 0xd2, 0x4a, 0x20, 0xad, 0xf1, 0x0f, 0x6b, 0x5f, 0x5f, 0x22, 0x41, 0x4c, 0x42,
7766
-	0xaa, 0xf9, 0x97, 0x62, 0x79, 0x48, 0x9d, 0x04, 0xdb, 0xe8, 0x33, 0xd6, 0xf7, 0xe9, 0x96, 0xda,
7767
-	0xf5, 0x46, 0x6f, 0xb7, 0x84, 0x37, 0xa4, 0x5c, 0x90, 0x61, 0xa8, 0x01, 0x6b, 0x7d, 0xd6, 0x67,
7768
-	0x6a, 0xb9, 0x25, 0x57, 0xfa, 0xeb, 0xed, 0xb3, 0x34, 0x12, 0x4c, 0xf4, 0xd1, 0x4f, 0x2f, 0xd0,
7769
-	0x3e, 0x83, 0x87, 0xfe, 0xa8, 0xef, 0x05, 0xfa, 0x4f, 0x4c, 0x6c, 0xfe, 0xc5, 0x00, 0xf3, 0x39,
7770
-	0x15, 0x04, 0xfd, 0x0c, 0x8a, 0x63, 0x1a, 0x71, 0x8f, 0x05, 0x96, 0xb1, 0x69, 0x7c, 0x55, 0xd9,
7771
-	0xfe, 0x4e, 0x6b, 0x31, 0x22, 0xad, 0xd7, 0x31, 0xa4, 0x63, 0x7e, 0x3c, 0x69, 0xdc, 0xc2, 0x09,
7772
-	0x03, 0xdd, 0x07, 0x70, 0x22, 0x4a, 0x04, 0x75, 0x6d, 0x22, 0xac, 0x9c, 0xe2, 0xd7, 0x5a, 0xb1,
7773
-	0xb9, 0xad, 0x44, 0x7f, 0xeb, 0x55, 0xe2, 0x25, 0x2e, 0x6b, 0x74, 0x5b, 0x48, 0xea, 0x28, 0x74,
7774
-	0x13, 0x6a, 0xfe, 0x72, 0xaa, 0x46, 0xb7, 0x45, 0xf3, 0x0f, 0x4b, 0x60, 0xfe, 0x92, 0xb9, 0x14,
7775
-	0xad, 0x43, 0xce, 0x73, 0x95, 0xd9, 0xe5, 0x4e, 0x61, 0x7a, 0xd2, 0xc8, 0x75, 0xf7, 0x71, 0xce,
7776
-	0x73, 0xd1, 0x36, 0x98, 0x43, 0x2a, 0x88, 0x36, 0xc8, 0xca, 0x72, 0x48, 0xfa, 0xae, 0xbd, 0x51,
7777
-	0x58, 0xf4, 0x13, 0x30, 0xe5, 0x55, 0x69, 0x4b, 0x36, 0xb2, 0x38, 0x52, 0xe7, 0xcb, 0x90, 0x3a,
7778
-	0x09, 0x4f, 0xe2, 0xd1, 0x01, 0x54, 0x5c, 0xca, 0x9d, 0xc8, 0x0b, 0x85, 0x8c, 0xa1, 0xa9, 0xe8,
7779
-	0x5f, 0x9e, 0x47, 0xdf, 0x9f, 0x43, 0x71, 0x9a, 0x87, 0x7e, 0x0e, 0x05, 0x2e, 0x88, 0x18, 0x71,
7780
-	0x6b, 0x49, 0x49, 0xa8, 0x9f, 0x6b, 0x80, 0x42, 0x69, 0x13, 0x34, 0x07, 0x3d, 0x81, 0xea, 0x90,
7781
-	0x04, 0xa4, 0x4f, 0x23, 0x5b, 0x4b, 0x29, 0x28, 0x29, 0xdf, 0xcb, 0x74, 0x3d, 0x46, 0xc6, 0x82,
7782
-	0xf0, 0xca, 0x30, 0xbd, 0x45, 0x5d, 0x00, 0x22, 0x04, 0x71, 0xde, 0x0d, 0x69, 0x20, 0xac, 0xa2,
7783
-	0x92, 0xf2, 0xfd, 0x4c, 0x5b, 0xa8, 0x78, 0xcf, 0xa2, 0x41, 0x7b, 0x06, 0xee, 0xe4, 0x2c, 0x03,
7784
-	0xa7, 0xc8, 0xe8, 0x31, 0x54, 0x1c, 0x1a, 0x09, 0xef, 0xad, 0xe7, 0x10, 0x41, 0xad, 0x92, 0x92,
7785
-	0xd5, 0xc8, 0x92, 0xb5, 0x37, 0x87, 0x69, 0xc7, 0xd2, 0x4c, 0x74, 0x17, 0xcc, 0x88, 0xf9, 0xd4,
7786
-	0x2a, 0x6f, 0x1a, 0x5f, 0x55, 0xcf, 0xbf, 0x1a, 0xcc, 0x7c, 0x8a, 0x15, 0x12, 0x3d, 0x83, 0xaa,
7787
-	0xdf, 0xb3, 0xe7, 0xb6, 0x70, 0x0b, 0x36, 0xf3, 0x57, 0xf6, 0x04, 0xaf, 0xf8, 0xbd, 0xf9, 0x8e,
7788
-	0xef, 0xae, 0x1f, 0x1d, 0x37, 0x11, 0xac, 0x96, 0x8c, 0x55, 0x43, 0x25, 0x9b, 0x71, 0xd7, 0xf8,
7789
-	0xb5, 0xf1, 0x1b, 0xa3, 0xf9, 0x9f, 0x3c, 0x14, 0x5f, 0xd2, 0x68, 0xec, 0x39, 0x9f, 0x37, 0x15,
7790
-	0xef, 0x9f, 0x4a, 0xc5, 0xcc, 0x88, 0x69, 0xb5, 0x0b, 0xd9, 0xb8, 0x03, 0x25, 0x1a, 0xb8, 0x21,
7791
-	0xf3, 0x02, 0xa1, 0x53, 0x31, 0x33, 0x5c, 0x07, 0x1a, 0x83, 0x67, 0x68, 0x74, 0x00, 0x2b, 0x71,
7792
-	0x85, 0xd9, 0xa7, 0xf2, 0x70, 0x33, 0x8b, 0xfe, 0x2b, 0x05, 0xd4, 0x09, 0xb4, 0x3c, 0x4a, 0xed,
7793
-	0xd0, 0x3e, 0xac, 0x84, 0x11, 0x1d, 0x7b, 0x6c, 0xc4, 0x6d, 0xe5, 0x44, 0xe1, 0x4a, 0x4e, 0xe0,
7794
-	0xe5, 0x84, 0x25, 0x77, 0xe8, 0x17, 0xb0, 0x2c, 0xc9, 0x76, 0xd2, 0x99, 0xe0, 0xd2, 0xce, 0x84,
7795
-	0x2b, 0x92, 0xa0, 0x37, 0xe8, 0x05, 0x7c, 0xeb, 0x94, 0x15, 0x33, 0x41, 0x95, 0xcb, 0x05, 0x7d,
7796
-	0x91, 0xb6, 0x44, 0x7f, 0xdc, 0x45, 0x47, 0xc7, 0xcd, 0x2a, 0x2c, 0xa7, 0x53, 0xa0, 0xf9, 0xa7,
7797
-	0x1c, 0x94, 0x92, 0x40, 0xa2, 0x7b, 0xfa, 0xce, 0x8c, 0xf3, 0xa3, 0x96, 0x60, 0x95, 0xbf, 0xf1,
7798
-	0x75, 0xdd, 0x83, 0xa5, 0x90, 0x45, 0x82, 0x5b, 0x39, 0x95, 0x9e, 0x99, 0x45, 0x7f, 0xc8, 0x22,
7799
-	0xb1, 0xc7, 0x82, 0xb7, 0x5e, 0x1f, 0xc7, 0x60, 0xf4, 0x06, 0x2a, 0x63, 0x2f, 0x12, 0x23, 0xe2,
7800
-	0xdb, 0x5e, 0xc8, 0xad, 0xbc, 0xe2, 0xfe, 0xe0, 0x22, 0x95, 0xad, 0xd7, 0x31, 0xbe, 0x7b, 0xd8,
7801
-	0xa9, 0x4e, 0x4f, 0x1a, 0x30, 0xdb, 0x72, 0x0c, 0x5a, 0x54, 0x37, 0xe4, 0xb5, 0xe7, 0x50, 0x9e,
7802
-	0x9d, 0xa0, 0x3b, 0x00, 0x41, 0x5c, 0x19, 0xf6, 0x2c, 0xb3, 0x57, 0xa6, 0x27, 0x8d, 0xb2, 0xae,
7803
-	0x97, 0xee, 0x3e, 0x2e, 0x6b, 0x40, 0xd7, 0x45, 0x08, 0x4c, 0xe2, 0xba, 0x91, 0xca, 0xf3, 0x32,
7804
-	0x56, 0xeb, 0xe6, 0x1f, 0x8b, 0x60, 0xbe, 0x22, 0x7c, 0x70, 0xd3, 0x7d, 0x5a, 0xea, 0x5c, 0xa8,
7805
-	0x8c, 0x3b, 0x00, 0x3c, 0xce, 0x37, 0xe9, 0x8e, 0x39, 0x77, 0x47, 0x67, 0xa1, 0x74, 0x47, 0x03,
7806
-	0x62, 0x77, 0xb8, 0xcf, 0x84, 0x2a, 0x02, 0x13, 0xab, 0x35, 0xfa, 0x12, 0x8a, 0x01, 0x73, 0x15,
7807
-	0xbd, 0xa0, 0xe8, 0x30, 0x3d, 0x69, 0x14, 0x64, 0xe7, 0xe9, 0xee, 0xe3, 0x82, 0x3c, 0xea, 0xba,
7808
-	0xb2, 0xe9, 0x91, 0x20, 0x60, 0x82, 0xc8, 0xae, 0xce, 0x75, 0x03, 0xcd, 0xcc, 0xfe, 0xf6, 0x1c,
7809
-	0x96, 0x34, 0xbd, 0x14, 0x13, 0xbd, 0x86, 0x2f, 0x12, 0x7b, 0xd3, 0x02, 0x4b, 0xd7, 0x11, 0x88,
7810
-	0xb4, 0x84, 0xd4, 0x49, 0xea, 0xa1, 0x29, 0x9f, 0xff, 0xd0, 0xa8, 0x08, 0x66, 0x3d, 0x34, 0x1d,
7811
-	0x58, 0x71, 0x29, 0xf7, 0x22, 0xea, 0xaa, 0x36, 0x41, 0x55, 0x65, 0x56, 0xb7, 0xbf, 0x7b, 0x91,
7812
-	0x10, 0x8a, 0x97, 0x35, 0x47, 0xed, 0x50, 0x1b, 0x4a, 0x3a, 0x6f, 0xb8, 0x55, 0xb9, 0x4e, 0x5b,
7813
-	0x9e, 0xd1, 0x4e, 0xb5, 0xb9, 0xe5, 0x6b, 0xb5, 0xb9, 0xfb, 0x00, 0x3e, 0xeb, 0xdb, 0x6e, 0xe4,
7814
-	0x8d, 0x69, 0x64, 0xad, 0xe8, 0xb1, 0x23, 0x83, 0xbb, 0xaf, 0x10, 0xb8, 0xec, 0xb3, 0x7e, 0xbc,
7815
-	0x5c, 0x68, 0x4a, 0xd5, 0x6b, 0x36, 0x25, 0x02, 0x35, 0xc2, 0xb9, 0xd7, 0x0f, 0xa8, 0x6b, 0xf7,
7816
-	0x69, 0x40, 0x23, 0xcf, 0xb1, 0x23, 0xca, 0xd9, 0x28, 0x72, 0x28, 0xb7, 0xbe, 0xa1, 0x22, 0x91,
7817
-	0x39, 0x38, 0x3c, 0x8e, 0xc1, 0x58, 0x63, 0xb1, 0x95, 0x88, 0x39, 0x73, 0xc0, 0x77, 0x6b, 0x47,
7818
-	0xc7, 0xcd, 0x75, 0x58, 0x4b, 0xb7, 0xa9, 0x1d, 0xe3, 0x91, 0xf1, 0xc4, 0x38, 0x34, 0x9a, 0x7f,
7819
-	0xcb, 0xc1, 0x37, 0x17, 0x62, 0x8a, 0x7e, 0x0c, 0x45, 0x1d, 0xd5, 0x8b, 0xc6, 0x3f, 0xcd, 0xc3,
7820
-	0x09, 0x16, 0x6d, 0x40, 0x59, 0x96, 0x38, 0xe5, 0x9c, 0xc6, 0xcd, 0xab, 0x8c, 0xe7, 0x1f, 0x90,
7821
-	0x05, 0x45, 0xe2, 0x7b, 0x44, 0x9e, 0xe5, 0xd5, 0x59, 0xb2, 0x45, 0x23, 0x58, 0x8f, 0x43, 0x9f,
7822
-	0x7a, 0x9c, 0x6d, 0x16, 0x0a, 0x6e, 0x99, 0xca, 0xff, 0x87, 0x57, 0xca, 0x04, 0x7d, 0x39, 0xf3,
7823
-	0x0f, 0x2f, 0x42, 0xc1, 0x0f, 0x02, 0x11, 0x4d, 0xf0, 0x9a, 0x9b, 0x71, 0x54, 0x7b, 0x0c, 0xb7,
7824
-	0xcf, 0xa5, 0xa0, 0x55, 0xc8, 0x0f, 0xe8, 0x24, 0x6e, 0x4f, 0x58, 0x2e, 0xd1, 0x1a, 0x2c, 0x8d,
7825
-	0x89, 0x3f, 0xa2, 0xba, 0x9b, 0xc5, 0x9b, 0xdd, 0xdc, 0x8e, 0xd1, 0xfc, 0x90, 0x83, 0xa2, 0x36,
7826
-	0xe7, 0xa6, 0x9f, 0x7c, 0xad, 0x76, 0xa1, 0xb1, 0x3d, 0x80, 0x65, 0x1d, 0xd2, 0xb8, 0x22, 0xcd,
7827
-	0x4b, 0x73, 0xba, 0x12, 0xe3, 0xe3, 0x6a, 0x7c, 0x00, 0xa6, 0x17, 0x92, 0xa1, 0x7e, 0xee, 0x33,
7828
-	0x35, 0x77, 0x0f, 0xdb, 0xcf, 0x5f, 0x84, 0x71, 0x63, 0x29, 0x4d, 0x4f, 0x1a, 0xa6, 0xfc, 0x80,
7829
-	0x15, 0x2d, 0xf3, 0x61, 0xfc, 0xf3, 0x12, 0x14, 0xf7, 0xfc, 0x11, 0x17, 0x34, 0xba, 0xe9, 0x20,
7830
-	0x69, 0xb5, 0x0b, 0x41, 0xda, 0x83, 0x62, 0xc4, 0x98, 0xb0, 0x1d, 0x72, 0x51, 0x7c, 0x30, 0x63,
7831
-	0x62, 0xaf, 0xdd, 0xa9, 0x4a, 0xa2, 0xec, 0xed, 0xf1, 0x1e, 0x17, 0x24, 0x75, 0x8f, 0xa0, 0x37,
7832
-	0xb0, 0x9e, 0xbc, 0x88, 0x3d, 0xc6, 0x04, 0x17, 0x11, 0x09, 0xed, 0x01, 0x9d, 0xc8, 0x59, 0x29,
7833
-	0x7f, 0xde, 0xb4, 0x7d, 0x10, 0x38, 0xd1, 0x44, 0x05, 0xef, 0x29, 0x9d, 0xe0, 0x35, 0x2d, 0xa0,
7834
-	0x93, 0xf0, 0x9f, 0xd2, 0x09, 0x47, 0x0f, 0x61, 0x83, 0xce, 0x60, 0x52, 0xa2, 0xed, 0x93, 0xa1,
7835
-	0x7c, 0xeb, 0x6d, 0xc7, 0x67, 0xce, 0x40, 0x3d, 0x37, 0x26, 0xbe, 0x4d, 0xd3, 0xa2, 0x9e, 0xc5,
7836
-	0x88, 0x3d, 0x09, 0x40, 0x1c, 0xac, 0x9e, 0x4f, 0x9c, 0x81, 0xef, 0x71, 0xf9, 0x0f, 0x55, 0x6a,
7837
-	0x78, 0x96, 0x2f, 0x86, 0xb4, 0x6d, 0xe7, 0x82, 0x68, 0xb5, 0x3a, 0x73, 0x6e, 0x6a, 0x14, 0xd7,
7838
-	0x15, 0xf5, 0xed, 0x5e, 0xf6, 0x29, 0xea, 0x40, 0x65, 0x14, 0x48, 0xf5, 0x71, 0x0c, 0xca, 0x57,
7839
-	0x8d, 0x01, 0xc4, 0x2c, 0xe9, 0x79, 0x6d, 0x0c, 0x1b, 0x17, 0x29, 0xcf, 0xa8, 0xcd, 0x47, 0xe9,
7840
-	0xda, 0xac, 0x6c, 0x7f, 0x9d, 0xa5, 0x2f, 0x5b, 0x64, 0xaa, 0x8e, 0x33, 0xd3, 0xf6, 0xaf, 0x06,
7841
-	0x14, 0x5e, 0x52, 0x27, 0xa2, 0xe2, 0xb3, 0x66, 0xed, 0xce, 0xa9, 0xac, 0xad, 0x67, 0x0f, 0xc2,
7842
-	0x52, 0xeb, 0x42, 0xd2, 0xd6, 0xa0, 0xe4, 0x05, 0x82, 0x46, 0x01, 0xf1, 0x55, 0xd6, 0x96, 0xf0,
7843
-	0x6c, 0x9f, 0xe9, 0xc0, 0x07, 0x03, 0x0a, 0xf1, 0xa4, 0x78, 0xd3, 0x0e, 0xc4, 0x5a, 0xcf, 0x3a,
7844
-	0x90, 0x69, 0xe4, 0xbf, 0x0d, 0x28, 0x25, 0x0f, 0xd6, 0x67, 0x35, 0xf3, 0xcc, 0xe4, 0x95, 0xff,
7845
-	0x9f, 0x27, 0x2f, 0x04, 0xe6, 0xc0, 0x0b, 0xf4, 0x8c, 0x88, 0xd5, 0x1a, 0xb5, 0xa0, 0x18, 0x92,
7846
-	0x89, 0xcf, 0x88, 0xab, 0x1b, 0xe5, 0xda, 0xc2, 0x4f, 0x15, 0xed, 0x60, 0x82, 0x13, 0xd0, 0xee,
7847
-	0xda, 0xd1, 0x71, 0x73, 0x15, 0xaa, 0x69, 0xcf, 0xdf, 0x19, 0xcd, 0x7f, 0x18, 0x50, 0x3e, 0xf8,
7848
-	0x9d, 0xa0, 0x81, 0x9a, 0x07, 0xfe, 0x2f, 0x9d, 0xdf, 0x5c, 0xfc, 0x39, 0xa3, 0x7c, 0xea, 0x97,
7849
-	0x8a, 0xac, 0x4b, 0xed, 0x58, 0x1f, 0x3f, 0xd5, 0x6f, 0xfd, 0xf3, 0x53, 0xfd, 0xd6, 0xef, 0xa7,
7850
-	0x75, 0xe3, 0xe3, 0xb4, 0x6e, 0xfc, 0x7d, 0x5a, 0x37, 0xfe, 0x35, 0xad, 0x1b, 0xbd, 0x82, 0x8a,
7851
-	0xcf, 0x8f, 0xfe, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xbd, 0x5c, 0xf5, 0x06, 0x95, 0x13, 0x00, 0x00,
7755
+	// 1527 bytes of a gzipped FileDescriptorProto
7756
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0xcf, 0x6f, 0x1b, 0x4f,
7757
+	0x15, 0xef, 0xda, 0x1b, 0xff, 0x78, 0x4e, 0x4c, 0x98, 0x86, 0xb0, 0x35, 0xc1, 0x0e, 0xae, 0x40,
7758
+	0x55, 0x55, 0x39, 0x25, 0x14, 0x48, 0x03, 0xa5, 0xb5, 0x93, 0xa8, 0xb5, 0x4a, 0x69, 0x34, 0x2d,
7759
+	0x2d, 0xb7, 0x65, 0xb2, 0x3b, 0x75, 0x17, 0xaf, 0x77, 0x56, 0x3b, 0x63, 0x17, 0xdf, 0x7a, 0x0e,
7760
+	0x7f, 0x40, 0x6e, 0x1c, 0xfa, 0x37, 0x70, 0xe1, 0xc2, 0x81, 0x53, 0x8f, 0x9c, 0x10, 0xa7, 0x88,
7761
+	0xfa, 0xbf, 0x40, 0xe2, 0x80, 0x66, 0x76, 0xd6, 0xde, 0xc4, 0x9b, 0x5f, 0xa8, 0x8a, 0xbe, 0xa7,
7762
+	0xcc, 0xec, 0x7c, 0x3e, 0xef, 0xd7, 0xbc, 0xf7, 0xe6, 0xc5, 0x70, 0xaf, 0xe7, 0x89, 0xf7, 0xc3,
7763
+	0x83, 0x96, 0xc3, 0x06, 0x1b, 0x2e, 0x73, 0xfa, 0x34, 0xda, 0xe0, 0x1f, 0x48, 0x34, 0xe8, 0x7b,
7764
+	0x62, 0x83, 0x84, 0xde, 0x06, 0x3b, 0xf8, 0x03, 0x75, 0x04, 0x6f, 0x85, 0x11, 0x13, 0x0c, 0xa1,
7765
+	0x18, 0xd2, 0x4a, 0x20, 0xad, 0xd1, 0x8f, 0x6b, 0x77, 0x2f, 0x90, 0x20, 0xc6, 0x21, 0xd5, 0xfc,
7766
+	0x0b, 0xb1, 0x3c, 0xa4, 0x4e, 0x82, 0x6d, 0xf4, 0x18, 0xeb, 0xf9, 0x74, 0x43, 0xed, 0x0e, 0x86,
7767
+	0xef, 0x36, 0x84, 0x37, 0xa0, 0x5c, 0x90, 0x41, 0xa8, 0x01, 0x2b, 0x3d, 0xd6, 0x63, 0x6a, 0xb9,
7768
+	0x21, 0x57, 0xfa, 0xeb, 0xad, 0xd3, 0x34, 0x12, 0x8c, 0xf5, 0xd1, 0xcf, 0xcf, 0xd1, 0x3e, 0x85,
7769
+	0x87, 0xfe, 0xb0, 0xe7, 0x05, 0xfa, 0x4f, 0x4c, 0x6c, 0xfe, 0xd5, 0x00, 0xf3, 0x05, 0x15, 0x04,
7770
+	0xfd, 0x02, 0x8a, 0x23, 0x1a, 0x71, 0x8f, 0x05, 0x96, 0xb1, 0x6e, 0xdc, 0xa9, 0x6c, 0x7e, 0xaf,
7771
+	0x35, 0x1f, 0x91, 0xd6, 0x9b, 0x18, 0xd2, 0x31, 0x3f, 0x1f, 0x37, 0x6e, 0xe0, 0x84, 0x81, 0x1e,
7772
+	0x02, 0x38, 0x11, 0x25, 0x82, 0xba, 0x36, 0x11, 0x56, 0x4e, 0xf1, 0x6b, 0xad, 0xd8, 0xdc, 0x56,
7773
+	0xa2, 0xbf, 0xf5, 0x3a, 0xf1, 0x12, 0x97, 0x35, 0xba, 0x2d, 0x24, 0x75, 0x18, 0xba, 0x09, 0x35,
7774
+	0x7f, 0x31, 0x55, 0xa3, 0xdb, 0xa2, 0xf9, 0x71, 0x01, 0xcc, 0xdf, 0x30, 0x97, 0xa2, 0x55, 0xc8,
7775
+	0x79, 0xae, 0x32, 0xbb, 0xdc, 0x29, 0x4c, 0x8e, 0x1b, 0xb9, 0xee, 0x2e, 0xce, 0x79, 0x2e, 0xda,
7776
+	0x04, 0x73, 0x40, 0x05, 0xd1, 0x06, 0x59, 0x59, 0x0e, 0x49, 0xdf, 0xb5, 0x37, 0x0a, 0x8b, 0x7e,
7777
+	0x06, 0xa6, 0xbc, 0x2a, 0x6d, 0xc9, 0x5a, 0x16, 0x47, 0xea, 0x7c, 0x15, 0x52, 0x27, 0xe1, 0x49,
7778
+	0x3c, 0xda, 0x83, 0x8a, 0x4b, 0xb9, 0x13, 0x79, 0xa1, 0x90, 0x31, 0x34, 0x15, 0xfd, 0xf6, 0x59,
7779
+	0xf4, 0xdd, 0x19, 0x14, 0xa7, 0x79, 0xe8, 0x97, 0x50, 0xe0, 0x82, 0x88, 0x21, 0xb7, 0x16, 0x94,
7780
+	0x84, 0xfa, 0x99, 0x06, 0x28, 0x94, 0x36, 0x41, 0x73, 0xd0, 0x33, 0xa8, 0x0e, 0x48, 0x40, 0x7a,
7781
+	0x34, 0xb2, 0xb5, 0x94, 0x82, 0x92, 0xf2, 0x83, 0x4c, 0xd7, 0x63, 0x64, 0x2c, 0x08, 0x2f, 0x0d,
7782
+	0xd2, 0x5b, 0xd4, 0x05, 0x20, 0x42, 0x10, 0xe7, 0xfd, 0x80, 0x06, 0xc2, 0x2a, 0x2a, 0x29, 0x3f,
7783
+	0xcc, 0xb4, 0x85, 0x8a, 0x0f, 0x2c, 0xea, 0xb7, 0xa7, 0xe0, 0x4e, 0xce, 0x32, 0x70, 0x8a, 0x8c,
7784
+	0x9e, 0x42, 0xc5, 0xa1, 0x91, 0xf0, 0xde, 0x79, 0x0e, 0x11, 0xd4, 0x2a, 0x29, 0x59, 0x8d, 0x2c,
7785
+	0x59, 0x3b, 0x33, 0x98, 0x76, 0x2c, 0xcd, 0x44, 0xf7, 0xc1, 0x8c, 0x98, 0x4f, 0xad, 0xf2, 0xba,
7786
+	0x71, 0xa7, 0x7a, 0xf6, 0xd5, 0x60, 0xe6, 0x53, 0xac, 0x90, 0x52, 0xf5, 0xcc, 0x10, 0x6e, 0xc1,
7787
+	0x7a, 0xfe, 0xd2, 0x6e, 0xe0, 0x34, 0x73, 0x7b, 0xf5, 0xf0, 0xa8, 0x89, 0x60, 0xb9, 0x64, 0x2c,
7788
+	0x1b, 0x2a, 0xcf, 0x8c, 0xfb, 0xc6, 0xef, 0x8c, 0xdf, 0x1b, 0xcd, 0xff, 0xe6, 0xa1, 0xf8, 0x8a,
7789
+	0x46, 0x23, 0xcf, 0xf9, 0xba, 0x59, 0xf8, 0xf0, 0x44, 0x16, 0x66, 0x06, 0x4b, 0xab, 0x9d, 0x4b,
7790
+	0xc4, 0x2d, 0x28, 0xd1, 0xc0, 0x0d, 0x99, 0x17, 0x08, 0x9d, 0x85, 0x99, 0x91, 0xda, 0xd3, 0x18,
7791
+	0x3c, 0x45, 0xa3, 0x3d, 0x58, 0x8a, 0x8b, 0xcb, 0x3e, 0x91, 0x82, 0xeb, 0x59, 0xf4, 0xdf, 0x2a,
7792
+	0xa0, 0xce, 0x9d, 0xc5, 0x61, 0x6a, 0x87, 0x76, 0x61, 0x29, 0x8c, 0xe8, 0xc8, 0x63, 0x43, 0x6e,
7793
+	0x2b, 0x27, 0x0a, 0x97, 0x72, 0x02, 0x2f, 0x26, 0x2c, 0xb9, 0x43, 0xbf, 0x82, 0x45, 0x49, 0xb6,
7794
+	0x93, 0xa6, 0x04, 0x17, 0x36, 0x25, 0x5c, 0x91, 0x04, 0xbd, 0x41, 0x2f, 0xe1, 0x3b, 0x27, 0xac,
7795
+	0x98, 0x0a, 0xaa, 0x5c, 0x2c, 0xe8, 0x66, 0xda, 0x12, 0xfd, 0x71, 0x1b, 0x1d, 0x1e, 0x35, 0xab,
7796
+	0xb0, 0x98, 0x4e, 0x81, 0xe6, 0x9f, 0x73, 0x50, 0x4a, 0x02, 0x89, 0x1e, 0xe8, 0x3b, 0x33, 0xce,
7797
+	0x8e, 0x5a, 0x82, 0x55, 0xfe, 0xc6, 0xd7, 0xf5, 0x00, 0x16, 0x42, 0x16, 0x09, 0x6e, 0xe5, 0x54,
7798
+	0x72, 0x66, 0xd6, 0xfb, 0x3e, 0x8b, 0xc4, 0x0e, 0x0b, 0xde, 0x79, 0x3d, 0x1c, 0x83, 0xd1, 0x5b,
7799
+	0xa8, 0x8c, 0xbc, 0x48, 0x0c, 0x89, 0x6f, 0x7b, 0x21, 0xb7, 0xf2, 0x8a, 0xfb, 0xa3, 0xf3, 0x54,
7800
+	0xb6, 0xde, 0xc4, 0xf8, 0xee, 0x7e, 0xa7, 0x3a, 0x39, 0x6e, 0xc0, 0x74, 0xcb, 0x31, 0x68, 0x51,
7801
+	0xdd, 0x90, 0xd7, 0x5e, 0x40, 0x79, 0x7a, 0x82, 0xee, 0x01, 0x04, 0x71, 0x5d, 0xd8, 0xd3, 0xcc,
7802
+	0x5e, 0x9a, 0x1c, 0x37, 0xca, 0xba, 0x5a, 0xba, 0xbb, 0xb8, 0xac, 0x01, 0x5d, 0x17, 0x21, 0x30,
7803
+	0x89, 0xeb, 0x46, 0x2a, 0xcf, 0xcb, 0x58, 0xad, 0x9b, 0x7f, 0x2a, 0x82, 0xf9, 0x9a, 0xf0, 0xfe,
7804
+	0x75, 0xb7, 0x68, 0xa9, 0x73, 0xae, 0x32, 0xee, 0x01, 0xf0, 0x38, 0xdf, 0xa4, 0x3b, 0xe6, 0xcc,
7805
+	0x1d, 0x9d, 0x85, 0xd2, 0x1d, 0x0d, 0x88, 0xdd, 0xe1, 0x3e, 0x13, 0xaa, 0x08, 0x4c, 0xac, 0xd6,
7806
+	0xe8, 0x36, 0x14, 0x03, 0xe6, 0x2a, 0x7a, 0x41, 0xd1, 0x61, 0x72, 0xdc, 0x28, 0xc8, 0xa6, 0xd3,
7807
+	0xdd, 0xc5, 0x05, 0x79, 0xd4, 0x75, 0x55, 0xd3, 0x09, 0x02, 0x26, 0x88, 0x6c, 0xe8, 0x5c, 0xf7,
7808
+	0xce, 0xcc, 0xec, 0x6f, 0xcf, 0x60, 0x49, 0xbf, 0x4b, 0x31, 0xd1, 0x1b, 0xb8, 0x99, 0xd8, 0x9b,
7809
+	0x16, 0x58, 0xba, 0x8a, 0x40, 0xa4, 0x25, 0xa4, 0x4e, 0x52, 0x6f, 0x4c, 0xf9, 0xec, 0x37, 0x46,
7810
+	0x45, 0x30, 0xeb, 0x8d, 0xe9, 0xc0, 0x92, 0x4b, 0xb9, 0x17, 0x51, 0x57, 0xb5, 0x09, 0xaa, 0x2a,
7811
+	0xb3, 0xba, 0xf9, 0xfd, 0xf3, 0x84, 0x50, 0xbc, 0xa8, 0x39, 0x6a, 0x87, 0xda, 0x50, 0xd2, 0x79,
7812
+	0xc3, 0xad, 0xca, 0x55, 0x9a, 0xf2, 0x94, 0x76, 0xa2, 0xcd, 0x2d, 0x5e, 0xa9, 0xcd, 0x3d, 0x04,
7813
+	0xf0, 0x59, 0xcf, 0x76, 0x23, 0x6f, 0x44, 0x23, 0x6b, 0x49, 0x4f, 0x1c, 0x19, 0xdc, 0x5d, 0x85,
7814
+	0xc0, 0x65, 0x9f, 0xf5, 0xe2, 0xe5, 0x5c, 0x53, 0xaa, 0x5e, 0xb1, 0x29, 0x11, 0xa8, 0x11, 0xce,
7815
+	0xbd, 0x5e, 0x40, 0x5d, 0xbb, 0x47, 0x03, 0x1a, 0x79, 0x8e, 0x1d, 0x51, 0xce, 0x86, 0x91, 0x43,
7816
+	0xb9, 0xf5, 0x2d, 0x15, 0x89, 0xcc, 0x99, 0xe1, 0x69, 0x0c, 0xc6, 0x1a, 0x8b, 0xad, 0x44, 0xcc,
7817
+	0xa9, 0x03, 0xbe, 0x5d, 0x3b, 0x3c, 0x6a, 0xae, 0xc2, 0x4a, 0xba, 0x4d, 0x6d, 0x19, 0x4f, 0x8c,
7818
+	0x67, 0xc6, 0xbe, 0xd1, 0xfc, 0x7b, 0x0e, 0xbe, 0x3d, 0x17, 0x53, 0xf4, 0x53, 0x28, 0xea, 0xa8,
7819
+	0x9e, 0x37, 0xf9, 0x69, 0x1e, 0x4e, 0xb0, 0x68, 0x0d, 0xca, 0xb2, 0xc4, 0x29, 0xe7, 0x34, 0x6e,
7820
+	0x5e, 0x65, 0x3c, 0xfb, 0x80, 0x2c, 0x28, 0x12, 0xdf, 0x23, 0xf2, 0x2c, 0xaf, 0xce, 0x92, 0x2d,
7821
+	0x1a, 0xc2, 0x6a, 0x1c, 0x7a, 0x7b, 0xf6, 0xc0, 0xda, 0x2c, 0x14, 0xdc, 0x32, 0x95, 0xff, 0x8f,
7822
+	0x2f, 0x95, 0x09, 0xfa, 0x72, 0x66, 0x1f, 0x5e, 0x86, 0x82, 0xef, 0x05, 0x22, 0x1a, 0xe3, 0x15,
7823
+	0x37, 0xe3, 0xa8, 0xf6, 0x14, 0x6e, 0x9d, 0x49, 0x41, 0xcb, 0x90, 0xef, 0xd3, 0x71, 0xdc, 0x9e,
7824
+	0xb0, 0x5c, 0xa2, 0x15, 0x58, 0x18, 0x11, 0x7f, 0x48, 0x75, 0x37, 0x8b, 0x37, 0xdb, 0xb9, 0x2d,
7825
+	0xa3, 0xf9, 0x29, 0x07, 0x45, 0x6d, 0xce, 0x75, 0x3f, 0xf9, 0x5a, 0xed, 0x5c, 0x63, 0x7b, 0x04,
7826
+	0x8b, 0x3a, 0xa4, 0x71, 0x45, 0x9a, 0x17, 0xe6, 0x74, 0x25, 0xc6, 0xc7, 0xd5, 0xf8, 0x08, 0x4c,
7827
+	0x2f, 0x24, 0x03, 0xfd, 0xdc, 0x67, 0x6a, 0xee, 0xee, 0xb7, 0x5f, 0xbc, 0x0c, 0xe3, 0xc6, 0x52,
7828
+	0x9a, 0x1c, 0x37, 0x4c, 0xf9, 0x01, 0x2b, 0x5a, 0xe6, 0xc3, 0xf8, 0x97, 0x05, 0x28, 0xee, 0xf8,
7829
+	0x43, 0x2e, 0x68, 0x74, 0xdd, 0x41, 0xd2, 0x6a, 0xe7, 0x82, 0xb4, 0x03, 0xc5, 0x88, 0x31, 0x61,
7830
+	0x3b, 0xe4, 0xbc, 0xf8, 0x60, 0xc6, 0xc4, 0x4e, 0xbb, 0x53, 0x95, 0x44, 0xd9, 0xdb, 0xe3, 0x3d,
7831
+	0x2e, 0x48, 0xea, 0x0e, 0x41, 0x6f, 0x61, 0x35, 0x79, 0x11, 0x0f, 0x18, 0x13, 0x5c, 0x44, 0x24,
7832
+	0xb4, 0xfb, 0x74, 0x2c, 0x67, 0xa5, 0xfc, 0x59, 0x83, 0xf6, 0x5e, 0xe0, 0x44, 0x63, 0x15, 0xbc,
7833
+	0xe7, 0x74, 0x8c, 0x57, 0xb4, 0x80, 0x4e, 0xc2, 0x7f, 0x4e, 0xc7, 0x1c, 0x3d, 0x86, 0x35, 0x3a,
7834
+	0x85, 0x49, 0x89, 0xb6, 0x4f, 0x06, 0xf2, 0xad, 0xb7, 0x1d, 0x9f, 0x39, 0x7d, 0xf5, 0xdc, 0x98,
7835
+	0xf8, 0x16, 0x4d, 0x8b, 0xfa, 0x75, 0x8c, 0xd8, 0x91, 0x00, 0xc4, 0xc1, 0x3a, 0xf0, 0x89, 0xd3,
7836
+	0xf7, 0x3d, 0x2e, 0xff, 0x97, 0x4a, 0xcd, 0xcd, 0xf2, 0xc5, 0x90, 0xb6, 0x6d, 0x9d, 0x13, 0xad,
7837
+	0x56, 0x67, 0xc6, 0x4d, 0x4d, 0xe1, 0xba, 0xa2, 0xbe, 0x7b, 0x90, 0x7d, 0x8a, 0x3a, 0x50, 0x19,
7838
+	0x06, 0x52, 0x7d, 0x1c, 0x83, 0xf2, 0x65, 0x63, 0x00, 0x31, 0x4b, 0x7a, 0x5e, 0x1b, 0xc1, 0xda,
7839
+	0x79, 0xca, 0x33, 0x6a, 0xf3, 0x49, 0xba, 0x36, 0x2b, 0x9b, 0x77, 0xb3, 0xf4, 0x65, 0x8b, 0x4c,
7840
+	0xd5, 0x71, 0x66, 0xda, 0xfe, 0xcd, 0x80, 0xc2, 0x2b, 0xea, 0x44, 0x54, 0x7c, 0xd5, 0xac, 0xdd,
7841
+	0x3a, 0x91, 0xb5, 0xf5, 0xec, 0x41, 0x58, 0x6a, 0x9d, 0x4b, 0xda, 0x1a, 0x94, 0xbc, 0x40, 0xd0,
7842
+	0x28, 0x20, 0xbe, 0xca, 0xda, 0x12, 0x9e, 0xee, 0x33, 0x1d, 0xf8, 0x64, 0x40, 0x21, 0x9e, 0x14,
7843
+	0xaf, 0xdb, 0x81, 0x58, 0xeb, 0x69, 0x07, 0x32, 0x8d, 0xfc, 0x8f, 0x01, 0xa5, 0xe4, 0xc1, 0xfa,
7844
+	0xaa, 0x66, 0x9e, 0x9a, 0xbc, 0xf2, 0xff, 0xf7, 0xe4, 0x85, 0xc0, 0xec, 0x7b, 0x81, 0x9e, 0x11,
7845
+	0xb1, 0x5a, 0xa3, 0x16, 0x14, 0x43, 0x32, 0xf6, 0x19, 0x71, 0x75, 0xa3, 0x5c, 0x99, 0xfb, 0x95,
7846
+	0xa2, 0x1d, 0x8c, 0x71, 0x02, 0xda, 0x5e, 0x39, 0x3c, 0x6a, 0x2e, 0x43, 0x35, 0xed, 0xf9, 0x7b,
7847
+	0xa3, 0xf9, 0x4f, 0x03, 0xca, 0x7b, 0x7f, 0x14, 0x34, 0x50, 0xf3, 0xc0, 0x37, 0xd2, 0xf9, 0xf5,
7848
+	0xf9, 0x5f, 0x32, 0xca, 0x27, 0x7e, 0xa4, 0xc8, 0xba, 0xd4, 0x8e, 0xf5, 0xf9, 0x4b, 0xfd, 0xc6,
7849
+	0xbf, 0xbe, 0xd4, 0x6f, 0x7c, 0x9c, 0xd4, 0x8d, 0xcf, 0x93, 0xba, 0xf1, 0x8f, 0x49, 0xdd, 0xf8,
7850
+	0xf7, 0xa4, 0x6e, 0x1c, 0x14, 0x54, 0x7c, 0x7e, 0xf2, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf9,
7851
+	0xa1, 0x26, 0x54, 0x90, 0x13, 0x00, 0x00,
7852 7852
 }
... ...
@@ -77,10 +77,10 @@ message Node {
77 77
 	// issuing or renewing the node's certificate.
78 78
 	NodeRole role = 9;
79 79
 
80
-	// Each node uses the network attachment to set up an endpoint on the 
81
-	// node to be used for load balancing.  Each overlay network, including 
82
-	// ingress network, will have an NetworkAttachment.
83
-	repeated NetworkAttachment lb_attachments = 10;
80
+	// Attachments enumerates the network attachments for the node to set up an
81
+	// endpoint on the node to be used for load balancing. Each overlay
82
+	// network, including ingress network, will have an NetworkAttachment.
83
+	repeated NetworkAttachment attachments = 10;
84 84
 }
85 85
 
86 86
 message Service {
... ...
@@ -585,97 +585,12 @@ type ContainerSpec struct {
585 585
 	// task will exit and a new task will be rescheduled elsewhere. A container
586 586
 	// is considered unhealthy after `Retries` number of consecutive failures.
587 587
 	Healthcheck *HealthConfig `protobuf:"bytes,16,opt,name=healthcheck" json:"healthcheck,omitempty"`
588
-	// Run a custom init inside the container, if null, use the daemon's configured settings
589
-	//
590
-	// Types that are valid to be assigned to Init:
591
-	//	*ContainerSpec_InitValue
592
-	Init isContainerSpec_Init `protobuf_oneof:"init"`
593 588
 }
594 589
 
595 590
 func (m *ContainerSpec) Reset()                    { *m = ContainerSpec{} }
596 591
 func (*ContainerSpec) ProtoMessage()               {}
597 592
 func (*ContainerSpec) Descriptor() ([]byte, []int) { return fileDescriptorSpecs, []int{8} }
598 593
 
599
-type isContainerSpec_Init interface {
600
-	isContainerSpec_Init()
601
-	MarshalTo([]byte) (int, error)
602
-	Size() int
603
-}
604
-
605
-type ContainerSpec_InitValue struct {
606
-	InitValue bool `protobuf:"varint,23,opt,name=init_value,json=initValue,proto3,oneof"`
607
-}
608
-
609
-func (*ContainerSpec_InitValue) isContainerSpec_Init() {}
610
-
611
-func (m *ContainerSpec) GetInit() isContainerSpec_Init {
612
-	if m != nil {
613
-		return m.Init
614
-	}
615
-	return nil
616
-}
617
-
618
-func (m *ContainerSpec) GetInitValue() bool {
619
-	if x, ok := m.GetInit().(*ContainerSpec_InitValue); ok {
620
-		return x.InitValue
621
-	}
622
-	return false
623
-}
624
-
625
-// XXX_OneofFuncs is for the internal use of the proto package.
626
-func (*ContainerSpec) 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{}) {
627
-	return _ContainerSpec_OneofMarshaler, _ContainerSpec_OneofUnmarshaler, _ContainerSpec_OneofSizer, []interface{}{
628
-		(*ContainerSpec_InitValue)(nil),
629
-	}
630
-}
631
-
632
-func _ContainerSpec_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
633
-	m := msg.(*ContainerSpec)
634
-	// init
635
-	switch x := m.Init.(type) {
636
-	case *ContainerSpec_InitValue:
637
-		t := uint64(0)
638
-		if x.InitValue {
639
-			t = 1
640
-		}
641
-		_ = b.EncodeVarint(23<<3 | proto.WireVarint)
642
-		_ = b.EncodeVarint(t)
643
-	case nil:
644
-	default:
645
-		return fmt.Errorf("ContainerSpec.Init has unexpected type %T", x)
646
-	}
647
-	return nil
648
-}
649
-
650
-func _ContainerSpec_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
651
-	m := msg.(*ContainerSpec)
652
-	switch tag {
653
-	case 23: // init.init_value
654
-		if wire != proto.WireVarint {
655
-			return true, proto.ErrInternalBadWireType
656
-		}
657
-		x, err := b.DecodeVarint()
658
-		m.Init = &ContainerSpec_InitValue{x != 0}
659
-		return true, err
660
-	default:
661
-		return false, nil
662
-	}
663
-}
664
-
665
-func _ContainerSpec_OneofSizer(msg proto.Message) (n int) {
666
-	m := msg.(*ContainerSpec)
667
-	// init
668
-	switch x := m.Init.(type) {
669
-	case *ContainerSpec_InitValue:
670
-		n += proto.SizeVarint(23<<3 | proto.WireVarint)
671
-		n += 1
672
-	case nil:
673
-	default:
674
-		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
675
-	}
676
-	return n
677
-}
678
-
679 594
 // PullOptions allows one to parameterize an image pull.
680 595
 type ContainerSpec_PullOptions struct {
681 596
 	// RegistryAuth is the registry auth token obtained from the client, required
... ...
@@ -1219,16 +1134,6 @@ func (m *ContainerSpec) CopyFrom(src interface{}) {
1219 1219
 		m.Healthcheck = &HealthConfig{}
1220 1220
 		github_com_docker_swarmkit_api_deepcopy.Copy(m.Healthcheck, o.Healthcheck)
1221 1221
 	}
1222
-	if o.Init != nil {
1223
-		switch o.Init.(type) {
1224
-		case *ContainerSpec_InitValue:
1225
-			v := ContainerSpec_InitValue{
1226
-				InitValue: o.GetInitValue(),
1227
-			}
1228
-			m.Init = &v
1229
-		}
1230
-	}
1231
-
1232 1222
 }
1233 1223
 
1234 1224
 func (m *ContainerSpec_PullOptions) Copy() *ContainerSpec_PullOptions {
... ...
@@ -2091,30 +1996,9 @@ func (m *ContainerSpec) MarshalTo(dAtA []byte) (int, error) {
2091 2091
 		}
2092 2092
 		i += n23
2093 2093
 	}
2094
-	if m.Init != nil {
2095
-		nn24, err := m.Init.MarshalTo(dAtA[i:])
2096
-		if err != nil {
2097
-			return 0, err
2098
-		}
2099
-		i += nn24
2100
-	}
2101 2094
 	return i, nil
2102 2095
 }
2103 2096
 
2104
-func (m *ContainerSpec_InitValue) MarshalTo(dAtA []byte) (int, error) {
2105
-	i := 0
2106
-	dAtA[i] = 0xb8
2107
-	i++
2108
-	dAtA[i] = 0x1
2109
-	i++
2110
-	if m.InitValue {
2111
-		dAtA[i] = 1
2112
-	} else {
2113
-		dAtA[i] = 0
2114
-	}
2115
-	i++
2116
-	return i, nil
2117
-}
2118 2097
 func (m *ContainerSpec_PullOptions) Marshal() (dAtA []byte, err error) {
2119 2098
 	size := m.Size()
2120 2099
 	dAtA = make([]byte, size)
... ...
@@ -2257,20 +2141,20 @@ func (m *NetworkSpec) MarshalTo(dAtA []byte) (int, error) {
2257 2257
 	dAtA[i] = 0xa
2258 2258
 	i++
2259 2259
 	i = encodeVarintSpecs(dAtA, i, uint64(m.Annotations.Size()))
2260
-	n25, err := m.Annotations.MarshalTo(dAtA[i:])
2260
+	n24, err := m.Annotations.MarshalTo(dAtA[i:])
2261 2261
 	if err != nil {
2262 2262
 		return 0, err
2263 2263
 	}
2264
-	i += n25
2264
+	i += n24
2265 2265
 	if m.DriverConfig != nil {
2266 2266
 		dAtA[i] = 0x12
2267 2267
 		i++
2268 2268
 		i = encodeVarintSpecs(dAtA, i, uint64(m.DriverConfig.Size()))
2269
-		n26, err := m.DriverConfig.MarshalTo(dAtA[i:])
2269
+		n25, err := m.DriverConfig.MarshalTo(dAtA[i:])
2270 2270
 		if err != nil {
2271 2271
 			return 0, err
2272 2272
 		}
2273
-		i += n26
2273
+		i += n25
2274 2274
 	}
2275 2275
 	if m.Ipv6Enabled {
2276 2276
 		dAtA[i] = 0x18
... ...
@@ -2296,11 +2180,11 @@ func (m *NetworkSpec) MarshalTo(dAtA []byte) (int, error) {
2296 2296
 		dAtA[i] = 0x2a
2297 2297
 		i++
2298 2298
 		i = encodeVarintSpecs(dAtA, i, uint64(m.IPAM.Size()))
2299
-		n27, err := m.IPAM.MarshalTo(dAtA[i:])
2299
+		n26, err := m.IPAM.MarshalTo(dAtA[i:])
2300 2300
 		if err != nil {
2301 2301
 			return 0, err
2302 2302
 		}
2303
-		i += n27
2303
+		i += n26
2304 2304
 	}
2305 2305
 	if m.Attachable {
2306 2306
 		dAtA[i] = 0x30
... ...
@@ -2323,11 +2207,11 @@ func (m *NetworkSpec) MarshalTo(dAtA []byte) (int, error) {
2323 2323
 		i++
2324 2324
 	}
2325 2325
 	if m.ConfigFrom != nil {
2326
-		nn28, err := m.ConfigFrom.MarshalTo(dAtA[i:])
2326
+		nn27, err := m.ConfigFrom.MarshalTo(dAtA[i:])
2327 2327
 		if err != nil {
2328 2328
 			return 0, err
2329 2329
 		}
2330
-		i += nn28
2330
+		i += nn27
2331 2331
 	}
2332 2332
 	return i, nil
2333 2333
 }
... ...
@@ -2358,67 +2242,67 @@ func (m *ClusterSpec) MarshalTo(dAtA []byte) (int, error) {
2358 2358
 	dAtA[i] = 0xa
2359 2359
 	i++
2360 2360
 	i = encodeVarintSpecs(dAtA, i, uint64(m.Annotations.Size()))
2361
-	n29, err := m.Annotations.MarshalTo(dAtA[i:])
2361
+	n28, err := m.Annotations.MarshalTo(dAtA[i:])
2362 2362
 	if err != nil {
2363 2363
 		return 0, err
2364 2364
 	}
2365
-	i += n29
2365
+	i += n28
2366 2366
 	dAtA[i] = 0x12
2367 2367
 	i++
2368 2368
 	i = encodeVarintSpecs(dAtA, i, uint64(m.AcceptancePolicy.Size()))
2369
-	n30, err := m.AcceptancePolicy.MarshalTo(dAtA[i:])
2369
+	n29, err := m.AcceptancePolicy.MarshalTo(dAtA[i:])
2370 2370
 	if err != nil {
2371 2371
 		return 0, err
2372 2372
 	}
2373
-	i += n30
2373
+	i += n29
2374 2374
 	dAtA[i] = 0x1a
2375 2375
 	i++
2376 2376
 	i = encodeVarintSpecs(dAtA, i, uint64(m.Orchestration.Size()))
2377
-	n31, err := m.Orchestration.MarshalTo(dAtA[i:])
2377
+	n30, err := m.Orchestration.MarshalTo(dAtA[i:])
2378 2378
 	if err != nil {
2379 2379
 		return 0, err
2380 2380
 	}
2381
-	i += n31
2381
+	i += n30
2382 2382
 	dAtA[i] = 0x22
2383 2383
 	i++
2384 2384
 	i = encodeVarintSpecs(dAtA, i, uint64(m.Raft.Size()))
2385
-	n32, err := m.Raft.MarshalTo(dAtA[i:])
2385
+	n31, err := m.Raft.MarshalTo(dAtA[i:])
2386 2386
 	if err != nil {
2387 2387
 		return 0, err
2388 2388
 	}
2389
-	i += n32
2389
+	i += n31
2390 2390
 	dAtA[i] = 0x2a
2391 2391
 	i++
2392 2392
 	i = encodeVarintSpecs(dAtA, i, uint64(m.Dispatcher.Size()))
2393
-	n33, err := m.Dispatcher.MarshalTo(dAtA[i:])
2393
+	n32, err := m.Dispatcher.MarshalTo(dAtA[i:])
2394 2394
 	if err != nil {
2395 2395
 		return 0, err
2396 2396
 	}
2397
-	i += n33
2397
+	i += n32
2398 2398
 	dAtA[i] = 0x32
2399 2399
 	i++
2400 2400
 	i = encodeVarintSpecs(dAtA, i, uint64(m.CAConfig.Size()))
2401
-	n34, err := m.CAConfig.MarshalTo(dAtA[i:])
2401
+	n33, err := m.CAConfig.MarshalTo(dAtA[i:])
2402 2402
 	if err != nil {
2403 2403
 		return 0, err
2404 2404
 	}
2405
-	i += n34
2405
+	i += n33
2406 2406
 	dAtA[i] = 0x3a
2407 2407
 	i++
2408 2408
 	i = encodeVarintSpecs(dAtA, i, uint64(m.TaskDefaults.Size()))
2409
-	n35, err := m.TaskDefaults.MarshalTo(dAtA[i:])
2409
+	n34, err := m.TaskDefaults.MarshalTo(dAtA[i:])
2410 2410
 	if err != nil {
2411 2411
 		return 0, err
2412 2412
 	}
2413
-	i += n35
2413
+	i += n34
2414 2414
 	dAtA[i] = 0x42
2415 2415
 	i++
2416 2416
 	i = encodeVarintSpecs(dAtA, i, uint64(m.EncryptionConfig.Size()))
2417
-	n36, err := m.EncryptionConfig.MarshalTo(dAtA[i:])
2417
+	n35, err := m.EncryptionConfig.MarshalTo(dAtA[i:])
2418 2418
 	if err != nil {
2419 2419
 		return 0, err
2420 2420
 	}
2421
-	i += n36
2421
+	i += n35
2422 2422
 	return i, nil
2423 2423
 }
2424 2424
 
... ...
@@ -2440,11 +2324,11 @@ func (m *SecretSpec) MarshalTo(dAtA []byte) (int, error) {
2440 2440
 	dAtA[i] = 0xa
2441 2441
 	i++
2442 2442
 	i = encodeVarintSpecs(dAtA, i, uint64(m.Annotations.Size()))
2443
-	n37, err := m.Annotations.MarshalTo(dAtA[i:])
2443
+	n36, err := m.Annotations.MarshalTo(dAtA[i:])
2444 2444
 	if err != nil {
2445 2445
 		return 0, err
2446 2446
 	}
2447
-	i += n37
2447
+	i += n36
2448 2448
 	if len(m.Data) > 0 {
2449 2449
 		dAtA[i] = 0x12
2450 2450
 		i++
... ...
@@ -2455,21 +2339,21 @@ func (m *SecretSpec) MarshalTo(dAtA []byte) (int, error) {
2455 2455
 		dAtA[i] = 0x1a
2456 2456
 		i++
2457 2457
 		i = encodeVarintSpecs(dAtA, i, uint64(m.Templating.Size()))
2458
-		n38, err := m.Templating.MarshalTo(dAtA[i:])
2458
+		n37, err := m.Templating.MarshalTo(dAtA[i:])
2459 2459
 		if err != nil {
2460 2460
 			return 0, err
2461 2461
 		}
2462
-		i += n38
2462
+		i += n37
2463 2463
 	}
2464 2464
 	if m.Driver != nil {
2465 2465
 		dAtA[i] = 0x22
2466 2466
 		i++
2467 2467
 		i = encodeVarintSpecs(dAtA, i, uint64(m.Driver.Size()))
2468
-		n39, err := m.Driver.MarshalTo(dAtA[i:])
2468
+		n38, err := m.Driver.MarshalTo(dAtA[i:])
2469 2469
 		if err != nil {
2470 2470
 			return 0, err
2471 2471
 		}
2472
-		i += n39
2472
+		i += n38
2473 2473
 	}
2474 2474
 	return i, nil
2475 2475
 }
... ...
@@ -2492,11 +2376,11 @@ func (m *ConfigSpec) MarshalTo(dAtA []byte) (int, error) {
2492 2492
 	dAtA[i] = 0xa
2493 2493
 	i++
2494 2494
 	i = encodeVarintSpecs(dAtA, i, uint64(m.Annotations.Size()))
2495
-	n40, err := m.Annotations.MarshalTo(dAtA[i:])
2495
+	n39, err := m.Annotations.MarshalTo(dAtA[i:])
2496 2496
 	if err != nil {
2497 2497
 		return 0, err
2498 2498
 	}
2499
-	i += n40
2499
+	i += n39
2500 2500
 	if len(m.Data) > 0 {
2501 2501
 		dAtA[i] = 0x12
2502 2502
 		i++
... ...
@@ -2507,11 +2391,11 @@ func (m *ConfigSpec) MarshalTo(dAtA []byte) (int, error) {
2507 2507
 		dAtA[i] = 0x1a
2508 2508
 		i++
2509 2509
 		i = encodeVarintSpecs(dAtA, i, uint64(m.Templating.Size()))
2510
-		n41, err := m.Templating.MarshalTo(dAtA[i:])
2510
+		n40, err := m.Templating.MarshalTo(dAtA[i:])
2511 2511
 		if err != nil {
2512 2512
 			return 0, err
2513 2513
 		}
2514
-		i += n41
2514
+		i += n40
2515 2515
 	}
2516 2516
 	return i, nil
2517 2517
 }
... ...
@@ -2837,18 +2721,9 @@ func (m *ContainerSpec) Size() (n int) {
2837 2837
 		l = m.Privileges.Size()
2838 2838
 		n += 2 + l + sovSpecs(uint64(l))
2839 2839
 	}
2840
-	if m.Init != nil {
2841
-		n += m.Init.Size()
2842
-	}
2843 2840
 	return n
2844 2841
 }
2845 2842
 
2846
-func (m *ContainerSpec_InitValue) Size() (n int) {
2847
-	var l int
2848
-	_ = l
2849
-	n += 3
2850
-	return n
2851
-}
2852 2843
 func (m *ContainerSpec_PullOptions) Size() (n int) {
2853 2844
 	var l int
2854 2845
 	_ = l
... ...
@@ -3191,17 +3066,6 @@ func (this *ContainerSpec) String() string {
3191 3191
 		`StopSignal:` + fmt.Sprintf("%v", this.StopSignal) + `,`,
3192 3192
 		`Configs:` + strings.Replace(fmt.Sprintf("%v", this.Configs), "ConfigReference", "ConfigReference", 1) + `,`,
3193 3193
 		`Privileges:` + strings.Replace(fmt.Sprintf("%v", this.Privileges), "Privileges", "Privileges", 1) + `,`,
3194
-		`Init:` + fmt.Sprintf("%v", this.Init) + `,`,
3195
-		`}`,
3196
-	}, "")
3197
-	return s
3198
-}
3199
-func (this *ContainerSpec_InitValue) String() string {
3200
-	if this == nil {
3201
-		return "nil"
3202
-	}
3203
-	s := strings.Join([]string{`&ContainerSpec_InitValue{`,
3204
-		`InitValue:` + fmt.Sprintf("%v", this.InitValue) + `,`,
3205 3194
 		`}`,
3206 3195
 	}, "")
3207 3196
 	return s
... ...
@@ -5277,27 +5141,6 @@ func (m *ContainerSpec) Unmarshal(dAtA []byte) error {
5277 5277
 				return err
5278 5278
 			}
5279 5279
 			iNdEx = postIndex
5280
-		case 23:
5281
-			if wireType != 0 {
5282
-				return fmt.Errorf("proto: wrong wireType = %d for field InitValue", wireType)
5283
-			}
5284
-			var v int
5285
-			for shift := uint(0); ; shift += 7 {
5286
-				if shift >= 64 {
5287
-					return ErrIntOverflowSpecs
5288
-				}
5289
-				if iNdEx >= l {
5290
-					return io.ErrUnexpectedEOF
5291
-				}
5292
-				b := dAtA[iNdEx]
5293
-				iNdEx++
5294
-				v |= (int(b) & 0x7F) << shift
5295
-				if b < 0x80 {
5296
-					break
5297
-				}
5298
-			}
5299
-			b := bool(v != 0)
5300
-			m.Init = &ContainerSpec_InitValue{b}
5301 5280
 		default:
5302 5281
 			iNdEx = preIndex
5303 5282
 			skippy, err := skipSpecs(dAtA[iNdEx:])
... ...
@@ -6609,130 +6452,129 @@ var (
6609 6609
 func init() { proto.RegisterFile("github.com/docker/swarmkit/api/specs.proto", fileDescriptorSpecs) }
6610 6610
 
6611 6611
 var fileDescriptorSpecs = []byte{
6612
-	// 2000 bytes of a gzipped FileDescriptorProto
6613
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x57, 0x4f, 0x6f, 0x1b, 0xb9,
6614
-	0x15, 0xb7, 0x6c, 0x59, 0x7f, 0xde, 0xc8, 0x89, 0xc2, 0x4d, 0xb2, 0x13, 0xa5, 0x6b, 0x29, 0xda,
6615
-	0x6c, 0xea, 0xdd, 0x45, 0x65, 0xd4, 0x2d, 0xb6, 0xd9, 0x4d, 0xb7, 0xad, 0x64, 0xa9, 0x8e, 0x9b,
6616
-	0xc6, 0x11, 0x68, 0x6f, 0xda, 0x00, 0x05, 0x04, 0x7a, 0x86, 0x96, 0x08, 0x8f, 0x86, 0x53, 0x0e,
6617
-	0xc7, 0x0b, 0xdd, 0x7a, 0x5c, 0xa4, 0x9f, 0x21, 0xe8, 0xa1, 0xe8, 0xbd, 0x1f, 0xa0, 0x1f, 0x20,
6618
-	0xc7, 0x1e, 0xdb, 0x8b, 0xd1, 0xd5, 0x57, 0xe8, 0xad, 0x97, 0x16, 0xe4, 0x70, 0x46, 0xa3, 0x64,
6619
-	0x1c, 0x07, 0x68, 0x0e, 0x7b, 0x23, 0xdf, 0xfc, 0x7e, 0x6f, 0x1e, 0xc9, 0xdf, 0xe3, 0x7b, 0x84,
6620
-	0x4f, 0xc6, 0x4c, 0x4e, 0xa2, 0xe3, 0x8e, 0xc3, 0xa7, 0xdb, 0x2e, 0x77, 0x4e, 0xa9, 0xd8, 0x0e,
6621
-	0xbf, 0x26, 0x62, 0x7a, 0xca, 0xe4, 0x36, 0x09, 0xd8, 0x76, 0x18, 0x50, 0x27, 0xec, 0x04, 0x82,
6622
-	0x4b, 0x8e, 0x50, 0x0c, 0xe8, 0x24, 0x80, 0xce, 0xd9, 0x0f, 0x1b, 0x97, 0xf1, 0xe5, 0x2c, 0xa0,
6623
-	0x86, 0xdf, 0xb8, 0x3e, 0xe6, 0x63, 0xae, 0x87, 0xdb, 0x6a, 0x64, 0xac, 0x9b, 0x63, 0xce, 0xc7,
6624
-	0x1e, 0xdd, 0xd6, 0xb3, 0xe3, 0xe8, 0x64, 0xdb, 0x8d, 0x04, 0x91, 0x8c, 0xfb, 0xe6, 0xfb, 0xad,
6625
-	0x57, 0xbf, 0x13, 0x7f, 0x16, 0x7f, 0x6a, 0xbf, 0x28, 0x42, 0xe5, 0x80, 0xbb, 0xf4, 0x30, 0xa0,
6626
-	0x0e, 0xda, 0x03, 0x8b, 0xf8, 0x3e, 0x97, 0x9a, 0x1b, 0xda, 0x85, 0x56, 0x61, 0xcb, 0xda, 0x69,
6627
-	0x76, 0x5e, 0x8f, 0xb9, 0xd3, 0x5d, 0xc0, 0x7a, 0xc5, 0x97, 0xe7, 0xcd, 0x15, 0x9c, 0x65, 0xa2,
6628
-	0x9f, 0x43, 0xcd, 0xa5, 0x21, 0x13, 0xd4, 0x1d, 0x09, 0xee, 0x51, 0x7b, 0xb5, 0x55, 0xd8, 0xba,
6629
-	0xb2, 0xf3, 0xbd, 0x3c, 0x4f, 0xea, 0xe7, 0x98, 0x7b, 0x14, 0x5b, 0x86, 0xa1, 0x26, 0x68, 0x0f,
6630
-	0x60, 0x4a, 0xa7, 0xc7, 0x54, 0x84, 0x13, 0x16, 0xd8, 0x6b, 0x9a, 0xfe, 0xfd, 0x8b, 0xe8, 0x2a,
6631
-	0xf6, 0xce, 0xe3, 0x14, 0x8e, 0x33, 0x54, 0xf4, 0x18, 0x6a, 0xe4, 0x8c, 0x30, 0x8f, 0x1c, 0x33,
6632
-	0x8f, 0xc9, 0x99, 0x5d, 0xd4, 0xae, 0x3e, 0x7e, 0xa3, 0xab, 0x6e, 0x86, 0x80, 0x97, 0xe8, 0x6d,
6633
-	0x17, 0x60, 0xf1, 0x23, 0x74, 0x0f, 0xca, 0xc3, 0xc1, 0x41, 0x7f, 0xff, 0x60, 0xaf, 0xbe, 0xd2,
6634
-	0xb8, 0xf5, 0xfc, 0x45, 0xeb, 0x86, 0xf2, 0xb1, 0x00, 0x0c, 0xa9, 0xef, 0x32, 0x7f, 0x8c, 0xb6,
6635
-	0xa0, 0xd2, 0xdd, 0xdd, 0x1d, 0x0c, 0x8f, 0x06, 0xfd, 0x7a, 0xa1, 0xd1, 0x78, 0xfe, 0xa2, 0x75,
6636
-	0x73, 0x19, 0xd8, 0x75, 0x1c, 0x1a, 0x48, 0xea, 0x36, 0x8a, 0xdf, 0xfc, 0x79, 0x73, 0xa5, 0xfd,
6637
-	0x4d, 0x01, 0x6a, 0xd9, 0x20, 0xd0, 0x3d, 0x28, 0x75, 0x77, 0x8f, 0xf6, 0x9f, 0x0e, 0xea, 0x2b,
6638
-	0x0b, 0x7a, 0x16, 0xd1, 0x75, 0x24, 0x3b, 0xa3, 0xe8, 0x2e, 0xac, 0x0f, 0xbb, 0x5f, 0x1d, 0x0e,
6639
-	0xea, 0x85, 0x45, 0x38, 0x59, 0xd8, 0x90, 0x44, 0xa1, 0x46, 0xf5, 0x71, 0x77, 0xff, 0xa0, 0xbe,
6640
-	0x9a, 0x8f, 0xea, 0x0b, 0xc2, 0x7c, 0x13, 0xca, 0x9f, 0x8a, 0x60, 0x1d, 0x52, 0x71, 0xc6, 0x9c,
6641
-	0x77, 0x2c, 0x91, 0xcf, 0xa0, 0x28, 0x49, 0x78, 0xaa, 0xa5, 0x61, 0xe5, 0x4b, 0xe3, 0x88, 0x84,
6642
-	0xa7, 0xea, 0xa7, 0x86, 0xae, 0xf1, 0x4a, 0x19, 0x82, 0x06, 0x1e, 0x73, 0x88, 0xa4, 0xae, 0x56,
6643
-	0x86, 0xb5, 0xf3, 0x51, 0x1e, 0x1b, 0xa7, 0x28, 0x13, 0xff, 0xc3, 0x15, 0x9c, 0xa1, 0xa2, 0x07,
6644
-	0x50, 0x1a, 0x7b, 0xfc, 0x98, 0x78, 0x5a, 0x13, 0xd6, 0xce, 0x9d, 0x3c, 0x27, 0x7b, 0x1a, 0xb1,
6645
-	0x70, 0x60, 0x28, 0xe8, 0x3e, 0x94, 0xa2, 0xc0, 0x25, 0x92, 0xda, 0x25, 0x4d, 0x6e, 0xe5, 0x91,
6646
-	0xbf, 0xd2, 0x88, 0x5d, 0xee, 0x9f, 0xb0, 0x31, 0x36, 0x78, 0xf4, 0x08, 0x2a, 0x3e, 0x95, 0x5f,
6647
-	0x73, 0x71, 0x1a, 0xda, 0xe5, 0xd6, 0xda, 0x96, 0xb5, 0xf3, 0x69, 0xae, 0x18, 0x63, 0x4c, 0x57,
6648
-	0x4a, 0xe2, 0x4c, 0xa6, 0xd4, 0x97, 0xb1, 0x9b, 0xde, 0xaa, 0x5d, 0xc0, 0xa9, 0x03, 0xf4, 0x53,
6649
-	0xa8, 0x50, 0xdf, 0x0d, 0x38, 0xf3, 0xa5, 0x5d, 0xb9, 0x38, 0x90, 0x81, 0xc1, 0xa8, 0xcd, 0xc4,
6650
-	0x29, 0x43, 0xb1, 0x05, 0xf7, 0xbc, 0x63, 0xe2, 0x9c, 0xda, 0xd5, 0xb7, 0x5c, 0x46, 0xca, 0xe8,
6651
-	0x95, 0xa0, 0x38, 0xe5, 0x2e, 0x6d, 0x6f, 0xc3, 0xb5, 0xd7, 0xb6, 0x1a, 0x35, 0xa0, 0x62, 0xb6,
6652
-	0x3a, 0xd6, 0x48, 0x11, 0xa7, 0xf3, 0xf6, 0x55, 0xd8, 0x58, 0xda, 0xd6, 0xf6, 0x5f, 0xd7, 0xa1,
6653
-	0x92, 0x9c, 0x35, 0xea, 0x42, 0xd5, 0xe1, 0xbe, 0x24, 0xcc, 0xa7, 0xc2, 0xc8, 0x2b, 0xf7, 0x64,
6654
-	0x76, 0x13, 0x90, 0x62, 0x3d, 0x5c, 0xc1, 0x0b, 0x16, 0xfa, 0x25, 0x54, 0x05, 0x0d, 0x79, 0x24,
6655
-	0x1c, 0x1a, 0x1a, 0x7d, 0x6d, 0xe5, 0x2b, 0x24, 0x06, 0x61, 0xfa, 0xfb, 0x88, 0x09, 0xaa, 0x76,
6656
-	0x39, 0xc4, 0x0b, 0x2a, 0x7a, 0x00, 0x65, 0x41, 0x43, 0x49, 0x84, 0x7c, 0x93, 0x44, 0x70, 0x0c,
6657
-	0x19, 0x72, 0x8f, 0x39, 0x33, 0x9c, 0x30, 0xd0, 0x03, 0xa8, 0x06, 0x1e, 0x71, 0xb4, 0x57, 0x7b,
6658
-	0x5d, 0xd3, 0x3f, 0xc8, 0xa3, 0x0f, 0x13, 0x10, 0x5e, 0xe0, 0xd1, 0xe7, 0x00, 0x1e, 0x1f, 0x8f,
6659
-	0x5c, 0xc1, 0xce, 0xa8, 0x30, 0x12, 0x6b, 0xe4, 0xb1, 0xfb, 0x1a, 0x81, 0xab, 0x1e, 0x1f, 0xc7,
6660
-	0x43, 0xb4, 0xf7, 0x7f, 0xe9, 0x2b, 0xa3, 0xad, 0x47, 0x00, 0x24, 0xfd, 0x6a, 0xd4, 0xf5, 0xf1,
6661
-	0x5b, 0xb9, 0x32, 0x27, 0x92, 0xa1, 0xa3, 0x3b, 0x50, 0x3b, 0xe1, 0xc2, 0xa1, 0x23, 0x93, 0x35,
6662
-	0x55, 0xad, 0x09, 0x4b, 0xdb, 0x62, 0x7d, 0xa1, 0x1e, 0x94, 0xc7, 0xd4, 0xa7, 0x82, 0x39, 0x36,
6663
-	0xe8, 0x9f, 0xdd, 0xcb, 0x4d, 0xc8, 0x18, 0x82, 0x23, 0x5f, 0xb2, 0x29, 0x35, 0x7f, 0x4a, 0x88,
6664
-	0xe8, 0x77, 0xf0, 0x5e, 0x72, 0x7c, 0x23, 0x41, 0x4f, 0xa8, 0xa0, 0xbe, 0xd2, 0x80, 0xa5, 0xf7,
6665
-	0xe1, 0xa3, 0x37, 0x6b, 0xc0, 0xa0, 0xcd, 0x65, 0x83, 0xc4, 0xab, 0x1f, 0xc2, 0x5e, 0x15, 0xca,
6666
-	0x22, 0xfe, 0x6f, 0xfb, 0x8f, 0x05, 0xa5, 0xfa, 0x57, 0x10, 0x68, 0x1b, 0xac, 0xf4, 0xf7, 0xcc,
6667
-	0xd5, 0xea, 0xad, 0xf6, 0xae, 0xcc, 0xcf, 0x9b, 0x90, 0x60, 0xf7, 0xfb, 0xea, 0x0e, 0x32, 0x63,
6668
-	0x17, 0x0d, 0x60, 0x23, 0x25, 0xa8, 0x32, 0x6f, 0x0a, 0x65, 0xeb, 0x4d, 0x91, 0x1e, 0xcd, 0x02,
6669
-	0x8a, 0x6b, 0x22, 0x33, 0x6b, 0xff, 0x16, 0xd0, 0xeb, 0xfb, 0x82, 0x10, 0x14, 0x4f, 0x99, 0x6f,
6670
-	0xc2, 0xc0, 0x7a, 0x8c, 0x3a, 0x50, 0x0e, 0xc8, 0xcc, 0xe3, 0xc4, 0x35, 0x89, 0x71, 0xbd, 0x13,
6671
-	0xf7, 0x06, 0x9d, 0xa4, 0x37, 0xe8, 0x74, 0xfd, 0x19, 0x4e, 0x40, 0xed, 0x47, 0x70, 0x23, 0xf7,
6672
-	0x78, 0xd1, 0x0e, 0xd4, 0xd2, 0x84, 0x5b, 0xac, 0xf5, 0xea, 0xfc, 0xbc, 0x69, 0xa5, 0x99, 0xb9,
6673
-	0xdf, 0xc7, 0x56, 0x0a, 0xda, 0x77, 0xdb, 0x7f, 0xab, 0xc2, 0xc6, 0x52, 0xda, 0xa2, 0xeb, 0xb0,
6674
-	0xce, 0xa6, 0x64, 0x4c, 0x4d, 0x8c, 0xf1, 0x04, 0x0d, 0xa0, 0xe4, 0x91, 0x63, 0xea, 0xa9, 0xe4,
6675
-	0x55, 0x07, 0xf7, 0x83, 0x4b, 0xf3, 0xbf, 0xf3, 0x6b, 0x8d, 0x1f, 0xf8, 0x52, 0xcc, 0xb0, 0x21,
6676
-	0x23, 0x1b, 0xca, 0x0e, 0x9f, 0x4e, 0x89, 0xaf, 0xca, 0xc4, 0xda, 0x56, 0x15, 0x27, 0x53, 0xb5,
6677
-	0x33, 0x44, 0x8c, 0x43, 0xbb, 0xa8, 0xcd, 0x7a, 0x8c, 0xea, 0xb0, 0x46, 0xfd, 0x33, 0x7b, 0x5d,
6678
-	0x9b, 0xd4, 0x50, 0x59, 0x5c, 0x16, 0x67, 0x5f, 0x15, 0xab, 0xa1, 0xe2, 0x45, 0x21, 0x15, 0x76,
6679
-	0x39, 0xde, 0x51, 0x35, 0x46, 0x3f, 0x81, 0xd2, 0x94, 0x47, 0xbe, 0x0c, 0xed, 0x8a, 0x0e, 0xf6,
6680
-	0x56, 0x5e, 0xb0, 0x8f, 0x15, 0xc2, 0x28, 0xcb, 0xc0, 0xd1, 0x00, 0xae, 0x85, 0x92, 0x07, 0xa3,
6681
-	0xb1, 0x20, 0x0e, 0x1d, 0x05, 0x54, 0x30, 0xee, 0x9a, 0x6b, 0xf8, 0xd6, 0x6b, 0x87, 0xd2, 0x37,
6682
-	0x0d, 0x1d, 0xbe, 0xaa, 0x38, 0x7b, 0x8a, 0x32, 0xd4, 0x0c, 0x34, 0x84, 0x5a, 0x10, 0x79, 0xde,
6683
-	0x88, 0x07, 0x71, 0x45, 0x8e, 0x73, 0xe7, 0x2d, 0xb6, 0x6c, 0x18, 0x79, 0xde, 0x93, 0x98, 0x84,
6684
-	0xad, 0x60, 0x31, 0x41, 0x37, 0xa1, 0x34, 0x16, 0x3c, 0x0a, 0xe2, 0xbc, 0xa9, 0x62, 0x33, 0x43,
6685
-	0x5f, 0x42, 0x39, 0xa4, 0x8e, 0xa0, 0x32, 0xb4, 0x6b, 0x7a, 0xa9, 0x1f, 0xe6, 0xfd, 0xe4, 0x50,
6686
-	0x43, 0xd2, 0x9c, 0xc0, 0x09, 0x07, 0xdd, 0x82, 0x35, 0x29, 0x67, 0xf6, 0x46, 0xab, 0xb0, 0x55,
6687
-	0xe9, 0x95, 0xe7, 0xe7, 0xcd, 0xb5, 0xa3, 0xa3, 0x67, 0x58, 0xd9, 0x54, 0xb5, 0x98, 0xf0, 0x50,
6688
-	0xfa, 0x64, 0x4a, 0xed, 0x2b, 0x7a, 0x6f, 0xd3, 0x39, 0x7a, 0x06, 0xe0, 0xfa, 0xe1, 0xc8, 0xd1,
6689
-	0xd7, 0x93, 0x7d, 0x55, 0xaf, 0xee, 0xd3, 0xcb, 0x57, 0xd7, 0x3f, 0x38, 0x34, 0x15, 0x73, 0x63,
6690
-	0x7e, 0xde, 0xac, 0xa6, 0x53, 0x5c, 0x75, 0xfd, 0x30, 0x1e, 0xa2, 0x1e, 0x58, 0x13, 0x4a, 0x3c,
6691
-	0x39, 0x71, 0x26, 0xd4, 0x39, 0xb5, 0xeb, 0x17, 0x97, 0xc0, 0x87, 0x1a, 0x66, 0x3c, 0x64, 0x49,
6692
-	0x4a, 0xc1, 0x2a, 0xd4, 0xd0, 0xbe, 0xa6, 0xf7, 0x2a, 0x9e, 0xa0, 0x0f, 0x00, 0x78, 0x40, 0xfd,
6693
-	0x51, 0x28, 0x5d, 0xe6, 0xdb, 0x48, 0x2d, 0x19, 0x57, 0x95, 0xe5, 0x50, 0x19, 0xd0, 0x6d, 0x55,
6694
-	0xa0, 0x88, 0x3b, 0xe2, 0xbe, 0x37, 0xb3, 0xdf, 0xd3, 0x5f, 0x2b, 0xca, 0xf0, 0xc4, 0xf7, 0x66,
6695
-	0xa8, 0x09, 0x96, 0xd6, 0x45, 0xc8, 0xc6, 0x3e, 0xf1, 0xec, 0xeb, 0x7a, 0x3f, 0x40, 0x99, 0x0e,
6696
-	0xb5, 0x45, 0x9d, 0x43, 0xbc, 0x1b, 0xa1, 0x7d, 0xe3, 0xe2, 0x73, 0x30, 0xc1, 0x2e, 0xce, 0xc1,
6697
-	0x70, 0xd0, 0xcf, 0x00, 0x02, 0xc1, 0xce, 0x98, 0x47, 0xc7, 0x34, 0xb4, 0x6f, 0xea, 0x45, 0x6f,
6698
-	0xe6, 0x56, 0xa6, 0x14, 0x85, 0x33, 0x0c, 0xd4, 0x04, 0x60, 0x3e, 0x93, 0xa3, 0x33, 0xe2, 0x45,
6699
-	0xd4, 0x7e, 0x5f, 0x45, 0xaf, 0xca, 0xaf, 0xb2, 0x3d, 0x55, 0xa6, 0xc6, 0xe7, 0x60, 0x65, 0xd2,
6700
-	0x51, 0xa5, 0xd1, 0x29, 0x9d, 0x99, 0x0c, 0x57, 0x43, 0xb5, 0x67, 0x31, 0x79, 0x35, 0xce, 0x7a,
6701
-	0x3d, 0xf9, 0x62, 0xf5, 0x7e, 0xa1, 0xb1, 0x03, 0x56, 0x46, 0x96, 0xe8, 0x43, 0x75, 0x3d, 0x8e,
6702
-	0x59, 0x28, 0xc5, 0x6c, 0x44, 0x22, 0x39, 0xb1, 0x7f, 0xa1, 0x09, 0xb5, 0xc4, 0xd8, 0x8d, 0xe4,
6703
-	0xa4, 0x31, 0x82, 0xc5, 0xe9, 0xa2, 0x16, 0x58, 0x4a, 0x35, 0x21, 0x15, 0x67, 0x54, 0xa8, 0xd6,
6704
-	0x43, 0x1d, 0x4a, 0xd6, 0xa4, 0xd4, 0x1d, 0x52, 0x22, 0x9c, 0x89, 0xbe, 0x5c, 0xaa, 0xd8, 0xcc,
6705
-	0xd4, 0x6d, 0x91, 0xa4, 0x90, 0xb9, 0x2d, 0xcc, 0x54, 0x35, 0x3a, 0x6a, 0x71, 0xed, 0x7f, 0x17,
6706
-	0xa0, 0x96, 0xed, 0xa4, 0xd0, 0x6e, 0xdc, 0x01, 0xe9, 0xa5, 0x5d, 0xd9, 0xd9, 0xbe, 0xac, 0xf3,
6707
-	0xd2, 0x37, 0xb8, 0x17, 0x29, 0xa7, 0x8f, 0xd5, 0xa3, 0x47, 0x93, 0xd1, 0x8f, 0x61, 0x3d, 0xe0,
6708
-	0x42, 0x26, 0x77, 0x5d, 0xfe, 0x49, 0x70, 0x91, 0xd4, 0xe7, 0x18, 0xdc, 0x9e, 0xc0, 0x95, 0x65,
6709
-	0x6f, 0xe8, 0x2e, 0xac, 0x3d, 0xdd, 0x1f, 0xd6, 0x57, 0x1a, 0xb7, 0x9f, 0xbf, 0x68, 0xbd, 0xbf,
6710
-	0xfc, 0xf1, 0x29, 0x13, 0x32, 0x22, 0xde, 0xfe, 0x10, 0x7d, 0x02, 0xeb, 0xfd, 0x83, 0x43, 0x8c,
6711
-	0xeb, 0x85, 0x46, 0xf3, 0xf9, 0x8b, 0xd6, 0xed, 0x65, 0x9c, 0xfa, 0xc4, 0x23, 0xdf, 0xc5, 0xfc,
6712
-	0x38, 0x7d, 0x00, 0xfc, 0x67, 0x15, 0x2c, 0x53, 0x02, 0xde, 0xf5, 0x1b, 0x71, 0x23, 0xee, 0x6f,
6713
-	0x92, 0xdc, 0x5e, 0xbd, 0xb4, 0xcd, 0xa9, 0xc5, 0x04, 0x73, 0xd6, 0x77, 0xa0, 0xc6, 0x82, 0xb3,
6714
-	0xcf, 0x46, 0xd4, 0x27, 0xc7, 0x9e, 0x79, 0x0b, 0x54, 0xb0, 0xa5, 0x6c, 0x83, 0xd8, 0xa4, 0x2e,
6715
-	0x16, 0xe6, 0x4b, 0x2a, 0x7c, 0xd3, 0xe5, 0x57, 0x70, 0x3a, 0x47, 0x5f, 0x42, 0x91, 0x05, 0x64,
6716
-	0x6a, 0x7a, 0xb3, 0xdc, 0x15, 0xec, 0x0f, 0xbb, 0x8f, 0x8d, 0x16, 0x7b, 0x95, 0xf9, 0x79, 0xb3,
6717
-	0xa8, 0x0c, 0x58, 0xd3, 0xd0, 0x66, 0xd2, 0x1e, 0xa9, 0x3f, 0xe9, 0x22, 0x51, 0xc1, 0x19, 0x8b,
6718
-	0xd2, 0x13, 0xf3, 0xc7, 0x82, 0x86, 0xa1, 0x2e, 0x17, 0x15, 0x9c, 0x4c, 0x51, 0x03, 0xca, 0xa6,
6719
-	0xc9, 0xd2, 0x5d, 0x55, 0x55, 0x35, 0x30, 0xc6, 0xd0, 0xdb, 0x00, 0x2b, 0xde, 0x8d, 0xd1, 0x89,
6720
-	0xe0, 0xd3, 0xf6, 0x7f, 0x8b, 0x60, 0xed, 0x7a, 0x51, 0x28, 0x4d, 0xbd, 0x7c, 0x67, 0x9b, 0xff,
6721
-	0x0c, 0xae, 0x11, 0xfd, 0xe6, 0x24, 0xbe, 0x2a, 0x3e, 0xba, 0x77, 0x35, 0x07, 0x70, 0x37, 0xd7,
6722
-	0x5d, 0x0a, 0x8e, 0xfb, 0xdc, 0x5e, 0x49, 0xf9, 0xb4, 0x0b, 0xb8, 0x4e, 0x5e, 0xf9, 0x82, 0x0e,
6723
-	0x61, 0x83, 0x0b, 0x67, 0x42, 0x43, 0x19, 0x97, 0x2c, 0xf3, 0x46, 0xcb, 0x7d, 0xbd, 0x3f, 0xc9,
6724
-	0x02, 0xcd, 0x7d, 0x1d, 0x47, 0xbb, 0xec, 0x03, 0xdd, 0x87, 0xa2, 0x20, 0x27, 0x49, 0x1f, 0x9e,
6725
-	0x9b, 0x24, 0x98, 0x9c, 0xc8, 0x25, 0x17, 0x9a, 0x81, 0x7e, 0x05, 0xe0, 0xb2, 0x30, 0x20, 0xd2,
6726
-	0x99, 0x50, 0x61, 0x0e, 0x3b, 0x77, 0x89, 0xfd, 0x14, 0xb5, 0xe4, 0x25, 0xc3, 0x46, 0x8f, 0xa0,
6727
-	0xea, 0x90, 0x44, 0xae, 0xa5, 0x8b, 0x1f, 0xae, 0xbb, 0x5d, 0xe3, 0xa2, 0xae, 0x5c, 0xcc, 0xcf,
6728
-	0x9b, 0x95, 0xc4, 0x82, 0x2b, 0x0e, 0x31, 0xf2, 0x7d, 0x04, 0x1b, 0xea, 0x41, 0x3b, 0x72, 0xe9,
6729
-	0x09, 0x89, 0x3c, 0x19, 0xcb, 0xe4, 0x82, 0xfa, 0xa3, 0x5e, 0x47, 0x7d, 0x83, 0x33, 0x71, 0xd5,
6730
-	0x64, 0xc6, 0x86, 0x7e, 0x03, 0xd7, 0xa8, 0xef, 0x88, 0x99, 0x16, 0x6b, 0x12, 0x61, 0xe5, 0xe2,
6731
-	0xc5, 0x0e, 0x52, 0xf0, 0xd2, 0x62, 0xeb, 0xf4, 0x15, 0x7b, 0xfb, 0x9f, 0x05, 0x80, 0xb8, 0xa4,
6732
-	0xbf, 0x5b, 0x01, 0x22, 0x28, 0xba, 0x44, 0x12, 0xad, 0xb9, 0x1a, 0xd6, 0x63, 0xf4, 0x05, 0x80,
6733
-	0xa4, 0xd3, 0xc0, 0x23, 0x92, 0xf9, 0x63, 0x23, 0x9b, 0x37, 0x5d, 0x07, 0x19, 0x34, 0xda, 0x81,
6734
-	0x92, 0x79, 0x2d, 0x15, 0x2f, 0xe5, 0x19, 0x64, 0xfb, 0x2f, 0x05, 0x80, 0x78, 0x99, 0xdf, 0xe9,
6735
-	0xb5, 0xf5, 0xec, 0x97, 0xdf, 0x6e, 0xae, 0xfc, 0xe3, 0xdb, 0xcd, 0x95, 0x3f, 0xcc, 0x37, 0x0b,
6736
-	0x2f, 0xe7, 0x9b, 0x85, 0xbf, 0xcf, 0x37, 0x0b, 0xff, 0x9a, 0x6f, 0x16, 0x8e, 0x4b, 0xba, 0x41,
6737
-	0xfc, 0xd1, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x4f, 0xdf, 0x5d, 0x60, 0x83, 0x14, 0x00, 0x00,
6612
+	// 1975 bytes of a gzipped FileDescriptorProto
6613
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x57, 0xcf, 0x6f, 0x1b, 0xb9,
6614
+	0x15, 0xb6, 0x6c, 0x59, 0x3f, 0xde, 0xc8, 0x89, 0xc2, 0xcd, 0xa6, 0x13, 0xa5, 0x6b, 0x2b, 0xda,
6615
+	0x6c, 0xea, 0xdd, 0x45, 0x25, 0xd4, 0x2d, 0xb6, 0xd9, 0x4d, 0xb7, 0xad, 0x64, 0xa9, 0x8e, 0x9b,
6616
+	0xc6, 0x11, 0x68, 0x6f, 0xda, 0x00, 0x05, 0x04, 0x6a, 0x86, 0x1e, 0x0d, 0x3c, 0x1a, 0x4e, 0x39,
6617
+	0x1c, 0x2d, 0x74, 0xeb, 0x71, 0x91, 0x1e, 0x7b, 0x0e, 0x7a, 0x28, 0x7a, 0xef, 0x9f, 0x91, 0x63,
6618
+	0x8f, 0xed, 0xc5, 0xe8, 0xea, 0x5f, 0xe8, 0xad, 0x97, 0x16, 0xe4, 0x70, 0x46, 0xa3, 0x64, 0x6c,
6619
+	0x07, 0x68, 0x0e, 0xbd, 0x91, 0x8f, 0xdf, 0xf7, 0x48, 0x3e, 0x7e, 0x8f, 0x7c, 0x84, 0x4f, 0x1c,
6620
+	0x57, 0x4c, 0xa2, 0x71, 0xdb, 0x62, 0xd3, 0x8e, 0xcd, 0xac, 0x33, 0xca, 0x3b, 0xe1, 0xd7, 0x84,
6621
+	0x4f, 0xcf, 0x5c, 0xd1, 0x21, 0x81, 0xdb, 0x09, 0x03, 0x6a, 0x85, 0xed, 0x80, 0x33, 0xc1, 0x10,
6622
+	0x8a, 0x01, 0xed, 0x04, 0xd0, 0x9e, 0xfd, 0xa0, 0x71, 0x15, 0x5f, 0xcc, 0x03, 0xaa, 0xf9, 0x8d,
6623
+	0x9b, 0x0e, 0x73, 0x98, 0x6a, 0x76, 0x64, 0x4b, 0x5b, 0xb7, 0x1d, 0xc6, 0x1c, 0x8f, 0x76, 0x54,
6624
+	0x6f, 0x1c, 0x9d, 0x76, 0xec, 0x88, 0x13, 0xe1, 0x32, 0x5f, 0x8f, 0xdf, 0x7e, 0x7d, 0x9c, 0xf8,
6625
+	0xf3, 0x78, 0xa8, 0xf5, 0xb2, 0x08, 0x95, 0x23, 0x66, 0xd3, 0xe3, 0x80, 0x5a, 0xe8, 0x00, 0x0c,
6626
+	0xe2, 0xfb, 0x4c, 0x28, 0x6e, 0x68, 0x16, 0x9a, 0x85, 0x5d, 0x63, 0x6f, 0xa7, 0xfd, 0xe6, 0x9a,
6627
+	0xdb, 0xdd, 0x25, 0xac, 0x57, 0x7c, 0x75, 0xbe, 0xb3, 0x86, 0xb3, 0x4c, 0xf4, 0x33, 0xa8, 0xd9,
6628
+	0x34, 0x74, 0x39, 0xb5, 0x47, 0x9c, 0x79, 0xd4, 0x5c, 0x6f, 0x16, 0x76, 0xaf, 0xed, 0x7d, 0x37,
6629
+	0xcf, 0x93, 0x9c, 0x1c, 0x33, 0x8f, 0x62, 0x43, 0x33, 0x64, 0x07, 0x1d, 0x00, 0x4c, 0xe9, 0x74,
6630
+	0x4c, 0x79, 0x38, 0x71, 0x03, 0x73, 0x43, 0xd1, 0xbf, 0x77, 0x11, 0x5d, 0xae, 0xbd, 0xfd, 0x24,
6631
+	0x85, 0xe3, 0x0c, 0x15, 0x3d, 0x81, 0x1a, 0x99, 0x11, 0xd7, 0x23, 0x63, 0xd7, 0x73, 0xc5, 0xdc,
6632
+	0x2c, 0x2a, 0x57, 0x1f, 0x5f, 0xea, 0xaa, 0x9b, 0x21, 0xe0, 0x15, 0x7a, 0xcb, 0x06, 0x58, 0x4e,
6633
+	0x84, 0xee, 0x43, 0x79, 0x38, 0x38, 0xea, 0x1f, 0x1e, 0x1d, 0xd4, 0xd7, 0x1a, 0xb7, 0x5f, 0xbc,
6634
+	0x6c, 0xbe, 0x2f, 0x7d, 0x2c, 0x01, 0x43, 0xea, 0xdb, 0xae, 0xef, 0xa0, 0x5d, 0xa8, 0x74, 0xf7,
6635
+	0xf7, 0x07, 0xc3, 0x93, 0x41, 0xbf, 0x5e, 0x68, 0x34, 0x5e, 0xbc, 0x6c, 0xde, 0x5a, 0x05, 0x76,
6636
+	0x2d, 0x8b, 0x06, 0x82, 0xda, 0x8d, 0xe2, 0x37, 0x7f, 0xde, 0x5e, 0x6b, 0x7d, 0x53, 0x80, 0x5a,
6637
+	0x76, 0x11, 0xe8, 0x3e, 0x94, 0xba, 0xfb, 0x27, 0x87, 0xcf, 0x06, 0xf5, 0xb5, 0x25, 0x3d, 0x8b,
6638
+	0xe8, 0x5a, 0xc2, 0x9d, 0x51, 0x74, 0x0f, 0x36, 0x87, 0xdd, 0xaf, 0x8e, 0x07, 0xf5, 0xc2, 0x72,
6639
+	0x39, 0x59, 0xd8, 0x90, 0x44, 0xa1, 0x42, 0xf5, 0x71, 0xf7, 0xf0, 0xa8, 0xbe, 0x9e, 0x8f, 0xea,
6640
+	0x73, 0xe2, 0xfa, 0x7a, 0x29, 0x7f, 0x2a, 0x82, 0x71, 0x4c, 0xf9, 0xcc, 0xb5, 0xde, 0xb1, 0x44,
6641
+	0x3e, 0x83, 0xa2, 0x20, 0xe1, 0x99, 0x92, 0x86, 0x91, 0x2f, 0x8d, 0x13, 0x12, 0x9e, 0xc9, 0x49,
6642
+	0x35, 0x5d, 0xe1, 0xa5, 0x32, 0x38, 0x0d, 0x3c, 0xd7, 0x22, 0x82, 0xda, 0x4a, 0x19, 0xc6, 0xde,
6643
+	0x47, 0x79, 0x6c, 0x9c, 0xa2, 0xf4, 0xfa, 0x1f, 0xad, 0xe1, 0x0c, 0x15, 0x3d, 0x84, 0x92, 0xe3,
6644
+	0xb1, 0x31, 0xf1, 0x94, 0x26, 0x8c, 0xbd, 0xbb, 0x79, 0x4e, 0x0e, 0x14, 0x62, 0xe9, 0x40, 0x53,
6645
+	0xd0, 0x03, 0x28, 0x45, 0x81, 0x4d, 0x04, 0x35, 0x4b, 0x8a, 0xdc, 0xcc, 0x23, 0x7f, 0xa5, 0x10,
6646
+	0xfb, 0xcc, 0x3f, 0x75, 0x1d, 0xac, 0xf1, 0xe8, 0x31, 0x54, 0x7c, 0x2a, 0xbe, 0x66, 0xfc, 0x2c,
6647
+	0x34, 0xcb, 0xcd, 0x8d, 0x5d, 0x63, 0xef, 0xd3, 0x5c, 0x31, 0xc6, 0x98, 0xae, 0x10, 0xc4, 0x9a,
6648
+	0x4c, 0xa9, 0x2f, 0x62, 0x37, 0xbd, 0x75, 0xb3, 0x80, 0x53, 0x07, 0xe8, 0x27, 0x50, 0xa1, 0xbe,
6649
+	0x1d, 0x30, 0xd7, 0x17, 0x66, 0xe5, 0xe2, 0x85, 0x0c, 0x34, 0x46, 0x06, 0x13, 0xa7, 0x0c, 0xc9,
6650
+	0xe6, 0xcc, 0xf3, 0xc6, 0xc4, 0x3a, 0x33, 0xab, 0x6f, 0xb9, 0x8d, 0x94, 0xd1, 0x2b, 0x41, 0x71,
6651
+	0xca, 0x6c, 0xda, 0xea, 0xc0, 0x8d, 0x37, 0x42, 0x8d, 0x1a, 0x50, 0xd1, 0xa1, 0x8e, 0x35, 0x52,
6652
+	0xc4, 0x69, 0xbf, 0x75, 0x1d, 0xb6, 0x56, 0xc2, 0xda, 0xfa, 0xeb, 0x26, 0x54, 0x92, 0xb3, 0x46,
6653
+	0x5d, 0xa8, 0x5a, 0xcc, 0x17, 0xc4, 0xf5, 0x29, 0xd7, 0xf2, 0xca, 0x3d, 0x99, 0xfd, 0x04, 0x24,
6654
+	0x59, 0x8f, 0xd6, 0xf0, 0x92, 0x85, 0x7e, 0x01, 0x55, 0x4e, 0x43, 0x16, 0x71, 0x8b, 0x86, 0x5a,
6655
+	0x5f, 0xbb, 0xf9, 0x0a, 0x89, 0x41, 0x98, 0xfe, 0x2e, 0x72, 0x39, 0x95, 0x51, 0x0e, 0xf1, 0x92,
6656
+	0x8a, 0x1e, 0x42, 0x99, 0xd3, 0x50, 0x10, 0x2e, 0x2e, 0x93, 0x08, 0x8e, 0x21, 0x43, 0xe6, 0xb9,
6657
+	0xd6, 0x1c, 0x27, 0x0c, 0xf4, 0x10, 0xaa, 0x81, 0x47, 0x2c, 0xe5, 0xd5, 0xdc, 0x54, 0xf4, 0x0f,
6658
+	0xf2, 0xe8, 0xc3, 0x04, 0x84, 0x97, 0x78, 0xf4, 0x39, 0x80, 0xc7, 0x9c, 0x91, 0xcd, 0xdd, 0x19,
6659
+	0xe5, 0x5a, 0x62, 0x8d, 0x3c, 0x76, 0x5f, 0x21, 0x70, 0xd5, 0x63, 0x4e, 0xdc, 0x44, 0x07, 0xff,
6660
+	0x93, 0xbe, 0x32, 0xda, 0x7a, 0x0c, 0x40, 0xd2, 0x51, 0xad, 0xae, 0x8f, 0xdf, 0xca, 0x95, 0x3e,
6661
+	0x91, 0x0c, 0x1d, 0xdd, 0x85, 0xda, 0x29, 0xe3, 0x16, 0x1d, 0xe9, 0xac, 0xa9, 0x2a, 0x4d, 0x18,
6662
+	0xca, 0x16, 0xeb, 0x0b, 0xf5, 0xa0, 0xec, 0x50, 0x9f, 0x72, 0xd7, 0x32, 0x41, 0x4d, 0x76, 0x3f,
6663
+	0x37, 0x21, 0x63, 0x08, 0x8e, 0x7c, 0xe1, 0x4e, 0xa9, 0x9e, 0x29, 0x21, 0xa2, 0xdf, 0xc2, 0x7b,
6664
+	0xc9, 0xf1, 0x8d, 0x38, 0x3d, 0xa5, 0x9c, 0xfa, 0x52, 0x03, 0x86, 0x8a, 0xc3, 0x47, 0x97, 0x6b,
6665
+	0x40, 0xa3, 0xf5, 0x65, 0x83, 0xf8, 0xeb, 0x03, 0x61, 0xaf, 0x0a, 0x65, 0x1e, 0xcf, 0xdb, 0xfa,
6666
+	0x43, 0x41, 0xaa, 0xfe, 0x35, 0x04, 0xea, 0x80, 0x91, 0x4e, 0xef, 0xda, 0x4a, 0xbd, 0xd5, 0xde,
6667
+	0xb5, 0xc5, 0xf9, 0x0e, 0x24, 0xd8, 0xc3, 0xbe, 0xbc, 0x83, 0x74, 0xdb, 0x46, 0x03, 0xd8, 0x4a,
6668
+	0x09, 0xf2, 0x99, 0xd7, 0x0f, 0x65, 0xf3, 0xb2, 0x95, 0x9e, 0xcc, 0x03, 0x8a, 0x6b, 0x3c, 0xd3,
6669
+	0x6b, 0xfd, 0x06, 0xd0, 0x9b, 0x71, 0x41, 0x08, 0x8a, 0x67, 0xae, 0xaf, 0x97, 0x81, 0x55, 0x1b,
6670
+	0xb5, 0xa1, 0x1c, 0x90, 0xb9, 0xc7, 0x88, 0xad, 0x13, 0xe3, 0x66, 0x3b, 0xae, 0x0d, 0xda, 0x49,
6671
+	0x6d, 0xd0, 0xee, 0xfa, 0x73, 0x9c, 0x80, 0x5a, 0x8f, 0xe1, 0xfd, 0xdc, 0xe3, 0x45, 0x7b, 0x50,
6672
+	0x4b, 0x13, 0x6e, 0xb9, 0xd7, 0xeb, 0x8b, 0xf3, 0x1d, 0x23, 0xcd, 0xcc, 0xc3, 0x3e, 0x36, 0x52,
6673
+	0xd0, 0xa1, 0xdd, 0xfa, 0x63, 0x15, 0xb6, 0x56, 0xd2, 0x16, 0xdd, 0x84, 0x4d, 0x77, 0x4a, 0x1c,
6674
+	0xaa, 0xd7, 0x18, 0x77, 0xd0, 0x00, 0x4a, 0x1e, 0x19, 0x53, 0x4f, 0x26, 0xaf, 0x3c, 0xb8, 0xef,
6675
+	0x5f, 0x99, 0xff, 0xed, 0x5f, 0x29, 0xfc, 0xc0, 0x17, 0x7c, 0x8e, 0x35, 0x19, 0x99, 0x50, 0xb6,
6676
+	0xd8, 0x74, 0x4a, 0x7c, 0xf9, 0x4c, 0x6c, 0xec, 0x56, 0x71, 0xd2, 0x95, 0x91, 0x21, 0xdc, 0x09,
6677
+	0xcd, 0xa2, 0x32, 0xab, 0x36, 0xaa, 0xc3, 0x06, 0xf5, 0x67, 0xe6, 0xa6, 0x32, 0xc9, 0xa6, 0xb4,
6678
+	0xd8, 0x6e, 0x9c, 0x7d, 0x55, 0x2c, 0x9b, 0x92, 0x17, 0x85, 0x94, 0x9b, 0xe5, 0x38, 0xa2, 0xb2,
6679
+	0x8d, 0x7e, 0x0c, 0xa5, 0x29, 0x8b, 0x7c, 0x11, 0x9a, 0x15, 0xb5, 0xd8, 0xdb, 0x79, 0x8b, 0x7d,
6680
+	0x22, 0x11, 0x5a, 0x59, 0x1a, 0x8e, 0x06, 0x70, 0x23, 0x14, 0x2c, 0x18, 0x39, 0x9c, 0x58, 0x74,
6681
+	0x14, 0x50, 0xee, 0x32, 0x5b, 0x5f, 0xc3, 0xb7, 0xdf, 0x38, 0x94, 0xbe, 0x2e, 0xe8, 0xf0, 0x75,
6682
+	0xc9, 0x39, 0x90, 0x94, 0xa1, 0x62, 0xa0, 0x21, 0xd4, 0x82, 0xc8, 0xf3, 0x46, 0x2c, 0x88, 0x5f,
6683
+	0xe4, 0x38, 0x77, 0xde, 0x22, 0x64, 0xc3, 0xc8, 0xf3, 0x9e, 0xc6, 0x24, 0x6c, 0x04, 0xcb, 0x0e,
6684
+	0xba, 0x05, 0x25, 0x87, 0xb3, 0x28, 0x88, 0xf3, 0xa6, 0x8a, 0x75, 0x0f, 0x7d, 0x09, 0xe5, 0x90,
6685
+	0x5a, 0x9c, 0x8a, 0xd0, 0xac, 0xa9, 0xad, 0x7e, 0x98, 0x37, 0xc9, 0xb1, 0x82, 0xa4, 0x39, 0x81,
6686
+	0x13, 0x0e, 0xba, 0x0d, 0x1b, 0x42, 0xcc, 0xcd, 0xad, 0x66, 0x61, 0xb7, 0xd2, 0x2b, 0x2f, 0xce,
6687
+	0x77, 0x36, 0x4e, 0x4e, 0x9e, 0x63, 0x69, 0x93, 0xaf, 0xc5, 0x84, 0x85, 0xc2, 0x27, 0x53, 0x6a,
6688
+	0x5e, 0x53, 0xb1, 0x4d, 0xfb, 0xe8, 0x39, 0x80, 0xed, 0x87, 0x23, 0x4b, 0x5d, 0x4f, 0xe6, 0x75,
6689
+	0xb5, 0xbb, 0x4f, 0xaf, 0xde, 0x5d, 0xff, 0xe8, 0x58, 0xbf, 0x98, 0x5b, 0x8b, 0xf3, 0x9d, 0x6a,
6690
+	0xda, 0xc5, 0x55, 0xdb, 0x0f, 0xe3, 0x26, 0xea, 0x81, 0x31, 0xa1, 0xc4, 0x13, 0x13, 0x6b, 0x42,
6691
+	0xad, 0x33, 0xb3, 0x7e, 0xf1, 0x13, 0xf8, 0x48, 0xc1, 0xb4, 0x87, 0x2c, 0x49, 0x2a, 0x58, 0x2e,
6692
+	0x35, 0x34, 0x6f, 0xa8, 0x58, 0xc5, 0x1d, 0xf4, 0x01, 0x00, 0x0b, 0xa8, 0x3f, 0x0a, 0x85, 0xed,
6693
+	0xfa, 0x26, 0x92, 0x5b, 0xc6, 0x55, 0x69, 0x39, 0x96, 0x06, 0x74, 0x47, 0x3e, 0x50, 0xc4, 0x1e,
6694
+	0x31, 0xdf, 0x9b, 0x9b, 0xef, 0xa9, 0xd1, 0x8a, 0x34, 0x3c, 0xf5, 0xbd, 0x39, 0xda, 0x01, 0x43,
6695
+	0xe9, 0x22, 0x74, 0x1d, 0x9f, 0x78, 0xe6, 0x4d, 0x15, 0x0f, 0x90, 0xa6, 0x63, 0x65, 0x91, 0xe7,
6696
+	0x10, 0x47, 0x23, 0x34, 0xdf, 0xbf, 0xf8, 0x1c, 0xf4, 0x62, 0x97, 0xe7, 0xa0, 0x39, 0xe8, 0xa7,
6697
+	0x00, 0x01, 0x77, 0x67, 0xae, 0x47, 0x1d, 0x1a, 0x9a, 0xb7, 0xd4, 0xa6, 0xb7, 0x73, 0x5f, 0xa6,
6698
+	0x14, 0x85, 0x33, 0x8c, 0xc6, 0xe7, 0x60, 0x64, 0xb2, 0x4d, 0x66, 0xc9, 0x19, 0x9d, 0xeb, 0x04,
6699
+	0x96, 0x4d, 0x19, 0x92, 0x19, 0xf1, 0xa2, 0xf8, 0x32, 0xab, 0xe2, 0xb8, 0xf3, 0xc5, 0xfa, 0x83,
6700
+	0x42, 0x63, 0x0f, 0x8c, 0x8c, 0xea, 0xd0, 0x87, 0xf2, 0xf6, 0x73, 0xdc, 0x50, 0xf0, 0xf9, 0x88,
6701
+	0x44, 0x62, 0x62, 0xfe, 0x5c, 0x11, 0x6a, 0x89, 0xb1, 0x1b, 0x89, 0x49, 0x63, 0x04, 0xcb, 0xc3,
6702
+	0x43, 0x4d, 0x30, 0xa4, 0x28, 0x42, 0xca, 0x67, 0x94, 0xcb, 0xca, 0x42, 0xc6, 0x3c, 0x6b, 0x92,
6703
+	0xe2, 0x0d, 0x29, 0xe1, 0xd6, 0x44, 0xdd, 0x1d, 0x55, 0xac, 0x7b, 0xf2, 0x32, 0x48, 0x32, 0x44,
6704
+	0x5f, 0x06, 0xba, 0xdb, 0xfa, 0x57, 0x01, 0x6a, 0xd9, 0x02, 0x09, 0xed, 0xc7, 0x85, 0x8d, 0xda,
6705
+	0xd2, 0xb5, 0xbd, 0xce, 0x55, 0x05, 0x95, 0xba, 0x98, 0xbd, 0x48, 0x3a, 0x7b, 0x22, 0xff, 0x32,
6706
+	0x8a, 0x8c, 0x7e, 0x04, 0x9b, 0x01, 0xe3, 0x22, 0xb9, 0xc2, 0xf2, 0x03, 0xcc, 0x78, 0xf2, 0xec,
6707
+	0xc6, 0xe0, 0xd6, 0x04, 0xae, 0xad, 0x7a, 0x43, 0xf7, 0x60, 0xe3, 0xd9, 0xe1, 0xb0, 0xbe, 0xd6,
6708
+	0xb8, 0xf3, 0xe2, 0x65, 0xf3, 0x3b, 0xab, 0x83, 0xcf, 0x5c, 0x2e, 0x22, 0xe2, 0x1d, 0x0e, 0xd1,
6709
+	0x27, 0xb0, 0xd9, 0x3f, 0x3a, 0xc6, 0xb8, 0x5e, 0x68, 0xec, 0xbc, 0x78, 0xd9, 0xbc, 0xb3, 0x8a,
6710
+	0x93, 0x43, 0x2c, 0xf2, 0x6d, 0xcc, 0xc6, 0x69, 0x5d, 0xff, 0xef, 0x75, 0x30, 0xf4, 0xcd, 0xfe,
6711
+	0xae, 0xbf, 0x7e, 0x5b, 0x71, 0xd9, 0x92, 0xa4, 0xec, 0xfa, 0x95, 0xd5, 0x4b, 0x2d, 0x26, 0xe8,
6712
+	0x33, 0xbe, 0x0b, 0x35, 0x37, 0x98, 0x7d, 0x36, 0xa2, 0x3e, 0x19, 0x7b, 0xba, 0xc4, 0xaf, 0x60,
6713
+	0x43, 0xda, 0x06, 0xb1, 0x49, 0xde, 0x17, 0xae, 0x2f, 0x28, 0xf7, 0x75, 0xf1, 0x5e, 0xc1, 0x69,
6714
+	0x1f, 0x7d, 0x09, 0x45, 0x37, 0x20, 0x53, 0x5d, 0x72, 0xe5, 0xee, 0xe0, 0x70, 0xd8, 0x7d, 0xa2,
6715
+	0x35, 0xd8, 0xab, 0x2c, 0xce, 0x77, 0x8a, 0xd2, 0x80, 0x15, 0x0d, 0x6d, 0x27, 0x55, 0x8f, 0x9c,
6716
+	0x49, 0xdd, 0xfd, 0x15, 0x9c, 0xb1, 0x48, 0x1d, 0xb9, 0xbe, 0xc3, 0x69, 0x18, 0xaa, 0x57, 0xa0,
6717
+	0x82, 0x93, 0x2e, 0x6a, 0x40, 0x59, 0xd7, 0x4e, 0xaa, 0x58, 0xaa, 0xca, 0xba, 0x44, 0x1b, 0x7a,
6718
+	0x5b, 0x60, 0xc4, 0xd1, 0x18, 0x9d, 0x72, 0x36, 0x6d, 0xfd, 0xa7, 0x08, 0xc6, 0xbe, 0x17, 0x85,
6719
+	0x42, 0x3f, 0x83, 0xef, 0x2c, 0xf8, 0xcf, 0xe1, 0x06, 0x51, 0x5f, 0x49, 0xe2, 0xcb, 0x37, 0x45,
6720
+	0x95, 0xa4, 0xfa, 0x00, 0xee, 0xe5, 0xba, 0x4b, 0xc1, 0x71, 0xf9, 0xda, 0x2b, 0x49, 0x9f, 0x66,
6721
+	0x01, 0xd7, 0xc9, 0x6b, 0x23, 0xe8, 0x18, 0xb6, 0x18, 0xb7, 0x26, 0x34, 0x14, 0xf1, 0x4b, 0xa4,
6722
+	0xbf, 0x5e, 0xb9, 0x9f, 0xf2, 0xa7, 0x59, 0xa0, 0xbe, 0x86, 0xe3, 0xd5, 0xae, 0xfa, 0x40, 0x0f,
6723
+	0xa0, 0xc8, 0xc9, 0x69, 0x52, 0x5e, 0xe7, 0x26, 0x09, 0x26, 0xa7, 0x62, 0xc5, 0x85, 0x62, 0xa0,
6724
+	0x5f, 0x02, 0xd8, 0x6e, 0x18, 0x10, 0x61, 0x4d, 0x28, 0xd7, 0x87, 0x9d, 0xbb, 0xc5, 0x7e, 0x8a,
6725
+	0x5a, 0xf1, 0x92, 0x61, 0xa3, 0xc7, 0x50, 0xb5, 0x48, 0x22, 0xd7, 0xd2, 0xc5, 0xff, 0xd1, 0xfd,
6726
+	0xae, 0x76, 0x51, 0x97, 0x2e, 0x16, 0xe7, 0x3b, 0x95, 0xc4, 0x82, 0x2b, 0x16, 0xd1, 0xf2, 0x7d,
6727
+	0x0c, 0x5b, 0xf2, 0x9f, 0x3a, 0xb2, 0xe9, 0x29, 0x89, 0x3c, 0x11, 0xcb, 0xe4, 0x82, 0x67, 0x45,
6728
+	0x7e, 0x7a, 0xfa, 0x1a, 0xa7, 0xd7, 0x55, 0x13, 0x19, 0x1b, 0xfa, 0x35, 0xdc, 0xa0, 0xbe, 0xc5,
6729
+	0xe7, 0x4a, 0xac, 0xc9, 0x0a, 0x2b, 0x17, 0x6f, 0x76, 0x90, 0x82, 0x57, 0x36, 0x5b, 0xa7, 0xaf,
6730
+	0xd9, 0x5b, 0xff, 0x28, 0x00, 0xc4, 0x2f, 0xf5, 0xbb, 0x15, 0x20, 0x82, 0xa2, 0x4d, 0x04, 0x51,
6731
+	0x9a, 0xab, 0x61, 0xd5, 0x46, 0x5f, 0x00, 0x08, 0x3a, 0x0d, 0x3c, 0x22, 0x5c, 0xdf, 0xd1, 0xb2,
6732
+	0xb9, 0xec, 0x3a, 0xc8, 0xa0, 0xd1, 0x1e, 0x94, 0xf4, 0x27, 0xa8, 0x78, 0x25, 0x4f, 0x23, 0x5b,
6733
+	0x7f, 0x29, 0x00, 0xc4, 0xdb, 0xfc, 0xbf, 0xde, 0x5b, 0xcf, 0x7c, 0xf5, 0xed, 0xf6, 0xda, 0xdf,
6734
+	0xbf, 0xdd, 0x5e, 0xfb, 0xfd, 0x62, 0xbb, 0xf0, 0x6a, 0xb1, 0x5d, 0xf8, 0xdb, 0x62, 0xbb, 0xf0,
6735
+	0xcf, 0xc5, 0x76, 0x61, 0x5c, 0x52, 0x75, 0xdf, 0x0f, 0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xae,
6736
+	0x88, 0xf9, 0x3c, 0x5a, 0x14, 0x00, 0x00,
6738 6737
 }
... ...
@@ -293,11 +293,6 @@ message ContainerSpec {
293 293
 	// task will exit and a new task will be rescheduled elsewhere. A container
294 294
 	// is considered unhealthy after `Retries` number of consecutive failures.
295 295
 	HealthConfig healthcheck = 16;
296
-	
297
-	// Run a custom init inside the container, if null, use the daemon's configured settings
298
-	oneof init {
299
-		bool init_value = 23;
300
-	}
301 296
 }
302 297
 
303 298
 // EndpointSpec defines the properties that can be configured to
... ...
@@ -187,10 +187,7 @@ func (k *KeyReadWriter) ViewAndRotateKEK(cb func(KEKData, PEMKeyHeaders) (KEKDat
187 187
 		return err
188 188
 	}
189 189
 
190
-	if err := k.writeKey(keyBlock, updatedKEK, updatedHeaderObj); err != nil {
191
-		return err
192
-	}
193
-	return nil
190
+	return k.writeKey(keyBlock, updatedKEK, updatedHeaderObj)
194 191
 }
195 192
 
196 193
 // ViewAndUpdateHeaders updates the header manager, and updates any headers on the existing key
... ...
@@ -459,8 +459,8 @@ func (na *cnmNetworkAllocator) DeallocateTask(t *api.Task) error {
459 459
 	return na.releaseEndpoints(t.Networks)
460 460
 }
461 461
 
462
-// IsLBAttachmentAllocated returns if the passed node and network has resources allocated or not.
463
-func (na *cnmNetworkAllocator) IsLBAttachmentAllocated(node *api.Node, networkAttachment *api.NetworkAttachment) bool {
462
+// IsAttachmentAllocated returns if the passed node and network has resources allocated or not.
463
+func (na *cnmNetworkAllocator) IsAttachmentAllocated(node *api.Node, networkAttachment *api.NetworkAttachment) bool {
464 464
 	if node == nil {
465 465
 		return false
466 466
 	}
... ...
@@ -500,9 +500,9 @@ func (na *cnmNetworkAllocator) IsLBAttachmentAllocated(node *api.Node, networkAt
500 500
 	return true
501 501
 }
502 502
 
503
-// AllocateLBAttachment allocates the IP addresses for a LB in a network
503
+// AllocateAttachment allocates the IP addresses for a LB in a network
504 504
 // on a given node
505
-func (na *cnmNetworkAllocator) AllocateLBAttachment(node *api.Node, networkAttachment *api.NetworkAttachment) error {
505
+func (na *cnmNetworkAllocator) AllocateAttachment(node *api.Node, networkAttachment *api.NetworkAttachment) error {
506 506
 
507 507
 	if err := na.allocateNetworkIPs(networkAttachment); err != nil {
508 508
 		return err
... ...
@@ -516,9 +516,9 @@ func (na *cnmNetworkAllocator) AllocateLBAttachment(node *api.Node, networkAttac
516 516
 	return nil
517 517
 }
518 518
 
519
-// DeallocateLBAttachment deallocates the IP addresses for a LB in a network to
519
+// DeallocateAttachment deallocates the IP addresses for a LB in a network to
520 520
 // which the node is attached.
521
-func (na *cnmNetworkAllocator) DeallocateLBAttachment(node *api.Node, networkAttachment *api.NetworkAttachment) error {
521
+func (na *cnmNetworkAllocator) DeallocateAttachment(node *api.Node, networkAttachment *api.NetworkAttachment) error {
522 522
 
523 523
 	delete(na.nodes[node.ID], networkAttachment.Network.ID)
524 524
 	if len(na.nodes[node.ID]) == 0 {
... ...
@@ -172,11 +172,7 @@ func (a *Allocator) doNetworkInit(ctx context.Context) (err error) {
172 172
 	if err := a.allocateServices(ctx, false); err != nil {
173 173
 		return err
174 174
 	}
175
-	if err := a.allocateTasks(ctx, false); err != nil {
176
-		return err
177
-	}
178
-
179
-	return nil
175
+	return a.allocateTasks(ctx, false)
180 176
 }
181 177
 
182 178
 func (a *Allocator) doNetworkAlloc(ctx context.Context, ev events.Event) {
... ...
@@ -510,7 +506,7 @@ func (a *Allocator) deallocateNodeAttachments(ctx context.Context, nid string) e
510 510
 
511 511
 		var networkAttachment *api.NetworkAttachment
512 512
 		var naIndex int
513
-		for index, na := range node.LbAttachments {
513
+		for index, na := range node.Attachments {
514 514
 			if na.Network.ID == nid {
515 515
 				networkAttachment = na
516 516
 				naIndex = index
... ...
@@ -523,15 +519,15 @@ func (a *Allocator) deallocateNodeAttachments(ctx context.Context, nid string) e
523 523
 			continue
524 524
 		}
525 525
 
526
-		if nc.nwkAllocator.IsLBAttachmentAllocated(node, networkAttachment) {
527
-			if err := nc.nwkAllocator.DeallocateLBAttachment(node, networkAttachment); err != nil {
526
+		if nc.nwkAllocator.IsAttachmentAllocated(node, networkAttachment) {
527
+			if err := nc.nwkAllocator.DeallocateAttachment(node, networkAttachment); err != nil {
528 528
 				log.G(ctx).WithError(err).Errorf("Failed to commit deallocation of network resources for node %s", node.ID)
529 529
 			} else {
530 530
 
531 531
 				// Delete the lbattachment
532
-				node.LbAttachments[naIndex] = node.LbAttachments[len(node.LbAttachments)-1]
533
-				node.LbAttachments[len(node.LbAttachments)-1] = nil
534
-				node.LbAttachments = node.LbAttachments[:len(node.LbAttachments)-1]
532
+				node.Attachments[naIndex] = node.Attachments[len(node.Attachments)-1]
533
+				node.Attachments[len(node.Attachments)-1] = nil
534
+				node.Attachments = node.Attachments[:len(node.Attachments)-1]
535 535
 
536 536
 				if err := a.store.Batch(func(batch *store.Batch) error {
537 537
 					return a.commitAllocatedNode(ctx, batch, node)
... ...
@@ -551,15 +547,15 @@ func (a *Allocator) deallocateNode(node *api.Node) error {
551 551
 		nc = a.netCtx
552 552
 	)
553 553
 
554
-	for _, na := range node.LbAttachments {
555
-		if nc.nwkAllocator.IsLBAttachmentAllocated(node, na) {
556
-			if err := nc.nwkAllocator.DeallocateLBAttachment(node, na); err != nil {
554
+	for _, na := range node.Attachments {
555
+		if nc.nwkAllocator.IsAttachmentAllocated(node, na) {
556
+			if err := nc.nwkAllocator.DeallocateAttachment(node, na); err != nil {
557 557
 				return err
558 558
 			}
559 559
 		}
560 560
 	}
561 561
 
562
-	node.LbAttachments = nil
562
+	node.Attachments = nil
563 563
 
564 564
 	return nil
565 565
 }
... ...
@@ -855,7 +851,7 @@ func (a *Allocator) allocateNode(ctx context.Context, node *api.Node, existingAd
855 855
 	for _, network := range networks {
856 856
 
857 857
 		var lbAttachment *api.NetworkAttachment
858
-		for _, na := range node.LbAttachments {
858
+		for _, na := range node.Attachments {
859 859
 			if na.Network != nil && na.Network.ID == network.ID {
860 860
 				lbAttachment = na
861 861
 				break
... ...
@@ -863,14 +859,14 @@ func (a *Allocator) allocateNode(ctx context.Context, node *api.Node, existingAd
863 863
 		}
864 864
 
865 865
 		if lbAttachment != nil {
866
-			if nc.nwkAllocator.IsLBAttachmentAllocated(node, lbAttachment) {
866
+			if nc.nwkAllocator.IsAttachmentAllocated(node, lbAttachment) {
867 867
 				continue
868 868
 			}
869 869
 		}
870 870
 
871 871
 		if lbAttachment == nil {
872 872
 			lbAttachment = &api.NetworkAttachment{}
873
-			node.LbAttachments = append(node.LbAttachments, lbAttachment)
873
+			node.Attachments = append(node.Attachments, lbAttachment)
874 874
 		}
875 875
 
876 876
 		if existingAddressesOnly && len(lbAttachment.Addresses) == 0 {
... ...
@@ -878,7 +874,7 @@ func (a *Allocator) allocateNode(ctx context.Context, node *api.Node, existingAd
878 878
 		}
879 879
 
880 880
 		lbAttachment.Network = network.Copy()
881
-		if err := a.netCtx.nwkAllocator.AllocateLBAttachment(node, lbAttachment); err != nil {
881
+		if err := a.netCtx.nwkAllocator.AllocateAttachment(node, lbAttachment); err != nil {
882 882
 			log.G(ctx).WithError(err).Errorf("Failed to allocate network resources for node %s", node.ID)
883 883
 			// TODO: Should we add a unallocatedNode and retry allocating resources like we do for network, tasks, services?
884 884
 			// right now, we will only retry allocating network resources for the node when the node is updated.
... ...
@@ -897,7 +893,7 @@ func (a *Allocator) commitAllocatedNode(ctx context.Context, batch *store.Batch,
897 897
 
898 898
 		if err == store.ErrSequenceConflict {
899 899
 			storeNode := store.GetNode(tx, node.ID)
900
-			storeNode.LbAttachments = node.LbAttachments
900
+			storeNode.Attachments = node.Attachments
901 901
 			err = store.UpdateNode(tx, storeNode)
902 902
 		}
903 903
 
... ...
@@ -81,14 +81,14 @@ type NetworkAllocator interface {
81 81
 	// networks that a task is attached to.
82 82
 	DeallocateTask(t *api.Task) error
83 83
 
84
-	// AllocateLBAttachment Allocates a load balancer endpoint for the node
85
-	AllocateLBAttachment(node *api.Node, networkAttachment *api.NetworkAttachment) error
84
+	// AllocateAttachment Allocates a load balancer endpoint for the node
85
+	AllocateAttachment(node *api.Node, networkAttachment *api.NetworkAttachment) error
86 86
 
87
-	// DeallocateLBAttachment Deallocates a load balancer endpoint for the node
88
-	DeallocateLBAttachment(node *api.Node, networkAttachment *api.NetworkAttachment) error
87
+	// DeallocateAttachment Deallocates a load balancer endpoint for the node
88
+	DeallocateAttachment(node *api.Node, networkAttachment *api.NetworkAttachment) error
89 89
 
90
-	//IsLBAttachmentAllocated If lb endpoint is allocated on the node
91
-	IsLBAttachmentAllocated(node *api.Node, networkAttachment *api.NetworkAttachment) bool
90
+	// IsAttachmentAllocated If lb endpoint is allocated on the node
91
+	IsAttachmentAllocated(node *api.Node, networkAttachment *api.NetworkAttachment) bool
92 92
 }
93 93
 
94 94
 // IsIngressNetwork check if the network is an ingress network
... ...
@@ -96,11 +96,7 @@ func validateNetworkSpec(spec *api.NetworkSpec, pg plugingetter.PluginGetter) er
96 96
 		return err
97 97
 	}
98 98
 
99
-	if err := validateIPAM(spec.IPAM, pg); err != nil {
100
-		return err
101
-	}
102
-
103
-	return nil
99
+	return validateIPAM(spec.IPAM, pg)
104 100
 }
105 101
 
106 102
 // CreateNetwork creates and returns a Network based on the provided NetworkSpec.
... ...
@@ -56,10 +56,7 @@ func validateResourceRequirements(r *api.ResourceRequirements) error {
56 56
 	if err := validateResources(r.Limits); err != nil {
57 57
 		return err
58 58
 	}
59
-	if err := validateResources(r.Reservations); err != nil {
60
-		return err
61
-	}
62
-	return nil
59
+	return validateResources(r.Reservations)
63 60
 }
64 61
 
65 62
 func validateRestartPolicy(rp *api.RestartPolicy) error {
... ...
@@ -161,11 +158,7 @@ func validateContainerSpec(taskSpec api.TaskSpec) error {
161 161
 		return err
162 162
 	}
163 163
 
164
-	if err := validateHealthCheck(container.Healthcheck); err != nil {
165
-		return err
166
-	}
167
-
168
-	return nil
164
+	return validateHealthCheck(container.Healthcheck)
169 165
 }
170 166
 
171 167
 // validateImage validates image name in containerSpec
... ...
@@ -481,11 +474,7 @@ func validateServiceSpec(spec *api.ServiceSpec) error {
481 481
 	if err := validateEndpointSpec(spec.Endpoint); err != nil {
482 482
 		return err
483 483
 	}
484
-	if err := validateMode(spec); err != nil {
485
-		return err
486
-	}
487
-
488
-	return nil
484
+	return validateMode(spec)
489 485
 }
490 486
 
491 487
 // checkPortConflicts does a best effort to find if the passed in spec has port
... ...
@@ -854,10 +854,7 @@ func (d *Dispatcher) Assignments(r *api.AssignmentsRequest, stream api.Dispatche
854 854
 		appliesTo = msg.ResultsIn
855 855
 		msg.Type = assignmentType
856 856
 
857
-		if err := stream.Send(&msg); err != nil {
858
-			return err
859
-		}
860
-		return nil
857
+		return stream.Send(&msg)
861 858
 	}
862 859
 
863 860
 	// TODO(aaronl): Also send node secrets that should be exposed to
... ...
@@ -54,6 +54,9 @@ import (
54 54
 const (
55 55
 	// defaultTaskHistoryRetentionLimit is the number of tasks to keep.
56 56
 	defaultTaskHistoryRetentionLimit = 5
57
+
58
+	// Default value for grpc max message size.
59
+	grpcMaxMessageSize = 128 << 20
57 60
 )
58 61
 
59 62
 // RemoteAddrs provides a listening address and an optional advertise address
... ...
@@ -231,6 +234,7 @@ func New(config *Config) (*Manager, error) {
231 231
 		grpc.Creds(config.SecurityConfig.ServerTLSCreds),
232 232
 		grpc.StreamInterceptor(grpc_prometheus.StreamServerInterceptor),
233 233
 		grpc.UnaryInterceptor(grpc_prometheus.UnaryServerInterceptor),
234
+		grpc.MaxMsgSize(grpcMaxMessageSize),
234 235
 	}
235 236
 
236 237
 	m := &Manager{
... ...
@@ -384,10 +384,7 @@ func (u *Updater) updateTask(ctx context.Context, slot orchestrator.Slot, update
384 384
 				return errors.New("service was deleted")
385 385
 			}
386 386
 
387
-			if err := store.CreateTask(tx, updated); err != nil {
388
-				return err
389
-			}
390
-			return nil
387
+			return store.CreateTask(tx, updated)
391 388
 		})
392 389
 		if err != nil {
393 390
 			return err
... ...
@@ -92,11 +92,7 @@ func (s *Scheduler) setupTasksList(tx store.ReadTx) error {
92 92
 		tasksByNode[t.NodeID][t.ID] = t
93 93
 	}
94 94
 
95
-	if err := s.buildNodeSet(tx, tasksByNode); err != nil {
96
-		return err
97
-	}
98
-
99
-	return nil
95
+	return s.buildNodeSet(tx, tasksByNode)
100 96
 }
101 97
 
102 98
 // Run is the scheduler event loop.
... ...
@@ -1283,10 +1283,7 @@ func (n *Node) reportNewAddress(ctx context.Context, id uint64) error {
1283 1283
 		return err
1284 1284
 	}
1285 1285
 	newAddr := net.JoinHostPort(newHost, officialPort)
1286
-	if err := n.transport.UpdatePeerAddr(id, newAddr); err != nil {
1287
-		return err
1288
-	}
1289
-	return nil
1286
+	return n.transport.UpdatePeerAddr(id, newAddr)
1290 1287
 }
1291 1288
 
1292 1289
 // ProcessRaftMessage calls 'Step' which advances the
... ...
@@ -1848,10 +1845,7 @@ func (n *Node) applyAddNode(cc raftpb.ConfChange) error {
1848 1848
 		return nil
1849 1849
 	}
1850 1850
 
1851
-	if err = n.registerNode(member); err != nil {
1852
-		return err
1853
-	}
1854
-	return nil
1851
+	return n.registerNode(member)
1855 1852
 }
1856 1853
 
1857 1854
 // applyUpdateNode is called when we receive a ConfChange from a member in the
... ...
@@ -226,10 +226,7 @@ func (e *EncryptedRaftLogger) SaveSnapshot(snapshot raftpb.Snapshot) error {
226 226
 	if err := snapshotter.SaveSnap(snapshot); err != nil {
227 227
 		return err
228 228
 	}
229
-	if err := e.wal.ReleaseLockTo(snapshot.Metadata.Index); err != nil {
230
-		return err
231
-	}
232
-	return nil
229
+	return e.wal.ReleaseLockTo(snapshot.Metadata.Index)
233 230
 }
234 231
 
235 232
 // GC garbage collects snapshots and wals older than the provided index and term
... ...
@@ -235,10 +235,7 @@ func (t *Transport) UpdatePeerAddr(id uint64, addr string) error {
235 235
 	if !ok {
236 236
 		return ErrIsNotFound
237 237
 	}
238
-	if err := p.updateAddr(addr); err != nil {
239
-		return err
240
-	}
241
-	return nil
238
+	return p.updateAddr(addr)
242 239
 }
243 240
 
244 241
 // PeerConn returns raw grpc connection to peer.