diff --git a/VERSION b/VERSION
index ae1e604..293bfa8 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.16.6-dev
+1.16.7
diff --git a/go.mod b/go.mod
index 8289cf7..de99901 100644
--- a/go.mod
+++ b/go.mod
@@ -22,9 +22,9 @@
 	github.com/looplab/fsm v0.1.0
 	github.com/olekukonko/tablewriter v0.0.4
 	github.com/opencord/cordctl v0.0.0-20190909161711-01e9c1f04bf4
-	github.com/opencord/device-management-interface v1.4.0
+	github.com/opencord/device-management-interface v1.17.0
 	github.com/opencord/omci-lib-go/v2 v2.2.3
-	github.com/opencord/voltha-protos/v5 v5.4.11
+	github.com/opencord/voltha-protos/v5 v5.6.2
 	github.com/pkg/errors v0.8.1 // indirect
 	github.com/sirupsen/logrus v1.4.2
 	github.com/stretchr/testify v1.5.1
diff --git a/go.sum b/go.sum
index 9585022..e7a43d3 100644
--- a/go.sum
+++ b/go.sum
@@ -85,12 +85,12 @@
 github.com/olekukonko/tablewriter v0.0.4/go.mod h1:zq6QwlOf5SlnkVbMSr5EoBv3636FWnp+qbPhuoO21uA=
 github.com/opencord/cordctl v0.0.0-20190909161711-01e9c1f04bf4 h1:Odib2px8tyALzdbyztAAqdxmpmQ/pJahJ7uz8kN/rvk=
 github.com/opencord/cordctl v0.0.0-20190909161711-01e9c1f04bf4/go.mod h1:/+3S0pwQUy7HeKnH0KfKp5W6hmh/LdZzuZTNT/m7vA4=
-github.com/opencord/device-management-interface v1.4.0 h1:hutRUn/rfYHZQr0K2i7HpZTMyMyLcGL1XdmbUrWt2kM=
-github.com/opencord/device-management-interface v1.4.0/go.mod h1:G1owSqGBGaqllrwtjxfLTsy9EDsGhdhmqkJM3XOnPD0=
+github.com/opencord/device-management-interface v1.17.0 h1:qfGPHtEvKjErExfSZGczqBRbj4KS2ZHTdDDHcIVl314=
+github.com/opencord/device-management-interface v1.17.0/go.mod h1:G1owSqGBGaqllrwtjxfLTsy9EDsGhdhmqkJM3XOnPD0=
 github.com/opencord/omci-lib-go/v2 v2.2.3 h1:cE9+67m8HmZmlET57eyQmqOOAJlfvvKrLgiJMiwhSMg=
 github.com/opencord/omci-lib-go/v2 v2.2.3/go.mod h1:o1S/jhDLHNikFU7uG2TR5UOM5KmKlqwLlVncXi0FBYQ=
-github.com/opencord/voltha-protos/v5 v5.4.11 h1:Q9j8yJO5HDf0D3jE8KmIgUWJjV4GIYgqiDEiPI3Zcmc=
-github.com/opencord/voltha-protos/v5 v5.4.11/go.mod h1:E/Jn3DNu8VGRBCgIWSSg4sWtTBiNuQGSFvHyNH1XlyM=
+github.com/opencord/voltha-protos/v5 v5.6.2 h1:evT3MYShV8uzLQAfF+qXS6nbdKRNewxifDK49XzqtVM=
+github.com/opencord/voltha-protos/v5 v5.6.2/go.mod h1:E/Jn3DNu8VGRBCgIWSSg4sWtTBiNuQGSFvHyNH1XlyM=
 github.com/pierrec/lz4 v2.4.1+incompatible h1:mFe7ttWaflA46Mhqh+jUfjp2qTbPYxLB2/OyBppH9dg=
 github.com/pierrec/lz4 v2.4.1+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY=
 github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I=
diff --git a/internal/bbsim/dmiserver/dmi_api_server.go b/internal/bbsim/dmiserver/dmi_api_server.go
index 5aab467..81b6cc8 100755
--- a/internal/bbsim/dmiserver/dmi_api_server.go
+++ b/internal/bbsim/dmiserver/dmi_api_server.go
@@ -49,6 +49,21 @@
 	mPublisherCancelFunc context.CancelFunc
 }
 
+// GetDmLogLevel implements dmi.NativeHWManagementServiceServer.
+func (dms *DmiAPIServer) GetDmLogLevel(context.Context, *dmi.GetDmLogLevelRequest) (*dmi.GetDmLogLevelResponse, error) {
+	panic("unimplemented")
+}
+
+// SetDmLogLevel implements dmi.NativeHWManagementServiceServer.
+func (dms *DmiAPIServer) SetDmLogLevel(context.Context, *dmi.SetDmLogLevelRequest) (*dmi.SetDmLogLevelResponse, error) {
+	panic("unimplemented")
+}
+
+// UploadDebugInfo implements dmi.NativeSoftwareManagementServiceServer.
+func (dms *DmiAPIServer) UploadDebugInfo(*dmi.UploadDebugInfoRequest, dmi.NativeSoftwareManagementService_UploadDebugInfoServer) error {
+	panic("unimplemented")
+}
+
 var dmiServ DmiAPIServer
 
 // StartDmiAPIServer starts a new grpc server for the Device Manager Interface
diff --git a/vendor/github.com/opencord/device-management-interface/LICENSE b/vendor/github.com/opencord/device-management-interface/LICENSE
new file mode 100644
index 0000000..c27bac8
--- /dev/null
+++ b/vendor/github.com/opencord/device-management-interface/LICENSE
@@ -0,0 +1,204 @@
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+
+This project bundles https://github.com/juanchopanza/cppblog/blob/master/Concurrency/Queue/Queue.h
+which is licensed under BSD 2-Clause License.
diff --git a/vendor/github.com/opencord/device-management-interface/go/dmi/hw.pb.go b/vendor/github.com/opencord/device-management-interface/go/dmi/hw.pb.go
index 4b608d2..7b944ef 100644
--- a/vendor/github.com/opencord/device-management-interface/go/dmi/hw.pb.go
+++ b/vendor/github.com/opencord/device-management-interface/go/dmi/hw.pb.go
@@ -284,6 +284,7 @@
 	DataValueType_VALUE_TYPE_PERCENT     DataValueType = 13
 	DataValueType_VALUE_TYPE_METERS      DataValueType = 14
 	DataValueType_VALUE_TYPE_BYTES       DataValueType = 15
+	DataValueType_VALUE_TYPE_DBM         DataValueType = 16
 )
 
 var DataValueType_name = map[int32]string{
@@ -303,6 +304,7 @@
 	13: "VALUE_TYPE_PERCENT",
 	14: "VALUE_TYPE_METERS",
 	15: "VALUE_TYPE_BYTES",
+	16: "VALUE_TYPE_DBM",
 }
 
 var DataValueType_value = map[string]int32{
@@ -322,6 +324,7 @@
 	"VALUE_TYPE_PERCENT":     13,
 	"VALUE_TYPE_METERS":      14,
 	"VALUE_TYPE_BYTES":       15,
+	"VALUE_TYPE_DBM":         16,
 }
 
 func (x DataValueType) String() string {
@@ -645,7 +648,7 @@
 }
 
 func (PsuComponentAttributes_SupportedVoltage) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{10, 0}
+	return fileDescriptor_d7c33d745c4ab367, []int{11, 0}
 }
 
 type TransceiverComponentsAttributes_FormFactor int32
@@ -666,6 +669,7 @@
 	TransceiverComponentsAttributes_CFP                 TransceiverComponentsAttributes_FormFactor = 12
 	TransceiverComponentsAttributes_CFP2_ACO            TransceiverComponentsAttributes_FormFactor = 13
 	TransceiverComponentsAttributes_CFP2_DCO            TransceiverComponentsAttributes_FormFactor = 14
+	TransceiverComponentsAttributes_QSFP_DD             TransceiverComponentsAttributes_FormFactor = 15
 )
 
 var TransceiverComponentsAttributes_FormFactor_name = map[int32]string{
@@ -684,6 +688,7 @@
 	12: "CFP",
 	13: "CFP2_ACO",
 	14: "CFP2_DCO",
+	15: "QSFP_DD",
 }
 
 var TransceiverComponentsAttributes_FormFactor_value = map[string]int32{
@@ -702,6 +707,7 @@
 	"CFP":                 12,
 	"CFP2_ACO":            13,
 	"CFP2_DCO":            14,
+	"QSFP_DD":             15,
 }
 
 func (x TransceiverComponentsAttributes_FormFactor) String() string {
@@ -709,7 +715,7 @@
 }
 
 func (TransceiverComponentsAttributes_FormFactor) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{11, 0}
+	return fileDescriptor_d7c33d745c4ab367, []int{12, 0}
 }
 
 type Uuid struct {
@@ -1023,6 +1029,7 @@
 	MappingLabel         string       `protobuf:"bytes,5,opt,name=mapping_label,json=mappingLabel,proto3" json:"mapping_label,omitempty"`
 	PonIdConfig          *PonIdConfig `protobuf:"bytes,6,opt,name=pon_id_config,json=ponIdConfig,proto3" json:"pon_id_config,omitempty"`
 	SpeedAutonegotiation bool         `protobuf:"varint,7,opt,name=speed_autonegotiation,json=speedAutonegotiation,proto3" json:"speed_autonegotiation,omitempty"`
+	Distance             *PonDistance `protobuf:"bytes,8,opt,name=distance,proto3" json:"distance,omitempty"`
 	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
 	XXX_unrecognized     []byte       `json:"-"`
 	XXX_sizecache        int32        `json:"-"`
@@ -1102,8 +1109,73 @@
 	return false
 }
 
+func (m *PortComponentAttributes) GetDistance() *PonDistance {
+	if m != nil {
+		return m.Distance
+	}
+	return nil
+}
+
+type PonDistance struct {
+	//
+	// The ITU-T G.987.x series of Recommendations addresses the linear extent parameters of XG-PON
+	// using the single concept of fibre distance. An ONU is characterized by its fibre distance, and for
+	// each pair of ONUs on the same OLT PON interface, the differential fibre distance is the difference
+	// between the two individual fibre distances. Each specific PMD layer parameter set contains a
+	// provision to support a specific maximum fibre distance. The XG-PON TC layer specification
+	// contains a provision to support specific ranges of maximum fibre distance and maximum
+	// differential fibre distance. These ranges can be configurable for a given system. One can expect that
+	// for each XG-PON deployment, the configured TC layer maximum fibre distance will match the
+	// maximum fibre distance supported by the selected PMD layer parameter set.
+	MaxDistance             uint32   `protobuf:"varint,1,opt,name=max_distance,json=maxDistance,proto3" json:"max_distance,omitempty"`
+	MaxDifferentialDistance uint32   `protobuf:"varint,2,opt,name=max_differential_distance,json=maxDifferentialDistance,proto3" json:"max_differential_distance,omitempty"`
+	XXX_NoUnkeyedLiteral    struct{} `json:"-"`
+	XXX_unrecognized        []byte   `json:"-"`
+	XXX_sizecache           int32    `json:"-"`
+}
+
+func (m *PonDistance) Reset()         { *m = PonDistance{} }
+func (m *PonDistance) String() string { return proto.CompactTextString(m) }
+func (*PonDistance) ProtoMessage()    {}
+func (*PonDistance) Descriptor() ([]byte, []int) {
+	return fileDescriptor_d7c33d745c4ab367, []int{6}
+}
+
+func (m *PonDistance) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_PonDistance.Unmarshal(m, b)
+}
+func (m *PonDistance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_PonDistance.Marshal(b, m, deterministic)
+}
+func (m *PonDistance) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_PonDistance.Merge(m, src)
+}
+func (m *PonDistance) XXX_Size() int {
+	return xxx_messageInfo_PonDistance.Size(m)
+}
+func (m *PonDistance) XXX_DiscardUnknown() {
+	xxx_messageInfo_PonDistance.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PonDistance proto.InternalMessageInfo
+
+func (m *PonDistance) GetMaxDistance() uint32 {
+	if m != nil {
+		return m.MaxDistance
+	}
+	return 0
+}
+
+func (m *PonDistance) GetMaxDifferentialDistance() uint32 {
+	if m != nil {
+		return m.MaxDifferentialDistance
+	}
+	return 0
+}
+
 type PortComponentChangeAttributes struct {
 	PonIdConfig          *PonIdConfig `protobuf:"bytes,1,opt,name=pon_id_config,json=ponIdConfig,proto3" json:"pon_id_config,omitempty"`
+	Distance             *PonDistance `protobuf:"bytes,2,opt,name=distance,proto3" json:"distance,omitempty"`
 	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
 	XXX_unrecognized     []byte       `json:"-"`
 	XXX_sizecache        int32        `json:"-"`
@@ -1113,7 +1185,7 @@
 func (m *PortComponentChangeAttributes) String() string { return proto.CompactTextString(m) }
 func (*PortComponentChangeAttributes) ProtoMessage()    {}
 func (*PortComponentChangeAttributes) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{6}
+	return fileDescriptor_d7c33d745c4ab367, []int{7}
 }
 
 func (m *PortComponentChangeAttributes) XXX_Unmarshal(b []byte) error {
@@ -1141,6 +1213,13 @@
 	return nil
 }
 
+func (m *PortComponentChangeAttributes) GetDistance() *PonDistance {
+	if m != nil {
+		return m.Distance
+	}
+	return nil
+}
+
 type TransceiverComponentChangeAttributes struct {
 	TransType            TransceiverType `protobuf:"varint,1,opt,name=trans_type,json=transType,proto3,enum=dmi.TransceiverType" json:"trans_type,omitempty"`
 	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
@@ -1152,7 +1231,7 @@
 func (m *TransceiverComponentChangeAttributes) String() string { return proto.CompactTextString(m) }
 func (*TransceiverComponentChangeAttributes) ProtoMessage()    {}
 func (*TransceiverComponentChangeAttributes) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{7}
+	return fileDescriptor_d7c33d745c4ab367, []int{8}
 }
 
 func (m *TransceiverComponentChangeAttributes) XXX_Unmarshal(b []byte) error {
@@ -1195,7 +1274,7 @@
 func (m *PonIdConfig) String() string { return proto.CompactTextString(m) }
 func (*PonIdConfig) ProtoMessage()    {}
 func (*PonIdConfig) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{8}
+	return fileDescriptor_d7c33d745c4ab367, []int{9}
 }
 
 func (m *PonIdConfig) XXX_Unmarshal(b []byte) error {
@@ -1241,7 +1320,7 @@
 func (m *ContainerComponentAttributes) String() string { return proto.CompactTextString(m) }
 func (*ContainerComponentAttributes) ProtoMessage()    {}
 func (*ContainerComponentAttributes) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{9}
+	return fileDescriptor_d7c33d745c4ab367, []int{10}
 }
 
 func (m *ContainerComponentAttributes) XXX_Unmarshal(b []byte) error {
@@ -1280,7 +1359,7 @@
 func (m *PsuComponentAttributes) String() string { return proto.CompactTextString(m) }
 func (*PsuComponentAttributes) ProtoMessage()    {}
 func (*PsuComponentAttributes) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{10}
+	return fileDescriptor_d7c33d745c4ab367, []int{11}
 }
 
 func (m *PsuComponentAttributes) XXX_Unmarshal(b []byte) error {
@@ -1315,9 +1394,14 @@
 	MaxDistance      uint32     `protobuf:"varint,3,opt,name=max_distance,json=maxDistance,proto3" json:"max_distance,omitempty"`
 	MaxDistanceScale ValueScale `protobuf:"varint,4,opt,name=max_distance_scale,json=maxDistanceScale,proto3,enum=dmi.ValueScale" json:"max_distance_scale,omitempty"`
 	// The receive and transmit wavelengths that the transeiver operates on
-	RxWavelength         []uint32   `protobuf:"varint,5,rep,packed,name=rx_wavelength,json=rxWavelength,proto3" json:"rx_wavelength,omitempty"`
-	TxWavelength         []uint32   `protobuf:"varint,6,rep,packed,name=tx_wavelength,json=txWavelength,proto3" json:"tx_wavelength,omitempty"`
-	WavelengthScale      ValueScale `protobuf:"varint,7,opt,name=wavelength_scale,json=wavelengthScale,proto3,enum=dmi.ValueScale" json:"wavelength_scale,omitempty"`
+	RxWavelength    []uint32   `protobuf:"varint,5,rep,packed,name=rx_wavelength,json=rxWavelength,proto3" json:"rx_wavelength,omitempty"`
+	TxWavelength    []uint32   `protobuf:"varint,6,rep,packed,name=tx_wavelength,json=txWavelength,proto3" json:"tx_wavelength,omitempty"`
+	WavelengthScale ValueScale `protobuf:"varint,7,opt,name=wavelength_scale,json=wavelengthScale,proto3,enum=dmi.ValueScale" json:"wavelength_scale,omitempty"`
+	// The tx powers on the transceiver; the value type of tx_power should be dBm.
+	// Note: When there are multiple rx/tx wavelengths and powers
+	// each of the corresponding ones should be aligned on the same index of the array
+	TxPower              []int32    `protobuf:"varint,8,rep,packed,name=tx_power,json=txPower,proto3" json:"tx_power,omitempty"`
+	TxPowerScale         ValueScale `protobuf:"varint,9,opt,name=tx_power_scale,json=txPowerScale,proto3,enum=dmi.ValueScale" json:"tx_power_scale,omitempty"`
 	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
 	XXX_unrecognized     []byte     `json:"-"`
 	XXX_sizecache        int32      `json:"-"`
@@ -1327,7 +1411,7 @@
 func (m *TransceiverComponentsAttributes) String() string { return proto.CompactTextString(m) }
 func (*TransceiverComponentsAttributes) ProtoMessage()    {}
 func (*TransceiverComponentsAttributes) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{11}
+	return fileDescriptor_d7c33d745c4ab367, []int{12}
 }
 
 func (m *TransceiverComponentsAttributes) XXX_Unmarshal(b []byte) error {
@@ -1397,6 +1481,20 @@
 	return ValueScale_VALUE_SCALE_UNDEFINED
 }
 
+func (m *TransceiverComponentsAttributes) GetTxPower() []int32 {
+	if m != nil {
+		return m.TxPower
+	}
+	return nil
+}
+
+func (m *TransceiverComponentsAttributes) GetTxPowerScale() ValueScale {
+	if m != nil {
+		return m.TxPowerScale
+	}
+	return ValueScale_VALUE_SCALE_UNDEFINED
+}
+
 type Component struct {
 	// The name of a component uniquely identifies a component within the hardware
 	Name        string        `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
@@ -1440,7 +1538,7 @@
 func (m *Component) String() string { return proto.CompactTextString(m) }
 func (*Component) ProtoMessage()    {}
 func (*Component) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{12}
+	return fileDescriptor_d7c33d745c4ab367, []int{13}
 }
 
 func (m *Component) XXX_Unmarshal(b []byte) error {
@@ -1691,7 +1789,7 @@
 func (m *Hardware) String() string { return proto.CompactTextString(m) }
 func (*Hardware) ProtoMessage()    {}
 func (*Hardware) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{13}
+	return fileDescriptor_d7c33d745c4ab367, []int{14}
 }
 
 func (m *Hardware) XXX_Unmarshal(b []byte) error {
@@ -1760,7 +1858,7 @@
 func (m *ModifiableComponent) String() string { return proto.CompactTextString(m) }
 func (*ModifiableComponent) ProtoMessage()    {}
 func (*ModifiableComponent) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{14}
+	return fileDescriptor_d7c33d745c4ab367, []int{15}
 }
 
 func (m *ModifiableComponent) XXX_Unmarshal(b []byte) error {
@@ -1904,6 +2002,7 @@
 	proto.RegisterType((*ComponentState)(nil), "dmi.ComponentState")
 	proto.RegisterType((*ComponentSensorData)(nil), "dmi.ComponentSensorData")
 	proto.RegisterType((*PortComponentAttributes)(nil), "dmi.PortComponentAttributes")
+	proto.RegisterType((*PonDistance)(nil), "dmi.PonDistance")
 	proto.RegisterType((*PortComponentChangeAttributes)(nil), "dmi.PortComponentChangeAttributes")
 	proto.RegisterType((*TransceiverComponentChangeAttributes)(nil), "dmi.TransceiverComponentChangeAttributes")
 	proto.RegisterType((*PonIdConfig)(nil), "dmi.PonIdConfig")
@@ -1918,182 +2017,188 @@
 func init() { proto.RegisterFile("dmi/hw.proto", fileDescriptor_d7c33d745c4ab367) }
 
 var fileDescriptor_d7c33d745c4ab367 = []byte{
-	// 2824 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x72, 0xe3, 0xc6,
-	0xf1, 0x5f, 0x7e, 0x93, 0x4d, 0x52, 0x1a, 0xcd, 0x7e, 0xd1, 0xfb, 0x61, 0xaf, 0xf9, 0x5f, 0xbb,
-	0xd6, 0xfa, 0xc7, 0x92, 0x96, 0xab, 0x4d, 0xad, 0xe3, 0x72, 0xa5, 0x20, 0x10, 0x94, 0xe0, 0x25,
-	0x01, 0x78, 0x00, 0x6a, 0x57, 0xce, 0x01, 0x05, 0x91, 0x10, 0x85, 0x2a, 0x12, 0x60, 0x01, 0xa0,
-	0xbc, 0x5b, 0x95, 0x53, 0x2a, 0x97, 0x9c, 0xf2, 0x12, 0xae, 0x94, 0x4f, 0xb9, 0x24, 0xc7, 0x1c,
-	0x9c, 0x43, 0x9e, 0x20, 0xa7, 0x3c, 0x43, 0x1e, 0x22, 0xa9, 0x99, 0x01, 0x48, 0x10, 0x84, 0xd6,
-	0xeb, 0xaa, 0xdc, 0x66, 0xfa, 0xf7, 0xeb, 0x9e, 0x46, 0x77, 0x4f, 0xcf, 0x0c, 0xa0, 0x31, 0x9e,
-	0x39, 0xfb, 0x97, 0xdf, 0xed, 0xcd, 0x7d, 0x2f, 0xf4, 0x70, 0x61, 0x3c, 0x73, 0xee, 0x7d, 0x34,
-	0xf1, 0xbc, 0xc9, 0xd4, 0xde, 0x67, 0xa2, 0xf3, 0xc5, 0xc5, 0x7e, 0xe8, 0xcc, 0xec, 0x20, 0xb4,
-	0x66, 0x73, 0xce, 0x6a, 0xdf, 0x83, 0xe2, 0x70, 0xe1, 0x8c, 0x31, 0x86, 0xe2, 0x62, 0xe1, 0x8c,
-	0x5b, 0xb9, 0x47, 0xb9, 0x27, 0x35, 0xc2, 0xc6, 0xed, 0xff, 0x07, 0x38, 0xb1, 0xfc, 0xf1, 0x77,
-	0x96, 0x6f, 0xcb, 0x5d, 0xfc, 0x30, 0xc1, 0xa8, 0x77, 0x6a, 0x7b, 0xe3, 0x99, 0xb3, 0x47, 0x55,
-	0x23, 0xf2, 0x5d, 0x28, 0x0c, 0x7d, 0x07, 0x23, 0x28, 0x2c, 0x7c, 0x27, 0x32, 0x43, 0x87, 0xed,
-	0xdf, 0x17, 0x60, 0x4b, 0xf4, 0x66, 0x73, 0xcf, 0xb5, 0xdd, 0x50, 0x0f, 0xad, 0xd0, 0xc6, 0x27,
-	0x80, 0x03, 0x3a, 0x30, 0xa7, 0x56, 0x10, 0x9a, 0xa3, 0x4b, 0xcb, 0x9d, 0xd8, 0xb1, 0xe1, 0x7b,
-	0x7b, 0xdc, 0xe5, 0xbd, 0xd8, 0xe5, 0x3d, 0x23, 0x76, 0x99, 0x20, 0xa6, 0xd5, 0xb7, 0x82, 0x50,
-	0xe4, 0x3a, 0xf8, 0x0b, 0xa8, 0x5b, 0xe3, 0x99, 0xe3, 0x9a, 0x0c, 0x69, 0xe5, 0x1f, 0xe5, 0x9e,
-	0x6c, 0x75, 0x5a, 0xcc, 0xb7, 0xe5, 0x9a, 0x02, 0x25, 0xb0, 0x85, 0x09, 0x58, 0xcb, 0x31, 0xfe,
-	0x25, 0x80, 0x37, 0xb7, 0xfd, 0x48, 0xb3, 0xc0, 0x34, 0xef, 0xae, 0x6b, 0xaa, 0x73, 0xdb, 0xe7,
-	0x8a, 0x35, 0x2f, 0x1e, 0xd2, 0x25, 0x17, 0x81, 0x35, 0xb1, 0x23, 0xc5, 0x62, 0xd6, 0x92, 0x43,
-	0x4a, 0x88, 0x96, 0x5c, 0x2c, 0xc7, 0xcc, 0xdb, 0xa9, 0xe5, 0xcf, 0x22, 0xd5, 0x52, 0xa6, 0xb7,
-	0x94, 0x10, 0x7b, 0xbb, 0x1c, 0xe3, 0x5f, 0x43, 0x33, 0x08, 0x2d, 0x77, 0x7c, 0xfe, 0x36, 0x52,
-	0x2e, 0x33, 0xe5, 0x7b, 0xeb, 0xca, 0x3a, 0xa7, 0x70, 0xf5, 0x46, 0x90, 0x98, 0xb5, 0xff, 0x9d,
-	0x87, 0x9b, 0x2b, 0x9e, 0xed, 0x06, 0x9e, 0xdf, 0xb5, 0x42, 0x0b, 0xdf, 0x82, 0xd2, 0x95, 0x35,
-	0x5d, 0xd8, 0x2c, 0xfc, 0x25, 0xc2, 0x27, 0xf8, 0x53, 0x28, 0x86, 0x6f, 0xe7, 0x71, 0x40, 0x31,
-	0x5b, 0x85, 0xd2, 0x4f, 0x29, 0x6a, 0xbc, 0x9d, 0xdb, 0x84, 0xe1, 0xf8, 0x13, 0x28, 0x05, 0x23,
-	0x6b, 0x1a, 0xc7, 0x6f, 0x9b, 0x11, 0x19, 0x49, 0xa7, 0x62, 0xc2, 0x51, 0xfc, 0x00, 0x6a, 0x73,
-	0xdf, 0x1e, 0x39, 0x81, 0xe3, 0xb9, 0x2c, 0x62, 0x25, 0xb2, 0x12, 0xe0, 0xcf, 0xa0, 0x4c, 0xbf,
-	0x69, 0x11, 0x44, 0x11, 0xd9, 0x61, 0x56, 0xb8, 0x8f, 0x3a, 0x03, 0x48, 0x44, 0xc0, 0xff, 0x07,
-	0xcd, 0x85, 0xeb, 0x84, 0x81, 0x39, 0x76, 0x82, 0xf9, 0xd4, 0x7a, 0xcb, 0xc2, 0x50, 0x23, 0x0d,
-	0x26, 0xec, 0x72, 0x19, 0x7e, 0x01, 0xb5, 0x65, 0x99, 0xb7, 0x2a, 0x3f, 0x59, 0x55, 0x2b, 0x32,
-	0xde, 0x85, 0x1d, 0xf6, 0xfd, 0xe6, 0x62, 0x3e, 0xa6, 0xf5, 0xe9, 0xd3, 0x48, 0x57, 0x1f, 0xe5,
-	0x9e, 0x34, 0xc9, 0x36, 0x03, 0x86, 0x4c, 0x4e, 0x68, 0x46, 0xee, 0x43, 0x6d, 0x6c, 0x85, 0x96,
-	0xc9, 0xe2, 0x54, 0x63, 0x6e, 0x54, 0xa9, 0x80, 0x46, 0xa7, 0xfd, 0xf7, 0x32, 0xdc, 0xd5, 0x3c,
-	0x3f, 0x5c, 0xa5, 0x35, 0x0c, 0x7d, 0xe7, 0x7c, 0x11, 0xda, 0x01, 0xfe, 0x06, 0xb6, 0x46, 0x9e,
-	0xeb, 0xda, 0xa3, 0xd0, 0xf3, 0xb9, 0x76, 0x8e, 0x7d, 0xf6, 0x2e, 0xfb, 0xec, 0x6b, 0xb4, 0xf6,
-	0xc4, 0x58, 0x85, 0x45, 0xbf, 0x39, 0x4a, 0x4e, 0xf1, 0x0b, 0x28, 0x05, 0x73, 0xdb, 0x1e, 0x47,
-	0xf9, 0x6a, 0xbf, 0xd3, 0x92, 0x4e, 0x99, 0x84, 0x2b, 0x60, 0x01, 0xaa, 0x2c, 0x24, 0x23, 0x6f,
-	0x1a, 0xe5, 0xf0, 0x93, 0x77, 0x2a, 0x6b, 0x11, 0x99, 0x2c, 0xd5, 0xf0, 0x27, 0xb0, 0x35, 0xbf,
-	0x7c, 0x1b, 0x38, 0x23, 0x6b, 0x6a, 0x4e, 0xad, 0x73, 0x7b, 0xca, 0x32, 0x5c, 0x23, 0xcd, 0x58,
-	0xda, 0xa7, 0x42, 0x9a, 0xba, 0x99, 0x35, 0x9f, 0x3b, 0xee, 0x24, 0x62, 0x95, 0x78, 0xea, 0x22,
-	0x21, 0x27, 0x1d, 0x42, 0x73, 0xee, 0xb9, 0xa6, 0x33, 0x36, 0x47, 0x9e, 0x7b, 0xe1, 0x4c, 0x58,
-	0x7e, 0xeb, 0x1d, 0x14, 0xf9, 0xe4, 0xca, 0x63, 0x91, 0xc9, 0x49, 0x7d, 0xbe, 0x9a, 0xe0, 0x67,
-	0x70, 0x9b, 0x7d, 0x8d, 0x69, 0x2d, 0x42, 0xcf, 0xb5, 0x27, 0x5e, 0xe8, 0x58, 0x21, 0x2d, 0x35,
-	0x9a, 0xfc, 0x2a, 0xb9, 0xc5, 0x40, 0x61, 0x1d, 0x6b, 0xcf, 0xa1, 0xb9, 0x16, 0x53, 0xfc, 0x00,
-	0x5a, 0xa2, 0xaa, 0x28, 0x92, 0x68, 0xa8, 0xc4, 0x34, 0xce, 0x34, 0xc9, 0x1c, 0x2a, 0x5d, 0xa9,
-	0x27, 0x2b, 0x52, 0x17, 0xdd, 0xc0, 0x55, 0x28, 0x92, 0xaf, 0x0f, 0x9f, 0xa3, 0x1c, 0x6e, 0x40,
-	0xb5, 0x27, 0x1f, 0x49, 0xc4, 0xec, 0x8b, 0x28, 0x8f, 0xb7, 0xa1, 0xce, 0x67, 0xba, 0x68, 0x6a,
-	0x22, 0x2a, 0xe0, 0x26, 0xd4, 0xb8, 0x60, 0xa0, 0xa9, 0xa8, 0x88, 0x6b, 0x50, 0x22, 0x7a, 0xe7,
-	0x59, 0x07, 0x95, 0xda, 0x7f, 0xce, 0x41, 0x89, 0x05, 0x1f, 0xdf, 0x84, 0x6d, 0x5d, 0x93, 0xa4,
-	0xee, 0xda, 0x0a, 0x75, 0xa8, 0x74, 0xcf, 0x14, 0x61, 0x20, 0x8b, 0x28, 0x47, 0xad, 0x1c, 0xcb,
-	0xc7, 0xc2, 0x91, 0x6c, 0x98, 0x4f, 0x51, 0x1e, 0x6f, 0x01, 0x2c, 0xa7, 0x07, 0xa8, 0x90, 0x9c,
-	0x77, 0x9e, 0xa3, 0x62, 0x72, 0x7e, 0x78, 0x80, 0x4a, 0xd4, 0xab, 0x15, 0xff, 0x00, 0x95, 0x93,
-	0x82, 0xc3, 0x83, 0x03, 0x54, 0xc1, 0x08, 0x1a, 0x03, 0x29, 0xb6, 0x70, 0x70, 0x80, 0xaa, 0x49,
-	0xc9, 0xd3, 0xce, 0xf3, 0x03, 0x54, 0x6b, 0xff, 0x16, 0xaa, 0x71, 0xbe, 0xf1, 0x1d, 0xc0, 0x1a,
-	0x51, 0x0d, 0x55, 0x54, 0xfb, 0x6b, 0x5e, 0x37, 0xa0, 0x2a, 0x19, 0x27, 0x12, 0x51, 0x24, 0x03,
-	0xe5, 0x68, 0x94, 0x8e, 0x35, 0x55, 0x41, 0x79, 0xfa, 0xdd, 0xaf, 0xd9, 0xb0, 0x80, 0x01, 0xca,
-	0xaf, 0x8f, 0x75, 0x3a, 0x66, 0xe1, 0x38, 0xee, 0x09, 0xba, 0x81, 0x4a, 0x54, 0xac, 0x4b, 0x44,
-	0x16, 0xfa, 0xa8, 0x4c, 0xf5, 0x24, 0x4a, 0xa8, 0xd0, 0xd1, 0x91, 0x6c, 0xe8, 0xa8, 0xda, 0x1e,
-	0xc2, 0xc3, 0xb5, 0x2a, 0xe4, 0x3d, 0x3f, 0xb1, 0x91, 0x36, 0x8a, 0x25, 0xf7, 0x1e, 0xc5, 0xd2,
-	0xfe, 0x0d, 0x3c, 0x36, 0x7c, 0xcb, 0x0d, 0x46, 0xb6, 0x73, 0x65, 0xfb, 0xd7, 0x5b, 0x7f, 0x06,
-	0x10, 0x52, 0x5e, 0x72, 0x8b, 0xde, 0x62, 0xa6, 0x13, 0xea, 0x6c, 0x33, 0xd6, 0x18, 0x8f, 0xed,
-	0xfb, 0x11, 0xd4, 0x13, 0x0b, 0xe3, 0xdb, 0x50, 0xe6, 0x1e, 0x32, 0xfd, 0x06, 0x29, 0x31, 0x47,
-	0xf0, 0x57, 0x70, 0x3f, 0x72, 0x9c, 0x69, 0xce, 0x9c, 0xd0, 0x9c, 0xdb, 0xbe, 0xe3, 0x8d, 0x9d,
-	0x91, 0x13, 0xbe, 0x65, 0x9b, 0xb8, 0x49, 0x5a, 0x8c, 0x6b, 0x44, 0x04, 0x6d, 0x85, 0xb7, 0x25,
-	0x78, 0x20, 0x7a, 0x6e, 0x68, 0x39, 0x6e, 0xc2, 0xff, 0x84, 0xe7, 0x9b, 0x1b, 0x32, 0x97, 0xb1,
-	0x21, 0xdb, 0xff, 0xc8, 0xc1, 0x1d, 0x2d, 0x58, 0x64, 0x59, 0x38, 0x83, 0x9d, 0x60, 0x31, 0x9f,
-	0x7b, 0x7e, 0x68, 0x8f, 0xcd, 0x2b, 0x6f, 0x1a, 0x5a, 0x93, 0x38, 0x04, 0xbf, 0xe0, 0xd1, 0xcd,
-	0xd4, 0xdb, 0xd3, 0x63, 0xa5, 0x53, 0xae, 0x43, 0x50, 0x90, 0x92, 0xb4, 0x35, 0x40, 0x69, 0x16,
-	0xfe, 0x08, 0xee, 0xeb, 0x43, 0x4d, 0x53, 0x89, 0x21, 0x75, 0xcd, 0x53, 0xb5, 0x6f, 0x08, 0xc7,
-	0xeb, 0x9b, 0xaf, 0x02, 0x85, 0xd3, 0xc3, 0x17, 0xbc, 0xbe, 0x4e, 0x3b, 0xcf, 0x0e, 0x50, 0x9e,
-	0x8d, 0x9e, 0x3e, 0x7d, 0x8e, 0x0a, 0xed, 0x7f, 0x16, 0xe1, 0xa3, 0xac, 0x8c, 0x06, 0x89, 0x0f,
-	0xd2, 0xa0, 0x7e, 0xe1, 0xf9, 0x33, 0xf3, 0xc2, 0xa2, 0xdb, 0x3d, 0xfa, 0x94, 0xfd, 0x74, 0x36,
-	0xb3, 0x54, 0xf7, 0x7a, 0x9e, 0x3f, 0xeb, 0x31, 0x35, 0x02, 0x17, 0xcb, 0x71, 0xaa, 0x3c, 0xf2,
-	0xef, 0x55, 0x1e, 0xf8, 0x63, 0x68, 0xcc, 0xac, 0x37, 0xf4, 0xf0, 0x0a, 0x2d, 0x77, 0xc4, 0x4f,
-	0xcd, 0x26, 0xa9, 0xcf, 0xac, 0x37, 0xdd, 0x48, 0x84, 0xbf, 0x02, 0x9c, 0xa4, 0x98, 0xfc, 0x78,
-	0x2d, 0x66, 0x1f, 0xaf, 0x28, 0xa1, 0xc9, 0x24, 0xb4, 0xcb, 0xfa, 0x6f, 0xcc, 0xef, 0xac, 0x2b,
-	0x7b, 0x6a, 0xbb, 0x93, 0xf0, 0xb2, 0x55, 0x7a, 0x54, 0x78, 0xd2, 0x24, 0x0d, 0xff, 0xcd, 0xab,
-	0xa5, 0x8c, 0x92, 0xc2, 0x35, 0x52, 0x99, 0x93, 0xc2, 0x24, 0xe9, 0x57, 0x80, 0x56, 0x8c, 0xc8,
-	0x8d, 0x4a, 0xb6, 0x1b, 0xdb, 0x2b, 0x22, 0x13, 0xb4, 0x7f, 0xcc, 0x01, 0xac, 0xe2, 0x86, 0xef,
-	0xc2, 0xcd, 0x9e, 0x4a, 0x06, 0x66, 0x4f, 0x60, 0xbd, 0x75, 0xa8, 0xbc, 0x54, 0xd4, 0x57, 0x0a,
-	0x6f, 0xaa, 0xdf, 0xe8, 0x3d, 0x8d, 0xf7, 0x3b, 0x3a, 0x32, 0xb5, 0xfe, 0x50, 0x47, 0x79, 0xda,
-	0x1b, 0xe8, 0xb4, 0xf3, 0x02, 0x15, 0x68, 0xf2, 0x29, 0xa7, 0x48, 0x5b, 0xcd, 0x92, 0x52, 0xa2,
-	0xe2, 0xd7, 0x3d, 0x8d, 0xf7, 0x0e, 0xb1, 0xa7, 0x1d, 0xf2, 0xde, 0x21, 0xf6, 0xb4, 0x0e, 0xaa,
-	0xb2, 0x91, 0x26, 0xbc, 0x44, 0x35, 0x5c, 0x86, 0xfc, 0xeb, 0x0e, 0x02, 0xda, 0x78, 0x54, 0xda,
-	0xa7, 0x50, 0x9d, 0x6a, 0x8a, 0x3d, 0x0d, 0x35, 0xa8, 0x41, 0xca, 0x37, 0x05, 0x51, 0x45, 0xcd,
-	0xe5, 0xac, 0x2b, 0xaa, 0x68, 0xab, 0xfd, 0xaf, 0x0a, 0xd4, 0x96, 0xf5, 0x40, 0xaf, 0xc7, 0xae,
-	0x35, 0xb3, 0xe3, 0xeb, 0x31, 0x1d, 0xe3, 0x27, 0x50, 0x1a, 0x4d, 0xad, 0x20, 0x58, 0xbb, 0x24,
-	0x2d, 0x55, 0x58, 0xea, 0x39, 0x01, 0x3f, 0x82, 0xfa, 0xd8, 0x0e, 0x46, 0xbe, 0x33, 0x67, 0xa7,
-	0x52, 0x81, 0x19, 0x49, 0x8a, 0xf0, 0x1d, 0x28, 0xcf, 0x2d, 0xdf, 0x76, 0xc3, 0xe8, 0xec, 0x8c,
-	0x66, 0xf8, 0x31, 0x6c, 0xf1, 0x91, 0xe9, 0xdb, 0x53, 0x73, 0xee, 0xf1, 0x2b, 0x52, 0x89, 0x34,
-	0xb8, 0x94, 0xd8, 0x53, 0xcd, 0x0b, 0xf0, 0x2e, 0x54, 0x47, 0x97, 0xce, 0x74, 0xec, 0xdb, 0x2e,
-	0x4b, 0x65, 0xbd, 0xb3, 0xb5, 0xee, 0x0c, 0x59, 0xe2, 0xb4, 0x04, 0x2f, 0xa3, 0x4b, 0xbd, 0xe9,
-	0xdb, 0x57, 0x2c, 0xa5, 0x35, 0x52, 0x8f, 0x65, 0xc4, 0xbe, 0xa2, 0x94, 0x0b, 0xc7, 0x9f, 0x2d,
-	0x29, 0x55, 0x4e, 0x89, 0x65, 0x11, 0x25, 0xf0, 0x2e, 0xc2, 0x25, 0x85, 0xdf, 0x7f, 0xea, 0xb1,
-	0x8c, 0x52, 0x1e, 0x02, 0x04, 0xb6, 0xef, 0x58, 0x53, 0xd3, 0x5d, 0xcc, 0x5a, 0xc0, 0x08, 0x35,
-	0x2e, 0x51, 0x16, 0x33, 0xfc, 0x01, 0x54, 0x67, 0x17, 0x13, 0x93, 0x45, 0xb5, 0xce, 0xc0, 0xca,
-	0xec, 0x62, 0xa2, 0xd0, 0xc0, 0x3e, 0x04, 0x98, 0x79, 0x63, 0x7b, 0xca, 0xc1, 0x06, 0xd7, 0x64,
-	0x12, 0x06, 0xdf, 0x82, 0x92, 0x35, 0x75, 0xac, 0xa0, 0xd5, 0x64, 0x08, 0x9f, 0x50, 0x7b, 0x56,
-	0x10, 0xd8, 0x21, 0x6d, 0xb6, 0x5b, 0xdc, 0x1e, 0x9b, 0xcb, 0x63, 0xda, 0x85, 0x9d, 0xc0, 0xbc,
-	0xf0, 0x17, 0xad, 0x6d, 0x76, 0x1f, 0x28, 0x39, 0x41, 0xcf, 0x5f, 0xe0, 0xe7, 0xdc, 0x03, 0x7a,
-	0xa1, 0x6b, 0xa1, 0x9f, 0xbc, 0x25, 0x52, 0xef, 0xba, 0xf4, 0xde, 0x77, 0x8f, 0xbf, 0x70, 0x76,
-	0x98, 0x46, 0x95, 0x3f, 0x83, 0x7c, 0x87, 0xbd, 0x75, 0x96, 0x6f, 0x24, 0x9c, 0xf9, 0x46, 0xc2,
-	0x9f, 0x41, 0x89, 0x5f, 0xde, 0x6f, 0x32, 0xfc, 0xe6, 0xc6, 0xe5, 0x3d, 0xa4, 0x37, 0xe6, 0xf8,
-	0xa9, 0x10, 0xb0, 0x0b, 0x30, 0xf5, 0xcf, 0x6a, 0xdd, 0x62, 0x59, 0x4d, 0x3d, 0x15, 0x56, 0xb7,
-	0x78, 0x02, 0xc1, 0xea, 0x46, 0xff, 0x25, 0xd4, 0x68, 0x7b, 0x35, 0xad, 0x30, 0xf4, 0x5b, 0x1d,
-	0xb6, 0xd2, 0x83, 0x77, 0xdd, 0xe9, 0x4e, 0x6e, 0x90, 0x2a, 0x55, 0xa0, 0x12, 0xfc, 0x35, 0xbb,
-	0x9c, 0xf2, 0xb3, 0x85, 0x5b, 0x78, 0xc6, 0x2c, 0x7c, 0x1c, 0x2d, 0x7d, 0xfd, 0xb1, 0x73, 0x72,
-	0x83, 0xdd, 0x4a, 0x39, 0xce, 0x6c, 0xbd, 0x80, 0xea, 0x3c, 0x58, 0x70, 0x2b, 0x87, 0xcc, 0xca,
-	0xfd, 0x77, 0x1c, 0x1e, 0x27, 0x37, 0x48, 0x65, 0x1e, 0x2c, 0x98, 0xe6, 0x37, 0x80, 0xc2, 0x55,
-	0x17, 0xe5, 0x16, 0x9e, 0x33, 0x0b, 0x8f, 0xdf, 0xa7, 0x67, 0x9f, 0xdc, 0x20, 0xdb, 0x09, 0x7d,
-	0x0a, 0x1c, 0x01, 0x54, 0x83, 0xb9, 0x3d, 0x72, 0x2e, 0x9c, 0x51, 0xfb, 0x87, 0x1c, 0x54, 0xe3,
-	0x97, 0x2d, 0xfe, 0x12, 0xea, 0x89, 0x67, 0xe8, 0x7b, 0xbc, 0x42, 0x61, 0xba, 0x7c, 0x80, 0xe2,
-	0x36, 0x14, 0x7d, 0xcf, 0x0b, 0x59, 0x0b, 0xd8, 0xdc, 0x75, 0x0c, 0x5b, 0x2e, 0x70, 0xee, 0x79,
-	0xa1, 0x3d, 0x66, 0xbb, 0xff, 0x3d, 0x16, 0x38, 0x62, 0xec, 0xf6, 0x8f, 0x05, 0xb8, 0x39, 0xf0,
-	0xc6, 0xce, 0x85, 0x63, 0x9d, 0x4f, 0xed, 0xff, 0x55, 0x43, 0xfa, 0x74, 0xd9, 0x6e, 0x0a, 0x99,
-	0x8e, 0x5f, 0xdf, 0x7e, 0x8a, 0x19, 0xed, 0x67, 0xb9, 0x21, 0x4b, 0xd7, 0x6d, 0xc8, 0xf2, 0xfa,
-	0x86, 0x8c, 0xb6, 0x50, 0x25, 0x6b, 0x0b, 0xa5, 0x5e, 0xf4, 0xd5, 0x9f, 0xf1, 0xa2, 0x17, 0x36,
-	0x0b, 0x3f, 0xe3, 0x25, 0x94, 0xbe, 0xe8, 0xad, 0x95, 0x7f, 0x0f, 0xaa, 0xa1, 0xff, 0x26, 0x59,
-	0xf8, 0x9f, 0x5d, 0x5b, 0x70, 0x19, 0x86, 0x2a, 0xa1, 0xff, 0x26, 0x5d, 0x6d, 0xbb, 0x7f, 0x2d,
-	0xd0, 0x97, 0x46, 0x22, 0x0b, 0xfc, 0xa5, 0x31, 0xd0, 0x54, 0x45, 0x52, 0x8c, 0xcd, 0x97, 0xc6,
-	0x3d, 0xb8, 0xb3, 0x81, 0xf2, 0x03, 0x33, 0x97, 0x81, 0x89, 0x27, 0x82, 0xae, 0xcb, 0xf4, 0xcc,
-	0xdc, 0xb4, 0x7a, 0x24, 0x88, 0x2f, 0xb5, 0xbe, 0xa0, 0x48, 0xa8, 0x90, 0x81, 0x8a, 0xaa, 0x62,
-	0x08, 0xb2, 0x22, 0x11, 0x54, 0xa4, 0x37, 0xb0, 0x14, 0xaa, 0xa9, 0xaf, 0xe8, 0xa3, 0x66, 0xa8,
-	0x69, 0xfd, 0x33, 0x54, 0xa2, 0xd7, 0xff, 0x14, 0xa1, 0x27, 0x28, 0xa8, 0x8c, 0x3f, 0x80, 0xdb,
-	0x29, 0xb9, 0x2e, 0x29, 0xba, 0x4a, 0x50, 0x25, 0x03, 0x1a, 0xa8, 0xdd, 0x61, 0x5f, 0x42, 0x55,
-	0x7a, 0x21, 0xd8, 0x58, 0x8e, 0x18, 0xa8, 0x96, 0xb1, 0x8c, 0xa8, 0x0d, 0x11, 0x64, 0x7c, 0xf7,
-	0x91, 0x60, 0x18, 0x12, 0x39, 0x43, 0xf5, 0x0c, 0x4c, 0x37, 0x54, 0x22, 0x1c, 0x4b, 0xa8, 0x91,
-	0xe5, 0x83, 0x34, 0x50, 0xc9, 0x19, 0x6a, 0xe2, 0x0f, 0xe1, 0x5e, 0x0a, 0x32, 0x88, 0xa0, 0xe8,
-	0xa2, 0x24, 0x9f, 0x4a, 0x04, 0x6d, 0xed, 0xfe, 0x25, 0x97, 0xf8, 0x61, 0xb2, 0xaa, 0xb8, 0x58,
-	0xcf, 0x14, 0xba, 0x03, 0x59, 0x31, 0x75, 0x43, 0x30, 0xd6, 0xd3, 0x17, 0x05, 0x3a, 0x85, 0xc7,
-	0x09, 0xbc, 0x0f, 0x77, 0x37, 0xd0, 0xbe, 0x2a, 0xbe, 0x94, 0xba, 0x28, 0x8f, 0xdb, 0xf0, 0xe1,
-	0x06, 0xa8, 0x9f, 0x0c, 0x0d, 0x43, 0x56, 0x8e, 0xcd, 0x2e, 0x35, 0x50, 0xc0, 0x0f, 0xe1, 0x83,
-	0x0c, 0xf3, 0x91, 0x89, 0xe2, 0xee, 0x0f, 0x39, 0xc0, 0x9b, 0xff, 0xaf, 0x96, 0x5a, 0xaa, 0x46,
-	0x93, 0xba, 0xe1, 0x73, 0xec, 0xd5, 0x1a, 0x1c, 0xbb, 0x1c, 0x7f, 0x50, 0x02, 0xec, 0xca, 0xba,
-	0x70, 0xd4, 0x67, 0x3e, 0x67, 0xa8, 0x4a, 0x0a, 0x07, 0x0b, 0x59, 0xa0, 0x21, 0xe9, 0xf4, 0x73,
-	0x50, 0x71, 0xf7, 0x4f, 0xc9, 0x00, 0xaf, 0xfe, 0x98, 0x2d, 0x03, 0x3c, 0xd4, 0xe9, 0x33, 0xe0,
-	0xfa, 0x00, 0xaf, 0xe3, 0xb1, 0xb7, 0x51, 0xc6, 0xd7, 0x50, 0xb9, 0xdb, 0x97, 0x12, 0xae, 0x26,
-	0x21, 0x41, 0x34, 0xe4, 0x53, 0xba, 0x3f, 0xb2, 0xf4, 0x8e, 0x86, 0xfa, 0x19, 0x2a, 0xee, 0xfe,
-	0x31, 0xf9, 0xeb, 0x6c, 0xf5, 0x7f, 0x6e, 0x55, 0x09, 0x7d, 0x81, 0x0c, 0xde, 0x55, 0x09, 0x6b,
-	0x78, 0xec, 0xe8, 0xc7, 0xf0, 0x30, 0x53, 0x9b, 0x98, 0x44, 0xd2, 0x04, 0x99, 0xa0, 0xfc, 0x2a,
-	0xd7, 0x09, 0x8a, 0x48, 0x64, 0x43, 0x16, 0x85, 0x3e, 0x2a, 0xc4, 0x85, 0xbf, 0x06, 0x0f, 0x84,
-	0xaf, 0x55, 0xba, 0xa1, 0x33, 0x31, 0x59, 0x51, 0x09, 0x2a, 0x65, 0xfa, 0xf5, 0x4a, 0x20, 0x0a,
-	0x4d, 0x4b, 0x79, 0x55, 0x84, 0x09, 0x54, 0x56, 0xba, 0x92, 0x21, 0x91, 0x81, 0xac, 0x08, 0x86,
-	0x84, 0x2a, 0xbb, 0x7f, 0xcb, 0xc1, 0xed, 0xcc, 0x9f, 0x8e, 0xf8, 0x11, 0x3c, 0x60, 0xda, 0xba,
-	0x21, 0x28, 0xdd, 0xa3, 0xb3, 0x8c, 0xa8, 0xc4, 0x51, 0x4b, 0x33, 0x52, 0x2d, 0x2e, 0x85, 0x9f,
-	0xa8, 0x46, 0x22, 0x83, 0xeb, 0x98, 0xa8, 0xf6, 0x69, 0xb1, 0x3d, 0x81, 0xc7, 0x19, 0xa0, 0x46,
-	0xd4, 0x53, 0xb9, 0x4b, 0x37, 0x90, 0x2e, 0x91, 0x53, 0x59, 0x94, 0x50, 0x71, 0xf7, 0x0f, 0x05,
-	0x68, 0xae, 0xfd, 0xcd, 0xc4, 0x2d, 0xb8, 0x75, 0x2a, 0xf4, 0x87, 0xd2, 0x66, 0x37, 0xbe, 0x05,
-	0x28, 0x81, 0xf0, 0x27, 0x44, 0x8e, 0xf6, 0xa9, 0x35, 0x3e, 0x77, 0x3e, 0x4f, 0x1b, 0x5b, 0x42,
-	0x4e, 0x9f, 0xb2, 0xba, 0x29, 0x88, 0xa8, 0x90, 0x09, 0x74, 0x45, 0x54, 0x4c, 0x59, 0x12, 0x06,
-	0x9a, 0x44, 0x24, 0xfa, 0xbc, 0x59, 0x5f, 0xf7, 0x95, 0x60, 0x18, 0x3a, 0x2a, 0xa7, 0xa4, 0x27,
-	0x12, 0x31, 0xbe, 0x45, 0x95, 0x94, 0x0d, 0x51, 0xea, 0xeb, 0xf2, 0x50, 0x47, 0x55, 0x5a, 0xd3,
-	0x09, 0xb9, 0x26, 0x11, 0x91, 0xf6, 0x3a, 0x72, 0x82, 0x6a, 0x18, 0xc3, 0x56, 0x02, 0x22, 0xda,
-	0x00, 0x41, 0x4a, 0x26, 0x0e, 0x06, 0xbc, 0xb9, 0x26, 0x64, 0x06, 0x19, 0x1a, 0x27, 0x26, 0x13,
-	0xa0, 0x46, 0x6a, 0xd9, 0xc8, 0x3c, 0x6a, 0xe2, 0xdb, 0xb0, 0x93, 0x90, 0x0f, 0x68, 0xe5, 0xe8,
-	0x68, 0x2b, 0xe5, 0xfb, 0xd1, 0x99, 0x21, 0xe9, 0x68, 0x7b, 0xf7, 0xfb, 0x02, 0xc0, 0xea, 0x29,
-	0xb9, 0x72, 0x59, 0x17, 0x85, 0xfe, 0x7a, 0x26, 0x96, 0x66, 0x39, 0x74, 0xa6, 0x8a, 0x86, 0x8a,
-	0x72, 0x69, 0xf1, 0xb7, 0x92, 0x66, 0xa8, 0x28, 0xbf, 0x5a, 0x8d, 0x8b, 0x05, 0xc3, 0x50, 0x51,
-	0x21, 0x4d, 0xee, 0x49, 0x03, 0x43, 0x45, 0xc5, 0x34, 0x59, 0x93, 0x45, 0x35, 0x99, 0x02, 0x2e,
-	0x55, 0x04, 0x45, 0x45, 0xe5, 0xb4, 0x89, 0x81, 0x2c, 0x12, 0x15, 0x55, 0x36, 0xc5, 0xfd, 0xbe,
-	0x8c, 0xaa, 0x69, 0xf1, 0x50, 0x91, 0x0d, 0x1d, 0xd5, 0xd2, 0xa6, 0x5f, 0xca, 0x7d, 0x15, 0x41,
-	0x5a, 0x3a, 0x90, 0x8e, 0x05, 0x54, 0x4f, 0x4b, 0x8f, 0xe5, 0x63, 0x01, 0x35, 0xd2, 0x52, 0x43,
-	0x22, 0x02, 0x6a, 0x6e, 0x7c, 0x88, 0x64, 0x08, 0x68, 0x0b, 0xdf, 0x84, 0xed, 0xa4, 0x54, 0x7a,
-	0x2d, 0xa0, 0xed, 0xcd, 0xb8, 0x19, 0x86, 0x80, 0xd0, 0x66, 0x94, 0xa9, 0x78, 0x67, 0xf7, 0x77,
-	0x39, 0x68, 0x24, 0xff, 0xc8, 0xd3, 0xad, 0xc8, 0x4f, 0x7a, 0xb6, 0xcf, 0x86, 0x7a, 0x7a, 0xd3,
-	0xac, 0x83, 0xea, 0x4b, 0x94, 0xa3, 0xed, 0x2c, 0xad, 0x22, 0x9c, 0x0a, 0x72, 0x9f, 0x9e, 0x16,
-	0x28, 0x4f, 0x5b, 0xc7, 0x3a, 0xac, 0xa8, 0x0a, 0x3d, 0x38, 0x04, 0x43, 0x56, 0x15, 0xda, 0xf0,
-	0x76, 0xbf, 0xcf, 0xc1, 0x76, 0xea, 0xef, 0x0a, 0x2d, 0xda, 0x8d, 0x3d, 0xfb, 0x33, 0xff, 0x49,
-	0xb2, 0x9f, 0x05, 0xaa, 0x82, 0x4a, 0xb8, 0x0e, 0x15, 0xe5, 0xd8, 0xd4, 0x54, 0xa5, 0xb3, 0xf6,
-	0x4f, 0xf2, 0x36, 0xec, 0x88, 0xea, 0xe0, 0x48, 0x35, 0xa9, 0xb2, 0x19, 0xe9, 0x55, 0xf1, 0x1d,
-	0xd8, 0x61, 0x4b, 0x2b, 0xaa, 0x61, 0xd2, 0xfe, 0x28, 0x1a, 0x52, 0x17, 0xfd, 0x27, 0x77, 0xf4,
-	0xe5, 0xb7, 0x5f, 0x4c, 0x9c, 0xf0, 0x72, 0x71, 0xbe, 0x37, 0xf2, 0x66, 0xfb, 0xde, 0xdc, 0x76,
-	0x47, 0x9e, 0x3f, 0xde, 0x1f, 0xdb, 0x57, 0xce, 0xc8, 0xfe, 0x7c, 0x66, 0xb9, 0xd6, 0xc4, 0x9e,
-	0xd9, 0x6e, 0xf8, 0xb9, 0xe3, 0x86, 0xb6, 0x7f, 0x61, 0x8d, 0xec, 0xfd, 0xab, 0x67, 0xfb, 0x13,
-	0x6f, 0x7f, 0x3c, 0x73, 0xce, 0xcb, 0xec, 0x41, 0xf0, 0xec, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff,
-	0x27, 0xda, 0x52, 0xa5, 0xcd, 0x1b, 0x00, 0x00,
+	// 2926 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x59, 0xcd, 0x92, 0xdb, 0xc6,
+	0x11, 0x16, 0xff, 0xc9, 0x26, 0xb9, 0x3b, 0x3b, 0xfa, 0xa3, 0xfe, 0x6c, 0x99, 0x91, 0x5d, 0xf2,
+	0xc6, 0xde, 0x5d, 0xad, 0xa4, 0x94, 0x6c, 0x97, 0x2b, 0x85, 0x05, 0xc1, 0x5d, 0x58, 0x24, 0x00,
+	0x0f, 0xc0, 0x95, 0xd6, 0x39, 0xa0, 0xb0, 0x24, 0x48, 0xa1, 0x8a, 0x24, 0x58, 0x00, 0xb8, 0x5a,
+	0x55, 0xe5, 0x94, 0xe4, 0x9e, 0x27, 0xc8, 0xcd, 0x95, 0xf2, 0x29, 0x87, 0x24, 0xc7, 0x1c, 0x72,
+	0xc9, 0x31, 0x0f, 0x90, 0x67, 0xc8, 0x21, 0x8f, 0x90, 0xd4, 0xcc, 0x00, 0x20, 0x08, 0x42, 0xb2,
+	0x5c, 0x95, 0xdb, 0x4c, 0xf7, 0xd7, 0x3d, 0x3d, 0xdd, 0x3d, 0x3d, 0xd3, 0x00, 0x34, 0x46, 0x33,
+	0x67, 0xff, 0xd5, 0xeb, 0xbd, 0x85, 0xe7, 0x06, 0x2e, 0x2e, 0x8c, 0x66, 0xce, 0xed, 0x0f, 0x27,
+	0xae, 0x3b, 0x99, 0xda, 0xfb, 0x8c, 0x74, 0xbe, 0x1c, 0xef, 0x07, 0xce, 0xcc, 0xf6, 0x03, 0x6b,
+	0xb6, 0xe0, 0xa8, 0xf6, 0x6d, 0x28, 0x0e, 0x96, 0xce, 0x08, 0x63, 0x28, 0x2e, 0x97, 0xce, 0xa8,
+	0x95, 0xbb, 0x9f, 0x7b, 0x58, 0x23, 0x6c, 0xdc, 0xfe, 0x39, 0xc0, 0x89, 0xe5, 0x8d, 0x5e, 0x5b,
+	0x9e, 0x2d, 0x77, 0xf0, 0xbd, 0x04, 0xa2, 0x7e, 0x58, 0xdb, 0x1b, 0xcd, 0x9c, 0x3d, 0x2a, 0x1a,
+	0x82, 0x6f, 0x42, 0x61, 0xe0, 0x39, 0x18, 0x41, 0x61, 0xe9, 0x39, 0xa1, 0x1a, 0x3a, 0x6c, 0xff,
+	0xae, 0x00, 0x5b, 0xa2, 0x3b, 0x5b, 0xb8, 0x73, 0x7b, 0x1e, 0xe8, 0x81, 0x15, 0xd8, 0xf8, 0x04,
+	0xb0, 0x4f, 0x07, 0xe6, 0xd4, 0xf2, 0x03, 0x73, 0xf8, 0xca, 0x9a, 0x4f, 0xec, 0x48, 0xf1, 0xed,
+	0x3d, 0x6e, 0xf2, 0x5e, 0x64, 0xf2, 0x9e, 0x11, 0x99, 0x4c, 0x10, 0x93, 0xea, 0x59, 0x7e, 0x20,
+	0x72, 0x19, 0xfc, 0x05, 0xd4, 0xad, 0xd1, 0xcc, 0x99, 0x9b, 0x8c, 0xd3, 0xca, 0xdf, 0xcf, 0x3d,
+	0xdc, 0x3a, 0x6c, 0x31, 0xdb, 0xe2, 0x35, 0x05, 0x0a, 0x60, 0x0b, 0x13, 0xb0, 0xe2, 0x31, 0xfe,
+	0x05, 0x80, 0xbb, 0xb0, 0xbd, 0x50, 0xb2, 0xc0, 0x24, 0x6f, 0xae, 0x4b, 0xaa, 0x0b, 0xdb, 0xe3,
+	0x82, 0x35, 0x37, 0x1a, 0xd2, 0x25, 0x97, 0xbe, 0x35, 0xb1, 0x43, 0xc1, 0x62, 0xd6, 0x92, 0x03,
+	0x0a, 0x08, 0x97, 0x5c, 0xc6, 0x63, 0x66, 0xed, 0xd4, 0xf2, 0x66, 0xa1, 0x68, 0x29, 0xd3, 0x5a,
+	0x0a, 0x88, 0xac, 0x8d, 0xc7, 0xf8, 0x97, 0xd0, 0xf4, 0x03, 0x6b, 0x3e, 0x3a, 0x7f, 0x13, 0x0a,
+	0x97, 0x99, 0xf0, 0xed, 0x75, 0x61, 0x9d, 0x43, 0xb8, 0x78, 0xc3, 0x4f, 0xcc, 0xda, 0xff, 0xce,
+	0xc3, 0xd5, 0x15, 0xce, 0x9e, 0xfb, 0xae, 0xd7, 0xb1, 0x02, 0x0b, 0x5f, 0x83, 0xd2, 0x85, 0x35,
+	0x5d, 0xda, 0xcc, 0xfd, 0x25, 0xc2, 0x27, 0xf8, 0x13, 0x28, 0x06, 0x6f, 0x16, 0x91, 0x43, 0x31,
+	0x5b, 0x85, 0xc2, 0x4f, 0x29, 0xd7, 0x78, 0xb3, 0xb0, 0x09, 0xe3, 0xe3, 0x8f, 0xa1, 0xe4, 0x0f,
+	0xad, 0x69, 0xe4, 0xbf, 0x6d, 0x06, 0x64, 0x20, 0x9d, 0x92, 0x09, 0xe7, 0xe2, 0xbb, 0x50, 0x5b,
+	0x78, 0xf6, 0xd0, 0xf1, 0x1d, 0x77, 0xce, 0x3c, 0x56, 0x22, 0x2b, 0x02, 0xfe, 0x14, 0xca, 0x74,
+	0x4f, 0x4b, 0x3f, 0xf4, 0xc8, 0x0e, 0xd3, 0xc2, 0x6d, 0xd4, 0x19, 0x83, 0x84, 0x00, 0xfc, 0x33,
+	0x68, 0x2e, 0xe7, 0x4e, 0xe0, 0x9b, 0x23, 0xc7, 0x5f, 0x4c, 0xad, 0x37, 0xcc, 0x0d, 0x35, 0xd2,
+	0x60, 0xc4, 0x0e, 0xa7, 0xe1, 0x67, 0x50, 0x8b, 0xd3, 0xbc, 0x55, 0xf9, 0xd1, 0xac, 0x5a, 0x81,
+	0xf1, 0x2e, 0xec, 0xb0, 0xfd, 0x9b, 0xcb, 0xc5, 0x88, 0xe6, 0xa7, 0x47, 0x3d, 0x5d, 0xbd, 0x9f,
+	0x7b, 0xd8, 0x24, 0xdb, 0x8c, 0x31, 0x60, 0x74, 0x42, 0x23, 0x72, 0x07, 0x6a, 0x23, 0x2b, 0xb0,
+	0x4c, 0xe6, 0xa7, 0x1a, 0x33, 0xa3, 0x4a, 0x09, 0xd4, 0x3b, 0xed, 0xff, 0x94, 0xe1, 0xa6, 0xe6,
+	0x7a, 0xc1, 0x2a, 0xac, 0x41, 0xe0, 0x39, 0xe7, 0xcb, 0xc0, 0xf6, 0xf1, 0xb7, 0xb0, 0x35, 0x74,
+	0xe7, 0x73, 0x7b, 0x18, 0xb8, 0x1e, 0x97, 0xce, 0xb1, 0x6d, 0xef, 0xb2, 0x6d, 0xbf, 0x45, 0x6a,
+	0x4f, 0x8c, 0x44, 0x98, 0xf7, 0x9b, 0xc3, 0xe4, 0x14, 0x3f, 0x83, 0x92, 0xbf, 0xb0, 0xed, 0x51,
+	0x18, 0xaf, 0xf6, 0x3b, 0x35, 0xe9, 0x14, 0x49, 0xb8, 0x00, 0x16, 0xa0, 0xca, 0x5c, 0x32, 0x74,
+	0xa7, 0x61, 0x0c, 0x3f, 0x7e, 0xa7, 0xb0, 0x16, 0x82, 0x49, 0x2c, 0x86, 0x3f, 0x86, 0xad, 0xc5,
+	0xab, 0x37, 0xbe, 0x33, 0xb4, 0xa6, 0xe6, 0xd4, 0x3a, 0xb7, 0xa7, 0x2c, 0xc2, 0x35, 0xd2, 0x8c,
+	0xa8, 0x3d, 0x4a, 0xa4, 0xa1, 0x9b, 0x59, 0x8b, 0x85, 0x33, 0x9f, 0x84, 0xa8, 0x12, 0x0f, 0x5d,
+	0x48, 0xe4, 0xa0, 0x27, 0xd0, 0x5c, 0xb8, 0x73, 0xd3, 0x19, 0x99, 0x43, 0x77, 0x3e, 0x76, 0x26,
+	0x2c, 0xbe, 0xf5, 0x43, 0x14, 0xda, 0x34, 0x97, 0x47, 0x22, 0xa3, 0x93, 0xfa, 0x62, 0x35, 0xc1,
+	0x8f, 0xe1, 0x3a, 0xdb, 0x8d, 0x69, 0x2d, 0x03, 0x77, 0x6e, 0x4f, 0xdc, 0xc0, 0xb1, 0x02, 0x9a,
+	0x6a, 0x34, 0xf8, 0x55, 0x72, 0x8d, 0x31, 0x85, 0x75, 0x1e, 0xfe, 0x0c, 0xaa, 0x23, 0x87, 0x1e,
+	0x91, 0x21, 0x0f, 0x71, 0x62, 0x95, 0x4e, 0x48, 0x27, 0x31, 0xa2, 0xbd, 0x80, 0xe6, 0x5a, 0x04,
+	0xf0, 0x5d, 0x68, 0x89, 0xaa, 0xa2, 0x48, 0xa2, 0xa1, 0x12, 0xd3, 0x38, 0xd3, 0x24, 0x73, 0xa0,
+	0x74, 0xa4, 0xae, 0xac, 0x48, 0x1d, 0x74, 0x05, 0x57, 0xa1, 0x48, 0xbe, 0x79, 0xf2, 0x14, 0xe5,
+	0x70, 0x03, 0xaa, 0x5d, 0xf9, 0x48, 0x22, 0x66, 0x4f, 0x44, 0x79, 0xbc, 0x0d, 0x75, 0x3e, 0xd3,
+	0x45, 0x53, 0x13, 0x51, 0x01, 0x37, 0xa1, 0xc6, 0x09, 0x7d, 0x4d, 0x45, 0x45, 0x5c, 0x83, 0x12,
+	0xd1, 0x0f, 0x1f, 0x1f, 0xa2, 0x52, 0xfb, 0x4f, 0x39, 0x28, 0xb1, 0x50, 0xe1, 0xab, 0xb0, 0xad,
+	0x6b, 0x92, 0xd4, 0x59, 0x5b, 0xa1, 0x0e, 0x95, 0xce, 0x99, 0x22, 0xf4, 0x65, 0x11, 0xe5, 0xa8,
+	0x96, 0x63, 0xf9, 0x58, 0x38, 0x92, 0x0d, 0xf3, 0x11, 0xca, 0xe3, 0x2d, 0x80, 0x78, 0x7a, 0x80,
+	0x0a, 0xc9, 0xf9, 0xe1, 0x53, 0x54, 0x4c, 0xce, 0x9f, 0x1c, 0xa0, 0x12, 0xb5, 0x6a, 0x85, 0x3f,
+	0x40, 0xe5, 0x24, 0xe1, 0xc9, 0xc1, 0x01, 0xaa, 0x60, 0x04, 0x8d, 0xbe, 0x14, 0x69, 0x38, 0x38,
+	0x40, 0xd5, 0x24, 0xe5, 0xd1, 0xe1, 0xd3, 0x03, 0x54, 0x6b, 0xff, 0x1a, 0xaa, 0x51, 0x76, 0xe0,
+	0x1b, 0x80, 0x35, 0xa2, 0x1a, 0xaa, 0xa8, 0xf6, 0xd6, 0xac, 0x6e, 0x40, 0x55, 0x32, 0x4e, 0x24,
+	0xa2, 0x48, 0x06, 0xca, 0x51, 0x2f, 0x1d, 0x6b, 0xaa, 0x82, 0xf2, 0x74, 0xdf, 0x2f, 0xd9, 0xb0,
+	0x80, 0x01, 0xca, 0x2f, 0x8f, 0x75, 0x3a, 0x66, 0xee, 0x38, 0xee, 0x0a, 0xba, 0x81, 0x4a, 0x94,
+	0xac, 0x4b, 0x44, 0x16, 0x7a, 0xa8, 0x4c, 0xe5, 0x24, 0x0a, 0xa8, 0xd0, 0xd1, 0x91, 0x6c, 0xe8,
+	0xa8, 0xda, 0x9e, 0x42, 0x3d, 0x11, 0x39, 0xfc, 0x11, 0x34, 0x66, 0xd6, 0xa5, 0x19, 0x47, 0x38,
+	0xc7, 0x0e, 0x71, 0x7d, 0x66, 0x5d, 0xc6, 0x90, 0x2f, 0xe1, 0x16, 0x87, 0x8c, 0xc7, 0xb6, 0x67,
+	0xcf, 0x03, 0xc7, 0x9a, 0xae, 0xf0, 0x79, 0x86, 0xbf, 0xc9, 0xf0, 0x2b, 0x7e, 0x24, 0xdb, 0xfe,
+	0x6d, 0x0e, 0xee, 0xad, 0x1d, 0x11, 0x7e, 0x21, 0x25, 0x4e, 0xf9, 0x46, 0x26, 0xe7, 0xde, 0x27,
+	0x93, 0x93, 0x49, 0x99, 0xff, 0xd1, 0xa4, 0xfc, 0x15, 0x3c, 0x30, 0x3c, 0x6b, 0xee, 0x0f, 0x6d,
+	0xe7, 0xc2, 0xf6, 0xde, 0x6e, 0xcb, 0x63, 0x80, 0x80, 0xe2, 0x92, 0xd5, 0xe6, 0x1a, 0xd3, 0x9b,
+	0x10, 0x67, 0x75, 0xa5, 0xc6, 0x70, 0xac, 0x84, 0x0d, 0x99, 0x43, 0x63, 0xcb, 0xae, 0x43, 0x99,
+	0xef, 0x87, 0xc9, 0x37, 0x48, 0x89, 0x99, 0x8d, 0xbf, 0x86, 0x3b, 0xe1, 0x36, 0x99, 0xe4, 0xcc,
+	0x09, 0xcc, 0x85, 0xed, 0x39, 0xee, 0xc8, 0x19, 0x3a, 0xc1, 0x9b, 0xd0, 0x8d, 0x2d, 0x86, 0x35,
+	0x42, 0x80, 0xb6, 0xe2, 0xb7, 0x25, 0xb8, 0x2b, 0xba, 0xf3, 0xc0, 0x72, 0xe6, 0x09, 0xfb, 0x13,
+	0x96, 0x6f, 0xd6, 0x96, 0x5c, 0x46, 0x6d, 0x69, 0xff, 0x23, 0x07, 0x37, 0x34, 0x7f, 0x99, 0xa5,
+	0xe1, 0x0c, 0x76, 0xfc, 0xe5, 0x62, 0xe1, 0x7a, 0x81, 0x3d, 0x32, 0x2f, 0xdc, 0x69, 0x60, 0x4d,
+	0x22, 0x17, 0x7c, 0xc6, 0x5d, 0x9b, 0x29, 0xb7, 0xa7, 0x47, 0x42, 0xa7, 0x5c, 0x86, 0x20, 0x3f,
+	0x45, 0x69, 0x6b, 0x80, 0xd2, 0x28, 0xfc, 0x21, 0xdc, 0xd1, 0x07, 0x9a, 0xa6, 0x12, 0x43, 0xea,
+	0x98, 0xa7, 0x6a, 0xcf, 0x10, 0x8e, 0xd7, 0x2b, 0x43, 0x05, 0x0a, 0xa7, 0x4f, 0x9e, 0xf1, 0xe4,
+	0x3f, 0x3d, 0x7c, 0x7c, 0x80, 0xf2, 0x6c, 0xf4, 0xe8, 0xd1, 0x53, 0x54, 0x68, 0xff, 0xb9, 0x04,
+	0x1f, 0x66, 0x45, 0xd4, 0x4f, 0x6c, 0x48, 0x83, 0xfa, 0xd8, 0xf5, 0x66, 0xe6, 0xd8, 0xa2, 0xb5,
+	0x28, 0xdc, 0xca, 0x7e, 0x3a, 0x9a, 0x59, 0xa2, 0x7b, 0x5d, 0xd7, 0x9b, 0x75, 0x99, 0x18, 0x81,
+	0x71, 0x3c, 0x4e, 0xa5, 0x47, 0xfe, 0xbd, 0xd2, 0x63, 0xe3, 0x80, 0x15, 0x36, 0x0f, 0xd8, 0xd7,
+	0x80, 0x93, 0x10, 0x93, 0xbf, 0x14, 0x8a, 0xd9, 0x2f, 0x05, 0x94, 0x90, 0x64, 0x14, 0x7a, 0x61,
+	0x78, 0x97, 0xe6, 0x6b, 0xeb, 0xc2, 0x9e, 0xda, 0xf3, 0x49, 0xf0, 0xaa, 0x55, 0xba, 0x5f, 0x78,
+	0xd8, 0x24, 0x0d, 0xef, 0xf2, 0x45, 0x4c, 0xa3, 0xa0, 0x60, 0x0d, 0x54, 0xe6, 0xa0, 0x20, 0x09,
+	0xfa, 0x12, 0xd0, 0x0a, 0x11, 0x9a, 0x51, 0xc9, 0x36, 0x63, 0x7b, 0x05, 0xe4, 0x56, 0xdc, 0x82,
+	0x6a, 0x70, 0x69, 0x2e, 0xdc, 0xd7, 0xb6, 0xd7, 0xaa, 0xde, 0x2f, 0x3c, 0x2c, 0x91, 0x4a, 0x70,
+	0xa9, 0xd1, 0x29, 0x7e, 0x0a, 0x5b, 0x11, 0x2b, 0x54, 0x5a, 0xcb, 0x56, 0xda, 0x08, 0x25, 0xd8,
+	0xac, 0xfd, 0xcf, 0x1c, 0xc0, 0x2a, 0x12, 0xf8, 0x26, 0x5c, 0xed, 0xaa, 0xa4, 0x6f, 0x76, 0x05,
+	0x76, 0x95, 0x0c, 0x94, 0xe7, 0x8a, 0xfa, 0x42, 0xe1, 0x77, 0xc8, 0xb7, 0x7a, 0x57, 0xe3, 0xe5,
+	0x9d, 0x8e, 0x4c, 0xad, 0x37, 0xd0, 0x51, 0x9e, 0x96, 0x42, 0x3a, 0x3d, 0x7c, 0x86, 0x0a, 0x34,
+	0x9d, 0x28, 0xa6, 0x48, 0x2b, 0x6b, 0x0c, 0x29, 0x51, 0xf2, 0xcb, 0xae, 0xc6, 0x4b, 0xa5, 0xd8,
+	0xd5, 0x9e, 0xf0, 0x52, 0x29, 0x76, 0xb5, 0x43, 0x54, 0x65, 0x23, 0x4d, 0x78, 0x8e, 0x6a, 0xb8,
+	0x0c, 0xf9, 0x97, 0x87, 0x08, 0x68, 0x9d, 0x55, 0x69, 0x59, 0x46, 0x75, 0x2a, 0x29, 0x76, 0x35,
+	0xd4, 0xa0, 0x0a, 0x29, 0xde, 0x14, 0x44, 0x15, 0x35, 0xe3, 0x59, 0x47, 0x54, 0xd1, 0x16, 0xbd,
+	0x7c, 0x98, 0x41, 0x9d, 0x0e, 0xda, 0x6e, 0xff, 0xab, 0x02, 0xb5, 0x38, 0xdd, 0x68, 0x23, 0x31,
+	0xb7, 0x66, 0x76, 0xd4, 0x48, 0xd0, 0x31, 0x7e, 0x08, 0xa5, 0xe1, 0xd4, 0xf2, 0xfd, 0xb5, 0xe7,
+	0x64, 0x2c, 0xc2, 0x32, 0x8b, 0x03, 0xf0, 0x7d, 0xa8, 0x8f, 0x6c, 0x7f, 0xe8, 0x39, 0x0b, 0x76,
+	0x7f, 0x17, 0x98, 0x92, 0x24, 0x09, 0xdf, 0x80, 0xf2, 0xc2, 0xa2, 0xe5, 0x38, 0x7c, 0x65, 0x84,
+	0x33, 0xfc, 0x00, 0xb6, 0xf8, 0xc8, 0xf4, 0xec, 0xa9, 0xb9, 0x70, 0xf9, 0x63, 0xb2, 0x44, 0x1a,
+	0x9c, 0x4a, 0xec, 0xa9, 0xe6, 0xfa, 0x78, 0x17, 0xaa, 0xc3, 0x57, 0xce, 0x74, 0xe4, 0xd9, 0x73,
+	0x96, 0x29, 0xf5, 0xc3, 0xad, 0x75, 0x63, 0x48, 0xcc, 0xa7, 0x19, 0xfe, 0x2a, 0x6c, 0x7f, 0x4c,
+	0xcf, 0xbe, 0x60, 0x19, 0x53, 0x23, 0xf5, 0x88, 0x46, 0xec, 0x0b, 0x0a, 0x19, 0x3b, 0xde, 0x2c,
+	0x86, 0x54, 0x39, 0x24, 0xa2, 0x85, 0x10, 0xdf, 0x1d, 0x07, 0x31, 0x84, 0xbf, 0x14, 0xeb, 0x11,
+	0x8d, 0x42, 0xee, 0x01, 0xf8, 0xb6, 0x47, 0xaf, 0x9f, 0xf9, 0x72, 0xd6, 0x02, 0x06, 0xa8, 0x71,
+	0x8a, 0xb2, 0x9c, 0xd1, 0x0c, 0x9c, 0x8d, 0x27, 0x26, 0xf3, 0x6a, 0x9d, 0x31, 0x2b, 0xb3, 0xf1,
+	0x44, 0xa1, 0x8e, 0xbd, 0x07, 0x30, 0x73, 0x47, 0xf6, 0x94, 0x33, 0x1b, 0x5c, 0x92, 0x51, 0x18,
+	0xfb, 0x1a, 0x94, 0xac, 0xa9, 0x63, 0xf9, 0xad, 0x26, 0xe3, 0xf0, 0x09, 0xd5, 0x67, 0xf9, 0xbe,
+	0x1d, 0xd0, 0x5a, 0xbe, 0xc5, 0xf5, 0xb1, 0xb9, 0x3c, 0xa2, 0x45, 0xde, 0xf1, 0xcd, 0xb1, 0xb7,
+	0x6c, 0x6d, 0xb3, 0x97, 0x53, 0xc9, 0xf1, 0xbb, 0xde, 0x12, 0x3f, 0xe5, 0x16, 0xd0, 0xa7, 0x6f,
+	0x0b, 0xfd, 0xe8, 0x7b, 0x9a, 0x5a, 0xd7, 0xa1, 0x2f, 0xe4, 0xdb, 0xbc, 0x17, 0xdc, 0x61, 0x12,
+	0x55, 0xde, 0x30, 0x7a, 0x0e, 0xeb, 0x0a, 0xe3, 0x6e, 0x12, 0x67, 0x76, 0x93, 0xf8, 0x53, 0x28,
+	0xf1, 0x36, 0xe7, 0x2a, 0xe3, 0x5f, 0xdd, 0x68, 0x73, 0x02, 0xda, 0x5b, 0x44, 0x4d, 0x95, 0xcf,
+	0x5a, 0x05, 0x6a, 0x9f, 0xd5, 0xba, 0xc6, 0xa2, 0x9a, 0x6a, 0xaa, 0x56, 0xfd, 0x0e, 0x01, 0x7f,
+	0xd5, 0xfb, 0x7c, 0x05, 0x35, 0x5a, 0xbd, 0x4d, 0x2b, 0x08, 0xbc, 0xd6, 0x21, 0x5b, 0xe9, 0xee,
+	0xbb, 0x5e, 0xbf, 0x27, 0x57, 0x48, 0x95, 0x0a, 0x50, 0x0a, 0xfe, 0x86, 0x3d, 0xe3, 0xf9, 0xd5,
+	0xc5, 0x35, 0x3c, 0x66, 0x1a, 0x3e, 0x0a, 0x97, 0x7e, 0xfb, 0xad, 0x76, 0x72, 0x85, 0xbd, 0xdf,
+	0x39, 0x9f, 0xe9, 0x7a, 0x06, 0xd5, 0x85, 0xbf, 0xe4, 0x5a, 0x9e, 0x30, 0x2d, 0x77, 0xde, 0x71,
+	0x37, 0x9d, 0x5c, 0x21, 0x95, 0x85, 0xbf, 0x64, 0x92, 0xdf, 0x02, 0x0a, 0x56, 0x45, 0x9a, 0x6b,
+	0x78, 0xca, 0x34, 0x3c, 0x78, 0x9f, 0x2b, 0xe1, 0xe4, 0x0a, 0xd9, 0x4e, 0xc8, 0x53, 0xc6, 0x11,
+	0x40, 0xd5, 0x5f, 0xd8, 0x43, 0x67, 0xec, 0x0c, 0xdb, 0x3f, 0xe4, 0xa0, 0x1a, 0x7d, 0x03, 0xc0,
+	0x5f, 0x41, 0x3d, 0xd1, 0xb0, 0xbf, 0x47, 0xbf, 0x0e, 0xd3, 0xb8, 0x55, 0xc7, 0x6d, 0x28, 0x7a,
+	0xae, 0x1b, 0x84, 0xaf, 0x9a, 0xf4, 0xa9, 0x63, 0xbc, 0x78, 0x81, 0x73, 0xd7, 0x0d, 0xec, 0x11,
+	0x3b, 0xfd, 0xef, 0xb1, 0xc0, 0x11, 0x43, 0xb7, 0xff, 0x5e, 0x80, 0xab, 0x7d, 0x77, 0xe4, 0x8c,
+	0x1d, 0xeb, 0x7c, 0x6a, 0xff, 0xbf, 0x0a, 0xd2, 0x27, 0x71, 0xb9, 0x29, 0x64, 0x1a, 0xfe, 0xf6,
+	0xf2, 0x53, 0xcc, 0x28, 0x3f, 0xf1, 0x81, 0x2c, 0xbd, 0xed, 0x40, 0x96, 0xd7, 0x0f, 0x64, 0x78,
+	0x84, 0x2a, 0x59, 0x47, 0x28, 0xf5, 0xed, 0xa3, 0xfa, 0x13, 0xbe, 0x7d, 0x08, 0x9b, 0x89, 0x9f,
+	0xd1, 0x33, 0xa6, 0xdf, 0x91, 0x6b, 0xe9, 0xdf, 0x85, 0x6a, 0xe0, 0x5d, 0x26, 0x13, 0xff, 0xd3,
+	0xb7, 0x26, 0x5c, 0x86, 0xa2, 0x4a, 0xe0, 0x5d, 0xa6, 0xb3, 0x6d, 0xf7, 0xaf, 0x05, 0xda, 0x65,
+	0x25, 0xa2, 0xc0, 0xbb, 0xac, 0xbe, 0xa6, 0x2a, 0x92, 0x62, 0x6c, 0x76, 0x59, 0xb7, 0xe1, 0xc6,
+	0x06, 0x97, 0xdf, 0x9e, 0xb9, 0x0c, 0x9e, 0x78, 0x22, 0xe8, 0xba, 0x4c, 0x2f, 0xd0, 0x4d, 0xad,
+	0x47, 0x82, 0xf8, 0x5c, 0xeb, 0x09, 0x8a, 0x84, 0x0a, 0x19, 0x5c, 0x51, 0x55, 0x0c, 0x41, 0x56,
+	0x24, 0x82, 0x8a, 0xf4, 0x81, 0x97, 0xe2, 0x6a, 0xea, 0x0b, 0xda, 0xd0, 0x0d, 0x34, 0xad, 0x77,
+	0x86, 0x4a, 0xb4, 0xf5, 0x49, 0x01, 0xba, 0x82, 0x82, 0xca, 0xf8, 0x16, 0x5c, 0x4f, 0xd1, 0x75,
+	0x49, 0xd1, 0x55, 0x82, 0x2a, 0x19, 0xac, 0xbe, 0xda, 0x19, 0xf4, 0x24, 0x54, 0xa5, 0xaf, 0x83,
+	0x8d, 0xe5, 0x88, 0x81, 0x6a, 0x19, 0xcb, 0x88, 0xda, 0x00, 0x41, 0xc6, 0xbe, 0x8f, 0x04, 0xc3,
+	0x90, 0xc8, 0x19, 0xaa, 0x67, 0xf0, 0x74, 0x43, 0x25, 0xc2, 0xb1, 0x84, 0x1a, 0x59, 0x36, 0x48,
+	0x7d, 0x95, 0x9c, 0xa1, 0x26, 0xfe, 0x00, 0x6e, 0xa7, 0x58, 0x06, 0x11, 0x14, 0x5d, 0x94, 0xe4,
+	0x53, 0x89, 0xa0, 0xad, 0xdd, 0xbf, 0xe4, 0x12, 0x9f, 0x96, 0x56, 0x19, 0x17, 0xc9, 0x99, 0x42,
+	0xa7, 0x2f, 0x2b, 0xa6, 0x6e, 0x08, 0xc6, 0x7a, 0xf8, 0x42, 0x47, 0xa7, 0xf8, 0x51, 0x00, 0xef,
+	0xc0, 0xcd, 0x0d, 0x6e, 0x4f, 0x15, 0x9f, 0x4b, 0x1d, 0x94, 0xc7, 0x6d, 0xf8, 0x60, 0x83, 0xa9,
+	0x9f, 0x0c, 0x0c, 0x43, 0x56, 0x8e, 0xcd, 0x0e, 0x55, 0x50, 0xc0, 0xf7, 0xe0, 0x56, 0x86, 0xfa,
+	0x50, 0x45, 0x71, 0xf7, 0x87, 0x1c, 0xe0, 0xcd, 0x2f, 0x7d, 0xb1, 0x94, 0xaa, 0xd1, 0xa0, 0x6e,
+	0xd8, 0x1c, 0x59, 0xb5, 0xc6, 0x8e, 0x4c, 0x8e, 0x36, 0x94, 0x60, 0x76, 0x64, 0x5d, 0x38, 0xea,
+	0x31, 0x9b, 0x33, 0x44, 0x25, 0x85, 0x33, 0x0b, 0x59, 0x4c, 0x43, 0xd2, 0xe9, 0x76, 0x50, 0x71,
+	0xf7, 0x8f, 0x49, 0x07, 0xaf, 0xbe, 0x2d, 0xc6, 0x0e, 0x1e, 0xe8, 0xb4, 0xcb, 0x78, 0xbb, 0x83,
+	0xd7, 0xf9, 0x91, 0xb5, 0x61, 0xc4, 0xd7, 0xb8, 0x72, 0xa7, 0x27, 0x25, 0x4c, 0x4d, 0xb2, 0x04,
+	0xd1, 0x90, 0x4f, 0xe9, 0xf9, 0xc8, 0x92, 0x3b, 0x1a, 0xe8, 0x67, 0xa8, 0xb8, 0xfb, 0xfb, 0xe4,
+	0x47, 0xc6, 0xd5, 0x97, 0xcc, 0x55, 0x26, 0xf4, 0x04, 0xd2, 0x7f, 0x57, 0x26, 0xac, 0xf1, 0x23,
+	0x43, 0x3f, 0x82, 0x7b, 0x99, 0xd2, 0xc4, 0x24, 0x92, 0x26, 0xc8, 0x04, 0xe5, 0x57, 0xb1, 0x4e,
+	0x40, 0x44, 0x22, 0x1b, 0xb2, 0x28, 0xf4, 0x50, 0x21, 0x4a, 0xfc, 0x35, 0x76, 0x5f, 0xf8, 0x46,
+	0xa5, 0x07, 0x3a, 0x93, 0x27, 0x2b, 0x2a, 0x41, 0xa5, 0x4c, 0xbb, 0x5e, 0x08, 0x44, 0xa1, 0x61,
+	0x29, 0xaf, 0x92, 0x30, 0xc1, 0x95, 0x95, 0x8e, 0x64, 0x48, 0xa4, 0x2f, 0x2b, 0x82, 0x21, 0xa1,
+	0xca, 0xee, 0xdf, 0x72, 0x70, 0x3d, 0xf3, 0xf3, 0x2c, 0xbe, 0x0f, 0x77, 0x99, 0xb4, 0x6e, 0x08,
+	0x4a, 0xe7, 0xe8, 0x2c, 0xc3, 0x2b, 0x91, 0xd7, 0xd2, 0x88, 0x54, 0x89, 0x4b, 0xf1, 0x4f, 0x54,
+	0x23, 0x11, 0xc1, 0x75, 0x9e, 0xa8, 0xf6, 0x68, 0xb2, 0x3d, 0x84, 0x07, 0x19, 0x4c, 0x8d, 0xa8,
+	0xa7, 0x72, 0x87, 0x1e, 0x20, 0x5d, 0x22, 0xa7, 0xb2, 0x28, 0xa1, 0xe2, 0xee, 0x1f, 0x0a, 0xd0,
+	0x5c, 0xfb, 0xee, 0x8b, 0x5b, 0x70, 0xed, 0x54, 0xe8, 0x0d, 0xa4, 0xcd, 0x6a, 0x7c, 0x0d, 0x50,
+	0x82, 0xc3, 0xfb, 0x89, 0x1c, 0xad, 0x53, 0x6b, 0x78, 0x6e, 0x7c, 0x9e, 0x16, 0xb6, 0x04, 0x9d,
+	0x76, 0xca, 0xba, 0x29, 0x88, 0xa8, 0x90, 0xc9, 0xe8, 0x88, 0xa8, 0x98, 0xd2, 0x24, 0xf4, 0x35,
+	0x89, 0x48, 0xb4, 0xd7, 0x59, 0x5f, 0xf7, 0x85, 0x60, 0x18, 0x3a, 0x2a, 0xa7, 0xa8, 0x27, 0x12,
+	0x31, 0xbe, 0x43, 0x95, 0x94, 0x0e, 0x51, 0xea, 0xe9, 0xf2, 0x40, 0x47, 0x55, 0x9a, 0xd3, 0x09,
+	0xba, 0x26, 0x11, 0x91, 0xd6, 0x3a, 0x72, 0x82, 0x6a, 0x18, 0xc3, 0x56, 0x82, 0x45, 0xb4, 0x3e,
+	0x82, 0x14, 0x4d, 0xec, 0xf7, 0x79, 0x71, 0x4d, 0xd0, 0x0c, 0x32, 0x30, 0x4e, 0x4c, 0x46, 0x40,
+	0x8d, 0xd4, 0xb2, 0xa1, 0x7a, 0xd4, 0xc4, 0xd7, 0x61, 0x27, 0x41, 0xef, 0xd3, 0xcc, 0xd1, 0xd1,
+	0x56, 0xca, 0xf6, 0xa3, 0x33, 0x43, 0xd2, 0xd1, 0x76, 0x6a, 0xd1, 0xce, 0x51, 0x1f, 0xa1, 0xdd,
+	0xef, 0x0b, 0x00, 0xab, 0x46, 0x73, 0xb5, 0x0d, 0x5d, 0x14, 0x7a, 0xeb, 0xd1, 0x89, 0x97, 0xe2,
+	0xac, 0x33, 0x55, 0x34, 0x54, 0x94, 0x4b, 0x93, 0xbf, 0x93, 0x34, 0x43, 0x45, 0xf9, 0x95, 0x05,
+	0x9c, 0x2c, 0x18, 0x86, 0x8a, 0x0a, 0x69, 0x70, 0x57, 0xea, 0x1b, 0x2a, 0x2a, 0xa6, 0xc1, 0x9a,
+	0x2c, 0xaa, 0xc9, 0xb0, 0x70, 0xaa, 0x22, 0x28, 0x2a, 0x2a, 0xa7, 0x55, 0xf4, 0x65, 0x91, 0xa8,
+	0xa8, 0xb2, 0x49, 0xee, 0xf5, 0x64, 0x54, 0x4d, 0x93, 0x07, 0x8a, 0x6c, 0xe8, 0xa8, 0x96, 0x56,
+	0xfd, 0x5c, 0xee, 0xa9, 0x08, 0xd2, 0xd4, 0xbe, 0x74, 0x2c, 0xa0, 0x7a, 0x9a, 0x7a, 0x2c, 0x1f,
+	0x0b, 0xa8, 0x91, 0xa6, 0x1a, 0x12, 0x11, 0x50, 0x73, 0x63, 0x23, 0x92, 0x21, 0xa0, 0x2d, 0x7c,
+	0x15, 0xb6, 0x93, 0x54, 0xe9, 0xa5, 0x80, 0xb6, 0x37, 0xfd, 0x66, 0x18, 0x02, 0x42, 0x9b, 0x5e,
+	0xa6, 0xe4, 0x9d, 0xdd, 0xdf, 0xe4, 0xa0, 0x91, 0xfc, 0x9f, 0x41, 0x8f, 0x27, 0xbf, 0xfd, 0xd9,
+	0xd9, 0x1b, 0xe8, 0xe9, 0x83, 0xb4, 0xce, 0x54, 0x9f, 0xa3, 0x1c, 0x2d, 0x71, 0x69, 0x11, 0xe1,
+	0x54, 0x90, 0x7b, 0xf4, 0x06, 0x41, 0x79, 0x5a, 0x4e, 0xd6, 0xd9, 0x8a, 0xaa, 0xd0, 0xcb, 0x44,
+	0x30, 0x64, 0x55, 0xa1, 0x45, 0x70, 0xf7, 0xfb, 0x1c, 0x6c, 0xa7, 0x3e, 0xe8, 0xd0, 0x9c, 0xda,
+	0x38, 0xc7, 0x3f, 0xf1, 0x1b, 0x2d, 0xfb, 0x9a, 0xa0, 0x2a, 0xa8, 0x84, 0xeb, 0x50, 0x51, 0x8e,
+	0x4d, 0x4d, 0x55, 0x0e, 0xd7, 0xbe, 0xd1, 0x5e, 0x87, 0x1d, 0x51, 0xed, 0x1f, 0xa9, 0x26, 0x15,
+	0x36, 0x43, 0xb9, 0x2a, 0xbe, 0x01, 0x3b, 0x6c, 0x69, 0x45, 0x35, 0x4c, 0x5a, 0x33, 0x45, 0x43,
+	0xea, 0xa0, 0xff, 0xe6, 0x8e, 0xbe, 0xfa, 0xee, 0x8b, 0x89, 0x13, 0xbc, 0x5a, 0x9e, 0xef, 0x0d,
+	0xdd, 0xd9, 0xbe, 0xbb, 0xb0, 0xe7, 0x43, 0xd7, 0x1b, 0xed, 0x8f, 0xec, 0x0b, 0x67, 0x68, 0x7f,
+	0x3e, 0xb3, 0xe6, 0xd6, 0xc4, 0x9e, 0xd9, 0xf3, 0xe0, 0x73, 0x67, 0x1e, 0xd8, 0xde, 0xd8, 0x1a,
+	0xda, 0xfb, 0x17, 0x8f, 0xf7, 0x27, 0xee, 0xfe, 0x68, 0xe6, 0x9c, 0x97, 0x59, 0x93, 0xf0, 0xf8,
+	0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x35, 0x9b, 0x5d, 0x4d, 0x0b, 0x1d, 0x00, 0x00,
 }
diff --git a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_events_mgmt_service.pb.go b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_events_mgmt_service.pb.go
index c1d19c3..cfca737 100644
--- a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_events_mgmt_service.pb.go
+++ b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_events_mgmt_service.pb.go
@@ -31,8 +31,14 @@
 const (
 	EventIds_EVENT_NAME_UNDEFINED EventIds = 0
 	// Events from the Transceivers
-	EventIds_EVENT_TRANSCEIVER_PLUG_OUT                              EventIds = 100
-	EventIds_EVENT_TRANSCEIVER_PLUG_IN                               EventIds = 101
+	EventIds_EVENT_TRANSCEIVER_PLUG_OUT EventIds = 100
+	EventIds_EVENT_TRANSCEIVER_PLUG_IN  EventIds = 101
+	// The threshold based events on the transceivers should be configured on
+	// the port components of that transceiver and not on the transceiver
+	// component itself. This is because there could be different thresholds
+	// on the different ports of a transceiver (for example for a transceiver of
+	// type COMBO_GPON_XGSPON the power thresholds could be different for the
+	// GPON and XGSPON ports)
 	EventIds_EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD               EventIds = 102
 	EventIds_EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD               EventIds = 103
 	EventIds_EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD           EventIds = 104
@@ -70,6 +76,8 @@
 	EventIds_EVENT_CPU_TEMPERATURE_ABOVE_FATAL              EventIds = 401
 	EventIds_EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL_RECOVERED EventIds = 402
 	EventIds_EVENT_CPU_TEMPERATURE_ABOVE_FATAL_RECOVERED    EventIds = 403
+	EventIds_EVENT_CPU_USAGE_ABOVE_THRESHOLD                EventIds = 404
+	EventIds_EVENT_CPU_USAGE_ABOVE_THRESHOLD_RECOVERED      EventIds = 405
 	// Events for the complete HW Device
 	EventIds_EVENT_HW_DEVICE_RESET                                EventIds = 500
 	EventIds_EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL           EventIds = 501
@@ -79,6 +87,12 @@
 	EventIds_EVENT_HW_DEVICE_REBOOT                               EventIds = 505
 	EventIds_EVENT_HW_TEMPERATURE_SENSOR_FAILED                   EventIds = 506
 	EventIds_EVENT_HW_ALL_TEMPERATURE_SENSORS_FAILED              EventIds = 507
+	EventIds_EVENT_HW_DISK_USAGE_ABOVE_THRESHOLD                  EventIds = 508
+	EventIds_EVENT_HW_DISK_USAGE_ABOVE_THRESHOLD_RECOVERED        EventIds = 509
+	EventIds_EVENT_HW_MEMORY_USAGE_ABOVE_THRESHOLD                EventIds = 510
+	EventIds_EVENT_HW_MEMORY_USAGE_ABOVE_THRESHOLD_RECOVERED      EventIds = 511
+	EventIds_EVENT_HW_NTP_SYNC_FAILURE                            EventIds = 512
+	EventIds_EVENT_HW_NTP_SYNC_FAILURE_RECOVERED                  EventIds = 513
 	// Events for the line cards on the HW Device
 	EventIds_EVENT_LINE_CARD_PLUG_OUT EventIds = 600
 	EventIds_EVENT_LINE_CARD_PLUG_IN  EventIds = 601
@@ -122,6 +136,8 @@
 	401: "EVENT_CPU_TEMPERATURE_ABOVE_FATAL",
 	402: "EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL_RECOVERED",
 	403: "EVENT_CPU_TEMPERATURE_ABOVE_FATAL_RECOVERED",
+	404: "EVENT_CPU_USAGE_ABOVE_THRESHOLD",
+	405: "EVENT_CPU_USAGE_ABOVE_THRESHOLD_RECOVERED",
 	500: "EVENT_HW_DEVICE_RESET",
 	501: "EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL",
 	502: "EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL",
@@ -130,6 +146,12 @@
 	505: "EVENT_HW_DEVICE_REBOOT",
 	506: "EVENT_HW_TEMPERATURE_SENSOR_FAILED",
 	507: "EVENT_HW_ALL_TEMPERATURE_SENSORS_FAILED",
+	508: "EVENT_HW_DISK_USAGE_ABOVE_THRESHOLD",
+	509: "EVENT_HW_DISK_USAGE_ABOVE_THRESHOLD_RECOVERED",
+	510: "EVENT_HW_MEMORY_USAGE_ABOVE_THRESHOLD",
+	511: "EVENT_HW_MEMORY_USAGE_ABOVE_THRESHOLD_RECOVERED",
+	512: "EVENT_HW_NTP_SYNC_FAILURE",
+	513: "EVENT_HW_NTP_SYNC_FAILURE_RECOVERED",
 	600: "EVENT_LINE_CARD_PLUG_OUT",
 	601: "EVENT_LINE_CARD_PLUG_IN",
 }
@@ -172,6 +194,8 @@
 	"EVENT_CPU_TEMPERATURE_ABOVE_FATAL":                       401,
 	"EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL_RECOVERED":          402,
 	"EVENT_CPU_TEMPERATURE_ABOVE_FATAL_RECOVERED":             403,
+	"EVENT_CPU_USAGE_ABOVE_THRESHOLD":                         404,
+	"EVENT_CPU_USAGE_ABOVE_THRESHOLD_RECOVERED":               405,
 	"EVENT_HW_DEVICE_RESET":                                   500,
 	"EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL":              501,
 	"EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL":                 502,
@@ -180,6 +204,12 @@
 	"EVENT_HW_DEVICE_REBOOT":                                  505,
 	"EVENT_HW_TEMPERATURE_SENSOR_FAILED":                      506,
 	"EVENT_HW_ALL_TEMPERATURE_SENSORS_FAILED":                 507,
+	"EVENT_HW_DISK_USAGE_ABOVE_THRESHOLD":                     508,
+	"EVENT_HW_DISK_USAGE_ABOVE_THRESHOLD_RECOVERED":           509,
+	"EVENT_HW_MEMORY_USAGE_ABOVE_THRESHOLD":                   510,
+	"EVENT_HW_MEMORY_USAGE_ABOVE_THRESHOLD_RECOVERED":         511,
+	"EVENT_HW_NTP_SYNC_FAILURE":                               512,
+	"EVENT_HW_NTP_SYNC_FAILURE_RECOVERED":                     513,
 	"EVENT_LINE_CARD_PLUG_OUT":                                600,
 	"EVENT_LINE_CARD_PLUG_IN":                                 601,
 }
@@ -258,11 +288,16 @@
 }
 
 type ValueType struct {
+	// For val no multiples of units shall be used.
+	// For example, for memory val should be in bytes and not in kilobytes or any
+	// other multiple of the unit byte.
+	//
 	// Types that are valid to be assigned to Val:
 	//	*ValueType_IntVal
 	//	*ValueType_UintVal
 	//	*ValueType_FloatVal
 	Val                  isValueType_Val `protobuf_oneof:"val"`
+	TypeOfVal            DataValueType   `protobuf:"varint,4,opt,name=typeOfVal,proto3,enum=dmi.DataValueType" json:"typeOfVal,omitempty"`
 	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
 	XXX_unrecognized     []byte          `json:"-"`
 	XXX_sizecache        int32           `json:"-"`
@@ -343,6 +378,13 @@
 	return 0
 }
 
+func (m *ValueType) GetTypeOfVal() DataValueType {
+	if m != nil {
+		return m.TypeOfVal
+	}
+	return DataValueType_VALUE_TYPE_UNDEFINED
+}
+
 // XXX_OneofWrappers is for the internal use of the proto package.
 func (*ValueType) XXX_OneofWrappers() []interface{} {
 	return []interface{}{
@@ -530,10 +572,16 @@
 	EventId      EventIds `protobuf:"varint,1,opt,name=event_id,json=eventId,proto3,enum=dmi.EventIds" json:"event_id,omitempty"`
 	IsConfigured bool     `protobuf:"varint,2,opt,name=is_configured,json=isConfigured,proto3" json:"is_configured,omitempty"`
 	// Optional threshold values, applicable only for some specific events
-	Thresholds           *Thresholds `protobuf:"bytes,3,opt,name=thresholds,proto3" json:"thresholds,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
-	XXX_unrecognized     []byte      `json:"-"`
-	XXX_sizecache        int32       `json:"-"`
+	// If an event needs thresholds but the user does not pass the thresholds here, the Device Manager implementations
+	// could choose to use defaults applicable for the specific component (recommended) or return an error for such
+	// an EventConfigurationRequest with reason as INVALID_CONFIG
+	Thresholds *Thresholds `protobuf:"bytes,3,opt,name=thresholds,proto3" json:"thresholds,omitempty"`
+	// For events which can be configured on a particular component this id can be used to identify the component
+	// For e.g. for events of the transceivers
+	ComponentUuid        *Uuid    `protobuf:"bytes,4,opt,name=component_uuid,json=componentUuid,proto3" json:"component_uuid,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *EventCfg) Reset()         { *m = EventCfg{} }
@@ -582,6 +630,13 @@
 	return nil
 }
 
+func (m *EventCfg) GetComponentUuid() *Uuid {
+	if m != nil {
+		return m.ComponentUuid
+	}
+	return nil
+}
+
 type EventsCfg struct {
 	Items                []*EventCfg `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
 	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
@@ -976,104 +1031,113 @@
 func init() { proto.RegisterFile("dmi/hw_events_mgmt_service.proto", fileDescriptor_8962d785556e9979) }
 
 var fileDescriptor_8962d785556e9979 = []byte{
-	// 1549 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xcb, 0x72, 0xdb, 0xc8,
-	0x15, 0x15, 0x09, 0x3d, 0xa8, 0x2b, 0x89, 0x81, 0xbb, 0x1c, 0x59, 0xa2, 0x22, 0x9b, 0xa1, 0x12,
-	0x4b, 0x56, 0x22, 0x52, 0x96, 0x1c, 0x3b, 0x2e, 0x2f, 0x12, 0x88, 0x84, 0x4c, 0x54, 0x28, 0x50,
-	0xd5, 0x04, 0xa9, 0x54, 0x16, 0x46, 0xb5, 0x88, 0x26, 0x89, 0x98, 0x00, 0x68, 0xa0, 0x29, 0xc5,
-	0x49, 0x55, 0x16, 0x5e, 0x66, 0x95, 0xd7, 0x32, 0x95, 0x2f, 0x18, 0xcf, 0xfc, 0xc6, 0x3c, 0x7e,
-	0x60, 0xe6, 0x23, 0x66, 0x37, 0xef, 0xd9, 0x4c, 0xa1, 0x01, 0x92, 0x10, 0x1f, 0xa2, 0x5c, 0x35,
-	0x3b, 0xf2, 0x9e, 0x73, 0xee, 0x3d, 0x8d, 0x7b, 0xbb, 0xd1, 0x80, 0xb4, 0x61, 0x99, 0xb9, 0xd6,
-	0xa5, 0x4e, 0x2f, 0xa8, 0xcd, 0x3c, 0xdd, 0x6a, 0x5a, 0x4c, 0xf7, 0xa8, 0x7b, 0x61, 0xd6, 0x69,
-	0xb6, 0xe3, 0x3a, 0xcc, 0x41, 0x82, 0x61, 0x99, 0xa9, 0x5b, 0x3e, 0xad, 0xee, 0x58, 0x96, 0x63,
-	0x7b, 0x41, 0x3c, 0xb5, 0x1c, 0x28, 0xc3, 0x7f, 0xf7, 0x9a, 0x8e, 0xd3, 0x6c, 0xd3, 0x1c, 0xff,
-	0x77, 0xde, 0x6d, 0xe4, 0x98, 0x69, 0x51, 0x8f, 0x11, 0xab, 0x13, 0x12, 0x36, 0x86, 0x09, 0xd4,
-	0xea, 0xb0, 0xd7, 0x01, 0x98, 0x31, 0x61, 0xb1, 0x46, 0xda, 0x5d, 0xaa, 0xbd, 0xee, 0x50, 0xb4,
-	0x0e, 0x0b, 0xa6, 0xcd, 0xf4, 0x0b, 0xd2, 0x5e, 0x8b, 0xa5, 0x63, 0x3b, 0x42, 0x71, 0x06, 0xcf,
-	0x9b, 0x36, 0xab, 0x91, 0x36, 0xda, 0x80, 0x44, 0xb7, 0x87, 0xc5, 0xd3, 0xb1, 0x9d, 0xd9, 0xe2,
-	0x0c, 0x5e, 0xe8, 0x86, 0xe0, 0x26, 0x2c, 0x36, 0xda, 0x0e, 0x09, 0x50, 0x21, 0x1d, 0xdb, 0x89,
-	0x17, 0x67, 0x70, 0x82, 0x87, 0x6a, 0xa4, 0x7d, 0x34, 0x07, 0xc2, 0x05, 0x69, 0x67, 0x30, 0xc0,
-	0x19, 0x61, 0xd4, 0x3d, 0x21, 0xee, 0x4b, 0x0f, 0x65, 0x60, 0xb6, 0x65, 0x36, 0x5b, 0xbc, 0xd0,
-	0xd2, 0x41, 0x32, 0x6b, 0x58, 0x66, 0xb6, 0xef, 0x04, 0x73, 0x0c, 0xa5, 0x41, 0x68, 0x3b, 0x97,
-	0xbc, 0xde, 0x28, 0xc5, 0x87, 0x32, 0x2f, 0x01, 0xb4, 0x96, 0x4b, 0xbd, 0x96, 0xd3, 0x36, 0x3c,
-	0xb4, 0x0d, 0x73, 0xdd, 0x4e, 0x87, 0xba, 0x61, 0xd2, 0x9f, 0x70, 0xc5, 0xa0, 0x66, 0x71, 0x06,
-	0x07, 0xb8, 0x4f, 0x6c, 0x3b, 0x97, 0xd4, 0x0d, 0x53, 0x8f, 0x23, 0x72, 0xfc, 0x68, 0x09, 0x16,
-	0x59, 0x2f, 0x7f, 0xe6, 0xef, 0x70, 0xbb, 0x5f, 0x4c, 0xb1, 0x1b, 0x8e, 0x6b, 0x11, 0x66, 0x3a,
-	0x36, 0xfa, 0x0d, 0x24, 0x9d, 0x73, 0xbf, 0x75, 0xd4, 0xf0, 0x9f, 0x40, 0x97, 0x4e, 0x58, 0xd4,
-	0x4a, 0x8f, 0xc5, 0x43, 0x28, 0x07, 0xd0, 0xcf, 0xed, 0x5d, 0x71, 0x32, 0x58, 0x12, 0x8e, 0x50,
-	0x32, 0xff, 0x88, 0x41, 0x42, 0xf6, 0xa7, 0x25, 0xdf, 0x68, 0xa2, 0x1d, 0x48, 0xf0, 0xc9, 0xd1,
-	0x4d, 0x83, 0x97, 0x4b, 0x1e, 0xac, 0x70, 0x2d, 0x27, 0x28, 0x86, 0x87, 0x17, 0x68, 0xf0, 0x0b,
-	0x6d, 0xc1, 0x8a, 0xe9, 0xe9, 0x75, 0xc7, 0x6e, 0x98, 0xcd, 0xae, 0x4b, 0x0d, 0x5e, 0x2a, 0x81,
-	0x97, 0x4d, 0x2f, 0xdf, 0x8f, 0x0d, 0x99, 0x11, 0xa6, 0x9b, 0xd9, 0x87, 0x45, 0x5e, 0xca, 0xf3,
-	0xcd, 0x6c, 0xc1, 0x9c, 0xc9, 0xa8, 0xe5, 0xad, 0xc5, 0xd2, 0xc2, 0xce, 0x52, 0xd4, 0x49, 0xbe,
-	0xd1, 0xc4, 0x01, 0x96, 0xf9, 0x7f, 0x1c, 0x50, 0xc9, 0xf4, 0x58, 0x20, 0xc3, 0xd4, 0xeb, 0x38,
-	0xb6, 0x47, 0xd1, 0x16, 0xcc, 0x7b, 0x8c, 0xb0, 0xae, 0x17, 0x2e, 0x63, 0x89, 0x8b, 0x2b, 0x3c,
-	0x84, 0x43, 0x08, 0x3d, 0x86, 0x79, 0x97, 0x12, 0xcf, 0xb1, 0xb9, 0xf9, 0xe4, 0xc1, 0x5d, 0x4e,
-	0x1a, 0xcd, 0x96, 0xc5, 0x9c, 0x85, 0x43, 0x36, 0xba, 0x0f, 0xf3, 0xc1, 0xfe, 0x0a, 0x97, 0x94,
-	0x1c, 0x38, 0xf3, 0x8d, 0xe3, 0x10, 0xf5, 0x9f, 0x51, 0xa0, 0xd0, 0x0d, 0xca, 0x88, 0xd9, 0x5e,
-	0x9b, 0x4d, 0xc7, 0x76, 0x16, 0xf1, 0x72, 0x10, 0x2c, 0xf0, 0x58, 0xe6, 0x05, 0xcc, 0x07, 0xe9,
-	0xd1, 0x6d, 0x10, 0xab, 0x6a, 0x41, 0x3e, 0x56, 0x54, 0xb9, 0xa0, 0x63, 0x59, 0xaa, 0x94, 0x55,
-	0x71, 0x06, 0x21, 0x48, 0x56, 0xd5, 0x3f, 0xa8, 0xe5, 0x33, 0x55, 0x2f, 0xc8, 0x35, 0x25, 0x2f,
-	0x8b, 0x31, 0x3f, 0xa6, 0xa8, 0x9a, 0x8c, 0x55, 0xa9, 0xa4, 0xcb, 0x18, 0x97, 0xb1, 0x18, 0x47,
-	0xab, 0x80, 0x02, 0x5c, 0xaf, 0xaa, 0x58, 0x96, 0xf2, 0x45, 0xe9, 0xa8, 0x24, 0x8b, 0x42, 0xe6,
-	0x6d, 0x0c, 0x52, 0xa1, 0xb5, 0xb0, 0x31, 0x7c, 0xbe, 0x30, 0x7d, 0xd5, 0xa5, 0x1e, 0x43, 0xbb,
-	0xb0, 0x64, 0x50, 0xff, 0x78, 0xd0, 0xbb, 0xdd, 0xb0, 0xe9, 0x4b, 0x07, 0x8b, 0x7c, 0x41, 0xd5,
-	0xae, 0x69, 0x60, 0x08, 0x50, 0xff, 0x37, 0xda, 0x85, 0x85, 0x7a, 0x8b, 0xd8, 0x4d, 0xea, 0x5d,
-	0xd9, 0x3d, 0xfd, 0x85, 0xfb, 0xbb, 0x37, 0x24, 0xa0, 0x5d, 0x10, 0x5d, 0xea, 0x51, 0xa6, 0x33,
-	0x47, 0x37, 0x68, 0x83, 0x74, 0xdb, 0x8c, 0x3f, 0xad, 0x44, 0x71, 0x06, 0x27, 0x39, 0xa2, 0x39,
-	0x85, 0x20, 0xee, 0xef, 0x07, 0xa7, 0x43, 0x03, 0x5f, 0x99, 0xff, 0xc5, 0x61, 0x63, 0xac, 0xdf,
-	0x77, 0xe9, 0xec, 0xef, 0x86, 0x3a, 0xbb, 0x1d, 0x35, 0x3a, 0x2e, 0xed, 0x70, 0x8b, 0x47, 0x5a,
-	0x27, 0x8c, 0x69, 0x9d, 0xfb, 0x23, 0xb5, 0x8e, 0xc7, 0x6a, 0x52, 0x49, 0x29, 0xe8, 0xf9, 0xb2,
-	0x7a, 0xac, 0x3c, 0x17, 0x85, 0x09, 0xed, 0x9c, 0xcd, 0xfc, 0x37, 0x06, 0x2b, 0x7c, 0x1d, 0x27,
-	0x94, 0x91, 0x02, 0x61, 0xe4, 0x9d, 0x3a, 0xb8, 0x0f, 0xc9, 0xba, 0x63, 0x75, 0x1c, 0xdb, 0xdf,
-	0xe3, 0x9c, 0x1e, 0x1f, 0xa6, 0xaf, 0xf4, 0x09, 0x5c, 0xf1, 0xcb, 0xa8, 0xc2, 0x26, 0x16, 0x0d,
-	0x9f, 0xc4, 0x80, 0xa6, 0x12, 0x8b, 0x66, 0xde, 0xc4, 0x61, 0x8e, 0xdb, 0x42, 0x4f, 0x21, 0x19,
-	0x1c, 0x21, 0x16, 0x65, 0xc4, 0x20, 0x8c, 0x84, 0x8e, 0xd0, 0xa0, 0x05, 0x3d, 0xeb, 0x78, 0x85,
-	0xf6, 0xfe, 0xfa, 0xc4, 0x2b, 0xa7, 0x4f, 0xfc, 0xda, 0xd3, 0xe7, 0x09, 0x2c, 0xba, 0xc4, 0xf4,
-	0xa8, 0xa1, 0xf7, 0x37, 0x61, 0x2a, 0x1b, 0xbc, 0x91, 0xb2, 0xbd, 0x37, 0x52, 0x56, 0xeb, 0xbd,
-	0xb2, 0x70, 0x22, 0x20, 0x6b, 0x1e, 0xfa, 0x3d, 0x24, 0xfb, 0xc7, 0x8d, 0x6e, 0xda, 0x0d, 0x87,
-	0xef, 0xc9, 0xa5, 0x83, 0xf5, 0xab, 0xa7, 0x52, 0xe4, 0x20, 0xc6, 0x2b, 0x2c, 0x1a, 0x45, 0xeb,
-	0x90, 0x20, 0x46, 0xa8, 0x9d, 0xe3, 0x8f, 0x62, 0x81, 0x18, 0x1c, 0xda, 0x7d, 0x23, 0x86, 0x47,
-	0xa9, 0x62, 0x78, 0x68, 0x0d, 0x6e, 0xcb, 0x35, 0x59, 0xd5, 0x74, 0x55, 0x3a, 0xf1, 0x9b, 0x18,
-	0x4e, 0x87, 0x38, 0x83, 0xee, 0x42, 0x2a, 0x40, 0x34, 0x2c, 0xa9, 0x95, 0xbc, 0xac, 0xd4, 0x64,
-	0xac, 0x9f, 0x96, 0xaa, 0xcf, 0xf5, 0x72, 0x55, 0x13, 0x0d, 0xb4, 0x09, 0xeb, 0x13, 0x70, 0x45,
-	0x15, 0x29, 0xda, 0x83, 0x07, 0xa3, 0x70, 0xad, 0x5c, 0xd2, 0xa4, 0xe7, 0xb2, 0x2e, 0x1d, 0x95,
-	0x6b, 0xb2, 0xae, 0x15, 0xb1, 0x5c, 0x29, 0x96, 0x4b, 0x05, 0xb1, 0x71, 0x3d, 0xfd, 0x48, 0x2e,
-	0x95, 0xcf, 0x22, 0xf4, 0x26, 0x7a, 0x08, 0x7b, 0xa3, 0x74, 0x4d, 0x3e, 0x39, 0x95, 0xb1, 0xa4,
-	0x55, 0xf1, 0x68, 0x85, 0xd6, 0x74, 0xc9, 0x70, 0x15, 0x73, 0xbc, 0xa9, 0x7c, 0x15, 0x63, 0x3f,
-	0x36, 0x5c, 0xe1, 0xcf, 0xd7, 0xd3, 0x87, 0xb3, 0xbf, 0x44, 0x59, 0xd8, 0x1d, 0xa5, 0xe3, 0x3f,
-	0xea, 0xa7, 0xe5, 0x33, 0x19, 0x8f, 0xa4, 0x6f, 0x4f, 0xe1, 0x0f, 0xe7, 0xb7, 0xc6, 0xf3, 0xb5,
-	0x49, 0xf9, 0xed, 0x29, 0xfc, 0xe1, 0xfc, 0xce, 0xf8, 0x01, 0x38, 0x96, 0x94, 0x52, 0x15, 0xcb,
-	0x62, 0x07, 0x3d, 0x81, 0xc3, 0x1b, 0x0f, 0x80, 0x8e, 0xe5, 0x7c, 0xb9, 0x26, 0x63, 0xb9, 0x20,
-	0xbe, 0xba, 0x5e, 0x38, 0x64, 0x23, 0x22, 0x74, 0xd1, 0x33, 0x78, 0xf2, 0x4e, 0x43, 0x11, 0x11,
-	0x7b, 0xd3, 0xc5, 0x93, 0x2b, 0xb3, 0xf1, 0x96, 0x27, 0x0c, 0x4a, 0x44, 0xd8, 0xbd, 0x5e, 0x38,
-	0xb9, 0xe2, 0x05, 0xfa, 0x2d, 0x3c, 0xba, 0xf9, 0xf0, 0x44, 0x94, 0x97, 0x53, 0x94, 0x93, 0x6b,
-	0xfe, 0x65, 0xbc, 0x52, 0x9b, 0x5e, 0xf3, 0xf5, 0x14, 0xe5, 0xe4, 0x9a, 0x7f, 0x45, 0xdb, 0xb0,
-	0x35, 0x71, 0xc8, 0x22, 0xc4, 0xbf, 0xa1, 0x3b, 0x80, 0x02, 0xe2, 0x69, 0xa5, 0x3a, 0x38, 0xa6,
-	0x3e, 0x8c, 0xa1, 0x55, 0xb8, 0x35, 0x04, 0x28, 0xaa, 0xf8, 0xd1, 0x50, 0xbc, 0x37, 0xb6, 0x1f,
-	0xc7, 0x50, 0x1a, 0x36, 0x46, 0xe2, 0x91, 0x4a, 0x9f, 0x44, 0x94, 0xc7, 0x92, 0xda, 0x57, 0xbe,
-	0x17, 0x1f, 0x58, 0xf0, 0xe3, 0x7d, 0x0b, 0x6f, 0xe3, 0x57, 0x05, 0x3d, 0x0b, 0xef, 0xc7, 0x07,
-	0xa5, 0x22, 0x89, 0x22, 0xa5, 0x3e, 0x88, 0xa3, 0x07, 0xf0, 0x8b, 0x80, 0x91, 0x3f, 0xad, 0x8e,
-	0x19, 0xe5, 0x3c, 0x56, 0x34, 0x25, 0x2f, 0x95, 0xc4, 0x7f, 0x0a, 0xe8, 0x3e, 0xfc, 0xfc, 0x3a,
-	0xea, 0xb1, 0xa4, 0x49, 0x25, 0xf1, 0x5f, 0x02, 0x3a, 0x84, 0xec, 0x4d, 0x52, 0x46, 0x7c, 0xfc,
-	0x5b, 0x40, 0xfb, 0xf0, 0xab, 0xa9, 0xc9, 0x23, 0x8a, 0xff, 0x08, 0x28, 0x05, 0x3f, 0x0d, 0x14,
-	0xc5, 0xb3, 0xf0, 0x5a, 0xa1, 0x63, 0xb9, 0x22, 0x6b, 0xe2, 0x17, 0x02, 0xca, 0xf5, 0x4e, 0x9a,
-	0x01, 0x76, 0xcd, 0xda, 0xbe, 0x14, 0xd0, 0xaf, 0x61, 0x7b, 0xba, 0x20, 0x58, 0xe1, 0x57, 0x02,
-	0x7a, 0xda, 0x9b, 0xb6, 0x9b, 0xa4, 0x8f, 0xb8, 0xfe, 0x5a, 0x40, 0x8f, 0xe1, 0xe1, 0x0d, 0x0b,
-	0x45, 0x74, 0xdf, 0x08, 0x68, 0x03, 0x56, 0x47, 0x57, 0x7b, 0x54, 0x2e, 0x6b, 0xe2, 0xb7, 0x02,
-	0xda, 0x86, 0x4c, 0x1f, 0x8c, 0x66, 0xab, 0xc8, 0x6a, 0xa5, 0x1c, 0x4c, 0xb3, 0x5c, 0x10, 0xbf,
-	0xbb, 0xba, 0x4c, 0xa9, 0x54, 0x1a, 0x43, 0xae, 0xf4, 0xd8, 0xdf, 0x0b, 0x68, 0x13, 0xd6, 0x02,
-	0x76, 0x49, 0x51, 0x65, 0x3d, 0x2f, 0xe1, 0xc2, 0x60, 0xe8, 0x3e, 0x9d, 0x45, 0x3f, 0x83, 0x3b,
-	0x63, 0x61, 0x45, 0x15, 0x3f, 0x9b, 0x3d, 0xf8, 0x3c, 0x06, 0x9b, 0x2a, 0x61, 0xe6, 0x05, 0x0d,
-	0xae, 0x9b, 0x27, 0xc4, 0x26, 0x4d, 0x6a, 0x51, 0x9b, 0x55, 0x82, 0xef, 0x70, 0xf4, 0x18, 0x60,
-	0xf0, 0x8d, 0x81, 0x82, 0xef, 0xa1, 0x22, 0x71, 0x8d, 0x4b, 0xe2, 0x52, 0xa5, 0x90, 0xba, 0x33,
-	0xe1, 0x2b, 0x04, 0xbd, 0x80, 0xf5, 0x6a, 0xc7, 0x20, 0x8c, 0x8e, 0xb9, 0xc7, 0xa2, 0x7b, 0x93,
-	0x6f, 0xb8, 0xfc, 0xa2, 0x9f, 0x4a, 0x4f, 0xbb, 0x02, 0xa3, 0x47, 0xb0, 0x5c, 0x61, 0x2e, 0x25,
-	0x56, 0xe8, 0x6c, 0x75, 0xe4, 0x46, 0x25, 0xfb, 0xdf, 0xf8, 0x29, 0x18, 0x64, 0xda, 0x8f, 0x1d,
-	0x3d, 0xfb, 0xd3, 0xd3, 0xa6, 0xc9, 0x5a, 0xdd, 0xf3, 0x6c, 0xdd, 0xb1, 0x72, 0x4e, 0x87, 0xda,
-	0x75, 0xc7, 0x35, 0x72, 0xc1, 0xa5, 0x73, 0xcf, 0xea, 0xaf, 0x7e, 0xcf, 0xb4, 0x19, 0x75, 0x1b,
-	0xa4, 0x4e, 0x73, 0x17, 0x87, 0xb9, 0xa6, 0x93, 0x33, 0x2c, 0xf3, 0x7c, 0x9e, 0xa7, 0x3e, 0xfc,
-	0x21, 0x00, 0x00, 0xff, 0xff, 0xd2, 0x94, 0x3d, 0x88, 0xb7, 0x10, 0x00, 0x00,
+	// 1682 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x5b, 0x73, 0xe3, 0x48,
+	0x15, 0x8e, 0xad, 0x5c, 0x4f, 0x26, 0x46, 0x7b, 0x6a, 0x98, 0x49, 0x1c, 0x66, 0xc6, 0x78, 0x76,
+	0x37, 0xd9, 0xc0, 0xd8, 0xd9, 0xcc, 0x30, 0xc3, 0xd4, 0x3e, 0x80, 0x62, 0x2b, 0x63, 0xd5, 0x3a,
+	0x72, 0xaa, 0x2d, 0x3b, 0x2c, 0x0f, 0xab, 0xea, 0x89, 0xda, 0x8e, 0x18, 0x4b, 0xf2, 0x4a, 0xed,
+	0x84, 0x40, 0x15, 0x05, 0xfc, 0x02, 0x2e, 0xcb, 0x13, 0x14, 0xbf, 0x80, 0x85, 0x3f, 0xc0, 0x0f,
+	0xe0, 0xf2, 0x07, 0xe0, 0x95, 0x77, 0xde, 0xb8, 0xdf, 0x4b, 0x2d, 0xd9, 0x56, 0x7c, 0xcd, 0x54,
+	0xf1, 0x66, 0x9d, 0xf3, 0x7d, 0xe7, 0x7c, 0xdd, 0xe7, 0xf4, 0x91, 0xda, 0x90, 0xb3, 0x1c, 0xbb,
+	0x78, 0x7e, 0x69, 0xb2, 0x0b, 0xe6, 0xf2, 0xc0, 0x74, 0xda, 0x0e, 0x37, 0x03, 0xe6, 0x5f, 0xd8,
+	0x67, 0xac, 0xd0, 0xf5, 0x3d, 0xee, 0xa1, 0x64, 0x39, 0x76, 0xf6, 0x8d, 0x10, 0x76, 0xe6, 0x39,
+	0x8e, 0xe7, 0x06, 0x91, 0x3d, 0x7b, 0x2b, 0x62, 0xc6, 0x4f, 0x0f, 0xda, 0x9e, 0xd7, 0xee, 0xb0,
+	0xa2, 0x78, 0x7a, 0xd9, 0x6b, 0x15, 0xb9, 0xed, 0xb0, 0x80, 0x53, 0xa7, 0x1b, 0x03, 0xb6, 0x47,
+	0x01, 0xcc, 0xe9, 0xf2, 0xab, 0xc8, 0x99, 0xff, 0x71, 0x0a, 0xd6, 0x9a, 0xb4, 0xd3, 0x63, 0xc6,
+	0x55, 0x97, 0xe1, 0x16, 0xac, 0xd8, 0x2e, 0x37, 0x2f, 0x68, 0x67, 0x33, 0x95, 0x4b, 0xed, 0x4a,
+	0x95, 0x05, 0xb2, 0x6c, 0xbb, 0xbc, 0x49, 0x3b, 0xb8, 0x0d, 0xab, 0xbd, 0xbe, 0x2f, 0x9d, 0x4b,
+	0xed, 0x2e, 0x56, 0x16, 0xc8, 0x4a, 0x2f, 0x76, 0xde, 0x83, 0xb5, 0x56, 0xc7, 0xa3, 0x91, 0x57,
+	0xca, 0xa5, 0x76, 0xd3, 0x95, 0x05, 0xb2, 0x2a, 0x4c, 0xa1, 0x7b, 0x1f, 0xd6, 0xf8, 0x55, 0x97,
+	0xd5, 0x5a, 0x4d, 0xda, 0xd9, 0x5c, 0xcc, 0xa5, 0x76, 0x33, 0x07, 0x58, 0xb0, 0x1c, 0xbb, 0x50,
+	0xa6, 0x9c, 0x0e, 0xb2, 0x93, 0x21, 0xe8, 0x70, 0x09, 0xa4, 0x0b, 0xda, 0xc9, 0x13, 0x80, 0x53,
+	0xca, 0x99, 0x7f, 0x4c, 0xfd, 0x57, 0x01, 0xe6, 0x61, 0xf1, 0xdc, 0x6e, 0x9f, 0x0b, 0x69, 0xeb,
+	0x07, 0x19, 0x11, 0x61, 0xc8, 0x16, 0x3e, 0xcc, 0x81, 0xd4, 0xf1, 0x2e, 0x85, 0xc2, 0x71, 0x48,
+	0xe8, 0xca, 0xbf, 0x02, 0x30, 0xce, 0x7d, 0x16, 0x9c, 0x7b, 0x1d, 0x2b, 0xc0, 0x1d, 0x58, 0xea,
+	0x75, 0xbb, 0xcc, 0x8f, 0x83, 0x7e, 0x4a, 0x30, 0x86, 0x39, 0x2b, 0x0b, 0x24, 0xf2, 0x87, 0xc0,
+	0x8e, 0x77, 0xc9, 0xfc, 0x38, 0xf4, 0x24, 0xa0, 0xf0, 0x1f, 0xae, 0xc3, 0x1a, 0xef, 0xc7, 0xcf,
+	0x7f, 0x0b, 0x6e, 0x0f, 0x92, 0x69, 0x6e, 0xcb, 0xf3, 0x1d, 0xca, 0x6d, 0xcf, 0xc5, 0x2f, 0x40,
+	0xc6, 0x7b, 0x19, 0x56, 0x9b, 0x59, 0xe1, 0x9e, 0xf5, 0xd8, 0x94, 0x45, 0x6d, 0xf4, 0x51, 0xc2,
+	0x84, 0x45, 0x80, 0x41, 0xec, 0xe0, 0x9a, 0x92, 0xe1, 0x92, 0x48, 0x02, 0x92, 0xff, 0x65, 0x0a,
+	0x56, 0xd5, 0xb0, 0xc1, 0x4a, 0xad, 0x36, 0xee, 0xc2, 0xaa, 0x68, 0x36, 0xd3, 0xb6, 0x44, 0xba,
+	0xcc, 0xc1, 0x86, 0xe0, 0x0a, 0x80, 0x66, 0x05, 0x64, 0x85, 0x45, 0xbf, 0xf0, 0x21, 0x6c, 0xd8,
+	0x81, 0x79, 0xe6, 0xb9, 0x2d, 0xbb, 0xdd, 0xf3, 0x99, 0x25, 0x52, 0xad, 0x92, 0x5b, 0x76, 0x50,
+	0x1a, 0xd8, 0x46, 0xc4, 0x48, 0x73, 0xc5, 0xe0, 0x3e, 0x64, 0xce, 0x3c, 0xa7, 0xeb, 0xb9, 0xa1,
+	0x86, 0x5e, 0xcf, 0xb6, 0x44, 0x2f, 0xac, 0x1f, 0xac, 0x09, 0x52, 0xa3, 0x67, 0x5b, 0x64, 0x63,
+	0x00, 0x08, 0x1f, 0xf3, 0xfb, 0xb0, 0x26, 0xc4, 0x05, 0xa1, 0xfc, 0x87, 0xb0, 0x64, 0x73, 0xe6,
+	0x04, 0x9b, 0xa9, 0x9c, 0xb4, 0xbb, 0x9e, 0xd4, 0x5e, 0x6a, 0xb5, 0x49, 0xe4, 0xcb, 0xff, 0x34,
+	0x0d, 0x58, 0xb5, 0x03, 0x1e, 0xd1, 0x08, 0x0b, 0xba, 0x9e, 0x1b, 0x30, 0x7c, 0x08, 0xcb, 0x01,
+	0xa7, 0xbc, 0x17, 0xc4, 0x0b, 0x5f, 0x17, 0xe4, 0xba, 0x30, 0x91, 0xd8, 0x85, 0x4f, 0x61, 0xd9,
+	0x67, 0x34, 0xf0, 0x5c, 0xb1, 0xdc, 0xcc, 0xc1, 0x7d, 0x01, 0x1a, 0x8f, 0x56, 0x20, 0x02, 0x45,
+	0x62, 0x34, 0xbe, 0x0d, 0xcb, 0xd1, 0x21, 0x8e, 0x37, 0x21, 0x33, 0x54, 0x16, 0x0a, 0x27, 0xb1,
+	0x37, 0xdc, 0xd5, 0x88, 0x61, 0x5a, 0x8c, 0x53, 0x3b, 0x3a, 0x0a, 0x6b, 0xe4, 0x56, 0x64, 0x2c,
+	0x0b, 0x5b, 0xfe, 0x43, 0x58, 0x8e, 0xc2, 0xe3, 0x6d, 0x90, 0x1b, 0x7a, 0x59, 0x3d, 0xd2, 0x74,
+	0xb5, 0x6c, 0x12, 0x55, 0xa9, 0xd7, 0x74, 0x79, 0x01, 0x11, 0x32, 0x0d, 0xfd, 0x7d, 0xbd, 0x76,
+	0xaa, 0x9b, 0x65, 0xb5, 0xa9, 0x95, 0x54, 0x39, 0x15, 0xda, 0x34, 0xdd, 0x50, 0x89, 0xae, 0x54,
+	0x4d, 0x95, 0x90, 0x1a, 0x91, 0xd3, 0x78, 0x07, 0x30, 0xf2, 0x9b, 0x0d, 0x9d, 0xa8, 0x4a, 0xa9,
+	0xa2, 0x1c, 0x56, 0x55, 0x59, 0xca, 0x7f, 0x92, 0x82, 0x6c, 0x2c, 0x2d, 0x2e, 0xa5, 0xe8, 0x48,
+	0xc2, 0x3e, 0xea, 0xb1, 0x80, 0xe3, 0x1e, 0xac, 0x5b, 0x2c, 0x9c, 0x41, 0x51, 0x81, 0x52, 0xa3,
+	0x05, 0x82, 0xc8, 0x1b, 0xfe, 0xc6, 0x3d, 0x58, 0x39, 0x3b, 0xa7, 0x6e, 0x9b, 0x05, 0xd7, 0xce,
+	0xdb, 0x60, 0xe1, 0xe1, 0x84, 0x88, 0x01, 0xb8, 0x07, 0xb2, 0xcf, 0x02, 0xc6, 0x4d, 0xee, 0x99,
+	0x16, 0x6b, 0xd1, 0x5e, 0x87, 0x8b, 0xdd, 0x5a, 0xad, 0x2c, 0x90, 0x8c, 0xf0, 0x18, 0x5e, 0x39,
+	0xb2, 0x87, 0x27, 0xc8, 0xeb, 0xb2, 0x48, 0x57, 0xfe, 0x27, 0x69, 0xd8, 0x9e, 0xa8, 0xf7, 0x75,
+	0x2a, 0xfb, 0xa5, 0x91, 0xca, 0xee, 0x24, 0x85, 0x4e, 0x0a, 0x3b, 0x5a, 0xe2, 0xb1, 0xd2, 0x49,
+	0x13, 0x4a, 0xe7, 0xff, 0x9f, 0x4a, 0x27, 0x6c, 0x4d, 0xa5, 0xaa, 0x95, 0xcd, 0x52, 0x4d, 0x3f,
+	0xd2, 0x5e, 0xc8, 0xd2, 0x94, 0x72, 0x2e, 0xe6, 0x3f, 0x4e, 0xc1, 0x86, 0x58, 0xc7, 0x31, 0xe3,
+	0x34, 0x1c, 0xa7, 0xaf, 0x55, 0xc1, 0xf1, 0x13, 0x99, 0x9e, 0x7d, 0x22, 0xf1, 0xad, 0x24, 0xc3,
+	0xa5, 0x0e, 0x8b, 0x77, 0x62, 0x08, 0xd3, 0xa9, 0xc3, 0xf2, 0xdf, 0x4d, 0xc3, 0x92, 0x90, 0x85,
+	0xcf, 0x21, 0x13, 0x0d, 0x1d, 0x87, 0x71, 0x6a, 0x51, 0x4e, 0x63, 0x45, 0x38, 0x2c, 0x41, 0x5f,
+	0x3a, 0xd9, 0x60, 0xfd, 0xc7, 0x10, 0x78, 0x6d, 0x5e, 0xa5, 0x67, 0xce, 0xab, 0x67, 0xb0, 0xe6,
+	0x53, 0x3b, 0x60, 0x96, 0x39, 0x38, 0x84, 0xd9, 0x42, 0xf4, 0xda, 0x2b, 0xf4, 0x5f, 0x7b, 0x05,
+	0xa3, 0xff, 0x5e, 0x24, 0xab, 0x11, 0xd8, 0x08, 0xf0, 0xcb, 0x90, 0x19, 0x0c, 0x28, 0xd3, 0x76,
+	0x5b, 0x5e, 0x3c, 0x92, 0xb6, 0xae, 0xcf, 0xb1, 0xc4, 0xe8, 0x26, 0x1b, 0x3c, 0x69, 0xc5, 0x2d,
+	0x58, 0xa5, 0x56, 0xcc, 0x5d, 0x12, 0x5b, 0xb1, 0x42, 0x2d, 0xe1, 0xda, 0xfb, 0x03, 0xc6, 0xc3,
+	0x57, 0xb3, 0x02, 0xdc, 0x84, 0xdb, 0x6a, 0x53, 0xd5, 0x0d, 0x53, 0x57, 0x8e, 0xc3, 0x22, 0xc6,
+	0xdd, 0x21, 0x2f, 0xe0, 0x7d, 0xc8, 0x46, 0x1e, 0x83, 0x28, 0x7a, 0xbd, 0xa4, 0x6a, 0x4d, 0x95,
+	0x98, 0x27, 0xd5, 0xc6, 0x0b, 0xb3, 0xd6, 0x30, 0x64, 0x0b, 0xef, 0xc1, 0xd6, 0x14, 0xbf, 0xa6,
+	0xcb, 0x0c, 0x1f, 0xc1, 0x3b, 0xe3, 0xee, 0x66, 0xad, 0x6a, 0x28, 0x2f, 0x54, 0x53, 0x39, 0xac,
+	0x35, 0x55, 0xd3, 0xa8, 0x10, 0xb5, 0x5e, 0xa9, 0x55, 0xcb, 0x72, 0x6b, 0x36, 0xfc, 0x50, 0xad,
+	0xd6, 0x4e, 0x13, 0xf0, 0x36, 0xbe, 0x0b, 0x8f, 0xc6, 0xe1, 0x86, 0x7a, 0x7c, 0xa2, 0x12, 0xc5,
+	0x68, 0x90, 0xf1, 0x0c, 0xe7, 0xf3, 0x29, 0xa3, 0x59, 0xec, 0xc9, 0xa2, 0x4a, 0x0d, 0x42, 0x42,
+	0xdb, 0x68, 0x86, 0xaf, 0xcd, 0x86, 0x8f, 0x46, 0x7f, 0x85, 0x05, 0xd8, 0x1b, 0x87, 0x93, 0xaf,
+	0x98, 0x27, 0xb5, 0x53, 0x95, 0x8c, 0x85, 0xef, 0xcc, 0xc1, 0x8f, 0xc6, 0x77, 0x26, 0xe3, 0x8d,
+	0x69, 0xf1, 0xdd, 0x39, 0xf8, 0xd1, 0xf8, 0xde, 0xe4, 0x06, 0x38, 0x52, 0xb4, 0x6a, 0x83, 0xa8,
+	0x72, 0x17, 0x9f, 0xc1, 0xe3, 0x1b, 0x37, 0x80, 0x49, 0xd4, 0x52, 0xad, 0xa9, 0x12, 0xb5, 0x2c,
+	0x7f, 0x34, 0x9b, 0x38, 0x22, 0x23, 0x41, 0xf4, 0xf1, 0x3d, 0x78, 0xf6, 0x5a, 0x4d, 0x91, 0x20,
+	0x07, 0xf3, 0xc9, 0xd3, 0x33, 0xf3, 0xc9, 0x92, 0xa7, 0x34, 0x4a, 0x82, 0xd8, 0x9b, 0x4d, 0x9c,
+	0x9e, 0xf1, 0x02, 0xbf, 0x08, 0x4f, 0x6e, 0xde, 0x3c, 0x09, 0xe6, 0xe5, 0x1c, 0xe6, 0xf4, 0x9c,
+	0x5f, 0x9f, 0xcc, 0x34, 0xe6, 0xe7, 0xbc, 0x9a, 0xc3, 0x9c, 0x9e, 0xf3, 0x1b, 0xb8, 0x03, 0x0f,
+	0xa7, 0x36, 0x59, 0x02, 0xf8, 0x4d, 0xbc, 0x0b, 0x18, 0x01, 0x4f, 0xea, 0x8d, 0xe1, 0x98, 0xfa,
+	0x55, 0x0a, 0xef, 0xc0, 0x1b, 0x23, 0x0e, 0x4d, 0x97, 0x7f, 0x3d, 0x62, 0xef, 0xb7, 0xed, 0x6f,
+	0x52, 0x98, 0x83, 0xed, 0x31, 0x7b, 0x22, 0xd3, 0x6f, 0x13, 0xcc, 0x23, 0x45, 0x1f, 0x30, 0x7f,
+	0x96, 0x1e, 0x4a, 0x08, 0xed, 0x03, 0x09, 0x9f, 0xa4, 0xaf, 0x13, 0xfa, 0x12, 0x7e, 0x9e, 0x1e,
+	0xa6, 0x4a, 0x04, 0x4a, 0xa4, 0xfa, 0x45, 0x1a, 0xdf, 0x81, 0x37, 0x23, 0x44, 0xe9, 0xa4, 0x31,
+	0xa1, 0x95, 0x4b, 0x44, 0x33, 0xb4, 0x92, 0x52, 0x95, 0xbf, 0x27, 0xe1, 0xdb, 0xf0, 0xd9, 0x59,
+	0xd0, 0x23, 0xc5, 0x50, 0xaa, 0xf2, 0xf7, 0x25, 0x7c, 0x0c, 0x85, 0x9b, 0x84, 0x4c, 0xe8, 0xf8,
+	0x81, 0x84, 0xfb, 0xf0, 0xb9, 0xb9, 0xc1, 0x13, 0x8c, 0x1f, 0x4a, 0xf8, 0x26, 0x3c, 0x18, 0x32,
+	0x1a, 0xf5, 0x49, 0x53, 0xff, 0x63, 0x09, 0x0b, 0xfd, 0x91, 0x39, 0x15, 0x95, 0x88, 0xfa, 0x23,
+	0x09, 0xb3, 0xf0, 0xe9, 0x08, 0x5f, 0x39, 0x8d, 0x3f, 0x56, 0x4c, 0xa2, 0xd6, 0x55, 0x43, 0xfe,
+	0x93, 0x84, 0xc5, 0xfe, 0xfc, 0x1a, 0xfa, 0x66, 0xec, 0xd8, 0x9f, 0x25, 0xfc, 0x3c, 0xec, 0xcc,
+	0x27, 0x44, 0xfb, 0xf6, 0x17, 0x09, 0x9f, 0xf7, 0x7b, 0xf8, 0x26, 0xe1, 0x13, 0xaa, 0xff, 0x2a,
+	0xe1, 0x53, 0x78, 0xf7, 0x86, 0x89, 0x12, 0xbc, 0xbf, 0x49, 0xb8, 0x0d, 0x77, 0xc6, 0x57, 0x7b,
+	0x58, 0xab, 0x19, 0xf2, 0xdf, 0x25, 0xdc, 0x81, 0xfc, 0xc0, 0x99, 0x8c, 0x56, 0x57, 0xf5, 0x7a,
+	0x2d, 0x3a, 0x23, 0x6a, 0x59, 0xfe, 0xc7, 0xf5, 0x65, 0x2a, 0xd5, 0xea, 0x04, 0x70, 0xbd, 0x8f,
+	0xfe, 0xa7, 0x84, 0xbb, 0xfd, 0x03, 0x17, 0xe6, 0xd4, 0xea, 0xef, 0x4f, 0xa9, 0xdd, 0xbf, 0x24,
+	0x3c, 0xe8, 0xbf, 0x50, 0x67, 0x22, 0x13, 0x2b, 0xfa, 0xb7, 0x84, 0x7b, 0xf0, 0xd6, 0x80, 0x73,
+	0xac, 0x1e, 0xd7, 0xc8, 0x07, 0x53, 0xe2, 0xff, 0x47, 0xc2, 0x27, 0x50, 0xbc, 0x11, 0x36, 0x91,
+	0xe1, 0xbf, 0x12, 0xde, 0xef, 0xbf, 0x95, 0x2a, 0xa7, 0xa6, 0x6e, 0x9c, 0x98, 0xf5, 0x0f, 0xf4,
+	0xd2, 0xe0, 0x90, 0x7e, 0x7b, 0xf1, 0xda, 0xfa, 0x46, 0xfd, 0x89, 0x48, 0xdf, 0x59, 0xc4, 0x7b,
+	0xb0, 0x19, 0x21, 0xab, 0x9a, 0xae, 0x9a, 0x25, 0x85, 0x94, 0x87, 0x87, 0xfa, 0x77, 0x8b, 0xf8,
+	0x19, 0xb8, 0x3b, 0xd1, 0xad, 0xe9, 0xf2, 0xef, 0x17, 0x0f, 0xfe, 0x98, 0x82, 0x7b, 0x3a, 0xe5,
+	0xf6, 0x05, 0x8b, 0x3e, 0xe7, 0x8f, 0xa9, 0x4b, 0xdb, 0xcc, 0x61, 0x2e, 0xaf, 0x47, 0x7f, 0xa6,
+	0xe0, 0x53, 0x80, 0xe1, 0x1d, 0x0e, 0xa3, 0x1b, 0x6a, 0x85, 0xfa, 0xd6, 0x25, 0xf5, 0x99, 0x56,
+	0xce, 0xde, 0x9d, 0x72, 0xcb, 0xc3, 0x0f, 0x61, 0xab, 0xd1, 0xb5, 0x28, 0x67, 0x13, 0xee, 0x09,
+	0xf8, 0x60, 0xfa, 0x0d, 0x42, 0x5c, 0xa4, 0xb2, 0xb9, 0x79, 0x57, 0x0c, 0x7c, 0x02, 0xb7, 0xea,
+	0xdc, 0x67, 0xd4, 0x89, 0x95, 0xdd, 0x19, 0xfb, 0x62, 0x55, 0x9d, 0x2e, 0xbf, 0xca, 0xc2, 0x30,
+	0xd2, 0x7e, 0xea, 0xf0, 0xbd, 0xaf, 0x3e, 0x6f, 0xdb, 0xfc, 0xbc, 0xf7, 0xb2, 0x70, 0xe6, 0x39,
+	0x45, 0xaf, 0xcb, 0xdc, 0x33, 0xcf, 0xb7, 0x8a, 0xd1, 0x47, 0xfd, 0x23, 0x67, 0xb0, 0xfa, 0x47,
+	0xb6, 0xcb, 0x99, 0xdf, 0xa2, 0x67, 0xac, 0x78, 0xf1, 0xb8, 0xd8, 0xf6, 0x8a, 0x96, 0x63, 0xbf,
+	0x5c, 0x16, 0xa1, 0x1f, 0xff, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x76, 0x35, 0xd3, 0x5d, 0x7c, 0x12,
+	0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
diff --git a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_management_service.pb.go b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_management_service.pb.go
index 50bd972..783cbac 100644
--- a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_management_service.pb.go
+++ b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_management_service.pb.go
@@ -185,16 +185,20 @@
 const (
 	StopManagingDeviceResponse_UNDEFINED_REASON StopManagingDeviceResponse_Reason = 0
 	StopManagingDeviceResponse_UNKNOWN_DEVICE   StopManagingDeviceResponse_Reason = 1
+	// DEVICE_UNREACHABLE is to be returned when the device manager cannot reach the device and stop managing it
+	StopManagingDeviceResponse_DEVICE_UNREACHABLE StopManagingDeviceResponse_Reason = 2
 )
 
 var StopManagingDeviceResponse_Reason_name = map[int32]string{
 	0: "UNDEFINED_REASON",
 	1: "UNKNOWN_DEVICE",
+	2: "DEVICE_UNREACHABLE",
 }
 
 var StopManagingDeviceResponse_Reason_value = map[string]int32{
-	"UNDEFINED_REASON": 0,
-	"UNKNOWN_DEVICE":   1,
+	"UNDEFINED_REASON":   0,
+	"UNKNOWN_DEVICE":     1,
+	"DEVICE_UNREACHABLE": 2,
 }
 
 func (x StopManagingDeviceResponse_Reason) String() string {
@@ -397,13 +401,67 @@
 	return fileDescriptor_eae902e73066286d, []int{20, 0}
 }
 
+type SetDmLogLevelResponse_Reason int32
+
+const (
+	SetDmLogLevelResponse_UNDEFINED_REASON  SetDmLogLevelResponse_Reason = 0
+	SetDmLogLevelResponse_INTERNAL_ERROR    SetDmLogLevelResponse_Reason = 1
+	SetDmLogLevelResponse_UNKNOWN_LOG_LEVEL SetDmLogLevelResponse_Reason = 2
+)
+
+var SetDmLogLevelResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "INTERNAL_ERROR",
+	2: "UNKNOWN_LOG_LEVEL",
+}
+
+var SetDmLogLevelResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":  0,
+	"INTERNAL_ERROR":    1,
+	"UNKNOWN_LOG_LEVEL": 2,
+}
+
+func (x SetDmLogLevelResponse_Reason) String() string {
+	return proto.EnumName(SetDmLogLevelResponse_Reason_name, int32(x))
+}
+
+func (SetDmLogLevelResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{23, 0}
+}
+
+type GetDmLogLevelResponse_Reason int32
+
+const (
+	GetDmLogLevelResponse_UNDEFINED_REASON GetDmLogLevelResponse_Reason = 0
+	GetDmLogLevelResponse_INTERNAL_ERROR   GetDmLogLevelResponse_Reason = 1
+)
+
+var GetDmLogLevelResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "INTERNAL_ERROR",
+}
+
+var GetDmLogLevelResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"INTERNAL_ERROR":   1,
+}
+
+func (x GetDmLogLevelResponse_Reason) String() string {
+	return proto.EnumName(GetDmLogLevelResponse_Reason_name, int32(x))
+}
+
+func (GetDmLogLevelResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{25, 0}
+}
+
 type RebootDeviceResponse_Reason int32
 
 const (
-	RebootDeviceResponse_UNDEFINED_REASON   RebootDeviceResponse_Reason = 0
-	RebootDeviceResponse_UNKNOWN_DEVICE     RebootDeviceResponse_Reason = 1
-	RebootDeviceResponse_INTERNAL_ERROR     RebootDeviceResponse_Reason = 2
-	RebootDeviceResponse_DEVICE_UNREACHABLE RebootDeviceResponse_Reason = 3
+	RebootDeviceResponse_UNDEFINED_REASON      RebootDeviceResponse_Reason = 0
+	RebootDeviceResponse_UNKNOWN_DEVICE        RebootDeviceResponse_Reason = 1
+	RebootDeviceResponse_INTERNAL_ERROR        RebootDeviceResponse_Reason = 2
+	RebootDeviceResponse_DEVICE_UNREACHABLE    RebootDeviceResponse_Reason = 3
+	RebootDeviceResponse_DEVICE_IN_WRONG_STATE RebootDeviceResponse_Reason = 4
 )
 
 var RebootDeviceResponse_Reason_name = map[int32]string{
@@ -411,13 +469,15 @@
 	1: "UNKNOWN_DEVICE",
 	2: "INTERNAL_ERROR",
 	3: "DEVICE_UNREACHABLE",
+	4: "DEVICE_IN_WRONG_STATE",
 }
 
 var RebootDeviceResponse_Reason_value = map[string]int32{
-	"UNDEFINED_REASON":   0,
-	"UNKNOWN_DEVICE":     1,
-	"INTERNAL_ERROR":     2,
-	"DEVICE_UNREACHABLE": 3,
+	"UNDEFINED_REASON":      0,
+	"UNKNOWN_DEVICE":        1,
+	"INTERNAL_ERROR":        2,
+	"DEVICE_UNREACHABLE":    3,
+	"DEVICE_IN_WRONG_STATE": 4,
 }
 
 func (x RebootDeviceResponse_Reason) String() string {
@@ -425,7 +485,7 @@
 }
 
 func (RebootDeviceResponse_Reason) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{24, 0}
+	return fileDescriptor_eae902e73066286d, []int{28, 0}
 }
 
 type PhysicalInventoryRequest struct {
@@ -1625,6 +1685,194 @@
 	return nil
 }
 
+type SetDmLogLevelRequest struct {
+	Level                LogLevel `protobuf:"varint,1,opt,name=level,proto3,enum=dmi.LogLevel" json:"level,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
+}
+
+func (m *SetDmLogLevelRequest) Reset()         { *m = SetDmLogLevelRequest{} }
+func (m *SetDmLogLevelRequest) String() string { return proto.CompactTextString(m) }
+func (*SetDmLogLevelRequest) ProtoMessage()    {}
+func (*SetDmLogLevelRequest) Descriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{22}
+}
+
+func (m *SetDmLogLevelRequest) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_SetDmLogLevelRequest.Unmarshal(m, b)
+}
+func (m *SetDmLogLevelRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_SetDmLogLevelRequest.Marshal(b, m, deterministic)
+}
+func (m *SetDmLogLevelRequest) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_SetDmLogLevelRequest.Merge(m, src)
+}
+func (m *SetDmLogLevelRequest) XXX_Size() int {
+	return xxx_messageInfo_SetDmLogLevelRequest.Size(m)
+}
+func (m *SetDmLogLevelRequest) XXX_DiscardUnknown() {
+	xxx_messageInfo_SetDmLogLevelRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_SetDmLogLevelRequest proto.InternalMessageInfo
+
+func (m *SetDmLogLevelRequest) GetLevel() LogLevel {
+	if m != nil {
+		return m.Level
+	}
+	return LogLevel_TRACE
+}
+
+type SetDmLogLevelResponse struct {
+	Status               Status                       `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               SetDmLogLevelResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.SetDmLogLevelResponse_Reason" json:"reason,omitempty"`
+	ReasonDetail         string                       `protobuf:"bytes,3,opt,name=reason_detail,json=reasonDetail,proto3" json:"reason_detail,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                     `json:"-"`
+	XXX_unrecognized     []byte                       `json:"-"`
+	XXX_sizecache        int32                        `json:"-"`
+}
+
+func (m *SetDmLogLevelResponse) Reset()         { *m = SetDmLogLevelResponse{} }
+func (m *SetDmLogLevelResponse) String() string { return proto.CompactTextString(m) }
+func (*SetDmLogLevelResponse) ProtoMessage()    {}
+func (*SetDmLogLevelResponse) Descriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{23}
+}
+
+func (m *SetDmLogLevelResponse) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_SetDmLogLevelResponse.Unmarshal(m, b)
+}
+func (m *SetDmLogLevelResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_SetDmLogLevelResponse.Marshal(b, m, deterministic)
+}
+func (m *SetDmLogLevelResponse) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_SetDmLogLevelResponse.Merge(m, src)
+}
+func (m *SetDmLogLevelResponse) XXX_Size() int {
+	return xxx_messageInfo_SetDmLogLevelResponse.Size(m)
+}
+func (m *SetDmLogLevelResponse) XXX_DiscardUnknown() {
+	xxx_messageInfo_SetDmLogLevelResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_SetDmLogLevelResponse proto.InternalMessageInfo
+
+func (m *SetDmLogLevelResponse) GetStatus() Status {
+	if m != nil {
+		return m.Status
+	}
+	return Status_UNDEFINED_STATUS
+}
+
+func (m *SetDmLogLevelResponse) GetReason() SetDmLogLevelResponse_Reason {
+	if m != nil {
+		return m.Reason
+	}
+	return SetDmLogLevelResponse_UNDEFINED_REASON
+}
+
+func (m *SetDmLogLevelResponse) GetReasonDetail() string {
+	if m != nil {
+		return m.ReasonDetail
+	}
+	return ""
+}
+
+type GetDmLogLevelRequest struct {
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
+}
+
+func (m *GetDmLogLevelRequest) Reset()         { *m = GetDmLogLevelRequest{} }
+func (m *GetDmLogLevelRequest) String() string { return proto.CompactTextString(m) }
+func (*GetDmLogLevelRequest) ProtoMessage()    {}
+func (*GetDmLogLevelRequest) Descriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{24}
+}
+
+func (m *GetDmLogLevelRequest) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_GetDmLogLevelRequest.Unmarshal(m, b)
+}
+func (m *GetDmLogLevelRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_GetDmLogLevelRequest.Marshal(b, m, deterministic)
+}
+func (m *GetDmLogLevelRequest) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_GetDmLogLevelRequest.Merge(m, src)
+}
+func (m *GetDmLogLevelRequest) XXX_Size() int {
+	return xxx_messageInfo_GetDmLogLevelRequest.Size(m)
+}
+func (m *GetDmLogLevelRequest) XXX_DiscardUnknown() {
+	xxx_messageInfo_GetDmLogLevelRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetDmLogLevelRequest proto.InternalMessageInfo
+
+type GetDmLogLevelResponse struct {
+	Level                LogLevel                     `protobuf:"varint,1,opt,name=level,proto3,enum=dmi.LogLevel" json:"level,omitempty"`
+	Status               Status                       `protobuf:"varint,2,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               GetDmLogLevelResponse_Reason `protobuf:"varint,3,opt,name=reason,proto3,enum=dmi.GetDmLogLevelResponse_Reason" json:"reason,omitempty"`
+	ReasonDetail         string                       `protobuf:"bytes,4,opt,name=reason_detail,json=reasonDetail,proto3" json:"reason_detail,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                     `json:"-"`
+	XXX_unrecognized     []byte                       `json:"-"`
+	XXX_sizecache        int32                        `json:"-"`
+}
+
+func (m *GetDmLogLevelResponse) Reset()         { *m = GetDmLogLevelResponse{} }
+func (m *GetDmLogLevelResponse) String() string { return proto.CompactTextString(m) }
+func (*GetDmLogLevelResponse) ProtoMessage()    {}
+func (*GetDmLogLevelResponse) Descriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{25}
+}
+
+func (m *GetDmLogLevelResponse) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_GetDmLogLevelResponse.Unmarshal(m, b)
+}
+func (m *GetDmLogLevelResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_GetDmLogLevelResponse.Marshal(b, m, deterministic)
+}
+func (m *GetDmLogLevelResponse) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_GetDmLogLevelResponse.Merge(m, src)
+}
+func (m *GetDmLogLevelResponse) XXX_Size() int {
+	return xxx_messageInfo_GetDmLogLevelResponse.Size(m)
+}
+func (m *GetDmLogLevelResponse) XXX_DiscardUnknown() {
+	xxx_messageInfo_GetDmLogLevelResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetDmLogLevelResponse proto.InternalMessageInfo
+
+func (m *GetDmLogLevelResponse) GetLevel() LogLevel {
+	if m != nil {
+		return m.Level
+	}
+	return LogLevel_TRACE
+}
+
+func (m *GetDmLogLevelResponse) GetStatus() Status {
+	if m != nil {
+		return m.Status
+	}
+	return Status_UNDEFINED_STATUS
+}
+
+func (m *GetDmLogLevelResponse) GetReason() GetDmLogLevelResponse_Reason {
+	if m != nil {
+		return m.Reason
+	}
+	return GetDmLogLevelResponse_UNDEFINED_REASON
+}
+
+func (m *GetDmLogLevelResponse) GetReasonDetail() string {
+	if m != nil {
+		return m.ReasonDetail
+	}
+	return ""
+}
+
 type Heartbeat struct {
 	HeartbeatSignature   uint32   `protobuf:"fixed32,1,opt,name=heartbeat_signature,json=heartbeatSignature,proto3" json:"heartbeat_signature,omitempty"`
 	XXX_NoUnkeyedLiteral struct{} `json:"-"`
@@ -1636,7 +1884,7 @@
 func (m *Heartbeat) String() string { return proto.CompactTextString(m) }
 func (*Heartbeat) ProtoMessage()    {}
 func (*Heartbeat) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{22}
+	return fileDescriptor_eae902e73066286d, []int{26}
 }
 
 func (m *Heartbeat) XXX_Unmarshal(b []byte) error {
@@ -1675,7 +1923,7 @@
 func (m *RebootDeviceRequest) String() string { return proto.CompactTextString(m) }
 func (*RebootDeviceRequest) ProtoMessage()    {}
 func (*RebootDeviceRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{23}
+	return fileDescriptor_eae902e73066286d, []int{27}
 }
 
 func (m *RebootDeviceRequest) XXX_Unmarshal(b []byte) error {
@@ -1716,7 +1964,7 @@
 func (m *RebootDeviceResponse) String() string { return proto.CompactTextString(m) }
 func (*RebootDeviceResponse) ProtoMessage()    {}
 func (*RebootDeviceResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{24}
+	return fileDescriptor_eae902e73066286d, []int{28}
 }
 
 func (m *RebootDeviceResponse) XXX_Unmarshal(b []byte) error {
@@ -1770,6 +2018,8 @@
 	proto.RegisterEnum("dmi.GetMsgBusEndpointResponse_Reason", GetMsgBusEndpointResponse_Reason_name, GetMsgBusEndpointResponse_Reason_value)
 	proto.RegisterEnum("dmi.SetLogLevelResponse_Reason", SetLogLevelResponse_Reason_name, SetLogLevelResponse_Reason_value)
 	proto.RegisterEnum("dmi.GetLogLevelResponse_Reason", GetLogLevelResponse_Reason_name, GetLogLevelResponse_Reason_value)
+	proto.RegisterEnum("dmi.SetDmLogLevelResponse_Reason", SetDmLogLevelResponse_Reason_name, SetDmLogLevelResponse_Reason_value)
+	proto.RegisterEnum("dmi.GetDmLogLevelResponse_Reason", GetDmLogLevelResponse_Reason_name, GetDmLogLevelResponse_Reason_value)
 	proto.RegisterEnum("dmi.RebootDeviceResponse_Reason", RebootDeviceResponse_Reason_name, RebootDeviceResponse_Reason_value)
 	proto.RegisterType((*PhysicalInventoryRequest)(nil), "dmi.PhysicalInventoryRequest")
 	proto.RegisterType((*PhysicalInventoryResponse)(nil), "dmi.PhysicalInventoryResponse")
@@ -1793,6 +2043,10 @@
 	proto.RegisterType((*GetLogLevelRequest)(nil), "dmi.GetLogLevelRequest")
 	proto.RegisterType((*GetLogLevelResponse)(nil), "dmi.GetLogLevelResponse")
 	proto.RegisterType((*GetLoggableEntitiesRequest)(nil), "dmi.GetLoggableEntitiesRequest")
+	proto.RegisterType((*SetDmLogLevelRequest)(nil), "dmi.SetDmLogLevelRequest")
+	proto.RegisterType((*SetDmLogLevelResponse)(nil), "dmi.SetDmLogLevelResponse")
+	proto.RegisterType((*GetDmLogLevelRequest)(nil), "dmi.GetDmLogLevelRequest")
+	proto.RegisterType((*GetDmLogLevelResponse)(nil), "dmi.GetDmLogLevelResponse")
 	proto.RegisterType((*Heartbeat)(nil), "dmi.Heartbeat")
 	proto.RegisterType((*RebootDeviceRequest)(nil), "dmi.RebootDeviceRequest")
 	proto.RegisterType((*RebootDeviceResponse)(nil), "dmi.RebootDeviceResponse")
@@ -1801,107 +2055,115 @@
 func init() { proto.RegisterFile("dmi/hw_management_service.proto", fileDescriptor_eae902e73066286d) }
 
 var fileDescriptor_eae902e73066286d = []byte{
-	// 1585 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0x4d, 0x6f, 0xdb, 0x46,
-	0x13, 0x7e, 0x29, 0xd9, 0x4e, 0x34, 0x4e, 0x6c, 0x79, 0x9d, 0x38, 0x12, 0x83, 0xd8, 0x7e, 0x19,
-	0xa4, 0x71, 0xda, 0x44, 0x32, 0x94, 0x43, 0xd3, 0xef, 0xd2, 0x12, 0x2d, 0xb1, 0x91, 0x28, 0x61,
-	0x29, 0xc5, 0x48, 0x51, 0x54, 0xa0, 0xa5, 0xb5, 0x4c, 0x54, 0x24, 0x55, 0x91, 0x72, 0xe0, 0x9f,
-	0xd1, 0x63, 0x0f, 0x2d, 0xfa, 0x0b, 0x0a, 0xf4, 0x1a, 0xf4, 0xde, 0x43, 0xaf, 0x3d, 0x15, 0x05,
-	0x8a, 0xfe, 0x84, 0x5e, 0x7b, 0x2a, 0xb4, 0x4b, 0xea, 0x83, 0x22, 0x65, 0x49, 0x4e, 0xd0, 0xdc,
-	0xc4, 0xdd, 0xd9, 0x67, 0x67, 0xe7, 0x99, 0x9d, 0x99, 0x1d, 0xc1, 0x4e, 0xd3, 0xd0, 0xd3, 0xa7,
-	0x2f, 0xea, 0x86, 0x66, 0x6a, 0x2d, 0x62, 0x10, 0xd3, 0xa9, 0xdb, 0xa4, 0x7b, 0xa6, 0x37, 0x48,
-	0xaa, 0xd3, 0xb5, 0x1c, 0x0b, 0x45, 0x9b, 0x86, 0xce, 0x6f, 0xf4, 0xa5, 0x1a, 0x96, 0x61, 0x58,
-	0xa6, 0xcd, 0xc6, 0xf9, 0x6b, 0x6c, 0xa1, 0xfb, 0x75, 0xbb, 0x65, 0x59, 0xad, 0x36, 0x49, 0xd3,
-	0xaf, 0xe3, 0xde, 0x49, 0x9a, 0x18, 0x1d, 0xe7, 0x9c, 0x4d, 0x0a, 0x87, 0x90, 0xa8, 0x9c, 0x9e,
-	0xdb, 0x7a, 0x43, 0x6b, 0xcb, 0xe6, 0x19, 0x31, 0x1d, 0xab, 0x7b, 0x8e, 0xc9, 0xd7, 0x3d, 0x62,
-	0x3b, 0xe8, 0x6d, 0x58, 0x6d, 0x92, 0xfe, 0x76, 0xf5, 0x5e, 0x4f, 0x6f, 0x26, 0xb8, 0x5d, 0x6e,
-	0x6f, 0x35, 0x13, 0x4b, 0x35, 0x0d, 0x3d, 0x55, 0xeb, 0xe9, 0x4d, 0x0c, 0x6c, 0xb6, 0xff, 0x5b,
-	0xf8, 0x29, 0x02, 0xc9, 0x00, 0x20, 0xbb, 0x63, 0x99, 0x36, 0x41, 0x77, 0x61, 0xc5, 0x76, 0x34,
-	0xa7, 0x67, 0x53, 0x90, 0xb5, 0xcc, 0x2a, 0x05, 0x51, 0xe9, 0x10, 0x76, 0xa7, 0xd0, 0x47, 0xb0,
-	0xd2, 0x25, 0x9a, 0x6d, 0x99, 0x89, 0x08, 0x15, 0xba, 0x47, 0x85, 0x42, 0x41, 0x53, 0x98, 0x0a,
-	0x63, 0x77, 0x11, 0x7a, 0x07, 0x62, 0xba, 0x27, 0x93, 0x88, 0x52, 0x5d, 0xaf, 0x53, 0x84, 0x82,
-	0xd6, 0x6d, 0xbe, 0xd0, 0xba, 0x04, 0x0f, 0xe7, 0xd1, 0x5d, 0xb8, 0xce, 0x96, 0xd5, 0x9b, 0xc4,
-	0xd1, 0xf4, 0x76, 0x62, 0x69, 0x97, 0xdb, 0x8b, 0xe1, 0x6b, 0x6c, 0x30, 0x47, 0xc7, 0x84, 0x2f,
-	0x61, 0x85, 0xed, 0x81, 0x6e, 0x40, 0xbc, 0xa6, 0xe4, 0xa4, 0x43, 0x59, 0x91, 0x72, 0x75, 0x2c,
-	0x89, 0x6a, 0x59, 0x89, 0xff, 0x0f, 0x21, 0x58, 0xab, 0x29, 0x4f, 0x95, 0xf2, 0x91, 0x52, 0xcf,
-	0x49, 0xcf, 0xe4, 0xac, 0x14, 0xe7, 0xfa, 0x63, 0xb2, 0x52, 0x95, 0xb0, 0x22, 0x16, 0xeb, 0x12,
-	0xc6, 0x65, 0x1c, 0x8f, 0xa0, 0x2d, 0x40, 0x6c, 0xbe, 0x5e, 0x53, 0xb0, 0x24, 0x66, 0x0b, 0xe2,
-	0x41, 0x51, 0x8a, 0x47, 0x85, 0x1f, 0x38, 0x48, 0x16, 0x8e, 0xb2, 0x96, 0xd1, 0xb1, 0x4c, 0x62,
-	0x3a, 0xb2, 0x79, 0x62, 0xe5, 0x89, 0xb3, 0x80, 0xf5, 0xd1, 0x3e, 0xac, 0x35, 0x3c, 0x18, 0x26,
-	0x1e, 0xf1, 0x8b, 0x5f, 0x1f, 0x08, 0xd0, 0x15, 0xf7, 0x46, 0x57, 0x98, 0x9a, 0x41, 0xa8, 0xc9,
-	0x62, 0x23, 0x62, 0x8a, 0x66, 0x10, 0xe1, 0xd7, 0x08, 0xf0, 0x41, 0x2a, 0xce, 0xc3, 0xeb, 0xc7,
-	0x3e, 0x5e, 0xdf, 0x62, 0xac, 0x84, 0xa2, 0xfa, 0x89, 0x7d, 0x08, 0xb1, 0x81, 0x52, 0x2e, 0xb1,
-	0x6b, 0x14, 0x62, 0x00, 0x80, 0x87, 0x02, 0xb3, 0x31, 0xdb, 0x5b, 0x80, 0xd9, 0x9b, 0xb0, 0xe1,
-	0x8d, 0x65, 0xcb, 0xa5, 0x4a, 0x59, 0x91, 0x94, 0x6a, 0x3c, 0x12, 0x40, 0x78, 0x34, 0x84, 0xf0,
-	0x25, 0xe1, 0xb7, 0x49, 0xc2, 0xd5, 0x37, 0x8b, 0x70, 0x94, 0x81, 0x2b, 0x8d, 0x53, 0xcd, 0x6c,
-	0x11, 0x9b, 0x1a, 0x6e, 0x35, 0x93, 0xa0, 0x88, 0x25, 0xab, 0xa9, 0x9f, 0xe8, 0xda, 0x71, 0x9b,
-	0x0c, 0x8d, 0xee, 0x09, 0x0a, 0xbf, 0x4c, 0x3a, 0x89, 0xfa, 0x5a, 0x9c, 0x44, 0x0d, 0x77, 0x92,
-	0x09, 0xda, 0xa3, 0x01, 0xb4, 0x7f, 0xcf, 0xbd, 0x62, 0xde, 0x9f, 0x89, 0x45, 0x39, 0x57, 0xaf,
-	0x88, 0x58, 0x2c, 0xa9, 0xf1, 0x68, 0x80, 0x2f, 0x2c, 0x85, 0xf8, 0xc2, 0x32, 0xda, 0x84, 0x75,
-	0x55, 0xaa, 0xd6, 0x6b, 0x8a, 0x5a, 0xab, 0x54, 0xca, 0xb8, 0x2a, 0xe5, 0xe2, 0x2b, 0xc2, 0x37,
-	0x51, 0xb8, 0xad, 0x3a, 0x5a, 0xd7, 0x29, 0xf5, 0x43, 0xbe, 0x6e, 0xb6, 0x72, 0x94, 0xf2, 0xf9,
-	0x4c, 0xf9, 0x89, 0xcf, 0x94, 0xf7, 0x3d, 0xa1, 0x30, 0x58, 0xbf, 0x2d, 0x7d, 0x8e, 0x18, 0x9d,
-	0xe6, 0x88, 0x33, 0x5d, 0xb7, 0x97, 0x17, 0xd9, 0x9d, 0x87, 0x2d, 0xd7, 0x48, 0x62, 0x11, 0x4b,
-	0x62, 0xee, 0x79, 0xbd, 0x24, 0x2a, 0x62, 0x5e, 0xca, 0xc5, 0x39, 0xf4, 0x7f, 0xb8, 0x53, 0xae,
-	0x48, 0x58, 0xac, 0xca, 0x65, 0x65, 0x30, 0x2d, 0x2b, 0xf5, 0x0a, 0x2e, 0xe7, 0xb1, 0xa4, 0xaa,
-	0x73, 0x70, 0xc1, 0xc3, 0x96, 0x58, 0xab, 0x16, 0x24, 0xa5, 0x2a, 0x67, 0x19, 0xde, 0xa1, 0x28,
-	0x17, 0x6b, 0xb8, 0xcf, 0xc7, 0x2d, 0xd8, 0x94, 0x95, 0x3e, 0xc1, 0x62, 0x55, 0x3e, 0x28, 0x4a,
-	0x1e, 0xff, 0x2b, 0x42, 0x1a, 0x92, 0xaa, 0x63, 0x75, 0xfc, 0xa6, 0x63, 0x77, 0x16, 0xc1, 0x12,
-	0xbd, 0x4b, 0x1c, 0x3d, 0x35, 0xfd, 0x2d, 0xfc, 0xce, 0x01, 0x1f, 0xb4, 0xe2, 0xf2, 0xd7, 0x21,
-	0x1c, 0x75, 0xa1, 0xeb, 0x90, 0x99, 0xff, 0x36, 0x08, 0x06, 0x6c, 0x50, 0x0d, 0x48, 0x93, 0x29,
-	0xd0, 0xbf, 0x96, 0xe8, 0x21, 0x2c, 0xe9, 0xe6, 0x89, 0xe5, 0x86, 0xac, 0xf0, 0x88, 0x41, 0xa5,
-	0xfc, 0xee, 0x15, 0x99, 0x56, 0x56, 0xfc, 0xc9, 0xc1, 0xd6, 0xd8, 0x7e, 0xf6, 0x7c, 0x76, 0x7c,
-	0xdf, 0x67, 0x47, 0x81, 0xe9, 0x16, 0x88, 0xe8, 0xb7, 0xe1, 0x3e, 0x5c, 0x61, 0x9a, 0xd8, 0x89,
-	0xe8, 0x6e, 0x74, 0x6f, 0x35, 0xb3, 0x35, 0xb9, 0xb8, 0x7f, 0x7c, 0xec, 0x89, 0xcd, 0x62, 0x50,
-	0x9f, 0x4f, 0x72, 0xc2, 0x77, 0x1c, 0x24, 0x55, 0xe2, 0x14, 0xad, 0x56, 0x9f, 0x55, 0xc9, 0x6c,
-	0x76, 0x2c, 0xdd, 0x5c, 0x28, 0x27, 0x3c, 0x80, 0x78, 0x9b, 0xa1, 0xd4, 0x89, 0x0b, 0x43, 0x4f,
-	0x1d, 0xc3, 0xeb, 0xed, 0x71, 0xf4, 0x51, 0x51, 0x5a, 0x06, 0x36, 0x2c, 0xcf, 0x43, 0x3c, 0xd1,
-	0x8a, 0x3b, 0x2c, 0xfc, 0x15, 0xa1, 0xfa, 0x61, 0x62, 0x58, 0x0e, 0x19, 0xaa, 0x77, 0xf9, 0xc2,
-	0x2e, 0x14, 0x74, 0x21, 0x5f, 0x7e, 0xc9, 0xbd, 0xa2, 0x62, 0x8d, 0x87, 0xad, 0x62, 0x39, 0x9f,
-	0x97, 0x95, 0x7c, 0x5d, 0x52, 0x72, 0x95, 0xb2, 0xac, 0x54, 0x07, 0x79, 0xfd, 0x2e, 0xec, 0x4c,
-	0xcc, 0x55, 0x70, 0xb9, 0x5a, 0xce, 0x96, 0x87, 0x41, 0x26, 0x09, 0x37, 0x4b, 0x6a, 0xfe, 0xa0,
-	0xa6, 0xfa, 0xd7, 0x2f, 0x87, 0xe4, 0x82, 0x15, 0xe1, 0x8f, 0x08, 0xf0, 0xf9, 0x00, 0x1f, 0xb8,
-	0x7c, 0xc4, 0x08, 0x47, 0xf5, 0x5b, 0x39, 0xc8, 0x7b, 0xa2, 0xb3, 0x7b, 0xcf, 0x52, 0xa0, 0xf7,
-	0x4c, 0x72, 0xb7, 0xfc, 0x1f, 0xd4, 0xd9, 0x59, 0x48, 0xa8, 0xc4, 0x29, 0xd9, 0xad, 0x83, 0x9e,
-	0xed, 0xbf, 0x60, 0xf7, 0x61, 0xdd, 0xb0, 0x5b, 0xc7, 0x3d, 0x7b, 0x78, 0x6a, 0x16, 0xcb, 0xd7,
-	0xd8, 0xb0, 0x27, 0x2f, 0x7c, 0x1b, 0x81, 0x64, 0x7e, 0x12, 0xe5, 0xf2, 0xf7, 0x20, 0x14, 0xd4,
-	0xcf, 0x50, 0x80, 0xaa, 0xd1, 0x20, 0x55, 0x67, 0xcb, 0xc9, 0x9f, 0xcd, 0x1f, 0xab, 0x42, 0x0c,
-	0x1c, 0x11, 0x9e, 0x43, 0x5c, 0x32, 0x1d, 0xdd, 0xd1, 0x89, 0x5d, 0xb4, 0x5a, 0x45, 0x72, 0x46,
-	0xda, 0xe8, 0x01, 0x5c, 0x6d, 0xbb, 0xbf, 0x5d, 0x9b, 0xb0, 0xd7, 0x98, 0x27, 0x80, 0x07, 0xd3,
-	0x88, 0x87, 0xab, 0xc4, 0x5d, 0x9e, 0x88, 0xec, 0x46, 0xf7, 0x62, 0x78, 0xf0, 0x2d, 0xf4, 0x00,
-	0xb1, 0xe8, 0xc8, 0x16, 0x2d, 0x10, 0x16, 0x1f, 0x43, 0xac, 0xdd, 0x7f, 0xff, 0x9e, 0x91, 0x36,
-	0x83, 0x5f, 0xcd, 0xdc, 0xa4, 0x92, 0x7e, 0x95, 0xf1, 0x50, 0x4e, 0xf8, 0x39, 0x02, 0x9b, 0x63,
-	0xfb, 0xba, 0x3c, 0xcf, 0xb3, 0xf1, 0xd0, 0x27, 0x22, 0xe1, 0x3e, 0xf1, 0xee, 0xc0, 0x27, 0xa2,
-	0x54, 0x68, 0xc7, 0x8b, 0x8d, 0xfe, 0xad, 0x2f, 0x8c, 0x8a, 0x41, 0x24, 0x9f, 0xbd, 0xba, 0x9b,
-	0xe5, 0xc9, 0x15, 0xcb, 0xfd, 0xe0, 0x57, 0x95, 0xab, 0xcf, 0xa7, 0x3c, 0x74, 0xbe, 0x00, 0x94,
-	0xbf, 0x1c, 0x6b, 0xd3, 0x7c, 0xe2, 0xef, 0x08, 0x6c, 0xe6, 0x2f, 0x49, 0x0e, 0xf3, 0x8a, 0xe2,
-	0x8c, 0x5e, 0xc1, 0xe4, 0x46, 0x18, 0x8d, 0xce, 0xc2, 0xe8, 0xd2, 0x08, 0xa3, 0xf9, 0x05, 0x18,
-	0x5d, 0x7e, 0x83, 0x18, 0x2d, 0x0c, 0x32, 0x54, 0xbf, 0xa4, 0xf3, 0x8c, 0xb4, 0x48, 0xa7, 0xe8,
-	0x43, 0x88, 0x15, 0x88, 0xd6, 0x75, 0x8e, 0x89, 0xe6, 0xa0, 0x34, 0x6c, 0x9e, 0x7a, 0x1f, 0x75,
-	0x5b, 0x6f, 0x99, 0x9a, 0xd3, 0xeb, 0xb2, 0x72, 0xfa, 0x0a, 0x46, 0x83, 0x29, 0xd5, 0x9b, 0x11,
-	0x44, 0xd8, 0xc4, 0xe4, 0xd8, 0xb2, 0x9c, 0xf1, 0x3a, 0x7c, 0x1e, 0x05, 0xfe, 0xe1, 0xe0, 0xc6,
-	0x38, 0xc6, 0x44, 0x10, 0x9f, 0x42, 0xef, 0x13, 0x1f, 0xbd, 0xbb, 0x54, 0x28, 0x08, 0x6f, 0x21,
-	0x7e, 0x5f, 0x73, 0x2e, 0xcc, 0xfc, 0x18, 0x83, 0xa4, 0xa2, 0x39, 0xfa, 0x19, 0x29, 0x1c, 0x95,
-	0x06, 0x7d, 0x45, 0x95, 0xb5, 0x15, 0x91, 0x0a, 0x9b, 0x01, 0xef, 0x44, 0x14, 0x5a, 0xd1, 0xf3,
-	0xbb, 0x17, 0xbd, 0x2d, 0xf7, 0x39, 0x54, 0x03, 0x34, 0xf9, 0x70, 0x41, 0xdb, 0xa1, 0x2f, 0x1a,
-	0xca, 0x28, 0xbf, 0x73, 0xc1, 0x8b, 0x07, 0x15, 0x60, 0xa3, 0x9f, 0x3a, 0xc7, 0x4a, 0x79, 0xb4,
-	0x95, 0x62, 0xcd, 0xce, 0x94, 0xd7, 0xec, 0x4c, 0x49, 0x46, 0xc7, 0x39, 0xe7, 0x6f, 0x4f, 0xa9,
-	0xfb, 0xd1, 0x11, 0xdc, 0xc8, 0x13, 0x67, 0xa2, 0xd1, 0x88, 0xee, 0x84, 0x35, 0x20, 0x99, 0x86,
-	0xdb, 0xd3, 0xfb, 0x93, 0xfb, 0x1c, 0x3a, 0xa2, 0x61, 0xd0, 0xd7, 0xc4, 0x70, 0x4f, 0x1e, 0xda,
-	0xf8, 0x73, 0x4f, 0x1e, 0xde, 0x1f, 0x73, 0x4d, 0x3a, 0x23, 0xb0, 0x7a, 0x01, 0xf0, 0x68, 0xa7,
-	0xa6, 0xea, 0x25, 0xdb, 0xb1, 0x72, 0x6f, 0x7b, 0x24, 0x25, 0x05, 0xbc, 0x51, 0xf8, 0xed, 0xe9,
-	0xe5, 0x3c, 0x3a, 0xf4, 0x92, 0xc1, 0x18, 0xea, 0xfa, 0x58, 0x6f, 0x56, 0xce, 0xf1, 0x3b, 0x17,
-	0x14, 0xac, 0x08, 0xc3, 0xc6, 0x44, 0x19, 0xe7, 0x72, 0x14, 0x56, 0xde, 0x5d, 0xa8, 0xdb, 0x53,
-	0xe6, 0x44, 0xe3, 0x98, 0x61, 0x4e, 0xb4, 0x3d, 0xbd, 0x5e, 0x43, 0x15, 0x2f, 0x2d, 0x8d, 0xc5,
-	0x48, 0x34, 0x76, 0xb0, 0x80, 0xe8, 0xc9, 0x27, 0xc2, 0x32, 0x04, 0xfa, 0x14, 0x56, 0x47, 0x4a,
-	0x01, 0x74, 0x6b, 0xb2, 0x38, 0x18, 0x45, 0x50, 0x83, 0x11, 0xf2, 0x13, 0x08, 0xf9, 0x30, 0x84,
-	0x20, 0x1d, 0x9e, 0xc0, 0xda, 0x20, 0x5e, 0x67, 0x4f, 0x49, 0xe3, 0xab, 0x50, 0xfb, 0xb0, 0xae,
-	0xec, 0x30, 0xb8, 0x67, 0xe1, 0xda, 0x68, 0x5c, 0x74, 0xc3, 0x48, 0x40, 0xf8, 0xe6, 0x93, 0xa1,
-	0x41, 0xf4, 0xe0, 0x83, 0xcf, 0xdf, 0x6b, 0xe9, 0xce, 0x69, 0xef, 0x38, 0xd5, 0xb0, 0x8c, 0xb4,
-	0xd5, 0x21, 0x66, 0xc3, 0xea, 0x36, 0xd3, 0x2c, 0x9e, 0x3f, 0x1a, 0xfe, 0x35, 0xf2, 0x48, 0x37,
-	0x1d, 0xd2, 0x3d, 0xd1, 0x1a, 0x24, 0x7d, 0xf6, 0x38, 0xdd, 0xb2, 0xd2, 0x4d, 0x43, 0x3f, 0x5e,
-	0xa1, 0x1a, 0x3e, 0xfe, 0x37, 0x00, 0x00, 0xff, 0xff, 0x4a, 0x85, 0x2d, 0x68, 0x4a, 0x19, 0x00,
-	0x00,
+	// 1726 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xcd, 0x6f, 0xe3, 0xc6,
+	0x15, 0x2f, 0x29, 0xdb, 0x1b, 0x3d, 0xef, 0x7a, 0xe5, 0xf1, 0xda, 0x91, 0xb8, 0x88, 0xed, 0xe5,
+	0x22, 0xcd, 0xa6, 0x4d, 0x24, 0x43, 0x7b, 0x68, 0xb6, 0xe9, 0x17, 0x2d, 0xd1, 0x14, 0x13, 0x89,
+	0x14, 0x86, 0xd2, 0x1a, 0x5b, 0x14, 0x25, 0x68, 0x69, 0x2c, 0x13, 0x15, 0x49, 0x55, 0xa4, 0x1c,
+	0xf8, 0xcf, 0xe8, 0xa1, 0x87, 0x1e, 0x5a, 0xf4, 0x5f, 0xe8, 0x35, 0x28, 0x7a, 0xed, 0xa1, 0xd7,
+	0x1e, 0x0b, 0x14, 0x3d, 0xf5, 0xdc, 0x02, 0xbd, 0x17, 0xe4, 0x90, 0xfa, 0xa0, 0x48, 0x7d, 0x79,
+	0x83, 0xec, 0x4d, 0x9c, 0x79, 0xf3, 0xe3, 0xf0, 0xfd, 0xde, 0xfc, 0xe6, 0xbd, 0x27, 0x38, 0xe9,
+	0x5a, 0x66, 0xe9, 0xe6, 0x2b, 0xdd, 0x32, 0x6c, 0xa3, 0x47, 0x2c, 0x62, 0x7b, 0xba, 0x4b, 0x86,
+	0xb7, 0x66, 0x87, 0x14, 0x07, 0x43, 0xc7, 0x73, 0x50, 0xa6, 0x6b, 0x99, 0xdc, 0xbe, 0x6f, 0xd5,
+	0x71, 0x2c, 0xcb, 0xb1, 0x5d, 0x3a, 0xce, 0x3d, 0xa4, 0x0b, 0xc3, 0xa7, 0xa7, 0x3d, 0xc7, 0xe9,
+	0xf5, 0x49, 0x29, 0x78, 0xba, 0x1a, 0x5d, 0x97, 0x88, 0x35, 0xf0, 0xee, 0xe8, 0x24, 0x7f, 0x01,
+	0xf9, 0xe6, 0xcd, 0x9d, 0x6b, 0x76, 0x8c, 0xbe, 0x6c, 0xdf, 0x12, 0xdb, 0x73, 0x86, 0x77, 0x98,
+	0xfc, 0x7a, 0x44, 0x5c, 0x0f, 0x7d, 0x0f, 0x76, 0xbb, 0xc4, 0x7f, 0x9d, 0x3e, 0x1a, 0x99, 0xdd,
+	0x3c, 0x73, 0xca, 0xbc, 0xd8, 0x2d, 0x67, 0x8b, 0x5d, 0xcb, 0x2c, 0xb6, 0x47, 0x66, 0x17, 0x03,
+	0x9d, 0xf5, 0x7f, 0xf3, 0x7f, 0x62, 0xa1, 0x90, 0x00, 0xe4, 0x0e, 0x1c, 0xdb, 0x25, 0xe8, 0x39,
+	0xec, 0xb8, 0x9e, 0xe1, 0x8d, 0xdc, 0x00, 0x64, 0xaf, 0xbc, 0x1b, 0x80, 0x68, 0xc1, 0x10, 0x0e,
+	0xa7, 0xd0, 0x8f, 0x61, 0x67, 0x48, 0x0c, 0xd7, 0xb1, 0xf3, 0x6c, 0x60, 0xf4, 0x61, 0x60, 0x94,
+	0x0a, 0x5a, 0xc4, 0x81, 0x31, 0x0e, 0x17, 0xa1, 0xef, 0x43, 0xd6, 0x8c, 0x6c, 0xf2, 0x99, 0x60,
+	0xaf, 0x8f, 0x02, 0x84, 0x9a, 0x31, 0xec, 0x7e, 0x65, 0x0c, 0x09, 0x9e, 0xcc, 0xa3, 0xe7, 0xf0,
+	0x88, 0x2e, 0xd3, 0xbb, 0xc4, 0x33, 0xcc, 0x7e, 0x7e, 0xeb, 0x94, 0x79, 0x91, 0xc5, 0x0f, 0xe9,
+	0x60, 0x35, 0x18, 0xe3, 0x7f, 0x09, 0x3b, 0xf4, 0x1d, 0xe8, 0x09, 0xe4, 0xda, 0x4a, 0x55, 0xbc,
+	0x90, 0x15, 0xb1, 0xaa, 0x63, 0x51, 0xd0, 0x54, 0x25, 0xf7, 0x1d, 0x84, 0x60, 0xaf, 0xad, 0x7c,
+	0xa9, 0xa8, 0x97, 0x8a, 0x5e, 0x15, 0x5f, 0xcb, 0x15, 0x31, 0xc7, 0xf8, 0x63, 0xb2, 0xd2, 0x12,
+	0xb1, 0x22, 0xd4, 0x75, 0x11, 0x63, 0x15, 0xe7, 0x58, 0x74, 0x04, 0x88, 0xce, 0xeb, 0x6d, 0x05,
+	0x8b, 0x42, 0xa5, 0x26, 0x9c, 0xd7, 0xc5, 0x5c, 0x86, 0xff, 0x23, 0x03, 0x85, 0xda, 0x65, 0xc5,
+	0xb1, 0x06, 0x8e, 0x4d, 0x6c, 0x4f, 0xb6, 0xaf, 0x1d, 0x89, 0x78, 0x1b, 0x78, 0x1f, 0x9d, 0xc1,
+	0x5e, 0x27, 0x82, 0xa1, 0xe6, 0x6c, 0xdc, 0xfc, 0xd1, 0xd8, 0x20, 0x58, 0xf1, 0xe1, 0xf4, 0x0a,
+	0xdb, 0xb0, 0x48, 0xe0, 0xb2, 0xec, 0x94, 0x99, 0x62, 0x58, 0x84, 0xff, 0x1b, 0x0b, 0x5c, 0xd2,
+	0x16, 0xd7, 0xe1, 0xf5, 0x27, 0x31, 0x5e, 0xbf, 0x4b, 0x59, 0x49, 0x45, 0x8d, 0x13, 0xfb, 0x09,
+	0x64, 0xc7, 0x9b, 0x0a, 0x89, 0xdd, 0x0b, 0x20, 0xc6, 0x00, 0x78, 0x62, 0xb0, 0x1a, 0xb3, 0xa3,
+	0x0d, 0x98, 0x3d, 0x84, 0xfd, 0x68, 0xac, 0xa2, 0x36, 0x9a, 0xaa, 0x22, 0x2a, 0xad, 0x1c, 0x9b,
+	0x40, 0x78, 0x26, 0x85, 0xf0, 0x2d, 0xfe, 0xef, 0xf3, 0x84, 0x6b, 0xef, 0x16, 0xe1, 0xa8, 0x0c,
+	0x0f, 0x3a, 0x37, 0x86, 0xdd, 0x23, 0x6e, 0xe0, 0xb8, 0xdd, 0x72, 0x3e, 0x40, 0x6c, 0x38, 0x5d,
+	0xf3, 0xda, 0x34, 0xae, 0xfa, 0x64, 0xe2, 0xf4, 0xc8, 0x90, 0xff, 0xeb, 0x7c, 0x90, 0x68, 0xdf,
+	0x48, 0x90, 0x68, 0xe9, 0x41, 0x32, 0x47, 0x7b, 0x26, 0x81, 0xf6, 0x3f, 0x30, 0x6f, 0x99, 0xf7,
+	0xd7, 0x42, 0x5d, 0xae, 0xea, 0x4d, 0x01, 0x0b, 0x0d, 0x2d, 0x97, 0x49, 0x88, 0x85, 0xad, 0x94,
+	0x58, 0xd8, 0x46, 0x07, 0xf0, 0x58, 0x13, 0x5b, 0x7a, 0x5b, 0xd1, 0xda, 0xcd, 0xa6, 0x8a, 0x5b,
+	0x62, 0x35, 0xb7, 0xc3, 0xff, 0x26, 0x03, 0x4f, 0x35, 0xcf, 0x18, 0x7a, 0x0d, 0x5f, 0xf2, 0x4d,
+	0xbb, 0x57, 0x0d, 0x28, 0x5f, 0xcf, 0x95, 0x3f, 0x8d, 0xb9, 0xf2, 0xa3, 0xc8, 0x28, 0x0d, 0x36,
+	0xee, 0xcb, 0x58, 0x20, 0x66, 0x16, 0x05, 0xe2, 0x4a, 0xc7, 0xed, 0xeb, 0x65, 0x7e, 0xe7, 0xe0,
+	0x28, 0x74, 0x92, 0x50, 0xc7, 0xa2, 0x50, 0x7d, 0xa3, 0x37, 0x04, 0x45, 0x90, 0xc4, 0x6a, 0x8e,
+	0x41, 0xcf, 0xe0, 0x03, 0xb5, 0x29, 0x62, 0xa1, 0x25, 0xab, 0xca, 0x78, 0x5a, 0x56, 0xf4, 0x26,
+	0x56, 0x25, 0x2c, 0x6a, 0xda, 0x1a, 0x5c, 0x70, 0x70, 0x24, 0xb4, 0x5b, 0x35, 0x51, 0x69, 0xc9,
+	0x15, 0x8a, 0x77, 0x21, 0xc8, 0xf5, 0x36, 0xf6, 0xf9, 0x78, 0x1f, 0x0e, 0x64, 0xc5, 0x27, 0x58,
+	0x68, 0xc9, 0xe7, 0x75, 0x31, 0xe2, 0x7f, 0x87, 0x2f, 0x41, 0x41, 0xf3, 0x9c, 0x41, 0xdc, 0x75,
+	0xf4, 0xcc, 0x22, 0xd8, 0x0a, 0xce, 0x12, 0x13, 0x7c, 0x75, 0xf0, 0x9b, 0xff, 0x2f, 0x03, 0x5c,
+	0xd2, 0x8a, 0xfb, 0x1f, 0x87, 0x74, 0xd4, 0x8d, 0x8e, 0xc3, 0x17, 0x1b, 0x9c, 0x86, 0xe4, 0x70,
+	0x66, 0x79, 0x0b, 0xf6, 0x83, 0x9d, 0x91, 0x2e, 0xdd, 0x98, 0x7f, 0x5c, 0xd1, 0x27, 0xb0, 0x65,
+	0xda, 0xd7, 0x4e, 0x28, 0x65, 0xe9, 0x4a, 0x12, 0x58, 0xc5, 0xc3, 0x8e, 0x5d, 0x94, 0x6e, 0xfc,
+	0x93, 0x81, 0xa3, 0x99, 0xf7, 0xb9, 0xeb, 0xf9, 0xf7, 0x87, 0x31, 0xff, 0xf2, 0x74, 0x6f, 0x89,
+	0x88, 0x71, 0xdf, 0x9e, 0xc1, 0x03, 0xba, 0x13, 0x37, 0x9f, 0x39, 0xcd, 0xbc, 0xd8, 0x2d, 0x1f,
+	0xcd, 0x2f, 0xf6, 0x3f, 0x1f, 0x47, 0x66, 0x7c, 0x79, 0xb9, 0xa3, 0x63, 0xb1, 0xca, 0xf0, 0xbf,
+	0x67, 0xa0, 0xa0, 0x11, 0xaf, 0xee, 0xf4, 0x7c, 0xb6, 0x45, 0xbb, 0x3b, 0x70, 0x4c, 0x7b, 0xa3,
+	0xbb, 0xe2, 0x63, 0xc8, 0xf5, 0x29, 0x8a, 0x4e, 0x42, 0x98, 0xe0, 0xab, 0xb3, 0xf8, 0x71, 0x7f,
+	0x16, 0x7d, 0xda, 0x34, 0x48, 0x0f, 0x3b, 0x4e, 0x14, 0x39, 0x91, 0x69, 0x33, 0x1c, 0xe6, 0xff,
+	0xc5, 0x06, 0xfb, 0xc3, 0xc4, 0x72, 0x3c, 0x32, 0xd9, 0xde, 0xfd, 0x13, 0xbe, 0x54, 0xd0, 0x8d,
+	0x62, 0xfc, 0x6b, 0xe6, 0x2d, 0x25, 0x71, 0x1c, 0x1c, 0xd5, 0x55, 0x49, 0x92, 0x15, 0x49, 0x17,
+	0x95, 0x6a, 0x53, 0x95, 0x95, 0xd6, 0xf8, 0xbe, 0x7f, 0x0e, 0x27, 0x73, 0x73, 0x4d, 0xac, 0xb6,
+	0xd4, 0x8a, 0x3a, 0x11, 0x9f, 0x02, 0x1c, 0x36, 0x34, 0xe9, 0xbc, 0xad, 0xc5, 0xd7, 0x6f, 0xa7,
+	0x1c, 0xaa, 0x1d, 0xfe, 0x1f, 0x2c, 0x70, 0x52, 0x42, 0x0c, 0xdc, 0x5f, 0x49, 0xd2, 0x51, 0xe3,
+	0x5e, 0x4e, 0x8a, 0x9e, 0xcc, 0xea, 0xd1, 0xb3, 0x95, 0x18, 0x3d, 0xf3, 0xdc, 0x6d, 0x7f, 0x0b,
+	0xf9, 0x77, 0x05, 0xf2, 0x1a, 0xf1, 0x1a, 0x6e, 0xef, 0x7c, 0xe4, 0xc6, 0x0f, 0xd8, 0x47, 0xf0,
+	0xd8, 0x72, 0x7b, 0x57, 0x23, 0x77, 0xf2, 0xd5, 0x54, 0xe3, 0xf7, 0xe8, 0x70, 0x64, 0xcf, 0xff,
+	0x8e, 0x85, 0x82, 0x34, 0x8f, 0x72, 0xff, 0x73, 0x90, 0x0a, 0x1a, 0x67, 0x28, 0x61, 0xab, 0x99,
+	0xa4, 0xad, 0xae, 0x76, 0x57, 0x7f, 0xb1, 0xbe, 0x56, 0xa5, 0x5e, 0x0a, 0x6f, 0x20, 0x27, 0xda,
+	0x9e, 0xe9, 0x99, 0xc4, 0xad, 0x3b, 0xbd, 0x3a, 0xb9, 0x25, 0x7d, 0xf4, 0x31, 0xbc, 0xd7, 0x0f,
+	0x7f, 0x87, 0x3e, 0xa1, 0x55, 0x5a, 0x64, 0x80, 0xc7, 0xd3, 0x88, 0x83, 0xf7, 0x48, 0xb8, 0x3c,
+	0xcf, 0x9e, 0x66, 0x5e, 0x64, 0xf1, 0xf8, 0x99, 0x1f, 0x01, 0xa2, 0xea, 0x48, 0x17, 0x6d, 0x20,
+	0x8b, 0x2f, 0x21, 0xdb, 0xf7, 0xeb, 0xe2, 0x5b, 0xd2, 0xa7, 0xf0, 0xbb, 0xe5, 0xc3, 0xc0, 0x32,
+	0xbe, 0x65, 0x3c, 0xb1, 0xe3, 0xff, 0xcc, 0xc2, 0xc1, 0xcc, 0x7b, 0x43, 0x9e, 0xd7, 0x79, 0xf1,
+	0x24, 0x26, 0xd8, 0xf4, 0x98, 0xf8, 0xc1, 0x38, 0x26, 0x32, 0x81, 0xd1, 0x49, 0xa4, 0x8d, 0xf1,
+	0x57, 0x2f, 0x55, 0xc5, 0x24, 0x92, 0x6f, 0xdf, 0xde, 0xc9, 0x8a, 0xec, 0xea, 0xaa, 0x2f, 0x7e,
+	0x2d, 0xb9, 0xf5, 0x66, 0x41, 0x01, 0xf4, 0x0b, 0x40, 0xd2, 0xfd, 0x58, 0x5b, 0x14, 0x13, 0xff,
+	0x61, 0xe1, 0x40, 0xba, 0x27, 0x39, 0x34, 0x2a, 0xea, 0x2b, 0x46, 0x05, 0xb5, 0x9b, 0x62, 0x34,
+	0xb3, 0x0a, 0xa3, 0x5b, 0x53, 0x8c, 0x4a, 0x1b, 0x30, 0xba, 0xfd, 0x0e, 0x31, 0x5a, 0x1b, 0xdf,
+	0x50, 0x7e, 0x4a, 0x17, 0x39, 0x69, 0x93, 0x0e, 0xd2, 0xe7, 0xf0, 0x44, 0x23, 0x5e, 0xd5, 0x8a,
+	0x47, 0xc7, 0x73, 0xd8, 0xee, 0xa7, 0xab, 0x05, 0x9d, 0xe3, 0xff, 0xcd, 0xc0, 0x61, 0x6c, 0xf5,
+	0x3a, 0x0a, 0xfc, 0x2a, 0xa6, 0xc0, 0xcf, 0xa2, 0xd3, 0x36, 0x0f, 0xb8, 0x51, 0x16, 0x22, 0x6f,
+	0x20, 0xaa, 0x53, 0x75, 0xa7, 0xcf, 0x44, 0x5d, 0x7c, 0x2d, 0xd6, 0x73, 0x2c, 0x7f, 0x04, 0x4f,
+	0xa4, 0x04, 0x37, 0xf1, 0xff, 0x63, 0xe0, 0x50, 0x4a, 0xf1, 0xc0, 0x72, 0x07, 0xae, 0x26, 0x4a,
+	0xaf, 0x62, 0xa2, 0xf4, 0x2c, 0x0a, 0xe1, 0x0d, 0xdc, 0x94, 0x24, 0x4b, 0x9b, 0xe4, 0xc9, 0x3f,
+	0x82, 0x6c, 0x8d, 0x18, 0x43, 0xef, 0x8a, 0x18, 0x1e, 0x2a, 0xc1, 0xc1, 0x4d, 0xf4, 0xa0, 0xbb,
+	0x66, 0xcf, 0x36, 0xbc, 0xd1, 0x90, 0x56, 0x67, 0x0f, 0x30, 0x1a, 0x4f, 0x69, 0xd1, 0x0c, 0x2f,
+	0xc0, 0x01, 0x26, 0x57, 0x8e, 0xe3, 0xcd, 0x96, 0x75, 0xeb, 0xc4, 0xed, 0x6f, 0x59, 0x78, 0x32,
+	0x8b, 0x31, 0x17, 0x79, 0x0b, 0x54, 0xe1, 0xb3, 0x98, 0x2a, 0x9c, 0x06, 0x46, 0x49, 0x78, 0x1b,
+	0xc9, 0xc2, 0xdd, 0x37, 0x9b, 0x42, 0xf9, 0x49, 0x6d, 0x38, 0x2e, 0x2b, 0xfa, 0x25, 0x56, 0x15,
+	0x49, 0xd7, 0x5a, 0x42, 0x4b, 0xcc, 0x6d, 0x95, 0xff, 0x02, 0x50, 0x50, 0x0c, 0xcf, 0xbc, 0x25,
+	0xb5, 0xcb, 0xc6, 0xb8, 0x83, 0xad, 0xd1, 0x06, 0x36, 0xd2, 0xe0, 0x20, 0xa1, 0x23, 0x81, 0x52,
+	0x6b, 0x44, 0xee, 0x74, 0x59, 0x17, 0xe3, 0x8c, 0x41, 0x6d, 0x40, 0xf3, 0x25, 0x32, 0x3a, 0x4e,
+	0xad, 0x9d, 0x03, 0xb2, 0xb9, 0x93, 0x25, 0xb5, 0x35, 0xaa, 0xc1, 0xbe, 0x9f, 0x8c, 0xcd, 0x14,
+	0x87, 0xe8, 0xa8, 0x48, 0xdb, 0xea, 0xc5, 0xa8, 0xad, 0x5e, 0x14, 0xad, 0x81, 0x77, 0xc7, 0x3d,
+	0x5d, 0x50, 0x49, 0xa2, 0xcb, 0xe0, 0xf0, 0xce, 0xb5, 0xb4, 0xd1, 0x07, 0x69, 0xad, 0x6e, 0xba,
+	0xc3, 0xe3, 0xc5, 0x9d, 0xf0, 0x33, 0x06, 0x5d, 0x06, 0x17, 0x6b, 0xac, 0x5d, 0x16, 0x7e, 0x79,
+	0x6a, 0x8b, 0x39, 0xfc, 0xf2, 0xf4, 0x4e, 0x6c, 0xe8, 0xd2, 0x15, 0x81, 0xb5, 0x25, 0xc0, 0xd3,
+	0x3d, 0xc1, 0x56, 0x94, 0xbe, 0xcd, 0x14, 0x10, 0xc7, 0x53, 0x49, 0x4e, 0x42, 0xd5, 0xcb, 0x1d,
+	0x2f, 0x2e, 0x10, 0xd1, 0x45, 0x94, 0x5e, 0xcc, 0xa0, 0x3e, 0x9e, 0xf9, 0x17, 0x40, 0xae, 0x72,
+	0x27, 0x4b, 0x4a, 0x20, 0x84, 0x61, 0x7f, 0xae, 0x30, 0x08, 0x39, 0x4a, 0x2b, 0x18, 0x96, 0xee,
+	0xed, 0x4b, 0x1a, 0x44, 0xb3, 0x98, 0x69, 0x41, 0x74, 0xbc, 0xb8, 0x02, 0x40, 0xcd, 0x28, 0xd1,
+	0x99, 0xb9, 0x75, 0xd1, 0xcc, 0x87, 0x25, 0xdc, 0xc7, 0x5c, 0x3e, 0x2d, 0xe7, 0x40, 0x3f, 0x83,
+	0xdd, 0xa9, 0xe4, 0x12, 0xbd, 0x3f, 0x9f, 0x6e, 0x4e, 0x23, 0x68, 0xc9, 0x08, 0xd2, 0x1c, 0x82,
+	0x94, 0x86, 0x90, 0xb4, 0x87, 0xcf, 0x60, 0x6f, 0x2c, 0xe5, 0x95, 0x1b, 0xd2, 0xf9, 0x55, 0xaa,
+	0x7f, 0x68, 0xff, 0x7f, 0xa2, 0xfb, 0x15, 0x78, 0x38, 0x2d, 0x99, 0xa1, 0x8c, 0x24, 0x28, 0x3b,
+	0x57, 0x48, 0xd5, 0x57, 0x74, 0x01, 0x8f, 0x66, 0x6e, 0x7c, 0x54, 0x48, 0xca, 0x02, 0x28, 0x0c,
+	0x97, 0x9e, 0x20, 0xf8, 0x38, 0x52, 0x02, 0x8e, 0x94, 0x8e, 0x93, 0x78, 0x83, 0x9e, 0x7f, 0xfe,
+	0xf3, 0x57, 0x3d, 0xd3, 0xbb, 0x19, 0x5d, 0x15, 0x3b, 0x8e, 0x55, 0x72, 0x06, 0xc4, 0xee, 0x38,
+	0xc3, 0x6e, 0x89, 0x5e, 0x3d, 0x9f, 0x4e, 0xfe, 0x14, 0xfc, 0xd4, 0xb4, 0x3d, 0x32, 0xbc, 0x36,
+	0x3a, 0xa4, 0x74, 0xfb, 0xb2, 0xd4, 0x73, 0x4a, 0x5d, 0xcb, 0xbc, 0xda, 0x09, 0x3c, 0xf6, 0xf2,
+	0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0xe8, 0x0a, 0x35, 0x98, 0x44, 0x1c, 0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
@@ -1961,6 +2223,10 @@
 	HeartbeatCheck(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Heartbeat, error)
 	// Performs the reboot of the device
 	RebootDevice(ctx context.Context, in *RebootDeviceRequest, opts ...grpc.CallOption) (*RebootDeviceResponse, error)
+	// Sets the log level of the Device Manager itself
+	SetDmLogLevel(ctx context.Context, in *SetDmLogLevelRequest, opts ...grpc.CallOption) (*SetDmLogLevelResponse, error)
+	// Gets the log level at which the Device Manager is running
+	GetDmLogLevel(ctx context.Context, in *GetDmLogLevelRequest, opts ...grpc.CallOption) (*GetDmLogLevelResponse, error)
 }
 
 type nativeHWManagementServiceClient struct {
@@ -2175,6 +2441,24 @@
 	return out, nil
 }
 
+func (c *nativeHWManagementServiceClient) SetDmLogLevel(ctx context.Context, in *SetDmLogLevelRequest, opts ...grpc.CallOption) (*SetDmLogLevelResponse, error) {
+	out := new(SetDmLogLevelResponse)
+	err := c.cc.Invoke(ctx, "/dmi.NativeHWManagementService/SetDmLogLevel", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *nativeHWManagementServiceClient) GetDmLogLevel(ctx context.Context, in *GetDmLogLevelRequest, opts ...grpc.CallOption) (*GetDmLogLevelResponse, error) {
+	out := new(GetDmLogLevelResponse)
+	err := c.cc.Invoke(ctx, "/dmi.NativeHWManagementService/GetDmLogLevel", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 // NativeHWManagementServiceServer is the server API for NativeHWManagementService service.
 type NativeHWManagementServiceServer interface {
 	// Initializes context for a device and sets up required states
@@ -2222,6 +2506,10 @@
 	HeartbeatCheck(context.Context, *empty.Empty) (*Heartbeat, error)
 	// Performs the reboot of the device
 	RebootDevice(context.Context, *RebootDeviceRequest) (*RebootDeviceResponse, error)
+	// Sets the log level of the Device Manager itself
+	SetDmLogLevel(context.Context, *SetDmLogLevelRequest) (*SetDmLogLevelResponse, error)
+	// Gets the log level at which the Device Manager is running
+	GetDmLogLevel(context.Context, *GetDmLogLevelRequest) (*GetDmLogLevelResponse, error)
 }
 
 // UnimplementedNativeHWManagementServiceServer can be embedded to have forward compatible implementations.
@@ -2273,6 +2561,12 @@
 func (*UnimplementedNativeHWManagementServiceServer) RebootDevice(ctx context.Context, req *RebootDeviceRequest) (*RebootDeviceResponse, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method RebootDevice not implemented")
 }
+func (*UnimplementedNativeHWManagementServiceServer) SetDmLogLevel(ctx context.Context, req *SetDmLogLevelRequest) (*SetDmLogLevelResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method SetDmLogLevel not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) GetDmLogLevel(ctx context.Context, req *GetDmLogLevelRequest) (*GetDmLogLevelResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetDmLogLevel not implemented")
+}
 
 func RegisterNativeHWManagementServiceServer(s *grpc.Server, srv NativeHWManagementServiceServer) {
 	s.RegisterService(&_NativeHWManagementService_serviceDesc, srv)
@@ -2557,6 +2851,42 @@
 	return interceptor(ctx, in, info, handler)
 }
 
+func _NativeHWManagementService_SetDmLogLevel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SetDmLogLevelRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(NativeHWManagementServiceServer).SetDmLogLevel(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/dmi.NativeHWManagementService/SetDmLogLevel",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(NativeHWManagementServiceServer).SetDmLogLevel(ctx, req.(*SetDmLogLevelRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _NativeHWManagementService_GetDmLogLevel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(GetDmLogLevelRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(NativeHWManagementServiceServer).GetDmLogLevel(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/dmi.NativeHWManagementService/GetDmLogLevel",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(NativeHWManagementServiceServer).GetDmLogLevel(ctx, req.(*GetDmLogLevelRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 var _NativeHWManagementService_serviceDesc = grpc.ServiceDesc{
 	ServiceName: "dmi.NativeHWManagementService",
 	HandlerType: (*NativeHWManagementServiceServer)(nil),
@@ -2609,6 +2939,14 @@
 			MethodName: "RebootDevice",
 			Handler:    _NativeHWManagementService_RebootDevice_Handler,
 		},
+		{
+			MethodName: "SetDmLogLevel",
+			Handler:    _NativeHWManagementService_SetDmLogLevel_Handler,
+		},
+		{
+			MethodName: "GetDmLogLevel",
+			Handler:    _NativeHWManagementService_GetDmLogLevel_Handler,
+		},
 	},
 	Streams: []grpc.StreamDesc{
 		{
diff --git a/vendor/github.com/opencord/device-management-interface/go/dmi/sw_management_service.pb.go b/vendor/github.com/opencord/device-management-interface/go/dmi/sw_management_service.pb.go
index db176be..74be5d0 100644
--- a/vendor/github.com/opencord/device-management-interface/go/dmi/sw_management_service.pb.go
+++ b/vendor/github.com/opencord/device-management-interface/go/dmi/sw_management_service.pb.go
@@ -126,6 +126,92 @@
 	return fileDescriptor_000929e4bec891d7, []int{6, 0}
 }
 
+type UploadDebugInfoStatus_UploadStatus int32
+
+const (
+	UploadDebugInfoStatus_UNDEFINED_UPLOAD_STATUS UploadDebugInfoStatus_UploadStatus = 0
+	UploadDebugInfoStatus_COMPLETE                UploadDebugInfoStatus_UploadStatus = 1
+	UploadDebugInfoStatus_IN_PROGRESS             UploadDebugInfoStatus_UploadStatus = 2
+	UploadDebugInfoStatus_ERROR                   UploadDebugInfoStatus_UploadStatus = 3
+)
+
+var UploadDebugInfoStatus_UploadStatus_name = map[int32]string{
+	0: "UNDEFINED_UPLOAD_STATUS",
+	1: "COMPLETE",
+	2: "IN_PROGRESS",
+	3: "ERROR",
+}
+
+var UploadDebugInfoStatus_UploadStatus_value = map[string]int32{
+	"UNDEFINED_UPLOAD_STATUS": 0,
+	"COMPLETE":                1,
+	"IN_PROGRESS":             2,
+	"ERROR":                   3,
+}
+
+func (x UploadDebugInfoStatus_UploadStatus) String() string {
+	return proto.EnumName(UploadDebugInfoStatus_UploadStatus_name, int32(x))
+}
+
+func (UploadDebugInfoStatus_UploadStatus) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_000929e4bec891d7, []int{8, 0}
+}
+
+type UploadDebugInfoStatus_Reason int32
+
+const (
+	UploadDebugInfoStatus_UNDEFINED_REASON UploadDebugInfoStatus_Reason = 0
+	UploadDebugInfoStatus_UNKNOWN_DEVICE   UploadDebugInfoStatus_Reason = 1
+	UploadDebugInfoStatus_INTERNAL_ERROR   UploadDebugInfoStatus_Reason = 2
+	// The DM implementations should have retry mechanisms (timeout values dependant on specific implementations)
+	// and even after those if the operation cannot be completed/reached then return error with reason as DEVICE_NOT_REACHABLE
+	UploadDebugInfoStatus_DEVICE_NOT_REACHABLE              UploadDebugInfoStatus_Reason = 3
+	UploadDebugInfoStatus_REMOTE_LOCATION_UNREACHABLE       UploadDebugInfoStatus_Reason = 4
+	UploadDebugInfoStatus_REMOTE_LOCATION_PERMISSION_DENIED UploadDebugInfoStatus_Reason = 5
+	UploadDebugInfoStatus_ERROR_DURING_UPLOAD               UploadDebugInfoStatus_Reason = 6
+	UploadDebugInfoStatus_DEVICE_BUSY                       UploadDebugInfoStatus_Reason = 7
+	// wrong location_url in the request
+	UploadDebugInfoStatus_ERROR_IN_REQUEST              UploadDebugInfoStatus_Reason = 8
+	UploadDebugInfoStatus_DEVICE_IN_WRONG_STATE         UploadDebugInfoStatus_Reason = 9
+	UploadDebugInfoStatus_OPERATION_ALREADY_IN_PROGRESS UploadDebugInfoStatus_Reason = 10
+)
+
+var UploadDebugInfoStatus_Reason_name = map[int32]string{
+	0:  "UNDEFINED_REASON",
+	1:  "UNKNOWN_DEVICE",
+	2:  "INTERNAL_ERROR",
+	3:  "DEVICE_NOT_REACHABLE",
+	4:  "REMOTE_LOCATION_UNREACHABLE",
+	5:  "REMOTE_LOCATION_PERMISSION_DENIED",
+	6:  "ERROR_DURING_UPLOAD",
+	7:  "DEVICE_BUSY",
+	8:  "ERROR_IN_REQUEST",
+	9:  "DEVICE_IN_WRONG_STATE",
+	10: "OPERATION_ALREADY_IN_PROGRESS",
+}
+
+var UploadDebugInfoStatus_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":                  0,
+	"UNKNOWN_DEVICE":                    1,
+	"INTERNAL_ERROR":                    2,
+	"DEVICE_NOT_REACHABLE":              3,
+	"REMOTE_LOCATION_UNREACHABLE":       4,
+	"REMOTE_LOCATION_PERMISSION_DENIED": 5,
+	"ERROR_DURING_UPLOAD":               6,
+	"DEVICE_BUSY":                       7,
+	"ERROR_IN_REQUEST":                  8,
+	"DEVICE_IN_WRONG_STATE":             9,
+	"OPERATION_ALREADY_IN_PROGRESS":     10,
+}
+
+func (x UploadDebugInfoStatus_Reason) String() string {
+	return proto.EnumName(UploadDebugInfoStatus_Reason_name, int32(x))
+}
+
+func (UploadDebugInfoStatus_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_000929e4bec891d7, []int{8, 1}
+}
+
 type SoftwareVersionInformation struct {
 	ActiveVersions       []*ImageVersion `protobuf:"bytes,1,rep,name=active_versions,json=activeVersions,proto3" json:"active_versions,omitempty"`
 	StandbyVersions      []*ImageVersion `protobuf:"bytes,2,rep,name=standby_versions,json=standbyVersions,proto3" json:"standby_versions,omitempty"`
@@ -503,10 +589,150 @@
 	return ""
 }
 
+type UploadDebugInfoRequest struct {
+	DeviceUuid *Uuid `protobuf:"bytes,1,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
+	// location_url is the remote location where the information needed for troubleshooting should be uploaded.
+	// Authentication (user/pass) if any should be in the location_url string
+	// The locaion_url would contain the protocol, credentials, the IP address/DNS of the server and the path of the directory
+	// e.g. sftp://upload_user:upload_pass@192.168.0.1:22/hw_debug_info/
+	LocationUrl          string   `protobuf:"bytes,3,opt,name=location_url,json=locationUrl,proto3" json:"location_url,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
+}
+
+func (m *UploadDebugInfoRequest) Reset()         { *m = UploadDebugInfoRequest{} }
+func (m *UploadDebugInfoRequest) String() string { return proto.CompactTextString(m) }
+func (*UploadDebugInfoRequest) ProtoMessage()    {}
+func (*UploadDebugInfoRequest) Descriptor() ([]byte, []int) {
+	return fileDescriptor_000929e4bec891d7, []int{7}
+}
+
+func (m *UploadDebugInfoRequest) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_UploadDebugInfoRequest.Unmarshal(m, b)
+}
+func (m *UploadDebugInfoRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_UploadDebugInfoRequest.Marshal(b, m, deterministic)
+}
+func (m *UploadDebugInfoRequest) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_UploadDebugInfoRequest.Merge(m, src)
+}
+func (m *UploadDebugInfoRequest) XXX_Size() int {
+	return xxx_messageInfo_UploadDebugInfoRequest.Size(m)
+}
+func (m *UploadDebugInfoRequest) XXX_DiscardUnknown() {
+	xxx_messageInfo_UploadDebugInfoRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UploadDebugInfoRequest proto.InternalMessageInfo
+
+func (m *UploadDebugInfoRequest) GetDeviceUuid() *Uuid {
+	if m != nil {
+		return m.DeviceUuid
+	}
+	return nil
+}
+
+func (m *UploadDebugInfoRequest) GetLocationUrl() string {
+	if m != nil {
+		return m.LocationUrl
+	}
+	return ""
+}
+
+// Implementations would be expected to stream multiple UploadDebugInfoStatus indicating the progress of the upload
+type UploadDebugInfoStatus struct {
+	DeviceUuid *Uuid                              `protobuf:"bytes,1,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
+	Status     UploadDebugInfoStatus_UploadStatus `protobuf:"varint,2,opt,name=status,proto3,enum=dmi.UploadDebugInfoStatus_UploadStatus" json:"status,omitempty"`
+	// percent_uploaded is the percentage of the upload that is done
+	// should be a value between 0 and 100 when status is IN_PROGRESS
+	// should be 100 when status is COMPLETE
+	// can be set to -1 if the device manager implementations cannot support
+	// the progress percentage
+	PercentUploaded int32                        `protobuf:"varint,3,opt,name=percent_uploaded,json=percentUploaded,proto3" json:"percent_uploaded,omitempty"`
+	Reason          UploadDebugInfoStatus_Reason `protobuf:"varint,4,opt,name=reason,proto3,enum=dmi.UploadDebugInfoStatus_Reason" json:"reason,omitempty"`
+	LocationUrl     string                       `protobuf:"bytes,5,opt,name=location_url,json=locationUrl,proto3" json:"location_url,omitempty"`
+	// file_name is the file at location_url where the debug information was uploaded.
+	// Implementations need to ensure that file_name is unique at the remote location.
+	FileName             string   `protobuf:"bytes,6,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
+}
+
+func (m *UploadDebugInfoStatus) Reset()         { *m = UploadDebugInfoStatus{} }
+func (m *UploadDebugInfoStatus) String() string { return proto.CompactTextString(m) }
+func (*UploadDebugInfoStatus) ProtoMessage()    {}
+func (*UploadDebugInfoStatus) Descriptor() ([]byte, []int) {
+	return fileDescriptor_000929e4bec891d7, []int{8}
+}
+
+func (m *UploadDebugInfoStatus) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_UploadDebugInfoStatus.Unmarshal(m, b)
+}
+func (m *UploadDebugInfoStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_UploadDebugInfoStatus.Marshal(b, m, deterministic)
+}
+func (m *UploadDebugInfoStatus) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_UploadDebugInfoStatus.Merge(m, src)
+}
+func (m *UploadDebugInfoStatus) XXX_Size() int {
+	return xxx_messageInfo_UploadDebugInfoStatus.Size(m)
+}
+func (m *UploadDebugInfoStatus) XXX_DiscardUnknown() {
+	xxx_messageInfo_UploadDebugInfoStatus.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UploadDebugInfoStatus proto.InternalMessageInfo
+
+func (m *UploadDebugInfoStatus) GetDeviceUuid() *Uuid {
+	if m != nil {
+		return m.DeviceUuid
+	}
+	return nil
+}
+
+func (m *UploadDebugInfoStatus) GetStatus() UploadDebugInfoStatus_UploadStatus {
+	if m != nil {
+		return m.Status
+	}
+	return UploadDebugInfoStatus_UNDEFINED_UPLOAD_STATUS
+}
+
+func (m *UploadDebugInfoStatus) GetPercentUploaded() int32 {
+	if m != nil {
+		return m.PercentUploaded
+	}
+	return 0
+}
+
+func (m *UploadDebugInfoStatus) GetReason() UploadDebugInfoStatus_Reason {
+	if m != nil {
+		return m.Reason
+	}
+	return UploadDebugInfoStatus_UNDEFINED_REASON
+}
+
+func (m *UploadDebugInfoStatus) GetLocationUrl() string {
+	if m != nil {
+		return m.LocationUrl
+	}
+	return ""
+}
+
+func (m *UploadDebugInfoStatus) GetFileName() string {
+	if m != nil {
+		return m.FileName
+	}
+	return ""
+}
+
 func init() {
 	proto.RegisterEnum("dmi.GetSoftwareVersionInformationResponse_Reason", GetSoftwareVersionInformationResponse_Reason_name, GetSoftwareVersionInformationResponse_Reason_value)
 	proto.RegisterEnum("dmi.ConfigResponse_Reason", ConfigResponse_Reason_name, ConfigResponse_Reason_value)
 	proto.RegisterEnum("dmi.StartupConfigInfoResponse_Reason", StartupConfigInfoResponse_Reason_name, StartupConfigInfoResponse_Reason_value)
+	proto.RegisterEnum("dmi.UploadDebugInfoStatus_UploadStatus", UploadDebugInfoStatus_UploadStatus_name, UploadDebugInfoStatus_UploadStatus_value)
+	proto.RegisterEnum("dmi.UploadDebugInfoStatus_Reason", UploadDebugInfoStatus_Reason_name, UploadDebugInfoStatus_Reason_value)
 	proto.RegisterType((*SoftwareVersionInformation)(nil), "dmi.SoftwareVersionInformation")
 	proto.RegisterType((*GetSoftwareVersionInformationResponse)(nil), "dmi.GetSoftwareVersionInformationResponse")
 	proto.RegisterType((*DownloadImageRequest)(nil), "dmi.DownloadImageRequest")
@@ -514,63 +740,83 @@
 	proto.RegisterType((*ConfigResponse)(nil), "dmi.ConfigResponse")
 	proto.RegisterType((*StartupConfigInfoRequest)(nil), "dmi.StartupConfigInfoRequest")
 	proto.RegisterType((*StartupConfigInfoResponse)(nil), "dmi.StartupConfigInfoResponse")
+	proto.RegisterType((*UploadDebugInfoRequest)(nil), "dmi.UploadDebugInfoRequest")
+	proto.RegisterType((*UploadDebugInfoStatus)(nil), "dmi.UploadDebugInfoStatus")
 }
 
 func init() { proto.RegisterFile("dmi/sw_management_service.proto", fileDescriptor_000929e4bec891d7) }
 
 var fileDescriptor_000929e4bec891d7 = []byte{
-	// 804 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0xed, 0x6e, 0xe3, 0x44,
-	0x14, 0xc5, 0x71, 0x37, 0x28, 0x37, 0xdb, 0xd6, 0x3b, 0x74, 0x51, 0x1a, 0x54, 0x5a, 0xbc, 0x5a,
-	0xa9, 0x5a, 0x69, 0x93, 0x25, 0xdd, 0x3f, 0xb0, 0x80, 0xe4, 0x8d, 0xdd, 0xd4, 0xa2, 0x38, 0xcb,
-	0xb8, 0x29, 0x62, 0x85, 0x18, 0x4d, 0xe3, 0x49, 0x76, 0xa4, 0xda, 0x13, 0xec, 0x71, 0x0a, 0x2f,
-	0xc2, 0x73, 0xf0, 0x02, 0xfc, 0xe0, 0x05, 0x90, 0x78, 0x23, 0xe4, 0x19, 0x87, 0x90, 0x2f, 0xb4,
-	0xad, 0xd0, 0xfe, 0xb3, 0xef, 0xdc, 0x73, 0x66, 0xe6, 0x9e, 0x7b, 0xcf, 0xc0, 0x61, 0x14, 0xf3,
-	0x76, 0x76, 0x43, 0x62, 0x9a, 0xd0, 0x31, 0x8b, 0x59, 0x22, 0x49, 0xc6, 0xd2, 0x29, 0x1f, 0xb2,
-	0xd6, 0x24, 0x15, 0x52, 0x20, 0x33, 0x8a, 0x79, 0xf3, 0x41, 0x91, 0x35, 0x14, 0x71, 0x2c, 0x92,
-	0x4c, 0xc7, 0x9b, 0xf7, 0x8b, 0xd0, 0x9b, 0x9b, 0xf2, 0x0f, 0x95, 0x34, 0x3c, 0xa6, 0xe3, 0x12,
-	0x69, 0xff, 0x6a, 0x40, 0x33, 0x14, 0x23, 0x79, 0x43, 0x53, 0x76, 0xc9, 0xd2, 0x8c, 0x8b, 0xc4,
-	0x4f, 0x46, 0x22, 0x8d, 0xa9, 0xe4, 0x22, 0x41, 0x9f, 0xc3, 0x2e, 0x1d, 0x4a, 0x3e, 0x65, 0x64,
-	0xaa, 0x17, 0xb3, 0x86, 0x71, 0x64, 0x1e, 0xd7, 0x3b, 0x0f, 0x5a, 0x51, 0xcc, 0x5b, 0x7e, 0xc1,
-	0x54, 0xc2, 0xf0, 0x8e, 0xce, 0x2c, 0x7f, 0x33, 0xf4, 0x05, 0x58, 0x99, 0xa4, 0x49, 0x74, 0xf5,
-	0xcb, 0x1c, 0x5c, 0xd9, 0x04, 0xde, 0x2d, 0x53, 0x67, 0x68, 0xfb, 0xaf, 0x0a, 0x3c, 0xee, 0x31,
-	0xb9, 0xf9, 0x6c, 0x98, 0x65, 0x13, 0x91, 0x64, 0x0c, 0x3d, 0x82, 0x6a, 0x26, 0xa9, 0xcc, 0x8b,
-	0xa3, 0x19, 0xc7, 0x3b, 0x9d, 0xba, 0x62, 0x0f, 0x55, 0x08, 0x97, 0x4b, 0xc8, 0x87, 0x6a, 0xca,
-	0x68, 0x26, 0x92, 0x46, 0x45, 0x25, 0x7d, 0xaa, 0x92, 0xde, 0x6a, 0x83, 0x16, 0x56, 0x40, 0x5c,
-	0x12, 0xa0, 0x13, 0xd8, 0xe2, 0xc9, 0x48, 0x34, 0xcc, 0x23, 0xe3, 0xb8, 0xde, 0x39, 0xd4, 0xbb,
-	0x6d, 0x66, 0x51, 0xc9, 0xe8, 0x11, 0x6c, 0x6b, 0x38, 0x89, 0x98, 0xa4, 0xfc, 0xba, 0xb1, 0x75,
-	0x64, 0x1c, 0xd7, 0xf0, 0x7d, 0x1d, 0x74, 0x55, 0xcc, 0xfe, 0x11, 0xaa, 0x7a, 0x2f, 0xb4, 0x07,
-	0xd6, 0x20, 0x70, 0xbd, 0x53, 0x3f, 0xf0, 0x5c, 0x82, 0x3d, 0x27, 0xec, 0x07, 0xd6, 0x7b, 0x08,
-	0xc1, 0xce, 0x20, 0xf8, 0x3a, 0xe8, 0x7f, 0x17, 0x10, 0xd7, 0xbb, 0xf4, 0xbb, 0x9e, 0x65, 0x14,
-	0x31, 0x3f, 0xb8, 0xf0, 0x70, 0xe0, 0x9c, 0x13, 0x0f, 0xe3, 0x3e, 0xb6, 0x2a, 0xe8, 0x43, 0x40,
-	0x7a, 0x9d, 0x0c, 0x02, 0xec, 0x39, 0xdd, 0x33, 0xe7, 0xe5, 0xb9, 0x67, 0x99, 0xf6, 0xcf, 0xb0,
-	0xe7, 0x8a, 0x9b, 0xe4, 0x5a, 0xd0, 0x48, 0x15, 0x1f, 0xb3, 0x9f, 0x72, 0x96, 0x49, 0xf4, 0x04,
-	0xea, 0x11, 0x2b, 0xda, 0x89, 0xe4, 0x39, 0x8f, 0x54, 0x19, 0xeb, 0x9d, 0x9a, 0xba, 0xd8, 0x20,
-	0xe7, 0x11, 0x06, 0xbd, 0x5a, 0x7c, 0xa3, 0xe7, 0x00, 0xaa, 0x7f, 0x88, 0xaa, 0x41, 0x45, 0xa5,
-	0x3e, 0x9c, 0xeb, 0xf9, 0xef, 0x9b, 0xd7, 0xf8, 0x2c, 0x62, 0xbf, 0x86, 0xed, 0xae, 0x48, 0x46,
-	0x7c, 0x7c, 0x97, 0x2d, 0x0f, 0x00, 0x86, 0x0a, 0x4c, 0xf2, 0xf4, 0x5a, 0x6d, 0x59, 0xc3, 0x35,
-	0x1d, 0x19, 0xa4, 0xd7, 0xf6, 0x1f, 0x15, 0xd8, 0x99, 0x91, 0xdf, 0xa6, 0x25, 0x3a, 0x4b, 0x2d,
-	0xd1, 0x54, 0x49, 0x8b, 0x4c, 0xcb, 0xda, 0xaf, 0xc8, 0x68, 0xae, 0x91, 0xf1, 0x37, 0xe3, 0x7f,
-	0xd2, 0x71, 0x1f, 0x1e, 0xaa, 0x4f, 0x72, 0xea, 0x5d, 0x74, 0xcf, 0xfc, 0xa0, 0x47, 0xba, 0xfd,
-	0xe0, 0xd4, 0xef, 0x59, 0xa6, 0x4e, 0xbf, 0x74, 0xce, 0x7d, 0x77, 0x16, 0xdb, 0x42, 0x9f, 0xc0,
-	0x41, 0xff, 0x95, 0x87, 0x9d, 0x0b, 0xbf, 0x1f, 0x10, 0xe7, 0x1c, 0x7b, 0x8e, 0xfb, 0x3d, 0xf1,
-	0x03, 0xf2, 0x0a, 0xf7, 0x7b, 0xd8, 0x0b, 0x43, 0xeb, 0xde, 0x86, 0xce, 0xa8, 0xda, 0xa7, 0xd0,
-	0x08, 0x25, 0x4d, 0x65, 0x3e, 0xd1, 0xf7, 0x2f, 0x44, 0xbb, 0x83, 0x54, 0xf6, 0xef, 0x15, 0xd8,
-	0x5f, 0x43, 0x74, 0x1b, 0x59, 0xbe, 0x5c, 0x92, 0xe5, 0xf1, 0x2c, 0x69, 0x3d, 0xe9, 0xb2, 0x42,
-	0x8b, 0xcd, 0x62, 0x2e, 0x35, 0x0b, 0x6a, 0xc0, 0xfb, 0xa5, 0x19, 0x95, 0x13, 0x38, 0xfb, 0x5d,
-	0x95, 0xf6, 0xde, 0xbb, 0x9f, 0xd0, 0xce, 0x9f, 0x26, 0x1c, 0x06, 0xb4, 0xb0, 0xd1, 0x99, 0xa3,
-	0x7c, 0xf3, 0x8f, 0xe7, 0x87, 0xda, 0xf2, 0xd1, 0xb7, 0x80, 0x56, 0x7d, 0x0b, 0xed, 0xaa, 0x32,
-	0x9d, 0xd1, 0x34, 0x2a, 0xa2, 0xbe, 0xdb, 0x7c, 0xf2, 0xf6, 0x0e, 0x87, 0xbe, 0x82, 0xed, 0x05,
-	0x63, 0x40, 0xfb, 0x0a, 0xbc, 0xce, 0x2c, 0x9a, 0xd6, 0x7c, 0xd8, 0xb5, 0x72, 0xcf, 0x0c, 0xf4,
-	0x1c, 0xb6, 0x9d, 0xc2, 0xfc, 0xa9, 0x64, 0x1a, 0xbf, 0x72, 0x9a, 0x75, 0xa8, 0x17, 0xb0, 0x87,
-	0xd9, 0x94, 0xa5, 0xf2, 0x42, 0x84, 0xda, 0xfd, 0x6f, 0x01, 0xee, 0x41, 0x73, 0x30, 0x89, 0xa8,
-	0x64, 0x0b, 0x9d, 0x91, 0xa7, 0xfa, 0xdd, 0x42, 0x0b, 0xb3, 0xac, 0x0f, 0xfe, 0xc1, 0x9a, 0xf9,
-	0x7e, 0x66, 0xa0, 0x1f, 0xe0, 0xa3, 0xa2, 0x48, 0x6b, 0x58, 0x8a, 0x4a, 0xa1, 0x83, 0x4d, 0xed,
-	0xa7, 0x49, 0x3f, 0xfe, 0xef, 0xee, 0x7c, 0xf9, 0xe2, 0xf5, 0x67, 0x63, 0x2e, 0xdf, 0xe4, 0x57,
-	0xad, 0xa1, 0x88, 0xdb, 0x62, 0xc2, 0x92, 0xa1, 0x48, 0xa3, 0xb6, 0x1e, 0x99, 0xa7, 0xf3, 0x07,
-	0xfd, 0x29, 0x4f, 0x24, 0x4b, 0x47, 0x74, 0xc8, 0xda, 0xd3, 0x93, 0xf6, 0x58, 0xb4, 0xa3, 0x98,
-	0x5f, 0x55, 0xd5, 0x1b, 0x7d, 0xf2, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0xdd, 0xa9, 0x07, 0xea,
-	0x00, 0x08, 0x00, 0x00,
+	// 1091 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x56, 0xdd, 0x52, 0xdb, 0x46,
+	0x14, 0x8e, 0x7f, 0x13, 0x1f, 0x03, 0x56, 0x36, 0x90, 0x18, 0x33, 0x14, 0x70, 0x86, 0x29, 0xcd,
+	0x4c, 0x30, 0x35, 0xb9, 0x49, 0xd3, 0x9f, 0x31, 0xd6, 0x62, 0x34, 0x35, 0x12, 0x59, 0x59, 0x64,
+	0x92, 0xe9, 0x74, 0x47, 0x58, 0x6b, 0x47, 0x33, 0x96, 0xe4, 0x4a, 0x32, 0xb4, 0x2f, 0xd2, 0xab,
+	0x5e, 0xf7, 0xa2, 0x57, 0x7d, 0x81, 0x5e, 0xf4, 0x11, 0xfa, 0x46, 0x9d, 0xdd, 0x95, 0xc1, 0x18,
+	0x3b, 0x0d, 0x4c, 0x66, 0x7a, 0x27, 0x9d, 0x3d, 0x3f, 0xbb, 0xe7, 0xfb, 0xce, 0x0f, 0x6c, 0x38,
+	0x9e, 0x5b, 0x8b, 0x2e, 0xa8, 0x67, 0xfb, 0x76, 0x9f, 0x79, 0xcc, 0x8f, 0x69, 0xc4, 0xc2, 0x73,
+	0xb7, 0xcb, 0x76, 0x87, 0x61, 0x10, 0x07, 0x28, 0xe3, 0x78, 0x6e, 0xe5, 0x21, 0xd7, 0xea, 0x06,
+	0x9e, 0x17, 0xf8, 0x91, 0x94, 0x57, 0x16, 0xb8, 0xe8, 0xfd, 0x45, 0xf2, 0x87, 0x12, 0x37, 0xae,
+	0x67, 0xf7, 0x13, 0xcb, 0xea, 0xaf, 0x29, 0xa8, 0x98, 0x41, 0x2f, 0xbe, 0xb0, 0x43, 0x76, 0xca,
+	0xc2, 0xc8, 0x0d, 0x7c, 0xcd, 0xef, 0x05, 0xa1, 0x67, 0xc7, 0x6e, 0xe0, 0xa3, 0xaf, 0xa0, 0x64,
+	0x77, 0x63, 0xf7, 0x9c, 0xd1, 0x73, 0x79, 0x18, 0x95, 0x53, 0x9b, 0x99, 0x9d, 0x62, 0xfd, 0xe1,
+	0xae, 0xe3, 0xb9, 0xbb, 0x1a, 0xf7, 0x94, 0x98, 0x91, 0x25, 0xa9, 0x99, 0xfc, 0x46, 0xe8, 0x6b,
+	0x50, 0xa2, 0xd8, 0xf6, 0x9d, 0xb3, 0x5f, 0xae, 0x8c, 0xd3, 0xf3, 0x8c, 0x4b, 0x89, 0xea, 0xd8,
+	0xba, 0xfa, 0x4f, 0x1a, 0xb6, 0x5b, 0x2c, 0x9e, 0x7f, 0x37, 0xc2, 0xa2, 0x61, 0xe0, 0x47, 0x0c,
+	0x3d, 0x85, 0x7c, 0x14, 0xdb, 0xf1, 0x88, 0x5f, 0x2d, 0xb5, 0xb3, 0x54, 0x2f, 0x0a, 0xef, 0xa6,
+	0x10, 0x91, 0xe4, 0x08, 0x69, 0x90, 0x0f, 0x99, 0x1d, 0x05, 0x7e, 0x39, 0x2d, 0x94, 0xbe, 0x14,
+	0x4a, 0x1f, 0x15, 0x60, 0x97, 0x08, 0x43, 0x92, 0x38, 0x40, 0xfb, 0x90, 0x75, 0xfd, 0x5e, 0x50,
+	0xce, 0x6c, 0xa6, 0x76, 0x8a, 0xf5, 0x0d, 0x19, 0x6d, 0xbe, 0x17, 0xa1, 0x8c, 0x9e, 0xc2, 0xa2,
+	0x34, 0xa7, 0x0e, 0x8b, 0x6d, 0x77, 0x50, 0xce, 0x6e, 0xa6, 0x76, 0x0a, 0x64, 0x41, 0x0a, 0x55,
+	0x21, 0xab, 0xfe, 0x08, 0x79, 0x19, 0x0b, 0x2d, 0x83, 0x62, 0xe9, 0x2a, 0x3e, 0xd4, 0x74, 0xac,
+	0x52, 0x82, 0x1b, 0xa6, 0xa1, 0x2b, 0xf7, 0x10, 0x82, 0x25, 0x4b, 0xff, 0x5e, 0x37, 0xde, 0xe8,
+	0x54, 0xc5, 0xa7, 0x5a, 0x13, 0x2b, 0x29, 0x2e, 0xd3, 0xf4, 0x0e, 0x26, 0x7a, 0xa3, 0x4d, 0x31,
+	0x21, 0x06, 0x51, 0xd2, 0xe8, 0x31, 0x20, 0x79, 0x4e, 0x2d, 0x9d, 0xe0, 0x46, 0xf3, 0xa8, 0x71,
+	0xd0, 0xc6, 0x4a, 0xa6, 0xfa, 0x33, 0x2c, 0xab, 0xc1, 0x85, 0x3f, 0x08, 0x6c, 0x47, 0x24, 0x9f,
+	0xb0, 0x9f, 0x46, 0x2c, 0x8a, 0xd1, 0x33, 0x28, 0x3a, 0x8c, 0xd3, 0x89, 0x8e, 0x46, 0xae, 0x23,
+	0xd2, 0x58, 0xac, 0x17, 0xc4, 0xc3, 0xac, 0x91, 0xeb, 0x10, 0x90, 0xa7, 0xfc, 0x1b, 0xbd, 0x00,
+	0x10, 0xfc, 0xa1, 0x22, 0x07, 0x69, 0xa1, 0xba, 0x72, 0x85, 0xe7, 0xe4, 0xcb, 0x0b, 0xee, 0x58,
+	0x52, 0x7d, 0x07, 0x8b, 0xcd, 0xc0, 0xef, 0xb9, 0xfd, 0xbb, 0x84, 0x5c, 0x07, 0xe8, 0x0a, 0x63,
+	0x3a, 0x0a, 0x07, 0x22, 0x64, 0x81, 0x14, 0xa4, 0xc4, 0x0a, 0x07, 0xd5, 0xbf, 0xd3, 0xb0, 0x34,
+	0x76, 0x7e, 0x1b, 0x4a, 0xd4, 0xa7, 0x28, 0x51, 0x11, 0x4a, 0xd7, 0x3d, 0x4d, 0x63, 0x7f, 0x03,
+	0xc6, 0xcc, 0x0c, 0x18, 0xff, 0x4c, 0x7d, 0x22, 0x1c, 0x57, 0x61, 0x45, 0x7c, 0xd2, 0x43, 0xdc,
+	0x69, 0x1e, 0x69, 0x7a, 0x8b, 0x36, 0x0d, 0xfd, 0x50, 0x6b, 0x29, 0x19, 0xa9, 0x7e, 0xda, 0x68,
+	0x6b, 0xea, 0x58, 0x96, 0x45, 0x5b, 0xb0, 0x6e, 0x9c, 0x60, 0xd2, 0xe8, 0x68, 0x86, 0x4e, 0x1b,
+	0x6d, 0x82, 0x1b, 0xea, 0x5b, 0xaa, 0xe9, 0xf4, 0x84, 0x18, 0x2d, 0x82, 0x4d, 0x53, 0xc9, 0xcd,
+	0x61, 0x46, 0xbe, 0x7a, 0x08, 0x65, 0x33, 0xb6, 0xc3, 0x78, 0x34, 0x94, 0xef, 0xe7, 0xa0, 0xdd,
+	0x01, 0xaa, 0xea, 0x5f, 0x69, 0x58, 0x9d, 0xe1, 0xe8, 0x36, 0xb0, 0x7c, 0x33, 0x05, 0xcb, 0xf6,
+	0x58, 0x69, 0xb6, 0xd3, 0x69, 0x84, 0xae, 0x93, 0x25, 0x33, 0x45, 0x16, 0x54, 0x86, 0xfb, 0x49,
+	0x33, 0x4a, 0x2a, 0x70, 0xfc, 0x7b, 0x13, 0xda, 0xdc, 0xff, 0x50, 0xa1, 0x7d, 0x78, 0x6c, 0x0d,
+	0x79, 0x7d, 0xaa, 0xec, 0x6c, 0x74, 0x57, 0x14, 0xd0, 0x16, 0x2c, 0x0c, 0x82, 0xae, 0x28, 0xc2,
+	0x89, 0x2c, 0x14, 0xc7, 0x32, 0x5e, 0x34, 0x7f, 0xe4, 0x60, 0x65, 0x2a, 0x92, 0xc4, 0xe1, 0x56,
+	0x81, 0xbe, 0xbb, 0x04, 0x54, 0x62, 0xf5, 0xb9, 0x54, 0x9b, 0xe5, 0x37, 0x91, 0x4e, 0x81, 0xfd,
+	0x05, 0x28, 0x43, 0x16, 0x76, 0xf9, 0x44, 0x1b, 0x89, 0x73, 0xe6, 0x88, 0xdb, 0xe6, 0x48, 0x29,
+	0x91, 0x5b, 0x89, 0x18, 0xbd, 0xbc, 0xe4, 0x45, 0x56, 0xc4, 0xda, 0xfa, 0x40, 0xac, 0x29, 0x4e,
+	0x4c, 0xe7, 0x23, 0x77, 0x23, 0x1f, 0x68, 0x0d, 0x0a, 0x3d, 0x77, 0xc0, 0xa8, 0x6f, 0x7b, 0xac,
+	0x9c, 0x17, 0xe7, 0x0f, 0xb8, 0x40, 0xb7, 0x3d, 0x56, 0xb5, 0x60, 0x61, 0xf2, 0xf6, 0x68, 0x0d,
+	0x9e, 0x5c, 0x61, 0x6f, 0x9d, 0xb4, 0x8d, 0x86, 0x4a, 0xcd, 0x4e, 0xa3, 0x63, 0x99, 0xca, 0x3d,
+	0xb4, 0x00, 0x0f, 0x9a, 0xc6, 0xf1, 0x49, 0x1b, 0x77, 0x38, 0xf8, 0x25, 0x28, 0x4e, 0x56, 0x60,
+	0x1a, 0x15, 0x20, 0x27, 0x49, 0x90, 0xa9, 0xfe, 0x9e, 0xfe, 0x44, 0x6c, 0x2a, 0xc3, 0x72, 0xc2,
+	0x26, 0xdd, 0xe8, 0xd0, 0x09, 0x3e, 0xa1, 0x0d, 0x58, 0x23, 0xf8, 0xd8, 0xe8, 0x60, 0xda, 0x36,
+	0x9a, 0xb2, 0x31, 0x4c, 0x12, 0x2e, 0x8b, 0xb6, 0x61, 0x6b, 0x5a, 0xe1, 0x04, 0x93, 0x63, 0xcd,
+	0x34, 0xf9, 0xa7, 0x8a, 0x75, 0x0d, 0xab, 0x4a, 0x0e, 0x3d, 0x81, 0x47, 0xb2, 0x13, 0xa9, 0x16,
+	0xe1, 0x7d, 0x48, 0x3e, 0x5a, 0xc9, 0xf3, 0xf7, 0x25, 0xa1, 0x0f, 0x2c, 0xf3, 0xad, 0x72, 0x9f,
+	0xbf, 0x44, 0x6a, 0x6a, 0x3a, 0x25, 0xf8, 0xb5, 0x85, 0xcd, 0x8e, 0xf2, 0x80, 0x77, 0xb2, 0x44,
+	0x4d, 0xd3, 0xe9, 0x1b, 0x62, 0xe8, 0x2d, 0x91, 0x30, 0xac, 0x14, 0xfe, 0xbb, 0x6b, 0x41, 0xfd,
+	0xb7, 0x2c, 0x6c, 0xe8, 0x36, 0x5f, 0x2e, 0xc6, 0x73, 0xf6, 0xf8, 0x72, 0x13, 0x32, 0xe5, 0x22,
+	0x84, 0x5e, 0x03, 0xba, 0x39, 0xcd, 0x51, 0x49, 0x90, 0xe4, 0xc8, 0x0e, 0x1d, 0x2e, 0xd5, 0xd4,
+	0xca, 0xb3, 0x8f, 0x9f, 0xfb, 0xe8, 0x5b, 0x58, 0xbc, 0x36, 0x2e, 0xd1, 0xaa, 0x30, 0x9e, 0x35,
+	0x42, 0x2b, 0xca, 0xd5, 0x08, 0x94, 0x24, 0xd9, 0x4b, 0xa1, 0x17, 0xb0, 0xd8, 0xe0, 0x2b, 0x91,
+	0x1d, 0x33, 0x69, 0x7f, 0xe3, 0x36, 0xb3, 0xac, 0x5e, 0xc1, 0x32, 0x61, 0xe7, 0x2c, 0x8c, 0x3b,
+	0x9c, 0xcd, 0x7c, 0x27, 0xba, 0x85, 0x71, 0x0b, 0x2a, 0xd6, 0xd0, 0xb1, 0x63, 0x76, 0xad, 0x5f,
+	0x8e, 0x42, 0xb9, 0xcd, 0xa1, 0x6b, 0x13, 0x4e, 0x5e, 0xfc, 0xd1, 0x8c, 0xa9, 0xb7, 0x97, 0x42,
+	0x3f, 0xc0, 0x1a, 0x4f, 0xd2, 0x0c, 0x2f, 0x3c, 0x53, 0x68, 0x7d, 0x5e, 0x53, 0x96, 0x4e, 0x3f,
+	0xfb, 0x70, 0xcf, 0x46, 0x6d, 0x28, 0x4d, 0x15, 0x2e, 0x5a, 0x9b, 0x55, 0xce, 0x63, 0x7f, 0x95,
+	0xf9, 0xb5, 0xbe, 0x97, 0x3a, 0x78, 0xf5, 0xee, 0x65, 0xdf, 0x8d, 0xdf, 0x8f, 0xce, 0x76, 0xbb,
+	0x81, 0x57, 0x0b, 0x86, 0xcc, 0xef, 0x06, 0xa1, 0x53, 0x93, 0x7d, 0xea, 0xf9, 0xd5, 0xd2, 0xfc,
+	0xdc, 0xf5, 0x63, 0x16, 0xf6, 0xec, 0x2e, 0xab, 0x9d, 0xef, 0xd7, 0xfa, 0x41, 0xcd, 0xf1, 0xdc,
+	0xb3, 0xbc, 0xd8, 0x83, 0xf7, 0xff, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xd3, 0x65, 0x3c, 0xff, 0x64,
+	0x0b, 0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
@@ -600,6 +846,8 @@
 	UpdateStartupConfiguration(ctx context.Context, in *ConfigRequest, opts ...grpc.CallOption) (NativeSoftwareManagementService_UpdateStartupConfigurationClient, error)
 	// This API can be used to retrieve information about the current startup configuration that a device is using
 	GetStartupConfigurationInfo(ctx context.Context, in *StartupConfigInfoRequest, opts ...grpc.CallOption) (*StartupConfigInfoResponse, error)
+	// This API can be used to upload to a remote location, information useful for troubleshooting problems on the hardware
+	UploadDebugInfo(ctx context.Context, in *UploadDebugInfoRequest, opts ...grpc.CallOption) (NativeSoftwareManagementService_UploadDebugInfoClient, error)
 }
 
 type nativeSoftwareManagementServiceClient struct {
@@ -756,6 +1004,38 @@
 	return out, nil
 }
 
+func (c *nativeSoftwareManagementServiceClient) UploadDebugInfo(ctx context.Context, in *UploadDebugInfoRequest, opts ...grpc.CallOption) (NativeSoftwareManagementService_UploadDebugInfoClient, error) {
+	stream, err := c.cc.NewStream(ctx, &_NativeSoftwareManagementService_serviceDesc.Streams[4], "/dmi.NativeSoftwareManagementService/UploadDebugInfo", opts...)
+	if err != nil {
+		return nil, err
+	}
+	x := &nativeSoftwareManagementServiceUploadDebugInfoClient{stream}
+	if err := x.ClientStream.SendMsg(in); err != nil {
+		return nil, err
+	}
+	if err := x.ClientStream.CloseSend(); err != nil {
+		return nil, err
+	}
+	return x, nil
+}
+
+type NativeSoftwareManagementService_UploadDebugInfoClient interface {
+	Recv() (*UploadDebugInfoStatus, error)
+	grpc.ClientStream
+}
+
+type nativeSoftwareManagementServiceUploadDebugInfoClient struct {
+	grpc.ClientStream
+}
+
+func (x *nativeSoftwareManagementServiceUploadDebugInfoClient) Recv() (*UploadDebugInfoStatus, error) {
+	m := new(UploadDebugInfoStatus)
+	if err := x.ClientStream.RecvMsg(m); err != nil {
+		return nil, err
+	}
+	return m, nil
+}
+
 // NativeSoftwareManagementServiceServer is the server API for NativeSoftwareManagementService service.
 type NativeSoftwareManagementServiceServer interface {
 	// Get the software version information of the Active and Standby images
@@ -773,6 +1053,8 @@
 	UpdateStartupConfiguration(*ConfigRequest, NativeSoftwareManagementService_UpdateStartupConfigurationServer) error
 	// This API can be used to retrieve information about the current startup configuration that a device is using
 	GetStartupConfigurationInfo(context.Context, *StartupConfigInfoRequest) (*StartupConfigInfoResponse, error)
+	// This API can be used to upload to a remote location, information useful for troubleshooting problems on the hardware
+	UploadDebugInfo(*UploadDebugInfoRequest, NativeSoftwareManagementService_UploadDebugInfoServer) error
 }
 
 // UnimplementedNativeSoftwareManagementServiceServer can be embedded to have forward compatible implementations.
@@ -797,6 +1079,9 @@
 func (*UnimplementedNativeSoftwareManagementServiceServer) GetStartupConfigurationInfo(ctx context.Context, req *StartupConfigInfoRequest) (*StartupConfigInfoResponse, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method GetStartupConfigurationInfo not implemented")
 }
+func (*UnimplementedNativeSoftwareManagementServiceServer) UploadDebugInfo(req *UploadDebugInfoRequest, srv NativeSoftwareManagementService_UploadDebugInfoServer) error {
+	return status.Errorf(codes.Unimplemented, "method UploadDebugInfo not implemented")
+}
 
 func RegisterNativeSoftwareManagementServiceServer(s *grpc.Server, srv NativeSoftwareManagementServiceServer) {
 	s.RegisterService(&_NativeSoftwareManagementService_serviceDesc, srv)
@@ -922,6 +1207,27 @@
 	return interceptor(ctx, in, info, handler)
 }
 
+func _NativeSoftwareManagementService_UploadDebugInfo_Handler(srv interface{}, stream grpc.ServerStream) error {
+	m := new(UploadDebugInfoRequest)
+	if err := stream.RecvMsg(m); err != nil {
+		return err
+	}
+	return srv.(NativeSoftwareManagementServiceServer).UploadDebugInfo(m, &nativeSoftwareManagementServiceUploadDebugInfoServer{stream})
+}
+
+type NativeSoftwareManagementService_UploadDebugInfoServer interface {
+	Send(*UploadDebugInfoStatus) error
+	grpc.ServerStream
+}
+
+type nativeSoftwareManagementServiceUploadDebugInfoServer struct {
+	grpc.ServerStream
+}
+
+func (x *nativeSoftwareManagementServiceUploadDebugInfoServer) Send(m *UploadDebugInfoStatus) error {
+	return x.ServerStream.SendMsg(m)
+}
+
 var _NativeSoftwareManagementService_serviceDesc = grpc.ServiceDesc{
 	ServiceName: "dmi.NativeSoftwareManagementService",
 	HandlerType: (*NativeSoftwareManagementServiceServer)(nil),
@@ -956,6 +1262,11 @@
 			Handler:       _NativeSoftwareManagementService_UpdateStartupConfiguration_Handler,
 			ServerStreams: true,
 		},
+		{
+			StreamName:    "UploadDebugInfo",
+			Handler:       _NativeSoftwareManagementService_UploadDebugInfo_Handler,
+			ServerStreams: true,
+		},
 	},
 	Metadata: "dmi/sw_management_service.proto",
 }
diff --git a/vendor/github.com/opencord/voltha-protos/v5/go/extension/extensions.pb.go b/vendor/github.com/opencord/voltha-protos/v5/go/extension/extensions.pb.go
index c4e91d3..7a30f65 100644
--- a/vendor/github.com/opencord/voltha-protos/v5/go/extension/extensions.pb.go
+++ b/vendor/github.com/opencord/voltha-protos/v5/go/extension/extensions.pb.go
@@ -231,6 +231,37 @@
 	return fileDescriptor_7ecf6e9799a9202d, []int{22, 0}
 }
 
+type GetOffloadedAppsStatisticsRequest_OffloadedApp int32
+
+const (
+	GetOffloadedAppsStatisticsRequest_UNDEFINED GetOffloadedAppsStatisticsRequest_OffloadedApp = 0
+	GetOffloadedAppsStatisticsRequest_PPPoeIA   GetOffloadedAppsStatisticsRequest_OffloadedApp = 1
+	GetOffloadedAppsStatisticsRequest_DHCPv4RA  GetOffloadedAppsStatisticsRequest_OffloadedApp = 2
+	GetOffloadedAppsStatisticsRequest_DHCPv6RA  GetOffloadedAppsStatisticsRequest_OffloadedApp = 3
+)
+
+var GetOffloadedAppsStatisticsRequest_OffloadedApp_name = map[int32]string{
+	0: "UNDEFINED",
+	1: "PPPoeIA",
+	2: "DHCPv4RA",
+	3: "DHCPv6RA",
+}
+
+var GetOffloadedAppsStatisticsRequest_OffloadedApp_value = map[string]int32{
+	"UNDEFINED": 0,
+	"PPPoeIA":   1,
+	"DHCPv4RA":  2,
+	"DHCPv6RA":  3,
+}
+
+func (x GetOffloadedAppsStatisticsRequest_OffloadedApp) String() string {
+	return proto.EnumName(GetOffloadedAppsStatisticsRequest_OffloadedApp_name, int32(x))
+}
+
+func (GetOffloadedAppsStatisticsRequest_OffloadedApp) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_7ecf6e9799a9202d, []int{31, 0}
+}
+
 type GetValueResponse_Status int32
 
 const (
@@ -256,7 +287,7 @@
 }
 
 func (GetValueResponse_Status) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{32, 0}
+	return fileDescriptor_7ecf6e9799a9202d, []int{34, 0}
 }
 
 type GetValueResponse_ErrorReason int32
@@ -299,7 +330,7 @@
 }
 
 func (GetValueResponse_ErrorReason) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{32, 1}
+	return fileDescriptor_7ecf6e9799a9202d, []int{34, 1}
 }
 
 type SetValueResponse_Status int32
@@ -327,24 +358,33 @@
 }
 
 func (SetValueResponse_Status) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{34, 0}
+	return fileDescriptor_7ecf6e9799a9202d, []int{38, 0}
 }
 
 type SetValueResponse_ErrorReason int32
 
 const (
-	SetValueResponse_REASON_UNDEFINED SetValueResponse_ErrorReason = 0
-	SetValueResponse_UNSUPPORTED      SetValueResponse_ErrorReason = 1
+	SetValueResponse_REASON_UNDEFINED      SetValueResponse_ErrorReason = 0
+	SetValueResponse_UNSUPPORTED           SetValueResponse_ErrorReason = 1
+	SetValueResponse_INVALID_DEVICE_ID     SetValueResponse_ErrorReason = 2
+	SetValueResponse_INVALID_ONU_DEVICE_ID SetValueResponse_ErrorReason = 3
+	SetValueResponse_INVALID_UNI_ID        SetValueResponse_ErrorReason = 4
 )
 
 var SetValueResponse_ErrorReason_name = map[int32]string{
 	0: "REASON_UNDEFINED",
 	1: "UNSUPPORTED",
+	2: "INVALID_DEVICE_ID",
+	3: "INVALID_ONU_DEVICE_ID",
+	4: "INVALID_UNI_ID",
 }
 
 var SetValueResponse_ErrorReason_value = map[string]int32{
-	"REASON_UNDEFINED": 0,
-	"UNSUPPORTED":      1,
+	"REASON_UNDEFINED":      0,
+	"UNSUPPORTED":           1,
+	"INVALID_DEVICE_ID":     2,
+	"INVALID_ONU_DEVICE_ID": 3,
+	"INVALID_UNI_ID":        4,
 }
 
 func (x SetValueResponse_ErrorReason) String() string {
@@ -352,7 +392,7 @@
 }
 
 func (SetValueResponse_ErrorReason) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{34, 1}
+	return fileDescriptor_7ecf6e9799a9202d, []int{38, 1}
 }
 
 type ValueSet struct {
@@ -3030,6 +3070,495 @@
 	return nil
 }
 
+type GetOffloadedAppsStatisticsRequest struct {
+	// The offloaded application whose statistics are requested
+	StatsFor             GetOffloadedAppsStatisticsRequest_OffloadedApp `protobuf:"varint,1,opt,name=statsFor,proto3,enum=extension.GetOffloadedAppsStatisticsRequest_OffloadedApp" json:"statsFor,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                                       `json:"-"`
+	XXX_unrecognized     []byte                                         `json:"-"`
+	XXX_sizecache        int32                                          `json:"-"`
+}
+
+func (m *GetOffloadedAppsStatisticsRequest) Reset()         { *m = GetOffloadedAppsStatisticsRequest{} }
+func (m *GetOffloadedAppsStatisticsRequest) String() string { return proto.CompactTextString(m) }
+func (*GetOffloadedAppsStatisticsRequest) ProtoMessage()    {}
+func (*GetOffloadedAppsStatisticsRequest) Descriptor() ([]byte, []int) {
+	return fileDescriptor_7ecf6e9799a9202d, []int{31}
+}
+
+func (m *GetOffloadedAppsStatisticsRequest) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsRequest.Unmarshal(m, b)
+}
+func (m *GetOffloadedAppsStatisticsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsRequest.Marshal(b, m, deterministic)
+}
+func (m *GetOffloadedAppsStatisticsRequest) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_GetOffloadedAppsStatisticsRequest.Merge(m, src)
+}
+func (m *GetOffloadedAppsStatisticsRequest) XXX_Size() int {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsRequest.Size(m)
+}
+func (m *GetOffloadedAppsStatisticsRequest) XXX_DiscardUnknown() {
+	xxx_messageInfo_GetOffloadedAppsStatisticsRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetOffloadedAppsStatisticsRequest proto.InternalMessageInfo
+
+func (m *GetOffloadedAppsStatisticsRequest) GetStatsFor() GetOffloadedAppsStatisticsRequest_OffloadedApp {
+	if m != nil {
+		return m.StatsFor
+	}
+	return GetOffloadedAppsStatisticsRequest_UNDEFINED
+}
+
+type GetOffloadedAppsStatisticsResponse struct {
+	// Types that are valid to be assigned to Stats:
+	//	*GetOffloadedAppsStatisticsResponse_Dhcpv4RaStats
+	//	*GetOffloadedAppsStatisticsResponse_Dhcpv6RaStats
+	//	*GetOffloadedAppsStatisticsResponse_PppoeIaStats
+	Stats                isGetOffloadedAppsStatisticsResponse_Stats `protobuf_oneof:"stats"`
+	XXX_NoUnkeyedLiteral struct{}                                   `json:"-"`
+	XXX_unrecognized     []byte                                     `json:"-"`
+	XXX_sizecache        int32                                      `json:"-"`
+}
+
+func (m *GetOffloadedAppsStatisticsResponse) Reset()         { *m = GetOffloadedAppsStatisticsResponse{} }
+func (m *GetOffloadedAppsStatisticsResponse) String() string { return proto.CompactTextString(m) }
+func (*GetOffloadedAppsStatisticsResponse) ProtoMessage()    {}
+func (*GetOffloadedAppsStatisticsResponse) Descriptor() ([]byte, []int) {
+	return fileDescriptor_7ecf6e9799a9202d, []int{32}
+}
+
+func (m *GetOffloadedAppsStatisticsResponse) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse.Unmarshal(m, b)
+}
+func (m *GetOffloadedAppsStatisticsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse.Marshal(b, m, deterministic)
+}
+func (m *GetOffloadedAppsStatisticsResponse) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_GetOffloadedAppsStatisticsResponse.Merge(m, src)
+}
+func (m *GetOffloadedAppsStatisticsResponse) XXX_Size() int {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse.Size(m)
+}
+func (m *GetOffloadedAppsStatisticsResponse) XXX_DiscardUnknown() {
+	xxx_messageInfo_GetOffloadedAppsStatisticsResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetOffloadedAppsStatisticsResponse proto.InternalMessageInfo
+
+type isGetOffloadedAppsStatisticsResponse_Stats interface {
+	isGetOffloadedAppsStatisticsResponse_Stats()
+}
+
+type GetOffloadedAppsStatisticsResponse_Dhcpv4RaStats struct {
+	Dhcpv4RaStats *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats `protobuf:"bytes,1,opt,name=dhcpv4RaStats,proto3,oneof"`
+}
+
+type GetOffloadedAppsStatisticsResponse_Dhcpv6RaStats struct {
+	Dhcpv6RaStats *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats `protobuf:"bytes,2,opt,name=dhcpv6RaStats,proto3,oneof"`
+}
+
+type GetOffloadedAppsStatisticsResponse_PppoeIaStats struct {
+	PppoeIaStats *GetOffloadedAppsStatisticsResponse_PPPoeIAStats `protobuf:"bytes,3,opt,name=pppoeIaStats,proto3,oneof"`
+}
+
+func (*GetOffloadedAppsStatisticsResponse_Dhcpv4RaStats) isGetOffloadedAppsStatisticsResponse_Stats() {
+}
+
+func (*GetOffloadedAppsStatisticsResponse_Dhcpv6RaStats) isGetOffloadedAppsStatisticsResponse_Stats() {
+}
+
+func (*GetOffloadedAppsStatisticsResponse_PppoeIaStats) isGetOffloadedAppsStatisticsResponse_Stats() {
+}
+
+func (m *GetOffloadedAppsStatisticsResponse) GetStats() isGetOffloadedAppsStatisticsResponse_Stats {
+	if m != nil {
+		return m.Stats
+	}
+	return nil
+}
+
+func (m *GetOffloadedAppsStatisticsResponse) GetDhcpv4RaStats() *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats {
+	if x, ok := m.GetStats().(*GetOffloadedAppsStatisticsResponse_Dhcpv4RaStats); ok {
+		return x.Dhcpv4RaStats
+	}
+	return nil
+}
+
+func (m *GetOffloadedAppsStatisticsResponse) GetDhcpv6RaStats() *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats {
+	if x, ok := m.GetStats().(*GetOffloadedAppsStatisticsResponse_Dhcpv6RaStats); ok {
+		return x.Dhcpv6RaStats
+	}
+	return nil
+}
+
+func (m *GetOffloadedAppsStatisticsResponse) GetPppoeIaStats() *GetOffloadedAppsStatisticsResponse_PPPoeIAStats {
+	if x, ok := m.GetStats().(*GetOffloadedAppsStatisticsResponse_PppoeIaStats); ok {
+		return x.PppoeIaStats
+	}
+	return nil
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*GetOffloadedAppsStatisticsResponse) XXX_OneofWrappers() []interface{} {
+	return []interface{}{
+		(*GetOffloadedAppsStatisticsResponse_Dhcpv4RaStats)(nil),
+		(*GetOffloadedAppsStatisticsResponse_Dhcpv6RaStats)(nil),
+		(*GetOffloadedAppsStatisticsResponse_PppoeIaStats)(nil),
+	}
+}
+
+type GetOffloadedAppsStatisticsResponse_DHCPv4RAStats struct {
+	// From https://github.com/BroadbandForum/yang/blob/master/standard/networking/bbf-l2-dhcpv4-relay.yang
+	InBadPacketsFromClient           uint32 `protobuf:"varint,1,opt,name=in_bad_packets_from_client,json=inBadPacketsFromClient,proto3" json:"in_bad_packets_from_client,omitempty"`
+	InBadPacketsFromServer           uint32 `protobuf:"varint,2,opt,name=in_bad_packets_from_server,json=inBadPacketsFromServer,proto3" json:"in_bad_packets_from_server,omitempty"`
+	InPacketsFromClient              uint32 `protobuf:"varint,3,opt,name=in_packets_from_client,json=inPacketsFromClient,proto3" json:"in_packets_from_client,omitempty"`
+	InPacketsFromServer              uint32 `protobuf:"varint,4,opt,name=in_packets_from_server,json=inPacketsFromServer,proto3" json:"in_packets_from_server,omitempty"`
+	OutPacketsToServer               uint32 `protobuf:"varint,5,opt,name=out_packets_to_server,json=outPacketsToServer,proto3" json:"out_packets_to_server,omitempty"`
+	OutPacketsToClient               uint32 `protobuf:"varint,6,opt,name=out_packets_to_client,json=outPacketsToClient,proto3" json:"out_packets_to_client,omitempty"`
+	Option_82InsertedPacketsToServer uint32 `protobuf:"varint,7,opt,name=option_82_inserted_packets_to_server,json=option82InsertedPacketsToServer,proto3" json:"option_82_inserted_packets_to_server,omitempty"`
+	Option_82RemovedPacketsToClient  uint32 `protobuf:"varint,8,opt,name=option_82_removed_packets_to_client,json=option82RemovedPacketsToClient,proto3" json:"option_82_removed_packets_to_client,omitempty"`
+	Option_82NotInsertedToServer     uint32 `protobuf:"varint,9,opt,name=option_82_not_inserted_to_server,json=option82NotInsertedToServer,proto3" json:"option_82_not_inserted_to_server,omitempty"`
+	// Name value pairs that gives the flexibility to report different statistics that implementations may choose
+	AdditionalStats      map[string]string `protobuf:"bytes,10,rep,name=additional_stats,json=additionalStats,proto3" json:"additional_stats,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
+	XXX_unrecognized     []byte            `json:"-"`
+	XXX_sizecache        int32             `json:"-"`
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) Reset() {
+	*m = GetOffloadedAppsStatisticsResponse_DHCPv4RAStats{}
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) String() string {
+	return proto.CompactTextString(m)
+}
+func (*GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) ProtoMessage() {}
+func (*GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) Descriptor() ([]byte, []int) {
+	return fileDescriptor_7ecf6e9799a9202d, []int{32, 0}
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv4RAStats.Unmarshal(m, b)
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv4RAStats.Marshal(b, m, deterministic)
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv4RAStats.Merge(m, src)
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) XXX_Size() int {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv4RAStats.Size(m)
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) XXX_DiscardUnknown() {
+	xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv4RAStats.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv4RAStats proto.InternalMessageInfo
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetInBadPacketsFromClient() uint32 {
+	if m != nil {
+		return m.InBadPacketsFromClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetInBadPacketsFromServer() uint32 {
+	if m != nil {
+		return m.InBadPacketsFromServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetInPacketsFromClient() uint32 {
+	if m != nil {
+		return m.InPacketsFromClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetInPacketsFromServer() uint32 {
+	if m != nil {
+		return m.InPacketsFromServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetOutPacketsToServer() uint32 {
+	if m != nil {
+		return m.OutPacketsToServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetOutPacketsToClient() uint32 {
+	if m != nil {
+		return m.OutPacketsToClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetOption_82InsertedPacketsToServer() uint32 {
+	if m != nil {
+		return m.Option_82InsertedPacketsToServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetOption_82RemovedPacketsToClient() uint32 {
+	if m != nil {
+		return m.Option_82RemovedPacketsToClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetOption_82NotInsertedToServer() uint32 {
+	if m != nil {
+		return m.Option_82NotInsertedToServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv4RAStats) GetAdditionalStats() map[string]string {
+	if m != nil {
+		return m.AdditionalStats
+	}
+	return nil
+}
+
+type GetOffloadedAppsStatisticsResponse_DHCPv6RAStats struct {
+	// From https://github.com/BroadbandForum/yang/blob/master/standard/networking/bbf-ldra.yang
+	InBadPacketsFromClient               uint32 `protobuf:"varint,1,opt,name=in_bad_packets_from_client,json=inBadPacketsFromClient,proto3" json:"in_bad_packets_from_client,omitempty"`
+	InBadPacketsFromServer               uint32 `protobuf:"varint,2,opt,name=in_bad_packets_from_server,json=inBadPacketsFromServer,proto3" json:"in_bad_packets_from_server,omitempty"`
+	Option_17InsertedPacketsToServer     uint32 `protobuf:"varint,3,opt,name=option_17_inserted_packets_to_server,json=option17InsertedPacketsToServer,proto3" json:"option_17_inserted_packets_to_server,omitempty"`
+	Option_17RemovedPacketsToClient      uint32 `protobuf:"varint,4,opt,name=option_17_removed_packets_to_client,json=option17RemovedPacketsToClient,proto3" json:"option_17_removed_packets_to_client,omitempty"`
+	Option_18InsertedPacketsToServer     uint32 `protobuf:"varint,5,opt,name=option_18_inserted_packets_to_server,json=option18InsertedPacketsToServer,proto3" json:"option_18_inserted_packets_to_server,omitempty"`
+	Option_18RemovedPacketsToClient      uint32 `protobuf:"varint,6,opt,name=option_18_removed_packets_to_client,json=option18RemovedPacketsToClient,proto3" json:"option_18_removed_packets_to_client,omitempty"`
+	Option_37InsertedPacketsToServer     uint32 `protobuf:"varint,7,opt,name=option_37_inserted_packets_to_server,json=option37InsertedPacketsToServer,proto3" json:"option_37_inserted_packets_to_server,omitempty"`
+	Option_37RemovedPacketsToClient      uint32 `protobuf:"varint,8,opt,name=option_37_removed_packets_to_client,json=option37RemovedPacketsToClient,proto3" json:"option_37_removed_packets_to_client,omitempty"`
+	OutgoingMtuExceededPacketsFromClient uint32 `protobuf:"varint,9,opt,name=outgoing_mtu_exceeded_packets_from_client,json=outgoingMtuExceededPacketsFromClient,proto3" json:"outgoing_mtu_exceeded_packets_from_client,omitempty"`
+	// Name value pairs that gives the flexibility to report different statistics that implementations may choose
+	AdditionalStats      map[string]string `protobuf:"bytes,10,rep,name=additional_stats,json=additionalStats,proto3" json:"additional_stats,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
+	XXX_unrecognized     []byte            `json:"-"`
+	XXX_sizecache        int32             `json:"-"`
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) Reset() {
+	*m = GetOffloadedAppsStatisticsResponse_DHCPv6RAStats{}
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) String() string {
+	return proto.CompactTextString(m)
+}
+func (*GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) ProtoMessage() {}
+func (*GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) Descriptor() ([]byte, []int) {
+	return fileDescriptor_7ecf6e9799a9202d, []int{32, 1}
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv6RAStats.Unmarshal(m, b)
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv6RAStats.Marshal(b, m, deterministic)
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv6RAStats.Merge(m, src)
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) XXX_Size() int {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv6RAStats.Size(m)
+}
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) XXX_DiscardUnknown() {
+	xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv6RAStats.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetOffloadedAppsStatisticsResponse_DHCPv6RAStats proto.InternalMessageInfo
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetInBadPacketsFromClient() uint32 {
+	if m != nil {
+		return m.InBadPacketsFromClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetInBadPacketsFromServer() uint32 {
+	if m != nil {
+		return m.InBadPacketsFromServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetOption_17InsertedPacketsToServer() uint32 {
+	if m != nil {
+		return m.Option_17InsertedPacketsToServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetOption_17RemovedPacketsToClient() uint32 {
+	if m != nil {
+		return m.Option_17RemovedPacketsToClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetOption_18InsertedPacketsToServer() uint32 {
+	if m != nil {
+		return m.Option_18InsertedPacketsToServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetOption_18RemovedPacketsToClient() uint32 {
+	if m != nil {
+		return m.Option_18RemovedPacketsToClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetOption_37InsertedPacketsToServer() uint32 {
+	if m != nil {
+		return m.Option_37InsertedPacketsToServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetOption_37RemovedPacketsToClient() uint32 {
+	if m != nil {
+		return m.Option_37RemovedPacketsToClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetOutgoingMtuExceededPacketsFromClient() uint32 {
+	if m != nil {
+		return m.OutgoingMtuExceededPacketsFromClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_DHCPv6RAStats) GetAdditionalStats() map[string]string {
+	if m != nil {
+		return m.AdditionalStats
+	}
+	return nil
+}
+
+type GetOffloadedAppsStatisticsResponse_PPPoeIAStats struct {
+	// From https://github.com/BroadbandForum/yang/blob/master/standard/networking/bbf-pppoe-intermediate-agent.yang
+	InErrorPacketsFromClient                 uint32 `protobuf:"varint,1,opt,name=in_error_packets_from_client,json=inErrorPacketsFromClient,proto3" json:"in_error_packets_from_client,omitempty"`
+	InErrorPacketsFromServer                 uint32 `protobuf:"varint,2,opt,name=in_error_packets_from_server,json=inErrorPacketsFromServer,proto3" json:"in_error_packets_from_server,omitempty"`
+	InPacketsFromClient                      uint32 `protobuf:"varint,3,opt,name=in_packets_from_client,json=inPacketsFromClient,proto3" json:"in_packets_from_client,omitempty"`
+	InPacketsFromServer                      uint32 `protobuf:"varint,4,opt,name=in_packets_from_server,json=inPacketsFromServer,proto3" json:"in_packets_from_server,omitempty"`
+	OutPacketsToServer                       uint32 `protobuf:"varint,5,opt,name=out_packets_to_server,json=outPacketsToServer,proto3" json:"out_packets_to_server,omitempty"`
+	OutPacketsToClient                       uint32 `protobuf:"varint,6,opt,name=out_packets_to_client,json=outPacketsToClient,proto3" json:"out_packets_to_client,omitempty"`
+	VendorSpecificTagInsertedPacketsToServer uint32 `protobuf:"varint,7,opt,name=vendor_specific_tag_inserted_packets_to_server,json=vendorSpecificTagInsertedPacketsToServer,proto3" json:"vendor_specific_tag_inserted_packets_to_server,omitempty"`
+	VendorSpecificTagRemovedPacketsToClient  uint32 `protobuf:"varint,8,opt,name=vendor_specific_tag_removed_packets_to_client,json=vendorSpecificTagRemovedPacketsToClient,proto3" json:"vendor_specific_tag_removed_packets_to_client,omitempty"`
+	OutgoingMtuExceededPacketsFromClient     uint32 `protobuf:"varint,9,opt,name=outgoing_mtu_exceeded_packets_from_client,json=outgoingMtuExceededPacketsFromClient,proto3" json:"outgoing_mtu_exceeded_packets_from_client,omitempty"`
+	// Name value pairs that gives the flexibility to report different statistics that implementations may choose
+	AdditionalStats      map[string]string `protobuf:"bytes,10,rep,name=additional_stats,json=additionalStats,proto3" json:"additional_stats,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
+	XXX_unrecognized     []byte            `json:"-"`
+	XXX_sizecache        int32             `json:"-"`
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) Reset() {
+	*m = GetOffloadedAppsStatisticsResponse_PPPoeIAStats{}
+}
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) String() string {
+	return proto.CompactTextString(m)
+}
+func (*GetOffloadedAppsStatisticsResponse_PPPoeIAStats) ProtoMessage() {}
+func (*GetOffloadedAppsStatisticsResponse_PPPoeIAStats) Descriptor() ([]byte, []int) {
+	return fileDescriptor_7ecf6e9799a9202d, []int{32, 2}
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse_PPPoeIAStats.Unmarshal(m, b)
+}
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse_PPPoeIAStats.Marshal(b, m, deterministic)
+}
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_GetOffloadedAppsStatisticsResponse_PPPoeIAStats.Merge(m, src)
+}
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) XXX_Size() int {
+	return xxx_messageInfo_GetOffloadedAppsStatisticsResponse_PPPoeIAStats.Size(m)
+}
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) XXX_DiscardUnknown() {
+	xxx_messageInfo_GetOffloadedAppsStatisticsResponse_PPPoeIAStats.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetOffloadedAppsStatisticsResponse_PPPoeIAStats proto.InternalMessageInfo
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetInErrorPacketsFromClient() uint32 {
+	if m != nil {
+		return m.InErrorPacketsFromClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetInErrorPacketsFromServer() uint32 {
+	if m != nil {
+		return m.InErrorPacketsFromServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetInPacketsFromClient() uint32 {
+	if m != nil {
+		return m.InPacketsFromClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetInPacketsFromServer() uint32 {
+	if m != nil {
+		return m.InPacketsFromServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetOutPacketsToServer() uint32 {
+	if m != nil {
+		return m.OutPacketsToServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetOutPacketsToClient() uint32 {
+	if m != nil {
+		return m.OutPacketsToClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetVendorSpecificTagInsertedPacketsToServer() uint32 {
+	if m != nil {
+		return m.VendorSpecificTagInsertedPacketsToServer
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetVendorSpecificTagRemovedPacketsToClient() uint32 {
+	if m != nil {
+		return m.VendorSpecificTagRemovedPacketsToClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetOutgoingMtuExceededPacketsFromClient() uint32 {
+	if m != nil {
+		return m.OutgoingMtuExceededPacketsFromClient
+	}
+	return 0
+}
+
+func (m *GetOffloadedAppsStatisticsResponse_PPPoeIAStats) GetAdditionalStats() map[string]string {
+	if m != nil {
+		return m.AdditionalStats
+	}
+	return nil
+}
+
 type GetValueRequest struct {
 	// Types that are valid to be assigned to Request:
 	//	*GetValueRequest_Distance
@@ -3044,6 +3573,7 @@
 	//	*GetValueRequest_OnuOmciStats
 	//	*GetValueRequest_OltRxPower
 	//	*GetValueRequest_OnuActiveAlarms
+	//	*GetValueRequest_OffloadedAppsStats
 	Request              isGetValueRequest_Request `protobuf_oneof:"request"`
 	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
 	XXX_unrecognized     []byte                    `json:"-"`
@@ -3054,7 +3584,7 @@
 func (m *GetValueRequest) String() string { return proto.CompactTextString(m) }
 func (*GetValueRequest) ProtoMessage()    {}
 func (*GetValueRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{31}
+	return fileDescriptor_7ecf6e9799a9202d, []int{33}
 }
 
 func (m *GetValueRequest) XXX_Unmarshal(b []byte) error {
@@ -3127,6 +3657,10 @@
 	OnuActiveAlarms *GetOnuOmciActiveAlarmsRequest `protobuf:"bytes,12,opt,name=onuActiveAlarms,proto3,oneof"`
 }
 
+type GetValueRequest_OffloadedAppsStats struct {
+	OffloadedAppsStats *GetOffloadedAppsStatisticsRequest `protobuf:"bytes,13,opt,name=offloadedAppsStats,proto3,oneof"`
+}
+
 func (*GetValueRequest_Distance) isGetValueRequest_Request() {}
 
 func (*GetValueRequest_UniInfo) isGetValueRequest_Request() {}
@@ -3151,6 +3685,8 @@
 
 func (*GetValueRequest_OnuActiveAlarms) isGetValueRequest_Request() {}
 
+func (*GetValueRequest_OffloadedAppsStats) isGetValueRequest_Request() {}
+
 func (m *GetValueRequest) GetRequest() isGetValueRequest_Request {
 	if m != nil {
 		return m.Request
@@ -3242,6 +3778,13 @@
 	return nil
 }
 
+func (m *GetValueRequest) GetOffloadedAppsStats() *GetOffloadedAppsStatisticsRequest {
+	if x, ok := m.GetRequest().(*GetValueRequest_OffloadedAppsStats); ok {
+		return x.OffloadedAppsStats
+	}
+	return nil
+}
+
 // XXX_OneofWrappers is for the internal use of the proto package.
 func (*GetValueRequest) XXX_OneofWrappers() []interface{} {
 	return []interface{}{
@@ -3257,6 +3800,7 @@
 		(*GetValueRequest_OnuOmciStats)(nil),
 		(*GetValueRequest_OltRxPower)(nil),
 		(*GetValueRequest_OnuActiveAlarms)(nil),
+		(*GetValueRequest_OffloadedAppsStats)(nil),
 	}
 }
 
@@ -3276,6 +3820,7 @@
 	//	*GetValueResponse_OnuOmciStats
 	//	*GetValueResponse_OltRxPower
 	//	*GetValueResponse_OnuActiveAlarms
+	//	*GetValueResponse_OffloadedAppsStats
 	Response             isGetValueResponse_Response `protobuf_oneof:"response"`
 	XXX_NoUnkeyedLiteral struct{}                    `json:"-"`
 	XXX_unrecognized     []byte                      `json:"-"`
@@ -3286,7 +3831,7 @@
 func (m *GetValueResponse) String() string { return proto.CompactTextString(m) }
 func (*GetValueResponse) ProtoMessage()    {}
 func (*GetValueResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{32}
+	return fileDescriptor_7ecf6e9799a9202d, []int{34}
 }
 
 func (m *GetValueResponse) XXX_Unmarshal(b []byte) error {
@@ -3373,6 +3918,10 @@
 	OnuActiveAlarms *GetOnuOmciActiveAlarmsResponse `protobuf:"bytes,14,opt,name=onuActiveAlarms,proto3,oneof"`
 }
 
+type GetValueResponse_OffloadedAppsStats struct {
+	OffloadedAppsStats *GetOffloadedAppsStatisticsResponse `protobuf:"bytes,15,opt,name=offloadedAppsStats,proto3,oneof"`
+}
+
 func (*GetValueResponse_Distance) isGetValueResponse_Response() {}
 
 func (*GetValueResponse_UniInfo) isGetValueResponse_Response() {}
@@ -3397,6 +3946,8 @@
 
 func (*GetValueResponse_OnuActiveAlarms) isGetValueResponse_Response() {}
 
+func (*GetValueResponse_OffloadedAppsStats) isGetValueResponse_Response() {}
+
 func (m *GetValueResponse) GetResponse() isGetValueResponse_Response {
 	if m != nil {
 		return m.Response
@@ -3488,6 +4039,13 @@
 	return nil
 }
 
+func (m *GetValueResponse) GetOffloadedAppsStats() *GetOffloadedAppsStatisticsResponse {
+	if x, ok := m.GetResponse().(*GetValueResponse_OffloadedAppsStats); ok {
+		return x.OffloadedAppsStats
+	}
+	return nil
+}
+
 // XXX_OneofWrappers is for the internal use of the proto package.
 func (*GetValueResponse) XXX_OneofWrappers() []interface{} {
 	return []interface{}{
@@ -3503,12 +4061,186 @@
 		(*GetValueResponse_OnuOmciStats)(nil),
 		(*GetValueResponse_OltRxPower)(nil),
 		(*GetValueResponse_OnuActiveAlarms)(nil),
+		(*GetValueResponse_OffloadedAppsStats)(nil),
 	}
 }
 
+// AppOffloadConfig is the configuration for offloading applications to the OLT and has OLT wide configuration.
+type AppOffloadConfig struct {
+	EnableDHCPv4RA bool `protobuf:"varint,1,opt,name=enableDHCPv4RA,proto3" json:"enableDHCPv4RA,omitempty"`
+	EnableDHCPv6RA bool `protobuf:"varint,2,opt,name=enableDHCPv6RA,proto3" json:"enableDHCPv6RA,omitempty"`
+	EnablePPPoEIA  bool `protobuf:"varint,3,opt,name=enablePPPoEIA,proto3" json:"enablePPPoEIA,omitempty"`
+	// Follows the same as the BBF Access Node Id defined in https://github.com/BroadbandForum/yang/blob/master/standard/networking/bbf-subscriber-profiles.yang
+	AccessNodeID         string   `protobuf:"bytes,4,opt,name=accessNodeID,proto3" json:"accessNodeID,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
+}
+
+func (m *AppOffloadConfig) Reset()         { *m = AppOffloadConfig{} }
+func (m *AppOffloadConfig) String() string { return proto.CompactTextString(m) }
+func (*AppOffloadConfig) ProtoMessage()    {}
+func (*AppOffloadConfig) Descriptor() ([]byte, []int) {
+	return fileDescriptor_7ecf6e9799a9202d, []int{35}
+}
+
+func (m *AppOffloadConfig) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_AppOffloadConfig.Unmarshal(m, b)
+}
+func (m *AppOffloadConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_AppOffloadConfig.Marshal(b, m, deterministic)
+}
+func (m *AppOffloadConfig) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_AppOffloadConfig.Merge(m, src)
+}
+func (m *AppOffloadConfig) XXX_Size() int {
+	return xxx_messageInfo_AppOffloadConfig.Size(m)
+}
+func (m *AppOffloadConfig) XXX_DiscardUnknown() {
+	xxx_messageInfo_AppOffloadConfig.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AppOffloadConfig proto.InternalMessageInfo
+
+func (m *AppOffloadConfig) GetEnableDHCPv4RA() bool {
+	if m != nil {
+		return m.EnableDHCPv4RA
+	}
+	return false
+}
+
+func (m *AppOffloadConfig) GetEnableDHCPv6RA() bool {
+	if m != nil {
+		return m.EnableDHCPv6RA
+	}
+	return false
+}
+
+func (m *AppOffloadConfig) GetEnablePPPoEIA() bool {
+	if m != nil {
+		return m.EnablePPPoEIA
+	}
+	return false
+}
+
+func (m *AppOffloadConfig) GetAccessNodeID() string {
+	if m != nil {
+		return m.AccessNodeID
+	}
+	return ""
+}
+
+// AppOffloadOnuConfig has Onu specfic configuration which the OLT runs applications which have been offloaded.
+type AppOffloadOnuConfig struct {
+	OnuDeviceId          string                              `protobuf:"bytes,1,opt,name=onuDeviceId,proto3" json:"onuDeviceId,omitempty"`
+	PerUniInfo           []*AppOffloadOnuConfig_PerUniConfig `protobuf:"bytes,5,rep,name=perUniInfo,proto3" json:"perUniInfo,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                            `json:"-"`
+	XXX_unrecognized     []byte                              `json:"-"`
+	XXX_sizecache        int32                               `json:"-"`
+}
+
+func (m *AppOffloadOnuConfig) Reset()         { *m = AppOffloadOnuConfig{} }
+func (m *AppOffloadOnuConfig) String() string { return proto.CompactTextString(m) }
+func (*AppOffloadOnuConfig) ProtoMessage()    {}
+func (*AppOffloadOnuConfig) Descriptor() ([]byte, []int) {
+	return fileDescriptor_7ecf6e9799a9202d, []int{36}
+}
+
+func (m *AppOffloadOnuConfig) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_AppOffloadOnuConfig.Unmarshal(m, b)
+}
+func (m *AppOffloadOnuConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_AppOffloadOnuConfig.Marshal(b, m, deterministic)
+}
+func (m *AppOffloadOnuConfig) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_AppOffloadOnuConfig.Merge(m, src)
+}
+func (m *AppOffloadOnuConfig) XXX_Size() int {
+	return xxx_messageInfo_AppOffloadOnuConfig.Size(m)
+}
+func (m *AppOffloadOnuConfig) XXX_DiscardUnknown() {
+	xxx_messageInfo_AppOffloadOnuConfig.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AppOffloadOnuConfig proto.InternalMessageInfo
+
+func (m *AppOffloadOnuConfig) GetOnuDeviceId() string {
+	if m != nil {
+		return m.OnuDeviceId
+	}
+	return ""
+}
+
+func (m *AppOffloadOnuConfig) GetPerUniInfo() []*AppOffloadOnuConfig_PerUniConfig {
+	if m != nil {
+		return m.PerUniInfo
+	}
+	return nil
+}
+
+type AppOffloadOnuConfig_PerUniConfig struct {
+	// As per the BBF Agent Remote Id defined in https://github.com/BroadbandForum/yang/blob/master/standard/networking/bbf-pppoe-intermediate-agent-profile-common.yang
+	AgentRemoteID string `protobuf:"bytes,2,opt,name=agentRemoteID,proto3" json:"agentRemoteID,omitempty"`
+	// As per the BBF Agent Circuit Id defined in https://github.com/BroadbandForum/yang/blob/master/standard/networking/bbf-pppoe-intermediate-agent-profile-common.yang
+	AgentCircuitID string `protobuf:"bytes,3,opt,name=agentCircuitID,proto3" json:"agentCircuitID,omitempty"`
+	// The id of the UNI on the Onu for which this configuration is relevant. The UNI ids are numbered from 0 to n depending on the number of UNI ports on the ONU.
+	OnuUniId             uint32   `protobuf:"varint,4,opt,name=onuUniId,proto3" json:"onuUniId,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
+}
+
+func (m *AppOffloadOnuConfig_PerUniConfig) Reset()         { *m = AppOffloadOnuConfig_PerUniConfig{} }
+func (m *AppOffloadOnuConfig_PerUniConfig) String() string { return proto.CompactTextString(m) }
+func (*AppOffloadOnuConfig_PerUniConfig) ProtoMessage()    {}
+func (*AppOffloadOnuConfig_PerUniConfig) Descriptor() ([]byte, []int) {
+	return fileDescriptor_7ecf6e9799a9202d, []int{36, 0}
+}
+
+func (m *AppOffloadOnuConfig_PerUniConfig) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_AppOffloadOnuConfig_PerUniConfig.Unmarshal(m, b)
+}
+func (m *AppOffloadOnuConfig_PerUniConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_AppOffloadOnuConfig_PerUniConfig.Marshal(b, m, deterministic)
+}
+func (m *AppOffloadOnuConfig_PerUniConfig) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_AppOffloadOnuConfig_PerUniConfig.Merge(m, src)
+}
+func (m *AppOffloadOnuConfig_PerUniConfig) XXX_Size() int {
+	return xxx_messageInfo_AppOffloadOnuConfig_PerUniConfig.Size(m)
+}
+func (m *AppOffloadOnuConfig_PerUniConfig) XXX_DiscardUnknown() {
+	xxx_messageInfo_AppOffloadOnuConfig_PerUniConfig.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AppOffloadOnuConfig_PerUniConfig proto.InternalMessageInfo
+
+func (m *AppOffloadOnuConfig_PerUniConfig) GetAgentRemoteID() string {
+	if m != nil {
+		return m.AgentRemoteID
+	}
+	return ""
+}
+
+func (m *AppOffloadOnuConfig_PerUniConfig) GetAgentCircuitID() string {
+	if m != nil {
+		return m.AgentCircuitID
+	}
+	return ""
+}
+
+func (m *AppOffloadOnuConfig_PerUniConfig) GetOnuUniId() uint32 {
+	if m != nil {
+		return m.OnuUniId
+	}
+	return 0
+}
+
 type SetValueRequest struct {
 	// Types that are valid to be assigned to Request:
 	//	*SetValueRequest_AlarmConfig
+	//	*SetValueRequest_AppOffloadConfig
+	//	*SetValueRequest_AppOffloadOnuConfig
 	Request              isSetValueRequest_Request `protobuf_oneof:"request"`
 	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
 	XXX_unrecognized     []byte                    `json:"-"`
@@ -3519,7 +4251,7 @@
 func (m *SetValueRequest) String() string { return proto.CompactTextString(m) }
 func (*SetValueRequest) ProtoMessage()    {}
 func (*SetValueRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{33}
+	return fileDescriptor_7ecf6e9799a9202d, []int{37}
 }
 
 func (m *SetValueRequest) XXX_Unmarshal(b []byte) error {
@@ -3548,8 +4280,20 @@
 	AlarmConfig *config.AlarmConfig `protobuf:"bytes,1,opt,name=alarm_config,json=alarmConfig,proto3,oneof"`
 }
 
+type SetValueRequest_AppOffloadConfig struct {
+	AppOffloadConfig *AppOffloadConfig `protobuf:"bytes,2,opt,name=app_offload_config,json=appOffloadConfig,proto3,oneof"`
+}
+
+type SetValueRequest_AppOffloadOnuConfig struct {
+	AppOffloadOnuConfig *AppOffloadOnuConfig `protobuf:"bytes,3,opt,name=app_offload_onu_config,json=appOffloadOnuConfig,proto3,oneof"`
+}
+
 func (*SetValueRequest_AlarmConfig) isSetValueRequest_Request() {}
 
+func (*SetValueRequest_AppOffloadConfig) isSetValueRequest_Request() {}
+
+func (*SetValueRequest_AppOffloadOnuConfig) isSetValueRequest_Request() {}
+
 func (m *SetValueRequest) GetRequest() isSetValueRequest_Request {
 	if m != nil {
 		return m.Request
@@ -3564,10 +4308,26 @@
 	return nil
 }
 
+func (m *SetValueRequest) GetAppOffloadConfig() *AppOffloadConfig {
+	if x, ok := m.GetRequest().(*SetValueRequest_AppOffloadConfig); ok {
+		return x.AppOffloadConfig
+	}
+	return nil
+}
+
+func (m *SetValueRequest) GetAppOffloadOnuConfig() *AppOffloadOnuConfig {
+	if x, ok := m.GetRequest().(*SetValueRequest_AppOffloadOnuConfig); ok {
+		return x.AppOffloadOnuConfig
+	}
+	return nil
+}
+
 // XXX_OneofWrappers is for the internal use of the proto package.
 func (*SetValueRequest) XXX_OneofWrappers() []interface{} {
 	return []interface{}{
 		(*SetValueRequest_AlarmConfig)(nil),
+		(*SetValueRequest_AppOffloadConfig)(nil),
+		(*SetValueRequest_AppOffloadOnuConfig)(nil),
 	}
 }
 
@@ -3583,7 +4343,7 @@
 func (m *SetValueResponse) String() string { return proto.CompactTextString(m) }
 func (*SetValueResponse) ProtoMessage()    {}
 func (*SetValueResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{34}
+	return fileDescriptor_7ecf6e9799a9202d, []int{38}
 }
 
 func (m *SetValueResponse) XXX_Unmarshal(b []byte) error {
@@ -3630,7 +4390,7 @@
 func (m *SingleGetValueRequest) String() string { return proto.CompactTextString(m) }
 func (*SingleGetValueRequest) ProtoMessage()    {}
 func (*SingleGetValueRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{35}
+	return fileDescriptor_7ecf6e9799a9202d, []int{39}
 }
 
 func (m *SingleGetValueRequest) XXX_Unmarshal(b []byte) error {
@@ -3676,7 +4436,7 @@
 func (m *SingleGetValueResponse) String() string { return proto.CompactTextString(m) }
 func (*SingleGetValueResponse) ProtoMessage()    {}
 func (*SingleGetValueResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{36}
+	return fileDescriptor_7ecf6e9799a9202d, []int{40}
 }
 
 func (m *SingleGetValueResponse) XXX_Unmarshal(b []byte) error {
@@ -3716,7 +4476,7 @@
 func (m *SingleSetValueRequest) String() string { return proto.CompactTextString(m) }
 func (*SingleSetValueRequest) ProtoMessage()    {}
 func (*SingleSetValueRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{37}
+	return fileDescriptor_7ecf6e9799a9202d, []int{41}
 }
 
 func (m *SingleSetValueRequest) XXX_Unmarshal(b []byte) error {
@@ -3762,7 +4522,7 @@
 func (m *SingleSetValueResponse) String() string { return proto.CompactTextString(m) }
 func (*SingleSetValueResponse) ProtoMessage()    {}
 func (*SingleSetValueResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_7ecf6e9799a9202d, []int{38}
+	return fileDescriptor_7ecf6e9799a9202d, []int{42}
 }
 
 func (m *SingleSetValueResponse) XXX_Unmarshal(b []byte) error {
@@ -3798,6 +4558,7 @@
 	proto.RegisterEnum("extension.GetOltPortCounters_PortType", GetOltPortCounters_PortType_name, GetOltPortCounters_PortType_value)
 	proto.RegisterEnum("extension.GetOnuEthernetBridgePortHistory_Direction", GetOnuEthernetBridgePortHistory_Direction_name, GetOnuEthernetBridgePortHistory_Direction_value)
 	proto.RegisterEnum("extension.GetOmciEthernetFrameExtendedPmResponse_Format", GetOmciEthernetFrameExtendedPmResponse_Format_name, GetOmciEthernetFrameExtendedPmResponse_Format_value)
+	proto.RegisterEnum("extension.GetOffloadedAppsStatisticsRequest_OffloadedApp", GetOffloadedAppsStatisticsRequest_OffloadedApp_name, GetOffloadedAppsStatisticsRequest_OffloadedApp_value)
 	proto.RegisterEnum("extension.GetValueResponse_Status", GetValueResponse_Status_name, GetValueResponse_Status_value)
 	proto.RegisterEnum("extension.GetValueResponse_ErrorReason", GetValueResponse_ErrorReason_name, GetValueResponse_ErrorReason_value)
 	proto.RegisterEnum("extension.SetValueResponse_Status", SetValueResponse_Status_name, SetValueResponse_Status_value)
@@ -3833,8 +4594,19 @@
 	proto.RegisterType((*GetOnuOmciActiveAlarmsRequest)(nil), "extension.GetOnuOmciActiveAlarmsRequest")
 	proto.RegisterType((*AlarmData)(nil), "extension.AlarmData")
 	proto.RegisterType((*GetOnuOmciActiveAlarmsResponse)(nil), "extension.GetOnuOmciActiveAlarmsResponse")
+	proto.RegisterType((*GetOffloadedAppsStatisticsRequest)(nil), "extension.GetOffloadedAppsStatisticsRequest")
+	proto.RegisterType((*GetOffloadedAppsStatisticsResponse)(nil), "extension.GetOffloadedAppsStatisticsResponse")
+	proto.RegisterType((*GetOffloadedAppsStatisticsResponse_DHCPv4RAStats)(nil), "extension.GetOffloadedAppsStatisticsResponse.DHCPv4RAStats")
+	proto.RegisterMapType((map[string]string)(nil), "extension.GetOffloadedAppsStatisticsResponse.DHCPv4RAStats.AdditionalStatsEntry")
+	proto.RegisterType((*GetOffloadedAppsStatisticsResponse_DHCPv6RAStats)(nil), "extension.GetOffloadedAppsStatisticsResponse.DHCPv6RAStats")
+	proto.RegisterMapType((map[string]string)(nil), "extension.GetOffloadedAppsStatisticsResponse.DHCPv6RAStats.AdditionalStatsEntry")
+	proto.RegisterType((*GetOffloadedAppsStatisticsResponse_PPPoeIAStats)(nil), "extension.GetOffloadedAppsStatisticsResponse.PPPoeIAStats")
+	proto.RegisterMapType((map[string]string)(nil), "extension.GetOffloadedAppsStatisticsResponse.PPPoeIAStats.AdditionalStatsEntry")
 	proto.RegisterType((*GetValueRequest)(nil), "extension.GetValueRequest")
 	proto.RegisterType((*GetValueResponse)(nil), "extension.GetValueResponse")
+	proto.RegisterType((*AppOffloadConfig)(nil), "extension.AppOffloadConfig")
+	proto.RegisterType((*AppOffloadOnuConfig)(nil), "extension.AppOffloadOnuConfig")
+	proto.RegisterType((*AppOffloadOnuConfig_PerUniConfig)(nil), "extension.AppOffloadOnuConfig.PerUniConfig")
 	proto.RegisterType((*SetValueRequest)(nil), "extension.SetValueRequest")
 	proto.RegisterType((*SetValueResponse)(nil), "extension.SetValueResponse")
 	proto.RegisterType((*SingleGetValueRequest)(nil), "extension.SingleGetValueRequest")
@@ -3846,239 +4618,294 @@
 func init() { proto.RegisterFile("voltha_protos/extensions.proto", fileDescriptor_7ecf6e9799a9202d) }
 
 var fileDescriptor_7ecf6e9799a9202d = []byte{
-	// 3710 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x5a, 0xcd, 0x73, 0xdb, 0xc8,
-	0x72, 0x17, 0x29, 0x89, 0x22, 0x9b, 0xa2, 0x44, 0x8d, 0x3e, 0x4c, 0x4b, 0xfe, 0x5a, 0xbc, 0x5a,
-	0xdb, 0xfb, 0xca, 0x4b, 0x9b, 0x5c, 0xc9, 0xab, 0xb7, 0xef, 0xa5, 0xea, 0x91, 0x22, 0x25, 0x32,
-	0x96, 0x49, 0xed, 0x90, 0xf4, 0xee, 0x26, 0x95, 0x42, 0x41, 0xc4, 0x48, 0x46, 0x99, 0x04, 0x18,
-	0x60, 0xe8, 0xa5, 0x53, 0x95, 0x5b, 0x6e, 0x49, 0x4e, 0xef, 0x92, 0x7f, 0x22, 0x95, 0x43, 0x0e,
-	0xb9, 0xe7, 0x9c, 0x7f, 0x22, 0x55, 0xb9, 0xe4, 0x98, 0x54, 0xce, 0xa9, 0xd4, 0x7c, 0x01, 0x03,
-	0x90, 0x92, 0xed, 0xcd, 0xbb, 0xd8, 0x9a, 0xee, 0x5f, 0xff, 0xa6, 0x31, 0xd3, 0xdd, 0xd3, 0x18,
-	0x10, 0x1e, 0xbc, 0xf7, 0x46, 0xf4, 0xad, 0x65, 0x4e, 0x7c, 0x8f, 0x7a, 0xc1, 0x73, 0x32, 0xa3,
-	0xc4, 0x0d, 0x1c, 0xcf, 0x0d, 0xca, 0x5c, 0x82, 0x72, 0xa1, 0x64, 0x7f, 0x1e, 0x6a, 0x0e, 0x3d,
-	0xf7, 0xca, 0xb9, 0x16, 0xd0, 0xfd, 0x83, 0x6b, 0xcf, 0xbb, 0x1e, 0x91, 0xe7, 0x7c, 0x74, 0x39,
-	0xbd, 0x7a, 0x4e, 0xc6, 0x13, 0xfa, 0x41, 0x28, 0x8d, 0xbf, 0x80, 0xec, 0x1b, 0x6b, 0x34, 0x25,
-	0x3d, 0x42, 0xd1, 0x06, 0xa4, 0x1d, 0xbb, 0x94, 0x7a, 0x94, 0x7a, 0x9a, 0xc3, 0x69, 0xc7, 0x46,
-	0xc7, 0xb0, 0x6e, 0x8d, 0x2c, 0x7f, 0x2c, 0xe9, 0x4a, 0xe9, 0x47, 0xa9, 0xa7, 0xf9, 0xea, 0x76,
-	0x59, 0xb2, 0xd7, 0x98, 0xee, 0x84, 0xff, 0xdd, 0x5a, 0xc2, 0x79, 0x2b, 0x1a, 0xd6, 0xd7, 0x60,
-	0xf5, 0x3d, 0x63, 0x35, 0x9e, 0x41, 0x8e, 0xd3, 0xf7, 0x3f, 0x4c, 0x88, 0xf1, 0x10, 0x56, 0xd8,
-	0xff, 0x28, 0x07, 0xab, 0xcd, 0xd7, 0x17, 0xfd, 0x9f, 0x8a, 0x4b, 0x68, 0x1d, 0xb2, 0x8d, 0x76,
-	0xaf, 0x5f, 0xeb, 0x9c, 0x34, 0x8b, 0x29, 0xe3, 0x7b, 0xd8, 0x10, 0xce, 0x4c, 0xc8, 0xd0, 0xb9,
-	0x72, 0x88, 0x3f, 0xe7, 0xd2, 0x73, 0x49, 0xcc, 0x7d, 0xd9, 0xa8, 0xde, 0x2d, 0x87, 0xcb, 0x50,
-	0x0e, 0xe7, 0x29, 0xb3, 0x7f, 0xb0, 0x74, 0x80, 0xc2, 0x3a, 0x26, 0x74, 0xea, 0xbb, 0x5c, 0x1d,
-	0xa0, 0x22, 0x2c, 0xf7, 0x08, 0xe5, 0x8c, 0x05, 0xcc, 0xfe, 0x44, 0x8f, 0x20, 0x3f, 0x70, 0x83,
-	0xe9, 0x64, 0xe2, 0xf9, 0x94, 0xd8, 0x9c, 0xb8, 0x80, 0x75, 0x11, 0xda, 0x81, 0xd5, 0xa6, 0xef,
-	0x7b, 0x7e, 0x69, 0x99, 0xeb, 0xc4, 0x00, 0xed, 0x43, 0xb6, 0xe1, 0x04, 0xd4, 0x72, 0x87, 0xa4,
-	0xb4, 0xc2, 0x15, 0xe1, 0xd8, 0x78, 0x09, 0xe8, 0x8c, 0x50, 0x35, 0xc4, 0xe4, 0x2f, 0xa7, 0x24,
-	0xe0, 0x33, 0x79, 0xee, 0xb4, 0x41, 0xde, 0x3b, 0x43, 0xd2, 0x56, 0x4f, 0xa5, 0x8b, 0x8c, 0x0a,
-	0x6c, 0xc7, 0xec, 0x82, 0x89, 0xe7, 0x06, 0x84, 0x4d, 0x65, 0xab, 0xa9, 0x84, 0xe7, 0xe1, 0xd8,
-	0xa8, 0xc2, 0xce, 0x19, 0xa1, 0x5d, 0x77, 0x3a, 0x70, 0x9d, 0xb6, 0x7b, 0xe5, 0xa9, 0xc9, 0xf6,
-	0x21, 0x3b, 0x65, 0x12, 0x9b, 0xcc, 0x94, 0x8d, 0x1a, 0x1b, 0xff, 0xbe, 0x02, 0xbb, 0x09, 0x23,
-	0x39, 0xd3, 0x05, 0x64, 0x2d, 0x7b, 0xdc, 0xa3, 0x16, 0x15, 0x33, 0x6d, 0x54, 0x0f, 0xb5, 0x25,
-	0x5e, 0x68, 0x53, 0xae, 0xd9, 0x63, 0xc7, 0x75, 0x02, 0xea, 0x5b, 0xd4, 0x79, 0x4f, 0xb8, 0x2d,
-	0x0e, 0x59, 0x50, 0x17, 0x72, 0xde, 0x84, 0xf8, 0x82, 0x52, 0xec, 0x5a, 0xe5, 0xa3, 0x94, 0xdd,
-	0x09, 0x61, 0x6c, 0x9e, 0x6b, 0x8d, 0x04, 0x5f, 0xc4, 0xc1, 0x08, 0x45, 0x00, 0xb6, 0x5d, 0x9b,
-	0xef, 0xc8, 0xa7, 0x10, 0x8a, 0xb8, 0x9c, 0x0a, 0xd2, 0xb6, 0x6b, 0xe3, 0x88, 0xc3, 0xf8, 0xd7,
-	0x14, 0x14, 0x93, 0x7a, 0x04, 0x90, 0x19, 0x74, 0x5e, 0x75, 0x7f, 0xe8, 0x14, 0x97, 0x10, 0x82,
-	0x8d, 0x7e, 0xb3, 0x63, 0xd6, 0x6b, 0xbd, 0xa6, 0xd9, 0x37, 0x4f, 0x1b, 0x3f, 0x16, 0x53, 0x68,
-	0x0f, 0x50, 0x6b, 0xd0, 0x69, 0xe0, 0x66, 0x43, 0x97, 0xa7, 0x51, 0x09, 0x76, 0xce, 0xda, 0x67,
-	0xb5, 0x7a, 0xbb, 0x6f, 0x36, 0xfb, 0xad, 0x26, 0xee, 0x34, 0x85, 0x66, 0x99, 0x59, 0x30, 0x96,
-	0xb3, 0xb8, 0x7c, 0x25, 0xc1, 0xde, 0x6a, 0xfc, 0x58, 0x5c, 0x5d, 0xc0, 0xce, 0xe4, 0x99, 0x85,
-	0xec, 0x4c, 0xb3, 0x66, 0x9c, 0xc1, 0xf6, 0x82, 0x7d, 0x60, 0x44, 0xb5, 0xc6, 0xeb, 0x5e, 0xbf,
-	0xd6, 0x6f, 0x9a, 0x83, 0x4e, 0xa3, 0x79, 0xda, 0xee, 0x34, 0x1b, 0xc5, 0x25, 0xf6, 0x78, 0xe7,
-	0xdd, 0x93, 0x57, 0xcd, 0x46, 0x31, 0xc5, 0x72, 0x70, 0xd0, 0x91, 0xa3, 0xb4, 0x71, 0x0a, 0xc5,
-	0xe4, 0xea, 0xa3, 0x3b, 0xb0, 0xdd, 0xbd, 0x68, 0xe2, 0x79, 0x9a, 0x3c, 0xac, 0x35, 0x3b, 0xb5,
-	0xfa, 0xb9, 0xe2, 0x69, 0xb4, 0x7b, 0x62, 0x94, 0x36, 0xfe, 0x25, 0xc5, 0x73, 0xa0, 0x3b, 0xa2,
-	0x17, 0x9e, 0x4f, 0x4f, 0xbc, 0xa9, 0x4b, 0x89, 0x1f, 0xa0, 0x3d, 0xc8, 0xb0, 0xac, 0xea, 0x78,
-	0x32, 0x28, 0xe5, 0x08, 0xd5, 0x21, 0xcb, 0xfe, 0x62, 0xa9, 0x2b, 0xa3, 0xe4, 0x71, 0x62, 0x53,
-	0xe3, 0x44, 0xe5, 0x0b, 0x89, 0xc6, 0xa1, 0x9d, 0xd1, 0x84, 0xac, 0x92, 0xa2, 0x22, 0xac, 0xb3,
-	0xbf, 0xcd, 0x41, 0xe7, 0x55, 0x47, 0xec, 0xe2, 0x2e, 0x6c, 0x71, 0x49, 0xb8, 0x70, 0x9d, 0x4e,
-	0xbb, 0x98, 0x0a, 0x81, 0x17, 0xdd, 0x8e, 0xd9, 0x3d, 0xef, 0x17, 0xd3, 0xc6, 0xbf, 0x2d, 0xc3,
-	0xfe, 0xfc, 0x84, 0x61, 0x8a, 0x94, 0x60, 0x8d, 0xce, 0xea, 0x1f, 0x28, 0x09, 0xf8, 0x23, 0xac,
-	0x60, 0x35, 0x64, 0x1a, 0x5f, 0x6a, 0xd2, 0x42, 0x23, 0x87, 0xe8, 0x1e, 0xe4, 0xe8, 0xec, 0xc2,
-	0x1a, 0xbe, 0x23, 0x34, 0xe0, 0x31, 0xbb, 0x82, 0x23, 0x01, 0xd3, 0xfa, 0xa1, 0x76, 0x45, 0x68,
-	0x43, 0x01, 0x7a, 0x0c, 0x1b, 0x74, 0xc6, 0x4b, 0x8e, 0x82, 0xac, 0x72, 0x48, 0x42, 0xca, 0x70,
-	0x7e, 0x1c, 0x97, 0x11, 0x38, 0x7f, 0x0e, 0x47, 0x67, 0xf5, 0xa1, 0x15, 0x50, 0x85, 0x5b, 0x53,
-	0x7c, 0xba, 0x54, 0xf0, 0xc5, 0x70, 0x59, 0xc5, 0x97, 0xc4, 0xd1, 0xd9, 0x40, 0xc7, 0xe5, 0x14,
-	0xdf, 0x60, 0x8e, 0x2f, 0x86, 0x03, 0xc5, 0x37, 0x98, 0xe3, 0x7b, 0xad, 0xe3, 0xf2, 0x8a, 0xef,
-	0xf5, 0x1c, 0x5f, 0x0c, 0xb7, 0xae, 0xf8, 0x74, 0xa9, 0xd1, 0x50, 0x05, 0xf2, 0xc2, 0x73, 0xbb,
-	0x13, 0xea, 0x0c, 0xad, 0x11, 0x2b, 0x0d, 0xe8, 0x19, 0xac, 0xf2, 0x83, 0x90, 0xef, 0x62, 0xbe,
-	0xba, 0x57, 0x16, 0xc7, 0x64, 0x59, 0x1d, 0x93, 0xe5, 0x26, 0xd3, 0x62, 0x01, 0x32, 0xfe, 0x26,
-	0x0d, 0xf7, 0x16, 0xd1, 0x84, 0x61, 0xf1, 0x6b, 0x28, 0x4e, 0xbc, 0x9f, 0x89, 0x7f, 0x4a, 0x88,
-	0xfd, 0xc6, 0x1b, 0x51, 0xeb, 0x5a, 0x54, 0xd0, 0x34, 0x9e, 0x93, 0xa3, 0x2a, 0xec, 0xf8, 0x64,
-	0x48, 0x9c, 0xf7, 0xc4, 0x96, 0x54, 0x17, 0x0c, 0xc2, 0xa3, 0x26, 0x8d, 0x17, 0xea, 0xd0, 0x4b,
-	0xd8, 0x1b, 0x13, 0x4b, 0x4d, 0x7d, 0x6e, 0x4d, 0xdd, 0xe1, 0x5b, 0x61, 0xb5, 0xcc, 0xad, 0x6e,
-	0xd0, 0x32, 0xbf, 0x46, 0x56, 0x40, 0xfc, 0xba, 0x63, 0x05, 0x27, 0x53, 0xdf, 0x27, 0x2e, 0xe5,
-	0x31, 0x96, 0xc6, 0x73, 0x72, 0x76, 0x40, 0x51, 0x32, 0xe6, 0xd9, 0x3f, 0xf5, 0x09, 0x8f, 0xb3,
-	0x34, 0xd6, 0x45, 0xc6, 0x3f, 0xa5, 0xe0, 0xa1, 0x58, 0x86, 0x26, 0x7d, 0x4b, 0x7c, 0x97, 0xd0,
-	0xba, 0xef, 0xd8, 0xd7, 0x84, 0x65, 0x4a, 0xcb, 0x09, 0xa8, 0xe7, 0x7f, 0x40, 0x18, 0x72, 0xb6,
-	0xe3, 0x93, 0x21, 0xab, 0x20, 0x37, 0x1e, 0x22, 0x37, 0x9a, 0x97, 0x1b, 0xca, 0x16, 0x47, 0x34,
-	0xc6, 0x31, 0xe4, 0x42, 0x39, 0x2a, 0x40, 0x4e, 0x2f, 0x42, 0xac, 0x7e, 0x5d, 0xf4, 0xfa, 0xb8,
-	0x59, 0x7b, 0x5d, 0x4c, 0xa1, 0x0d, 0x80, 0x46, 0xf7, 0x87, 0x8e, 0x1c, 0xa7, 0x8d, 0x3f, 0xac,
-	0xc2, 0x93, 0x8f, 0x4c, 0x19, 0xee, 0xe1, 0x03, 0x00, 0xdb, 0xf7, 0x26, 0xcd, 0xf7, 0xc4, 0xa5,
-	0x81, 0x2c, 0x50, 0x9a, 0x84, 0x15, 0x2f, 0x6f, 0x48, 0x59, 0xa8, 0x89, 0x2e, 0x41, 0x8e, 0x58,
-	0xe2, 0x4f, 0xb4, 0xe4, 0x2e, 0x60, 0x35, 0x64, 0xab, 0x7f, 0xe9, 0x7b, 0x96, 0xad, 0x87, 0xa9,
-	0x68, 0x16, 0xe6, 0xe4, 0x0c, 0x3b, 0x9e, 0x8e, 0xd8, 0x06, 0x46, 0xd8, 0x55, 0x81, 0x4d, 0xca,
-	0xd1, 0x33, 0xd8, 0x1a, 0xfa, 0x43, 0x9e, 0xd7, 0xc4, 0xd6, 0xf3, 0xbd, 0x80, 0xe7, 0x15, 0x8c,
-	0x79, 0xea, 0xda, 0xc4, 0x0f, 0x9c, 0xbf, 0x22, 0x7a, 0xd2, 0x17, 0xf0, 0x9c, 0x1c, 0x3d, 0x85,
-	0x4d, 0xef, 0x7d, 0x1c, 0x9a, 0xe5, 0xd0, 0xa4, 0x98, 0x21, 0xe5, 0x63, 0xbe, 0x3c, 0x94, 0xcb,
-	0x92, 0x13, 0xc8, 0x84, 0x98, 0xc5, 0xbb, 0x12, 0x1d, 0xf5, 0xbd, 0x4a, 0xf5, 0x5b, 0x09, 0x07,
-	0x0e, 0x5f, 0xa8, 0x43, 0x87, 0xb0, 0x2b, 0xe5, 0x95, 0xea, 0x71, 0xdf, 0xab, 0x1e, 0x1d, 0x75,
-	0x85, 0x51, 0x9e, 0x1b, 0x2d, 0x56, 0x6a, 0x56, 0xd5, 0xa3, 0x97, 0x7d, 0xef, 0xa8, 0x52, 0x91,
-	0x53, 0xad, 0xc7, 0xac, 0xe2, 0x4a, 0x96, 0x5b, 0x52, 0x71, 0x54, 0xa9, 0xf6, 0xbd, 0xca, 0x8b,
-	0xea, 0x37, 0xd2, 0xac, 0xc0, 0xcd, 0x6e, 0xd0, 0xa2, 0x63, 0xb8, 0xa3, 0xdc, 0x78, 0x51, 0x3d,
-	0xec, 0x7b, 0x95, 0xa3, 0xca, 0xb1, 0x34, 0xdc, 0xe0, 0x86, 0x37, 0xa9, 0x8d, 0xdf, 0x43, 0x51,
-	0x04, 0xe5, 0x29, 0x19, 0xaa, 0xbc, 0xf9, 0xbc, 0x82, 0xf4, 0xdf, 0x29, 0x28, 0x25, 0x29, 0xc2,
-	0x40, 0x7e, 0x0c, 0x1b, 0x43, 0xcf, 0x67, 0xf9, 0x42, 0xec, 0xe8, 0xa8, 0x2a, 0xe0, 0x84, 0x14,
-	0x95, 0x01, 0x85, 0x92, 0x13, 0xcf, 0x26, 0x3f, 0x78, 0xbe, 0xad, 0x82, 0x7b, 0x81, 0x86, 0x25,
-	0xc8, 0x15, 0x19, 0xf6, 0xc8, 0xd0, 0x73, 0x6d, 0x15, 0xeb, 0x9a, 0x84, 0xd7, 0x6e, 0x8f, 0x5a,
-	0xa3, 0x88, 0x4b, 0x04, 0x7b, 0x42, 0xca, 0x16, 0x7c, 0xea, 0x4a, 0x7e, 0xeb, 0x72, 0x44, 0x22,
-	0xbc, 0x08, 0xf8, 0x1b, 0xb4, 0xc6, 0x99, 0xea, 0x5b, 0xa3, 0x53, 0x59, 0x74, 0xbb, 0x77, 0x60,
-	0xcd, 0x71, 0xe9, 0x95, 0x29, 0x5f, 0x16, 0xd6, 0x70, 0x86, 0x0d, 0xdb, 0x36, 0xda, 0x85, 0x8c,
-	0xe7, 0x4e, 0x99, 0x3c, 0xcd, 0xe5, 0xab, 0x9e, 0x3b, 0x6d, 0xdb, 0xc6, 0xdf, 0xa7, 0xe0, 0x4b,
-	0xc6, 0x34, 0x1e, 0x3a, 0xaa, 0x2c, 0x9c, 0xfa, 0xd6, 0x98, 0x34, 0x59, 0x99, 0xb2, 0x89, 0x7d,
-	0x31, 0xfe, 0xe4, 0xa6, 0x1d, 0xdd, 0xd3, 0x3a, 0x6d, 0xbe, 0x74, 0xad, 0xa5, 0xa8, 0xd7, 0x66,
-	0x2f, 0x0f, 0x3e, 0x09, 0x08, 0xe5, 0xab, 0x95, 0xc5, 0x62, 0x50, 0xdf, 0x80, 0x75, 0x27, 0x30,
-	0xa7, 0xae, 0x63, 0x3a, 0xbc, 0x23, 0x3f, 0x81, 0xad, 0x33, 0x42, 0xf1, 0x8c, 0xd7, 0xec, 0x5f,
-	0xfa, 0x50, 0xe7, 0xe2, 0xa4, 0x1b, 0x25, 0x79, 0xee, 0x03, 0xb0, 0x1e, 0xc9, 0x1c, 0x59, 0x97,
-	0x64, 0x24, 0x9f, 0x20, 0xc7, 0x24, 0xe7, 0x4c, 0xa0, 0xd8, 0x02, 0x97, 0xb3, 0xe5, 0x38, 0x5b,
-	0xcf, 0x35, 0xfe, 0x63, 0x1d, 0xf6, 0x92, 0x8b, 0x2d, 0xc3, 0xeb, 0x6e, 0xc2, 0xb1, 0xd6, 0x52,
-	0xe8, 0xda, 0x9d, 0xb8, 0x6b, 0xad, 0x94, 0x74, 0x0e, 0x3d, 0x81, 0x8d, 0x89, 0x17, 0x38, 0xac,
-	0x35, 0x35, 0x6d, 0xdf, 0xb9, 0x12, 0x0b, 0x92, 0x69, 0xa5, 0x71, 0x41, 0xc9, 0x1b, 0x4c, 0xcc,
-	0x80, 0x2e, 0xb9, 0xb6, 0x34, 0xe0, 0x0a, 0x07, 0x2e, 0xe3, 0x82, 0x92, 0x0b, 0xe0, 0x77, 0x50,
-	0xb2, 0xc9, 0xc8, 0x19, 0x3b, 0x94, 0xf8, 0xe6, 0xd8, 0x09, 0x02, 0xd3, 0x26, 0x54, 0x1e, 0x3b,
-	0xab, 0xdc, 0x64, 0x05, 0xef, 0x85, 0x88, 0xd7, 0x4e, 0x10, 0x34, 0x94, 0x1e, 0x3d, 0x04, 0xb8,
-	0x74, 0x26, 0x26, 0x61, 0x75, 0x52, 0x14, 0xce, 0x4c, 0x6b, 0x15, 0xe7, 0x2e, 0x9d, 0x09, 0x2f,
-	0x9d, 0x01, 0xba, 0x0f, 0x6c, 0xc0, 0x76, 0x48, 0xd6, 0xca, 0x4c, 0x2b, 0x83, 0xb3, 0x97, 0xce,
-	0x64, 0xc0, 0x24, 0xac, 0xce, 0x5c, 0x91, 0xa1, 0x19, 0xa6, 0x88, 0x19, 0x7c, 0x18, 0x5f, 0x7a,
-	0x23, 0x51, 0x2b, 0x33, 0xad, 0x35, 0xbc, 0x7d, 0x45, 0x86, 0x27, 0x4a, 0xdb, 0x13, 0x4a, 0x56,
-	0x2f, 0x84, 0x95, 0x4d, 0x7e, 0x66, 0xf1, 0x1c, 0xd9, 0xf3, 0xca, 0x99, 0x69, 0x65, 0xf1, 0x2e,
-	0xb7, 0x93, 0xfa, 0x90, 0x00, 0xfd, 0x1e, 0x0e, 0xe2, 0x96, 0xb1, 0x04, 0xe1, 0x85, 0x34, 0xd3,
-	0xca, 0xe1, 0xbb, 0xba, 0xf5, 0x40, 0x87, 0xa0, 0x2f, 0xa1, 0x10, 0x63, 0xe0, 0x75, 0x34, 0xd3,
-	0x02, 0xbc, 0xae, 0xdb, 0xa0, 0x17, 0xb0, 0x1d, 0x7f, 0x30, 0xb1, 0x02, 0xeb, 0x1c, 0x9c, 0xc7,
-	0x5b, 0xfa, 0x63, 0x89, 0xa5, 0x78, 0x0a, 0x9b, 0xb3, 0x6b, 0x32, 0x36, 0xdf, 0x91, 0x0f, 0x6a,
-	0x3d, 0x0b, 0x1c, 0xbd, 0x8e, 0x0b, 0x4c, 0xf1, 0x8a, 0x7c, 0x88, 0xd6, 0x94, 0x23, 0x47, 0x5e,
-	0x20, 0x0a, 0x64, 0xa6, 0x55, 0xc0, 0x59, 0x26, 0x3a, 0xf7, 0x02, 0x4e, 0xe4, 0xcf, 0xcc, 0xc9,
-	0xc8, 0xb3, 0xc6, 0x81, 0x60, 0x2a, 0x6d, 0x72, 0xd0, 0x06, 0x2e, 0xf8, 0xb3, 0x0b, 0x2e, 0x17,
-	0xaf, 0xde, 0x5f, 0x03, 0x8a, 0x90, 0xae, 0xe7, 0x9a, 0x8e, 0x3d, 0x22, 0xa5, 0x22, 0x07, 0x6f,
-	0xe2, 0x4d, 0x05, 0xee, 0x78, 0x6e, 0xdb, 0x1e, 0xf1, 0x70, 0xf5, 0x67, 0xa6, 0x37, 0x1e, 0x3a,
-	0xa5, 0x2d, 0x8e, 0x29, 0xe2, 0x8c, 0x3f, 0x63, 0xb9, 0xcf, 0x54, 0x54, 0xaa, 0x10, 0x57, 0x6d,
-	0xe1, 0x0c, 0x15, 0xaa, 0xef, 0xe0, 0xae, 0xb4, 0x32, 0x65, 0x15, 0x37, 0x87, 0xfe, 0x50, 0x3a,
-	0xb6, 0xcd, 0xc1, 0x08, 0xef, 0x0a, 0x1e, 0x79, 0x24, 0x9e, 0xc8, 0x93, 0x17, 0x1d, 0x40, 0xd6,
-	0x9f, 0x99, 0x97, 0xbc, 0xf2, 0xee, 0x70, 0xe8, 0x76, 0xf4, 0x32, 0xf0, 0x10, 0x80, 0x79, 0x2f,
-	0x0f, 0xd7, 0x5d, 0xae, 0xde, 0xd1, 0x3b, 0xfe, 0x03, 0xc8, 0x52, 0x65, 0xbd, 0xc7, 0xd5, 0xbb,
-	0xd1, 0x4b, 0xc6, 0x43, 0x00, 0x1a, 0x59, 0xdf, 0xe1, 0xea, 0x3d, 0xfd, 0x6d, 0xe2, 0x57, 0xb0,
-	0x7e, 0x49, 0x7c, 0xd3, 0x27, 0xf2, 0x42, 0xa3, 0xc4, 0x21, 0x77, 0x70, 0xfe, 0x92, 0x55, 0x04,
-	0x79, 0xa5, 0xf1, 0x05, 0xe4, 0x47, 0x43, 0xfb, 0x5a, 0x6d, 0xd8, 0x5d, 0x8e, 0x29, 0x61, 0x60,
-	0x42, 0xb9, 0x5b, 0xcc, 0x4d, 0xdb, 0x51, 0x88, 0x7d, 0x8e, 0xb8, 0x8b, 0x73, 0xbe, 0xed, 0x48,
-	0xc0, 0x03, 0xc8, 0x51, 0x67, 0x4c, 0x02, 0x6a, 0x8d, 0x27, 0xa5, 0x03, 0x9e, 0xed, 0xfb, 0x38,
-	0x12, 0xd5, 0xd7, 0x01, 0x9c, 0xc0, 0x94, 0x85, 0xa2, 0x9e, 0x87, 0x9c, 0x13, 0x98, 0xa2, 0x36,
-	0xd4, 0xb7, 0x61, 0xcb, 0x09, 0xcc, 0x78, 0x3d, 0x90, 0xc2, 0x78, 0xee, 0xd7, 0xef, 0xc3, 0x81,
-	0xc3, 0x12, 0x7b, 0x71, 0x9e, 0xd7, 0x37, 0xa1, 0xe0, 0x04, 0x66, 0x94, 0xca, 0xb2, 0xb0, 0x86,
-	0xa9, 0x5b, 0xdf, 0x87, 0x92, 0x13, 0x98, 0x0b, 0x73, 0xb5, 0x7e, 0x0f, 0xf6, 0x43, 0xdd, 0x5c,
-	0x46, 0xd6, 0x1f, 0xc1, 0x83, 0x39, 0x6d, 0x2c, 0xeb, 0xea, 0x08, 0x8a, 0x49, 0x44, 0xbd, 0x04,
-	0x7b, 0x73, 0xf3, 0x09, 0x4f, 0x76, 0x00, 0x39, 0x81, 0x99, 0x48, 0x15, 0xe9, 0x6f, 0x98, 0x16,
-	0x12, 0x95, 0xc8, 0x83, 0xfa, 0x1d, 0xd8, 0x8d, 0x49, 0x55, 0xcc, 0xcb, 0x35, 0x96, 0x71, 0x2a,
-	0x47, 0x32, 0xa0, 0xeb, 0x0f, 0xe0, 0x5e, 0xa4, 0x9b, 0x8f, 0xe1, 0x7a, 0x01, 0xf2, 0x42, 0xcf,
-	0x23, 0x4d, 0x2e, 0x65, 0x14, 0x99, 0x52, 0x4f, 0xe3, 0xfa, 0x28, 0xf6, 0xea, 0x5b, 0xb0, 0xc9,
-	0x96, 0x5a, 0x8b, 0xb5, 0x7a, 0x11, 0x36, 0x9c, 0xc0, 0xd4, 0x22, 0x4b, 0xb1, 0x86, 0x81, 0x24,
-	0x1f, 0x38, 0x8c, 0x12, 0xe3, 0xef, 0x56, 0xe1, 0xe0, 0x96, 0x63, 0x18, 0x3d, 0x84, 0x3c, 0xeb,
-	0xc0, 0x4d, 0x12, 0x35, 0xe5, 0x99, 0x5b, 0x9a, 0xf2, 0x4c, 0xd8, 0x94, 0xef, 0x41, 0xe6, 0x8a,
-	0x71, 0x89, 0x3e, 0x25, 0x83, 0xe5, 0x08, 0x7d, 0xa5, 0xb5, 0xe4, 0xa6, 0x44, 0xf0, 0x13, 0x06,
-	0x6f, 0x86, 0xf2, 0xd3, 0x10, 0x1a, 0x76, 0xde, 0x0a, 0xba, 0x2a, 0xa0, 0xa1, 0x5c, 0x42, 0x9f,
-	0x01, 0x0a, 0x57, 0x96, 0xd8, 0x0a, 0xcc, 0x0f, 0x16, 0x5c, 0x8c, 0x3a, 0xf2, 0x88, 0x38, 0x6c,
-	0xbc, 0x15, 0x76, 0x4d, 0x10, 0x87, 0x72, 0x09, 0x7d, 0x12, 0xf5, 0xe3, 0x0a, 0xc9, 0xcf, 0x18,
-	0xbc, 0xa1, 0xc4, 0x12, 0xf8, 0x14, 0x8a, 0x42, 0x6f, 0xbe, 0x3c, 0x34, 0xb5, 0x7e, 0x3c, 0x83,
-	0x37, 0x84, 0xfc, 0xe5, 0x61, 0xd8, 0x24, 0xdf, 0x51, 0xc8, 0x23, 0x93, 0x7a, 0x66, 0xa5, 0xfa,
-	0xad, 0xa9, 0x75, 0xe4, 0x19, 0xbc, 0x2d, 0x0d, 0x44, 0x43, 0xde, 0x55, 0x4d, 0x72, 0x49, 0x5a,
-	0x55, 0xaa, 0xc7, 0xcc, 0xac, 0x7a, 0x74, 0xa4, 0xcc, 0xf8, 0x59, 0x82, 0x77, 0x84, 0x3e, 0xd1,
-	0x92, 0x47, 0x76, 0xd5, 0xa3, 0x97, 0xcc, 0xee, 0xa8, 0x52, 0x31, 0xb5, 0xae, 0x3c, 0xb4, 0x53,
-	0x4d, 0x79, 0x57, 0x35, 0xd7, 0x77, 0xa5, 0xdd, 0x51, 0xa5, 0xca, 0xdd, 0x7c, 0x51, 0xfd, 0xc6,
-	0xd4, 0xfa, 0xf2, 0x0c, 0xde, 0x15, 0x80, 0xb0, 0x2d, 0x97, 0x96, 0xdf, 0xc1, 0xbe, 0xf2, 0xf4,
-	0x45, 0xf5, 0x90, 0x9b, 0x1e, 0x55, 0x8e, 0x4d, 0xad, 0x33, 0xcf, 0xe0, 0x3d, 0xe9, 0x6b, 0xd8,
-	0x98, 0x0b, 0x5b, 0xe3, 0x7f, 0xd2, 0xf0, 0xf8, 0x63, 0x8d, 0xa1, 0xec, 0x82, 0xea, 0x90, 0x9d,
-	0x4e, 0x02, 0xea, 0x13, 0x6b, 0x2c, 0x5b, 0x76, 0xfd, 0xca, 0xea, 0x36, 0x86, 0xd0, 0x0e, 0x9d,
-	0x02, 0xd8, 0xde, 0xcf, 0xae, 0x64, 0x49, 0x7f, 0x16, 0x8b, 0x66, 0x89, 0xfe, 0x36, 0x05, 0x8f,
-	0x79, 0x9a, 0x13, 0x09, 0x16, 0xb1, 0x62, 0x12, 0x09, 0x37, 0x27, 0x63, 0xf3, 0xca, 0xf3, 0xc7,
-	0x16, 0x95, 0x57, 0xa6, 0xc7, 0x89, 0x37, 0xf2, 0x8f, 0x3f, 0x6f, 0xf9, 0x94, 0xdb, 0xe3, 0x2f,
-	0xbc, 0x9b, 0xb1, 0x02, 0x62, 0xbc, 0x80, 0x8c, 0xf8, 0x8b, 0x5f, 0x6e, 0xb6, 0xda, 0xb8, 0xff,
-	0x93, 0xd9, 0xff, 0xa1, 0x6b, 0xd6, 0xdb, 0x7d, 0x71, 0x9d, 0xda, 0x6b, 0xff, 0xd8, 0xff, 0xc9,
-	0x3c, 0xed, 0x0e, 0x30, 0x97, 0xa5, 0x0c, 0x0a, 0x6b, 0xb2, 0x69, 0xd5, 0xda, 0xd1, 0x94, 0xd6,
-	0x8e, 0xb2, 0x74, 0x0e, 0xa8, 0x45, 0xa7, 0x81, 0xec, 0x52, 0xe5, 0x88, 0xd5, 0x87, 0x2b, 0xcb,
-	0x19, 0x99, 0x3e, 0xb1, 0x02, 0xcf, 0xe5, 0x4f, 0x97, 0xc3, 0xc0, 0x44, 0x98, 0x4b, 0xd0, 0x5d,
-	0x7e, 0x16, 0xf3, 0x3b, 0x18, 0x9e, 0xe7, 0x29, 0x76, 0x12, 0xf3, 0xa9, 0x0c, 0x22, 0x5e, 0x27,
-	0xb4, 0x86, 0x59, 0x6e, 0xed, 0x47, 0x3a, 0xe6, 0xaf, 0x35, 0xca, 0xf4, 0xa3, 0xe5, 0xa7, 0xf9,
-	0x2a, 0xd2, 0x96, 0x53, 0x91, 0x85, 0xd3, 0xfc, 0x83, 0xb8, 0x0a, 0x4d, 0x4e, 0xf2, 0x99, 0xed,
-	0xbd, 0xb6, 0x02, 0xcb, 0xb7, 0xad, 0xc0, 0xca, 0xad, 0x2b, 0xb0, 0x1a, 0x5f, 0x81, 0x3f, 0x15,
-	0x57, 0x9d, 0xee, 0x94, 0x05, 0x40, 0x7f, 0x86, 0x67, 0x3d, 0x6a, 0xd1, 0xf0, 0xad, 0xea, 0xf3,
-	0xde, 0x48, 0xff, 0x6b, 0x19, 0x0e, 0x16, 0x92, 0xc9, 0xe7, 0xfd, 0x0a, 0xb6, 0x2e, 0xad, 0x80,
-	0xb0, 0x23, 0xc4, 0xf2, 0x55, 0x2d, 0x93, 0xef, 0xa5, 0x4c, 0xd1, 0x9f, 0xd5, 0xfc, 0xb0, 0x3e,
-	0x0a, 0xa8, 0x3f, 0x33, 0xad, 0x77, 0x0a, 0x9a, 0x8e, 0xa0, 0x78, 0x56, 0x7b, 0x27, 0xa1, 0x65,
-	0xd8, 0x51, 0xac, 0xae, 0xa7, 0x11, 0x2f, 0xcb, 0x5b, 0x16, 0x4e, 0xdc, 0xf1, 0x42, 0x6a, 0x85,
-	0xf7, 0x05, 0xfe, 0x9d, 0x7e, 0x04, 0x48, 0x3c, 0x66, 0xf8, 0x77, 0x61, 0xfd, 0x2d, 0x92, 0x19,
-	0x8d, 0x3b, 0x2d, 0x5e, 0x52, 0x0b, 0x64, 0x46, 0x35, 0x9f, 0x25, 0x30, 0xe6, 0x72, 0x26, 0x04,
-	0x6a, 0x1e, 0x3f, 0x83, 0x6d, 0xc9, 0x18, 0x73, 0x58, 0x5c, 0xc8, 0x6c, 0x72, 0x52, 0xcd, 0x5f,
-	0x89, 0x4e, 0xba, 0x9b, 0x0d, 0xd1, 0x31, 0x6f, 0x8f, 0xe0, 0x8e, 0x3c, 0xfe, 0xcd, 0xa1, 0x78,
-	0x6b, 0x33, 0x7d, 0x42, 0x7d, 0x87, 0xa8, 0xbb, 0x99, 0x1d, 0xd1, 0xdd, 0xca, 0x57, 0x3a, 0x2c,
-	0x74, 0xe8, 0x5b, 0x28, 0x25, 0xcd, 0xd8, 0x09, 0xed, 0x4d, 0xc3, 0x4b, 0x9a, 0xdd, 0x98, 0x5d,
-	0x5f, 0x2a, 0x8d, 0xd7, 0x70, 0x3f, 0xda, 0xf2, 0xda, 0x90, 0x35, 0x6e, 0xfc, 0xb3, 0xe0, 0x2f,
-	0x0c, 0xa1, 0xbf, 0x86, 0x1c, 0x37, 0x6f, 0x58, 0xd4, 0x62, 0x61, 0x3b, 0x1c, 0x59, 0x41, 0xa0,
-	0x12, 0xa4, 0x80, 0xd7, 0xf8, 0xb8, 0x6d, 0xb3, 0x90, 0x77, 0x5c, 0xf1, 0x01, 0x4c, 0xa5, 0x49,
-	0x01, 0x83, 0x12, 0xb5, 0x6d, 0x84, 0x60, 0xc5, 0xb5, 0xc6, 0x44, 0x66, 0x0a, 0xff, 0x9b, 0xbd,
-	0xc9, 0xdb, 0x24, 0x18, 0xfa, 0xce, 0x84, 0xbf, 0x22, 0x8a, 0x3c, 0xd1, 0x45, 0xc6, 0x9f, 0xc3,
-	0x83, 0x9b, 0x9e, 0x46, 0xc6, 0xf0, 0x6f, 0xa0, 0x60, 0x71, 0xb9, 0xc9, 0x3f, 0x77, 0xb2, 0xf8,
-	0x65, 0xe9, 0xbf, 0xa3, 0xa5, 0x7f, 0xf8, 0x00, 0x78, 0xdd, 0xd2, 0x28, 0x8c, 0xff, 0xcc, 0xc0,
-	0xe6, 0x19, 0xa1, 0xfc, 0x3b, 0xa4, 0x5a, 0x9d, 0xdf, 0x26, 0x3e, 0xec, 0xe5, 0xab, 0xf7, 0xe3,
-	0x75, 0x39, 0xf1, 0x09, 0xb1, 0xb5, 0x14, 0x7d, 0xf9, 0x43, 0xbf, 0x85, 0xb5, 0xa9, 0xf8, 0xcc,
-	0x25, 0x0f, 0x8e, 0x87, 0x37, 0x7f, 0x06, 0x53, 0xd6, 0xca, 0x02, 0xd5, 0x20, 0xef, 0x89, 0x0f,
-	0x1c, 0x9c, 0x60, 0x79, 0xd1, 0xe4, 0x89, 0x2f, 0x20, 0xad, 0x25, 0xac, 0xdb, 0xa0, 0x36, 0x6c,
-	0x78, 0xee, 0x54, 0xbb, 0x0b, 0xe7, 0x4b, 0xba, 0xc8, 0x8d, 0xf8, 0x95, 0x79, 0x6b, 0x09, 0x27,
-	0x0c, 0x11, 0x86, 0x02, 0xa1, 0x6f, 0xa3, 0x8b, 0x59, 0x9e, 0x61, 0xf9, 0xea, 0xaf, 0x3f, 0xfd,
-	0xda, 0xb8, 0xb5, 0x84, 0xe3, 0x14, 0xe8, 0x4f, 0xf8, 0x5d, 0x95, 0x54, 0xf3, 0x4c, 0xcc, 0x57,
-	0x0f, 0xe6, 0x08, 0xa3, 0xcb, 0xb3, 0xd6, 0x12, 0xd6, 0x0c, 0x50, 0x1d, 0xc0, 0xe3, 0x9e, 0xf3,
-	0x27, 0x5b, 0xe3, 0xe6, 0x8f, 0xe6, 0xcc, 0x13, 0xf7, 0x50, 0x8c, 0x23, 0xb2, 0x42, 0xe7, 0xb0,
-	0xc6, 0x4a, 0x37, 0x23, 0xc8, 0x72, 0x82, 0x17, 0x9f, 0x71, 0xea, 0x86, 0x5b, 0x26, 0x29, 0xd0,
-	0x31, 0xa8, 0xb2, 0xcd, 0x73, 0x39, 0x5f, 0xbd, 0x17, 0x67, 0x8b, 0xdf, 0xfa, 0x30, 0x4b, 0x09,
-	0x47, 0xaf, 0x60, 0xdd, 0x13, 0x41, 0xcd, 0x2b, 0x32, 0x4f, 0xe9, 0x7c, 0xf5, 0xcb, 0xb9, 0xa7,
-	0x59, 0x74, 0x08, 0xb4, 0x96, 0x70, 0xcc, 0x18, 0xd5, 0x00, 0xbc, 0xf0, 0xc4, 0xe4, 0x9d, 0xdf,
-	0xfc, 0x96, 0x8f, 0xe6, 0x9d, 0xd1, 0x8c, 0x50, 0x1f, 0x36, 0x3d, 0x77, 0xaa, 0x27, 0x18, 0xef,
-	0x04, 0xf3, 0xd5, 0xa7, 0x0b, 0x5d, 0x5a, 0x50, 0x57, 0x5a, 0x4b, 0x38, 0x49, 0x51, 0xcf, 0xc1,
-	0x9a, 0x2f, 0xb4, 0xc6, 0x1f, 0x80, 0xdf, 0xaf, 0xca, 0x5c, 0x93, 0xb9, 0xfb, 0x5d, 0x78, 0x7e,
-	0x8a, 0x8f, 0x12, 0x46, 0x7c, 0xb2, 0x18, 0xb8, 0xdc, 0xe3, 0xc8, 0xf0, 0x8c, 0x6d, 0x42, 0x8e,
-	0xf8, 0xbe, 0x38, 0x4f, 0xe5, 0xf7, 0xc9, 0x27, 0xb7, 0x99, 0xf3, 0x76, 0x5f, 0xc0, 0x71, 0x64,
-	0x89, 0x7e, 0xa7, 0xe5, 0xbb, 0x48, 0xb9, 0x07, 0x37, 0xe5, 0xbb, 0x20, 0x8a, 0x25, 0xfc, 0xef,
-	0xa2, 0x84, 0x5f, 0xb9, 0x21, 0x1e, 0x13, 0xdf, 0xbd, 0xf5, 0x8c, 0x7f, 0x05, 0xeb, 0x13, 0x91,
-	0xcd, 0xd4, 0x25, 0x7e, 0x20, 0x53, 0xec, 0xcb, 0x5b, 0x53, 0x5e, 0xe3, 0x89, 0x19, 0xa3, 0xef,
-	0xe7, 0x72, 0x5f, 0x24, 0xd8, 0x93, 0x8f, 0xe4, 0xbe, 0x46, 0x98, 0xac, 0x01, 0x97, 0xb0, 0x15,
-	0x4b, 0x60, 0x2d, 0xef, 0xaa, 0x9f, 0x5e, 0x07, 0xb4, 0x09, 0xe6, 0xe9, 0x50, 0x33, 0x56, 0x13,
-	0x44, 0x4e, 0xfe, 0xea, 0x96, 0x9a, 0xa0, 0xb1, 0xe9, 0xb5, 0xe1, 0x15, 0x7f, 0xfa, 0x0b, 0xcf,
-	0x55, 0xeb, 0x24, 0x13, 0xf2, 0x8b, 0x5b, 0xea, 0x43, 0xec, 0xb9, 0x35, 0x53, 0x34, 0xe0, 0x17,
-	0xcc, 0x21, 0x93, 0xc8, 0xcd, 0xca, 0x67, 0xb7, 0xe7, 0xbc, 0x3a, 0x47, 0x3c, 0xe8, 0x37, 0x51,
-	0xb5, 0xc8, 0x2f, 0x2a, 0xee, 0x89, 0x6e, 0x54, 0x2f, 0x17, 0xe7, 0x89, 0x72, 0xb1, 0x3e, 0xf7,
-	0x5a, 0x72, 0x4b, 0x9b, 0x37, 0x57, 0x2f, 0xea, 0xb1, 0x7a, 0x51, 0x58, 0x18, 0xb8, 0xa3, 0x05,
-	0xee, 0xe8, 0x05, 0x63, 0x30, 0x5f, 0x30, 0x36, 0x38, 0xd1, 0x57, 0x9f, 0x50, 0x30, 0x42, 0xc6,
-	0x24, 0x87, 0x51, 0x81, 0x8c, 0xc8, 0x73, 0xb4, 0x03, 0xc5, 0x5e, 0xbf, 0xd6, 0x1f, 0xf4, 0x62,
-	0x3f, 0x6f, 0xc8, 0x40, 0xba, 0xfb, 0xaa, 0x98, 0xe2, 0x3f, 0x58, 0xc2, 0xb8, 0x8b, 0x8b, 0x69,
-	0xe3, 0x1f, 0x53, 0x90, 0xd7, 0x92, 0x9b, 0x19, 0xe2, 0x66, 0xad, 0xd7, 0xed, 0xc4, 0x0c, 0x37,
-	0x21, 0x3f, 0xe8, 0xf4, 0x06, 0x17, 0x17, 0x5d, 0xdc, 0xe7, 0xbf, 0x8d, 0xd8, 0x85, 0xad, 0x76,
-	0xe7, 0x4d, 0xed, 0xbc, 0xdd, 0x30, 0x1b, 0xcd, 0x37, 0xed, 0x93, 0xa6, 0xd9, 0x6e, 0x14, 0xd3,
-	0xba, 0x98, 0x41, 0xcd, 0xfe, 0x4f, 0x17, 0xcd, 0xe2, 0x32, 0xca, 0xc3, 0x5a, 0xbf, 0xfd, 0xba,
-	0xd9, 0x1d, 0xf4, 0x8b, 0x2b, 0x6c, 0x06, 0x85, 0xc1, 0xcd, 0xef, 0x05, 0x64, 0x95, 0xbd, 0x44,
-	0xb5, 0x3b, 0xfd, 0x26, 0xee, 0xd4, 0xce, 0x4d, 0xe1, 0x5b, 0x46, 0xc8, 0xf4, 0x49, 0x8a, 0x6b,
-	0x75, 0x80, 0xac, 0x2f, 0x57, 0xc0, 0x78, 0x03, 0x9b, 0xbd, 0x44, 0x03, 0x92, 0xfc, 0x89, 0x57,
-	0xea, 0x93, 0x7f, 0xe2, 0xa5, 0x55, 0xdb, 0xff, 0x4d, 0x41, 0xb1, 0xf7, 0x39, 0xd5, 0xb6, 0xf7,
-	0xff, 0xab, 0xb6, 0xbd, 0x4f, 0xab, 0xb6, 0xbf, 0x64, 0x7b, 0x0f, 0x7f, 0xc9, 0xee, 0x1a, 0x0e,
-	0xec, 0xf6, 0x1c, 0xf7, 0x7a, 0x44, 0x92, 0xfd, 0xdd, 0x3e, 0x64, 0xa9, 0xe5, 0x5f, 0x13, 0x1a,
-	0x7e, 0x39, 0x0a, 0xc7, 0xe8, 0x30, 0x5c, 0x40, 0xd9, 0xbe, 0xed, 0x2f, 0x3c, 0x50, 0x38, 0x02,
-	0x87, 0x6b, 0xfd, 0x3d, 0xec, 0x25, 0xa7, 0x92, 0x0b, 0xfe, 0x6d, 0xb4, 0xd3, 0x72, 0x1b, 0x0f,
-	0x6e, 0x39, 0xa1, 0x70, 0x14, 0x16, 0xa1, 0xf7, 0xbd, 0x3f, 0x96, 0xf7, 0xbd, 0x8f, 0x7a, 0xdf,
-	0xfb, 0x3c, 0xef, 0x7b, 0x37, 0x7a, 0x5f, 0xfd, 0xe7, 0x14, 0xe4, 0x9a, 0x0a, 0x88, 0x30, 0xe4,
-	0xcf, 0x08, 0x6d, 0xce, 0x04, 0x1c, 0xe9, 0x75, 0x66, 0xe1, 0x0e, 0xed, 0x7f, 0x71, 0x0b, 0x42,
-	0xba, 0x86, 0x21, 0xdf, 0xbb, 0x95, 0xb3, 0xf7, 0x51, 0xce, 0xa4, 0xff, 0x75, 0x0c, 0xf7, 0x3d,
-	0xff, 0xba, 0xec, 0x4d, 0x88, 0x3b, 0xf4, 0x7c, 0xbb, 0x2c, 0x7e, 0xc2, 0x19, 0xd9, 0xfd, 0x59,
-	0xe5, 0xda, 0xa1, 0x6f, 0xa7, 0x97, 0xe5, 0xa1, 0x37, 0x7e, 0xae, 0x50, 0xcf, 0x05, 0xea, 0x6b,
-	0xf9, 0x43, 0xcf, 0xf7, 0x47, 0xcf, 0xaf, 0xbd, 0xe8, 0x97, 0xa1, 0x97, 0x19, 0x2e, 0xff, 0xe6,
-	0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x1c, 0x44, 0x89, 0x74, 0x3b, 0x2a, 0x00, 0x00,
+	// 4588 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x7b, 0x5b, 0x73, 0xdb, 0x48,
+	0x76, 0xbf, 0x48, 0x49, 0x14, 0x79, 0x48, 0x4a, 0x74, 0xeb, 0x62, 0x59, 0xf2, 0x6d, 0xb0, 0x3b,
+	0xb6, 0x67, 0xff, 0x1e, 0xda, 0xa4, 0x2d, 0x59, 0xe3, 0xd9, 0x7f, 0x6a, 0x49, 0x91, 0x32, 0x19,
+	0xdb, 0x24, 0xa7, 0x49, 0xce, 0x25, 0xa9, 0x2c, 0x16, 0x22, 0x5a, 0x32, 0xca, 0x24, 0x9a, 0x01,
+	0x40, 0x0d, 0x3d, 0xa9, 0xbc, 0xe5, 0x6d, 0x93, 0xa7, 0xbc, 0xe4, 0x43, 0x24, 0x95, 0x87, 0x3c,
+	0xa4, 0xf2, 0xba, 0x95, 0x97, 0x54, 0xe5, 0x4b, 0xa4, 0x2a, 0x5f, 0x20, 0xa9, 0xcd, 0x4b, 0x52,
+	0x95, 0x4a, 0xf5, 0x05, 0x40, 0x03, 0xa4, 0x6e, 0xb3, 0x53, 0x93, 0xaa, 0xbc, 0xd8, 0xea, 0x73,
+	0x7e, 0xe7, 0xd7, 0x07, 0x8d, 0x73, 0x4e, 0x1f, 0x34, 0x40, 0xb8, 0x7b, 0x46, 0x87, 0xde, 0x3b,
+	0x43, 0x1f, 0x3b, 0xd4, 0xa3, 0xee, 0x13, 0x32, 0xf5, 0x88, 0xed, 0x5a, 0xd4, 0x76, 0x8b, 0x5c,
+	0x82, 0x32, 0x81, 0x64, 0x67, 0x16, 0xaa, 0x0f, 0xa8, 0x7d, 0x62, 0x9d, 0x0a, 0xe8, 0xce, 0xee,
+	0x29, 0xa5, 0xa7, 0x43, 0xf2, 0x84, 0x8f, 0x8e, 0x27, 0x27, 0x4f, 0xc8, 0x68, 0xec, 0x7d, 0x10,
+	0x4a, 0xed, 0x8f, 0x20, 0xfd, 0xa5, 0x31, 0x9c, 0x90, 0x2e, 0xf1, 0xd0, 0x2a, 0x24, 0x2d, 0x73,
+	0x3b, 0x71, 0x3f, 0xf1, 0x28, 0x83, 0x93, 0x96, 0x89, 0x0e, 0x20, 0x67, 0x0c, 0x0d, 0x67, 0x24,
+	0xe9, 0xb6, 0x93, 0xf7, 0x13, 0x8f, 0xb2, 0xe5, 0xf5, 0xa2, 0x64, 0xaf, 0x30, 0xdd, 0x21, 0xff,
+	0xbb, 0xb1, 0x80, 0xb3, 0x46, 0x38, 0xac, 0xae, 0xc0, 0xf2, 0x19, 0x63, 0xd5, 0x1e, 0x43, 0x86,
+	0xd3, 0xf7, 0x3e, 0x8c, 0x89, 0x76, 0x0f, 0x96, 0xd8, 0xff, 0x28, 0x03, 0xcb, 0xf5, 0xb7, 0x9d,
+	0xde, 0x37, 0x85, 0x05, 0x94, 0x83, 0x74, 0xad, 0xd9, 0xed, 0x55, 0x5a, 0x87, 0xf5, 0x42, 0x42,
+	0xfb, 0x02, 0x56, 0x85, 0x33, 0x63, 0x32, 0xb0, 0x4e, 0x2c, 0xe2, 0xcc, 0xb8, 0xf4, 0x44, 0x12,
+	0x73, 0x5f, 0x56, 0xcb, 0xb7, 0x8a, 0xc1, 0x32, 0x14, 0x83, 0x79, 0x8a, 0xec, 0x1f, 0x2c, 0x1d,
+	0xf0, 0x20, 0x87, 0x89, 0x37, 0x71, 0x6c, 0xae, 0x76, 0x51, 0x01, 0x16, 0xbb, 0xc4, 0xe3, 0x8c,
+	0x79, 0xcc, 0xfe, 0x44, 0xf7, 0x21, 0xdb, 0xb7, 0xdd, 0xc9, 0x78, 0x4c, 0x1d, 0x8f, 0x98, 0x9c,
+	0x38, 0x8f, 0x55, 0x11, 0xda, 0x80, 0xe5, 0xba, 0xe3, 0x50, 0x67, 0x7b, 0x91, 0xeb, 0xc4, 0x00,
+	0xed, 0x40, 0xba, 0x66, 0xb9, 0x9e, 0x61, 0x0f, 0xc8, 0xf6, 0x12, 0x57, 0x04, 0x63, 0x6d, 0x1f,
+	0xd0, 0x2b, 0xe2, 0xf9, 0x43, 0x4c, 0xfe, 0x78, 0x42, 0x5c, 0x3e, 0x13, 0xb5, 0x27, 0x35, 0x72,
+	0x66, 0x0d, 0x48, 0xd3, 0xbf, 0x2a, 0x55, 0xa4, 0x95, 0x60, 0x3d, 0x62, 0xe7, 0x8e, 0xa9, 0xed,
+	0x12, 0x36, 0x95, 0xe9, 0x4f, 0x25, 0x3c, 0x0f, 0xc6, 0x5a, 0x19, 0x36, 0x5e, 0x11, 0xaf, 0x6d,
+	0x4f, 0xfa, 0xb6, 0xd5, 0xb4, 0x4f, 0xa8, 0x3f, 0xd9, 0x0e, 0xa4, 0x27, 0x4c, 0x62, 0x92, 0xa9,
+	0x6f, 0xe3, 0x8f, 0xb5, 0x7f, 0x59, 0x82, 0xcd, 0x98, 0x91, 0x9c, 0xa9, 0x03, 0x69, 0xc3, 0x1c,
+	0x75, 0x3d, 0xc3, 0x13, 0x33, 0xad, 0x96, 0x9f, 0x2b, 0x4b, 0x3c, 0xd7, 0xa6, 0x58, 0x31, 0x47,
+	0x96, 0x6d, 0xb9, 0x9e, 0x63, 0x78, 0xd6, 0x19, 0xe1, 0xb6, 0x38, 0x60, 0x41, 0x6d, 0xc8, 0xd0,
+	0x31, 0x71, 0x04, 0xa5, 0xb8, 0x6b, 0xa5, 0x4b, 0x29, 0xdb, 0x63, 0xc2, 0xd8, 0xa8, 0x6d, 0x0c,
+	0x05, 0x5f, 0xc8, 0xc1, 0x08, 0x45, 0x00, 0x36, 0x6d, 0x93, 0xdf, 0x91, 0xab, 0x10, 0x8a, 0xb8,
+	0x9c, 0x08, 0xd2, 0xa6, 0x6d, 0xe2, 0x90, 0x43, 0xfb, 0x4d, 0x02, 0x0a, 0x71, 0x3d, 0x02, 0x48,
+	0xf5, 0x5b, 0xaf, 0xdb, 0x5f, 0xb5, 0x0a, 0x0b, 0x08, 0xc1, 0x6a, 0xaf, 0xde, 0xd2, 0xab, 0x95,
+	0x6e, 0x5d, 0xef, 0xe9, 0x47, 0xb5, 0xaf, 0x0b, 0x09, 0xb4, 0x05, 0xa8, 0xd1, 0x6f, 0xd5, 0x70,
+	0xbd, 0xa6, 0xca, 0x93, 0x68, 0x1b, 0x36, 0x5e, 0x35, 0x5f, 0x55, 0xaa, 0xcd, 0x9e, 0x5e, 0xef,
+	0x35, 0xea, 0xb8, 0x55, 0x17, 0x9a, 0x45, 0x66, 0xc1, 0x58, 0x5e, 0x45, 0xe5, 0x4b, 0x31, 0xf6,
+	0x46, 0xed, 0xeb, 0xc2, 0xf2, 0x1c, 0x76, 0x26, 0x4f, 0xcd, 0x65, 0x67, 0x9a, 0x15, 0xed, 0x15,
+	0xac, 0xcf, 0xb9, 0x0f, 0x8c, 0xa8, 0x52, 0x7b, 0xdb, 0xed, 0x55, 0x7a, 0x75, 0xbd, 0xdf, 0xaa,
+	0xd5, 0x8f, 0x9a, 0xad, 0x7a, 0xad, 0xb0, 0xc0, 0x2e, 0xef, 0x4d, 0xfb, 0xf0, 0x75, 0xbd, 0x56,
+	0x48, 0xb0, 0x1c, 0xec, 0xb7, 0xe4, 0x28, 0xa9, 0x1d, 0x41, 0x21, 0xbe, 0xfa, 0xe8, 0x26, 0xac,
+	0xb7, 0x3b, 0x75, 0x3c, 0x4b, 0x93, 0x85, 0x95, 0x7a, 0xab, 0x52, 0x7d, 0xe3, 0xf3, 0xd4, 0x9a,
+	0x5d, 0x31, 0x4a, 0x6a, 0x7f, 0x9f, 0xe0, 0x39, 0xd0, 0x1e, 0x7a, 0x1d, 0xea, 0x78, 0x87, 0x74,
+	0x62, 0x7b, 0xc4, 0x71, 0xd1, 0x16, 0xa4, 0x58, 0x56, 0xb5, 0xa8, 0x0c, 0x4a, 0x39, 0x42, 0x55,
+	0x48, 0xb3, 0xbf, 0x58, 0xea, 0xca, 0x28, 0x79, 0x10, 0xbb, 0xa9, 0x51, 0xa2, 0x62, 0x47, 0xa2,
+	0x71, 0x60, 0xa7, 0xd5, 0x21, 0xed, 0x4b, 0x51, 0x01, 0x72, 0xec, 0x6f, 0xbd, 0xdf, 0x7a, 0xdd,
+	0x12, 0x77, 0x71, 0x13, 0x6e, 0x70, 0x49, 0xb0, 0x70, 0xad, 0x56, 0xb3, 0x90, 0x08, 0x80, 0x9d,
+	0x76, 0x4b, 0x6f, 0xbf, 0xe9, 0x15, 0x92, 0xda, 0x3f, 0x2f, 0xc2, 0xce, 0xec, 0x84, 0x41, 0x8a,
+	0x6c, 0xc3, 0x8a, 0x37, 0xad, 0x7e, 0xf0, 0x88, 0xcb, 0x2f, 0x61, 0x09, 0xfb, 0x43, 0xa6, 0x71,
+	0xa4, 0x26, 0x29, 0x34, 0x72, 0x88, 0x6e, 0x43, 0xc6, 0x9b, 0x76, 0x8c, 0xc1, 0x7b, 0xe2, 0xb9,
+	0x3c, 0x66, 0x97, 0x70, 0x28, 0x60, 0x5a, 0x27, 0xd0, 0x2e, 0x09, 0x6d, 0x20, 0x40, 0x0f, 0x60,
+	0xd5, 0x9b, 0xf2, 0x92, 0xe3, 0x43, 0x96, 0x39, 0x24, 0x26, 0x65, 0x38, 0x27, 0x8a, 0x4b, 0x09,
+	0x9c, 0x33, 0x83, 0xf3, 0xa6, 0xd5, 0x81, 0xe1, 0x7a, 0x3e, 0x6e, 0xc5, 0xe7, 0x53, 0xa5, 0x82,
+	0x2f, 0x82, 0x4b, 0xfb, 0x7c, 0x71, 0x9c, 0x37, 0xed, 0xab, 0xb8, 0x8c, 0xcf, 0xd7, 0x9f, 0xe1,
+	0x8b, 0xe0, 0xc0, 0xe7, 0xeb, 0xcf, 0xf0, 0xbd, 0x55, 0x71, 0x59, 0x9f, 0xef, 0xed, 0x0c, 0x5f,
+	0x04, 0x97, 0xf3, 0xf9, 0x54, 0xa9, 0x56, 0xf3, 0x0b, 0x64, 0x87, 0xda, 0xed, 0xb1, 0x67, 0x0d,
+	0x8c, 0x21, 0x2b, 0x0d, 0xe8, 0x31, 0x2c, 0xf3, 0x8d, 0x90, 0xdf, 0xc5, 0x6c, 0x79, 0xab, 0x28,
+	0xb6, 0xc9, 0xa2, 0xbf, 0x4d, 0x16, 0xeb, 0x4c, 0x8b, 0x05, 0x48, 0xfb, 0xb3, 0x24, 0xdc, 0x9e,
+	0x47, 0x13, 0x84, 0xc5, 0xcf, 0xa0, 0x30, 0xa6, 0xdf, 0x12, 0xe7, 0x88, 0x10, 0xf3, 0x4b, 0x3a,
+	0xf4, 0x8c, 0x53, 0x51, 0x41, 0x93, 0x78, 0x46, 0x8e, 0xca, 0xb0, 0xe1, 0x90, 0x01, 0xb1, 0xce,
+	0x88, 0x29, 0xa9, 0x3a, 0x0c, 0xc2, 0xa3, 0x26, 0x89, 0xe7, 0xea, 0xd0, 0x3e, 0x6c, 0x8d, 0x88,
+	0xe1, 0x4f, 0xfd, 0xc6, 0x98, 0xd8, 0x83, 0x77, 0xc2, 0x6a, 0x91, 0x5b, 0x9d, 0xa3, 0x65, 0x7e,
+	0x0d, 0x0d, 0x97, 0x38, 0x55, 0xcb, 0x70, 0x0f, 0x27, 0x8e, 0x43, 0x6c, 0x8f, 0xc7, 0x58, 0x12,
+	0xcf, 0xc8, 0xd9, 0x06, 0xe5, 0x91, 0x11, 0xcf, 0xfe, 0x89, 0x43, 0x78, 0x9c, 0x25, 0xb1, 0x2a,
+	0xd2, 0xfe, 0x36, 0x01, 0xf7, 0xc4, 0x32, 0xd4, 0xbd, 0x77, 0xc4, 0xb1, 0x89, 0x57, 0x75, 0x2c,
+	0xf3, 0x94, 0xb0, 0x4c, 0x69, 0x58, 0xae, 0x47, 0x9d, 0x0f, 0x08, 0x43, 0xc6, 0xb4, 0x1c, 0x32,
+	0x60, 0x15, 0xe4, 0xdc, 0x4d, 0xe4, 0x5c, 0xf3, 0x62, 0xcd, 0xb7, 0xc5, 0x21, 0x8d, 0x76, 0x00,
+	0x99, 0x40, 0x8e, 0xf2, 0x90, 0x51, 0x8b, 0x10, 0xab, 0x5f, 0x9d, 0x6e, 0x0f, 0xd7, 0x2b, 0x6f,
+	0x0b, 0x09, 0xb4, 0x0a, 0x50, 0x6b, 0x7f, 0xd5, 0x92, 0xe3, 0xa4, 0xf6, 0x97, 0xcb, 0xf0, 0xf0,
+	0x92, 0x29, 0x83, 0x7b, 0x78, 0x17, 0xc0, 0x74, 0xe8, 0xb8, 0x7e, 0x46, 0x6c, 0xcf, 0x95, 0x05,
+	0x4a, 0x91, 0xb0, 0xe2, 0x45, 0x07, 0x1e, 0x0b, 0x35, 0xd1, 0x25, 0xc8, 0x11, 0x4b, 0xfc, 0xb1,
+	0x92, 0xdc, 0x79, 0xec, 0x0f, 0xd9, 0xea, 0x1f, 0x3b, 0xd4, 0x30, 0xd5, 0x30, 0x15, 0xcd, 0xc2,
+	0x8c, 0x9c, 0x61, 0x47, 0x93, 0x21, 0xbb, 0x81, 0x21, 0x76, 0x59, 0x60, 0xe3, 0x72, 0xf4, 0x18,
+	0x6e, 0x0c, 0x9c, 0x01, 0xcf, 0x6b, 0x62, 0xaa, 0xf9, 0x9e, 0xc7, 0xb3, 0x0a, 0xc6, 0x3c, 0xb1,
+	0x4d, 0xe2, 0xb8, 0xd6, 0x77, 0x44, 0x4d, 0xfa, 0x3c, 0x9e, 0x91, 0xa3, 0x47, 0xb0, 0x46, 0xcf,
+	0xa2, 0xd0, 0x34, 0x87, 0xc6, 0xc5, 0x0c, 0x29, 0x2f, 0x73, 0xff, 0xb9, 0x5c, 0x96, 0x8c, 0x40,
+	0xc6, 0xc4, 0x2c, 0xde, 0x7d, 0xd1, 0x5e, 0x8f, 0x96, 0xca, 0x2f, 0x24, 0x1c, 0x38, 0x7c, 0xae,
+	0x0e, 0x3d, 0x87, 0x4d, 0x29, 0x2f, 0x95, 0x0f, 0x7a, 0xb4, 0xbc, 0xb7, 0xd7, 0x16, 0x46, 0x59,
+	0x6e, 0x34, 0x5f, 0xa9, 0x58, 0x95, 0xf7, 0xf6, 0x7b, 0x74, 0xaf, 0x54, 0x92, 0x53, 0xe5, 0x22,
+	0x56, 0x51, 0x25, 0xcb, 0x2d, 0xa9, 0xd8, 0x2b, 0x95, 0x7b, 0xb4, 0xf4, 0xb4, 0xfc, 0x4c, 0x9a,
+	0xe5, 0xb9, 0xd9, 0x39, 0x5a, 0x74, 0x00, 0x37, 0x7d, 0x37, 0x9e, 0x96, 0x9f, 0xf7, 0x68, 0x69,
+	0xaf, 0x74, 0x20, 0x0d, 0x57, 0xb9, 0xe1, 0x79, 0x6a, 0xed, 0x17, 0x50, 0x10, 0x41, 0x79, 0x44,
+	0x06, 0x7e, 0xde, 0x5c, 0xaf, 0x20, 0xfd, 0x7b, 0x02, 0xb6, 0xe3, 0x14, 0x41, 0x20, 0x3f, 0x80,
+	0xd5, 0x01, 0x75, 0x58, 0xbe, 0x10, 0x33, 0xdc, 0xaa, 0xf2, 0x38, 0x26, 0x45, 0x45, 0x40, 0x81,
+	0xe4, 0x90, 0x9a, 0xe4, 0x2b, 0xea, 0x98, 0x7e, 0x70, 0xcf, 0xd1, 0xb0, 0x04, 0x39, 0x21, 0x83,
+	0x2e, 0x19, 0x50, 0xdb, 0xf4, 0x63, 0x5d, 0x91, 0xf0, 0xda, 0x4d, 0x3d, 0x63, 0x18, 0x72, 0x89,
+	0x60, 0x8f, 0x49, 0xd9, 0x82, 0x4f, 0x6c, 0xc9, 0x6f, 0x1c, 0x0f, 0x49, 0x88, 0x17, 0x01, 0x7f,
+	0x8e, 0x56, 0x7b, 0xe5, 0xf7, 0xad, 0xe1, 0xae, 0x2c, 0xba, 0xdd, 0x9b, 0xb0, 0x62, 0xd9, 0xde,
+	0x89, 0x2e, 0x1f, 0x16, 0x56, 0x70, 0x8a, 0x0d, 0x9b, 0x26, 0xda, 0x84, 0x14, 0xb5, 0x27, 0x4c,
+	0x9e, 0xe4, 0xf2, 0x65, 0x6a, 0x4f, 0x9a, 0xa6, 0xf6, 0x17, 0x09, 0xf8, 0x98, 0x31, 0x8d, 0x06,
+	0x96, 0x5f, 0x16, 0x8e, 0x1c, 0x63, 0x44, 0xea, 0xac, 0x4c, 0x99, 0xc4, 0xec, 0x8c, 0xae, 0xdc,
+	0xb4, 0xa3, 0xdb, 0x4a, 0xa7, 0xcd, 0x97, 0xae, 0xb1, 0x10, 0xf6, 0xda, 0xec, 0xe1, 0xc1, 0x21,
+	0x2e, 0xf1, 0xf8, 0x6a, 0xa5, 0xb1, 0x18, 0x54, 0x57, 0x21, 0x67, 0xb9, 0xfa, 0xc4, 0xb6, 0x74,
+	0x8b, 0x77, 0xe4, 0x87, 0x70, 0xe3, 0x15, 0xf1, 0xf0, 0x94, 0xd7, 0xec, 0xef, 0x7b, 0x51, 0x6f,
+	0xc4, 0x4e, 0x37, 0x8c, 0xf3, 0xdc, 0x01, 0x60, 0x3d, 0x92, 0x3e, 0x34, 0x8e, 0xc9, 0x50, 0x5e,
+	0x41, 0x86, 0x49, 0xde, 0x30, 0x81, 0xcf, 0xe6, 0xda, 0x9c, 0x2d, 0xc3, 0xd9, 0xba, 0xb6, 0xf6,
+	0xaf, 0x39, 0xd8, 0x8a, 0x2f, 0xb6, 0x0c, 0xaf, 0x5b, 0x31, 0xc7, 0x1a, 0x0b, 0x81, 0x6b, 0x37,
+	0xa3, 0xae, 0x35, 0x12, 0xd2, 0x39, 0xf4, 0x10, 0x56, 0xc7, 0xd4, 0xb5, 0x58, 0x6b, 0xaa, 0x9b,
+	0x8e, 0x75, 0x22, 0x16, 0x24, 0xd5, 0x48, 0xe2, 0xbc, 0x2f, 0xaf, 0x31, 0x31, 0x03, 0xda, 0xe4,
+	0xd4, 0x50, 0x80, 0x4b, 0x1c, 0xb8, 0x88, 0xf3, 0xbe, 0x5c, 0x00, 0x5f, 0xc2, 0xb6, 0x49, 0x86,
+	0xd6, 0xc8, 0xf2, 0x88, 0xa3, 0x8f, 0x2c, 0xd7, 0xd5, 0x4d, 0xe2, 0xc9, 0x6d, 0x67, 0x99, 0x9b,
+	0x2c, 0xe1, 0xad, 0x00, 0xf1, 0xd6, 0x72, 0xdd, 0x9a, 0xaf, 0x47, 0xf7, 0x00, 0x8e, 0xad, 0xb1,
+	0x4e, 0x58, 0x9d, 0x14, 0x85, 0x33, 0xd5, 0x58, 0xc6, 0x99, 0x63, 0x6b, 0xcc, 0x4b, 0xa7, 0x8b,
+	0xee, 0x00, 0x1b, 0xb0, 0x3b, 0x24, 0x6b, 0x65, 0xaa, 0x91, 0xc2, 0xe9, 0x63, 0x6b, 0xdc, 0x67,
+	0x12, 0x56, 0x67, 0x4e, 0xc8, 0x40, 0x0f, 0x52, 0x44, 0x77, 0x3f, 0x8c, 0x8e, 0xe9, 0x50, 0xd4,
+	0xca, 0x54, 0x63, 0x05, 0xaf, 0x9f, 0x90, 0xc1, 0xa1, 0xaf, 0xed, 0x0a, 0x25, 0xab, 0x17, 0xc2,
+	0xca, 0x24, 0xdf, 0xb2, 0x78, 0x0e, 0xed, 0x79, 0xe5, 0x4c, 0x35, 0xd2, 0x78, 0x93, 0xdb, 0x49,
+	0x7d, 0x40, 0x80, 0x7e, 0x01, 0xbb, 0x51, 0xcb, 0x48, 0x82, 0xf0, 0x42, 0x9a, 0x6a, 0x64, 0xf0,
+	0x2d, 0xd5, 0xba, 0xaf, 0x42, 0xd0, 0xc7, 0x90, 0x8f, 0x30, 0xf0, 0x3a, 0x9a, 0x6a, 0x00, 0xce,
+	0xa9, 0x36, 0xe8, 0x29, 0xac, 0x47, 0x2f, 0x4c, 0xac, 0x40, 0x8e, 0x83, 0xb3, 0xf8, 0x86, 0x7a,
+	0x59, 0x62, 0x29, 0x1e, 0xc1, 0xda, 0xf4, 0x94, 0x8c, 0xf4, 0xf7, 0xe4, 0x83, 0xbf, 0x9e, 0x79,
+	0x8e, 0xce, 0xe1, 0x3c, 0x53, 0xbc, 0x26, 0x1f, 0xc2, 0x35, 0xe5, 0xc8, 0x21, 0x75, 0x45, 0x81,
+	0x4c, 0x35, 0xf2, 0x38, 0xcd, 0x44, 0x6f, 0xa8, 0xcb, 0x89, 0x9c, 0xa9, 0x3e, 0x1e, 0x52, 0x63,
+	0xe4, 0x0a, 0xa6, 0xed, 0x35, 0x0e, 0x5a, 0xc5, 0x79, 0x67, 0xda, 0xe1, 0x72, 0xf1, 0xe8, 0xfd,
+	0x29, 0xa0, 0x10, 0x69, 0x53, 0x5b, 0xb7, 0xcc, 0x21, 0xd9, 0x2e, 0x70, 0xf0, 0x1a, 0x5e, 0xf3,
+	0xc1, 0x2d, 0x6a, 0x37, 0xcd, 0x21, 0x0f, 0x57, 0x67, 0xaa, 0xd3, 0xd1, 0xc0, 0xda, 0xbe, 0xc1,
+	0x31, 0x05, 0x9c, 0x72, 0xa6, 0x2c, 0xf7, 0x99, 0xca, 0x93, 0x2a, 0xc4, 0x55, 0x37, 0x70, 0xca,
+	0x13, 0xaa, 0x97, 0x70, 0x4b, 0x5a, 0xe9, 0xb2, 0x8a, 0xeb, 0x03, 0x67, 0x20, 0x1d, 0x5b, 0xe7,
+	0x60, 0x84, 0x37, 0x05, 0x8f, 0xdc, 0x12, 0x0f, 0xe5, 0xce, 0x8b, 0x76, 0x21, 0xed, 0x4c, 0xf5,
+	0x63, 0x5e, 0x79, 0x37, 0x38, 0x74, 0x3d, 0x7c, 0x18, 0xb8, 0x07, 0xc0, 0xbc, 0x97, 0x9b, 0xeb,
+	0x26, 0x57, 0x6f, 0xa8, 0x1d, 0xff, 0x2e, 0xa4, 0x3d, 0xdf, 0x7a, 0x8b, 0xab, 0x37, 0xc3, 0x87,
+	0x8c, 0x7b, 0x00, 0x5e, 0x68, 0x7d, 0x93, 0xab, 0xb7, 0xd4, 0xa7, 0x89, 0x9f, 0x40, 0xee, 0x98,
+	0x38, 0xba, 0x43, 0xe4, 0x81, 0xc6, 0x36, 0x87, 0xdc, 0xc4, 0xd9, 0x63, 0x56, 0x11, 0xe4, 0x91,
+	0xc6, 0x47, 0x90, 0x1d, 0x0e, 0xcc, 0x53, 0xff, 0x86, 0xdd, 0xe2, 0x98, 0x6d, 0x0c, 0x4c, 0x28,
+	0xef, 0x16, 0x73, 0xd3, 0xb4, 0x7c, 0xc4, 0x0e, 0x47, 0xdc, 0xc2, 0x19, 0xc7, 0xb4, 0x24, 0xe0,
+	0x2e, 0x64, 0x3c, 0x6b, 0x44, 0x5c, 0xcf, 0x18, 0x8d, 0xb7, 0x77, 0x79, 0xb6, 0xef, 0xe0, 0x50,
+	0x54, 0xcd, 0x01, 0x58, 0xae, 0x2e, 0x0b, 0x45, 0x35, 0x0b, 0x19, 0xcb, 0xd5, 0x45, 0x6d, 0xa8,
+	0xae, 0xc3, 0x0d, 0xcb, 0xd5, 0xa3, 0xf5, 0x40, 0x0a, 0xa3, 0xb9, 0x5f, 0xbd, 0x03, 0xbb, 0x16,
+	0x4b, 0xec, 0xf9, 0x79, 0x5e, 0x5d, 0x83, 0xbc, 0xe5, 0xea, 0x61, 0x2a, 0xcb, 0xc2, 0x1a, 0xa4,
+	0x6e, 0x75, 0x07, 0xb6, 0x2d, 0x57, 0x9f, 0x9b, 0xab, 0xd5, 0xdb, 0xb0, 0x13, 0xe8, 0x66, 0x32,
+	0xb2, 0x7a, 0x1f, 0xee, 0xce, 0x68, 0x23, 0x59, 0x57, 0x45, 0x50, 0x88, 0x23, 0xaa, 0xdb, 0xb0,
+	0x35, 0x33, 0x9f, 0xf0, 0x64, 0x03, 0x90, 0xe5, 0xea, 0xb1, 0x54, 0x91, 0xfe, 0x06, 0x69, 0x21,
+	0x51, 0xb1, 0x3c, 0xa8, 0xde, 0x84, 0xcd, 0x88, 0xd4, 0x8f, 0x79, 0xb9, 0xc6, 0x32, 0x4e, 0xe5,
+	0x48, 0x06, 0x74, 0xf5, 0x2e, 0xdc, 0x0e, 0x75, 0xb3, 0x31, 0x5c, 0xcd, 0x43, 0x56, 0xe8, 0x79,
+	0xa4, 0xc9, 0xa5, 0x0c, 0x23, 0x53, 0xea, 0xbd, 0xa8, 0x3e, 0x8c, 0xbd, 0xea, 0x0d, 0x58, 0x63,
+	0x4b, 0xad, 0xc4, 0x5a, 0xb5, 0x00, 0xab, 0x96, 0xab, 0x2b, 0x91, 0xe5, 0xb3, 0x06, 0x81, 0x24,
+	0x2f, 0x38, 0x88, 0x12, 0xed, 0xcf, 0x97, 0x61, 0xf7, 0x82, 0x6d, 0x18, 0xdd, 0x83, 0x2c, 0xeb,
+	0xc0, 0x75, 0x12, 0x36, 0xe5, 0xa9, 0x0b, 0x9a, 0xf2, 0x54, 0xd0, 0x94, 0x6f, 0x41, 0xea, 0x84,
+	0x71, 0x89, 0x3e, 0x25, 0x85, 0xe5, 0x08, 0x7d, 0xa2, 0xb4, 0xe4, 0xba, 0x44, 0xf0, 0x1d, 0x06,
+	0xaf, 0x05, 0xf2, 0xa3, 0x00, 0x1a, 0x74, 0xde, 0x3e, 0x74, 0x59, 0x40, 0x03, 0xb9, 0x84, 0x3e,
+	0x06, 0x14, 0xac, 0x2c, 0x31, 0x7d, 0x30, 0xdf, 0x58, 0x70, 0x21, 0xec, 0xc8, 0x43, 0xe2, 0xa0,
+	0xf1, 0xf6, 0xb1, 0x2b, 0x82, 0x38, 0x90, 0x4b, 0xe8, 0xc3, 0xb0, 0x1f, 0xf7, 0x91, 0x7c, 0x8f,
+	0xc1, 0xab, 0xbe, 0x58, 0x02, 0x1f, 0x41, 0x41, 0xe8, 0xf5, 0xfd, 0xe7, 0xba, 0xd2, 0x8f, 0xa7,
+	0xf0, 0xaa, 0x90, 0xef, 0x3f, 0x0f, 0x9a, 0xe4, 0x9b, 0x3e, 0x72, 0x4f, 0xf7, 0xa8, 0x5e, 0x2a,
+	0xbf, 0xd0, 0x95, 0x8e, 0x3c, 0x85, 0xd7, 0xa5, 0x81, 0x68, 0xc8, 0xdb, 0x7e, 0x93, 0xbc, 0x2d,
+	0xad, 0x4a, 0xe5, 0x03, 0x66, 0x56, 0xde, 0xdb, 0xf3, 0xcd, 0xf8, 0x5e, 0x82, 0x37, 0x84, 0x3e,
+	0xd6, 0x92, 0x87, 0x76, 0xe5, 0xbd, 0x7d, 0x66, 0xb7, 0x57, 0x2a, 0xe9, 0x4a, 0x57, 0x1e, 0xd8,
+	0xf9, 0x4d, 0x79, 0xdb, 0x6f, 0xae, 0x6f, 0x49, 0xbb, 0xbd, 0x52, 0x99, 0xbb, 0xf9, 0xb4, 0xfc,
+	0x4c, 0x57, 0xfa, 0xf2, 0x14, 0xde, 0x14, 0x80, 0xa0, 0x2d, 0x97, 0x96, 0x2f, 0x61, 0xc7, 0xf7,
+	0xf4, 0x69, 0xf9, 0x39, 0x37, 0xdd, 0x2b, 0x1d, 0xe8, 0x4a, 0x67, 0x9e, 0xc2, 0x5b, 0xd2, 0xd7,
+	0xa0, 0x31, 0x17, 0xb6, 0xda, 0x6f, 0x93, 0xf0, 0xe0, 0xb2, 0xc6, 0x50, 0x76, 0x41, 0x55, 0x48,
+	0x4f, 0xc6, 0xae, 0xe7, 0x10, 0x63, 0x24, 0x5b, 0x76, 0xf5, 0xc8, 0xea, 0x22, 0x86, 0xc0, 0x0e,
+	0x1d, 0x01, 0x98, 0xf4, 0x5b, 0x5b, 0xb2, 0x24, 0xaf, 0xc5, 0xa2, 0x58, 0xa2, 0x5f, 0x27, 0xe0,
+	0x01, 0x4f, 0x73, 0x22, 0xc1, 0x22, 0x56, 0x74, 0x22, 0xe1, 0xfa, 0x78, 0xa4, 0x9f, 0x50, 0x67,
+	0x64, 0x78, 0xf2, 0xc8, 0xf4, 0x20, 0xf6, 0x44, 0x7e, 0xf9, 0xf5, 0x16, 0x8f, 0xb8, 0x3d, 0xfe,
+	0x88, 0x9e, 0x8f, 0x15, 0x10, 0xed, 0x29, 0xa4, 0xc4, 0x5f, 0xfc, 0x70, 0xb3, 0xd1, 0xc4, 0xbd,
+	0x6f, 0xf4, 0xde, 0x57, 0x6d, 0xbd, 0xda, 0xec, 0x89, 0xe3, 0xd4, 0x6e, 0xf3, 0xeb, 0xde, 0x37,
+	0xfa, 0x51, 0xbb, 0x8f, 0xb9, 0x2c, 0xa1, 0x79, 0xb0, 0x22, 0x9b, 0x56, 0xa5, 0x1d, 0x4d, 0x28,
+	0xed, 0x28, 0x4b, 0x67, 0xd7, 0x33, 0xbc, 0x89, 0x2b, 0xbb, 0x54, 0x39, 0x62, 0xf5, 0xe1, 0xc4,
+	0xb0, 0x86, 0xba, 0x43, 0x0c, 0x97, 0xda, 0xfc, 0xea, 0x32, 0x18, 0x98, 0x08, 0x73, 0x09, 0xba,
+	0xc5, 0xf7, 0x62, 0x7e, 0x06, 0xc3, 0xf3, 0x3c, 0xc1, 0x76, 0x62, 0x3e, 0x95, 0x46, 0xc4, 0xe3,
+	0x84, 0xd2, 0x30, 0xcb, 0x5b, 0x7b, 0x49, 0xc7, 0xfc, 0xa9, 0x42, 0x99, 0xbc, 0xbf, 0xf8, 0x28,
+	0x5b, 0x46, 0xca, 0x72, 0xfa, 0x64, 0xc1, 0x34, 0x7f, 0x25, 0x8e, 0x42, 0xe3, 0x93, 0x5c, 0xb3,
+	0xbd, 0x57, 0x56, 0x60, 0xf1, 0xa2, 0x15, 0x58, 0xba, 0x70, 0x05, 0x96, 0xa3, 0x2b, 0xf0, 0xfb,
+	0xe2, 0xa8, 0xd3, 0x9e, 0xb0, 0x00, 0xe8, 0x4d, 0xf1, 0xb4, 0xeb, 0x19, 0x5e, 0xf0, 0x54, 0x75,
+	0xbd, 0x27, 0xd2, 0x7f, 0x5b, 0x84, 0xdd, 0xb9, 0x64, 0xf2, 0x7a, 0x3f, 0x81, 0x1b, 0xc7, 0x86,
+	0x4b, 0xd8, 0x16, 0x62, 0x38, 0x7e, 0x2d, 0x93, 0xcf, 0xa5, 0x4c, 0xd1, 0x9b, 0x56, 0x9c, 0xa0,
+	0x3e, 0x0a, 0xa8, 0x33, 0xd5, 0x8d, 0xf7, 0x3e, 0x34, 0x19, 0x42, 0xf1, 0xb4, 0xf2, 0x5e, 0x42,
+	0x8b, 0xb0, 0xe1, 0xb3, 0xda, 0x54, 0x21, 0x5e, 0x94, 0xa7, 0x2c, 0x9c, 0xb8, 0x45, 0x03, 0x6a,
+	0x1f, 0xef, 0x08, 0xfc, 0x7b, 0x75, 0x0b, 0x90, 0x78, 0xcc, 0xf0, 0xef, 0x83, 0xfa, 0x5b, 0x20,
+	0x53, 0x2f, 0xea, 0xb4, 0x78, 0x48, 0xcd, 0x93, 0xa9, 0xa7, 0xf8, 0x2c, 0x81, 0x11, 0x97, 0x53,
+	0x01, 0x50, 0xf1, 0xf8, 0x31, 0xac, 0x4b, 0xc6, 0x88, 0xc3, 0xe2, 0x40, 0x66, 0x8d, 0x93, 0x2a,
+	0xfe, 0x4a, 0x74, 0xdc, 0xdd, 0x74, 0x80, 0x8e, 0x78, 0xbb, 0x07, 0x37, 0xe5, 0xf6, 0xaf, 0x0f,
+	0xc4, 0x53, 0x9b, 0xee, 0x10, 0xcf, 0xb1, 0x88, 0x7f, 0x36, 0xb3, 0x21, 0xba, 0x5b, 0xf9, 0x48,
+	0x87, 0x85, 0x0e, 0xbd, 0x80, 0xed, 0xb8, 0x19, 0xdb, 0xa1, 0xe9, 0x24, 0x38, 0xa4, 0xd9, 0x8c,
+	0xd8, 0xf5, 0xa4, 0x52, 0x7b, 0x0b, 0x77, 0xc2, 0x5b, 0x5e, 0x19, 0xb0, 0xc6, 0x8d, 0xbf, 0x16,
+	0xfc, 0x9e, 0x21, 0xf4, 0xa7, 0x90, 0xe1, 0xe6, 0x35, 0xc3, 0x33, 0x58, 0xd8, 0x0e, 0x86, 0x86,
+	0xeb, 0xfa, 0x09, 0x92, 0xc7, 0x2b, 0x7c, 0xdc, 0x34, 0x59, 0xc8, 0x5b, 0xb6, 0x78, 0x01, 0xe6,
+	0xa7, 0x49, 0x1e, 0x83, 0x2f, 0x6a, 0x9a, 0x08, 0xc1, 0x92, 0x6d, 0x8c, 0x88, 0xcc, 0x14, 0xfe,
+	0x37, 0x7b, 0x92, 0x37, 0x89, 0x3b, 0x70, 0xac, 0x31, 0x7f, 0x44, 0x14, 0x79, 0xa2, 0x8a, 0xb4,
+	0x3f, 0x84, 0xbb, 0xe7, 0x5d, 0x8d, 0x8c, 0xe1, 0xcf, 0x20, 0x6f, 0x70, 0xb9, 0xce, 0x5f, 0x77,
+	0xb2, 0xf8, 0x65, 0xe9, 0xbf, 0xa1, 0xa4, 0x7f, 0x70, 0x01, 0x38, 0x67, 0x28, 0x14, 0xda, 0x6f,
+	0x12, 0xf0, 0x11, 0x63, 0x3f, 0x39, 0x19, 0x52, 0xc3, 0x24, 0x66, 0x65, 0x3c, 0x76, 0x59, 0x82,
+	0x58, 0xae, 0x67, 0x0d, 0x82, 0xf5, 0xea, 0x43, 0x9a, 0xa5, 0xb5, 0x7b, 0x44, 0x1d, 0x79, 0x76,
+	0xfa, 0x59, 0xac, 0x52, 0x5f, 0x68, 0x5f, 0x54, 0xd5, 0x38, 0xa0, 0xd2, 0x8e, 0x20, 0xa7, 0x6a,
+	0xe2, 0x47, 0xa8, 0x59, 0x58, 0xe9, 0x74, 0x3a, 0x94, 0x34, 0x2b, 0xf2, 0x3d, 0x4e, 0xe3, 0xb0,
+	0x73, 0xf6, 0x1c, 0x57, 0x0a, 0xc9, 0x60, 0xb4, 0x8f, 0x2b, 0x85, 0x45, 0xed, 0xd7, 0x5b, 0xa0,
+	0x5d, 0xe4, 0x84, 0x5c, 0xa6, 0x01, 0xe4, 0xcd, 0x77, 0x83, 0xf1, 0xd9, 0x73, 0x6c, 0xf0, 0x1a,
+	0x20, 0xef, 0xfe, 0xe7, 0x57, 0xbc, 0x14, 0xb9, 0xe1, 0xf8, 0x5e, 0x70, 0x8a, 0xc6, 0x02, 0x8e,
+	0x72, 0x06, 0x93, 0xec, 0xfb, 0x93, 0x24, 0xbf, 0xf7, 0x24, 0xfb, 0xf1, 0x49, 0x7c, 0x4e, 0xf4,
+	0x2b, 0xc8, 0x8d, 0xc7, 0x63, 0x4a, 0x9a, 0x72, 0x8e, 0x45, 0x3e, 0xc7, 0xcb, 0xeb, 0xcd, 0x21,
+	0xd7, 0xd6, 0x9f, 0x22, 0xc2, 0xb8, 0xf3, 0x5f, 0xcb, 0x90, 0x8f, 0x5c, 0x29, 0xeb, 0x5f, 0x2c,
+	0x5b, 0x3f, 0x36, 0xcc, 0xa0, 0x69, 0x3f, 0x71, 0xe8, 0x48, 0x1f, 0x0c, 0x2d, 0x62, 0xfb, 0xaf,
+	0xae, 0xb7, 0x2c, 0xbb, 0x6a, 0xf8, 0x07, 0xbc, 0x47, 0x0e, 0x1d, 0x1d, 0x72, 0xed, 0x79, 0xb6,
+	0x2e, 0x71, 0xce, 0xe4, 0x0b, 0x86, 0x39, 0xb6, 0x5d, 0xae, 0x45, 0xcf, 0x60, 0xcb, 0xb2, 0xe7,
+	0xce, 0x29, 0x8a, 0xe9, 0xba, 0x65, 0xcf, 0x4e, 0x38, 0xc7, 0x48, 0x4e, 0xb6, 0x34, 0xc7, 0x48,
+	0xce, 0x54, 0x82, 0x4d, 0x3a, 0xf1, 0x02, 0x2b, 0x8f, 0xfa, 0x36, 0xa2, 0xb2, 0x22, 0x3a, 0xf1,
+	0x4f, 0xba, 0x7b, 0xf4, 0x5c, 0x13, 0xe9, 0x5b, 0x6a, 0xd6, 0x44, 0xba, 0xf6, 0x16, 0x7e, 0x4a,
+	0x79, 0x62, 0xeb, 0x07, 0x65, 0xdd, 0xb2, 0x5d, 0xc2, 0x9e, 0x51, 0xe6, 0x4c, 0x2a, 0x2a, 0xef,
+	0x3d, 0x81, 0x3d, 0x28, 0x37, 0x25, 0x32, 0xee, 0xc1, 0x6b, 0xf8, 0x49, 0x48, 0xe7, 0x90, 0x11,
+	0x3d, 0x8b, 0xb2, 0x49, 0x7f, 0x44, 0x65, 0xbe, 0xeb, 0xb3, 0x61, 0x01, 0x8c, 0xfb, 0x56, 0x87,
+	0xfb, 0x21, 0x99, 0x4d, 0xbd, 0xd0, 0xbf, 0xd0, 0x2f, 0x51, 0xb1, 0x77, 0x7d, 0xa6, 0x16, 0xf5,
+	0x7c, 0xd7, 0x02, 0x9f, 0xfe, 0x04, 0x0a, 0x86, 0x69, 0x5a, 0xe2, 0x65, 0xad, 0xce, 0xd3, 0x7d,
+	0x1b, 0x78, 0x49, 0xea, 0xfc, 0x0e, 0xb9, 0x56, 0xac, 0x04, 0x9c, 0x7c, 0x5c, 0xb7, 0x3d, 0xe7,
+	0x03, 0x5e, 0x33, 0xa2, 0xd2, 0x9d, 0x2a, 0x6c, 0xcc, 0x03, 0xa2, 0x02, 0x2c, 0xbe, 0x27, 0x1f,
+	0x64, 0xdb, 0xc4, 0xfe, 0x44, 0x1b, 0xea, 0x67, 0x1b, 0x19, 0xf9, 0x6d, 0xc6, 0xcb, 0xe4, 0x41,
+	0x62, 0xe7, 0x3f, 0x52, 0x32, 0xfa, 0xf7, 0xff, 0xb7, 0xa3, 0x3f, 0x8c, 0x96, 0xd2, 0x8b, 0x8b,
+	0xa2, 0x65, 0x51, 0x8d, 0x96, 0xd2, 0x8b, 0xcb, 0xa3, 0xa5, 0xf4, 0xe2, 0x82, 0x68, 0x59, 0x52,
+	0xa3, 0xa5, 0xf4, 0xe2, 0x9c, 0x68, 0x51, 0x7c, 0x3b, 0xb8, 0xc8, 0xb7, 0xe5, 0x88, 0x6f, 0x07,
+	0x57, 0xf0, 0xed, 0xe0, 0x02, 0xdf, 0x52, 0x11, 0xdf, 0x0e, 0x2e, 0xf5, 0xed, 0xd9, 0x8b, 0x2b,
+	0x67, 0xd9, 0xb3, 0x2b, 0xac, 0xdb, 0xb3, 0x17, 0x57, 0xcd, 0xb2, 0x67, 0xe7, 0xad, 0xdb, 0x57,
+	0xf0, 0x09, 0x9d, 0x78, 0xa7, 0xd4, 0xb2, 0x4f, 0xf5, 0x91, 0x37, 0xd1, 0xc9, 0x74, 0x40, 0x88,
+	0x49, 0xe6, 0x87, 0x96, 0x48, 0xb7, 0x9f, 0xfa, 0x06, 0x6f, 0xbd, 0x49, 0x5d, 0xc2, 0x67, 0x03,
+	0xed, 0x87, 0xcd, 0xbb, 0xfd, 0x1f, 0x3f, 0xef, 0xfe, 0x21, 0x05, 0x39, 0x75, 0x5b, 0x42, 0xbf,
+	0x07, 0xb7, 0x2d, 0x5b, 0x9c, 0x5f, 0x5c, 0x90, 0x78, 0xdb, 0x96, 0xad, 0x7e, 0x4c, 0xa0, 0xac,
+	0xc8, 0xb9, 0xf6, 0x91, 0xe4, 0x9b, 0x63, 0xff, 0x7f, 0x74, 0xf3, 0xf9, 0x15, 0x14, 0xcf, 0x88,
+	0x6d, 0x52, 0x47, 0x77, 0xc5, 0xd7, 0x6c, 0x03, 0xdd, 0x33, 0x4e, 0x2f, 0x4f, 0x90, 0x47, 0xc2,
+	0x4a, 0x7e, 0x02, 0x37, 0xe8, 0x19, 0xa7, 0xe7, 0x65, 0xca, 0x2f, 0xe1, 0xd3, 0x79, 0x33, 0x5c,
+	0x96, 0x33, 0x0f, 0x67, 0x26, 0xf8, 0xb1, 0x93, 0xe7, 0xbb, 0x73, 0x93, 0xa7, 0xfd, 0xfd, 0xfb,
+	0xaa, 0x1f, 0x2f, 0x77, 0xaa, 0x2b, 0xb0, 0xcc, 0x9d, 0xd6, 0xfe, 0x69, 0x05, 0xd6, 0x5e, 0x11,
+	0x8f, 0x7f, 0x5a, 0xe8, 0x37, 0xf0, 0x9f, 0xc7, 0xbe, 0xd5, 0xcb, 0x96, 0xef, 0x44, 0x2f, 0x2a,
+	0xf6, 0x55, 0x60, 0x63, 0x21, 0xfc, 0x98, 0x0f, 0x7d, 0x0e, 0x2b, 0x13, 0xf1, 0xe5, 0x9a, 0x6c,
+	0x66, 0xef, 0x9d, 0xff, 0x65, 0x9b, 0x6f, 0xed, 0x5b, 0xa0, 0x0a, 0x64, 0xa9, 0xf8, 0x66, 0x89,
+	0x13, 0x2c, 0xce, 0x9b, 0x3c, 0xf6, 0x51, 0x53, 0x63, 0x01, 0xab, 0x36, 0xa8, 0x09, 0xab, 0xd4,
+	0x9e, 0x28, 0x9f, 0xb7, 0xf0, 0x3c, 0x9a, 0xe7, 0x46, 0xf4, 0x2b, 0x98, 0xc6, 0x02, 0x8e, 0x19,
+	0x22, 0x0c, 0x79, 0xe2, 0xbd, 0x0b, 0xbf, 0xb5, 0xe0, 0xd9, 0x95, 0x2d, 0xff, 0xec, 0xea, 0x5f,
+	0x82, 0xb0, 0x66, 0x3c, 0x42, 0x81, 0xfe, 0x3f, 0x7f, 0xfd, 0x2c, 0xd5, 0x3c, 0xf7, 0xb2, 0xe5,
+	0xdd, 0x19, 0xc2, 0xf0, 0x7d, 0x78, 0x63, 0x01, 0x2b, 0x06, 0xa8, 0x0a, 0x40, 0xb9, 0xe7, 0xfc,
+	0xca, 0x56, 0xb8, 0xf9, 0xfd, 0x19, 0xf3, 0xd8, 0xab, 0x65, 0xc6, 0x11, 0x5a, 0xa1, 0x37, 0xb0,
+	0x42, 0xed, 0x09, 0x27, 0x48, 0x73, 0x82, 0xa7, 0xd7, 0x38, 0x48, 0x0b, 0x6e, 0x99, 0xa4, 0x40,
+	0x07, 0xe0, 0x9f, 0xc4, 0xf0, 0x04, 0xca, 0x96, 0x6f, 0x47, 0xd9, 0xa2, 0x2f, 0x72, 0x99, 0xa5,
+	0x84, 0xa3, 0xd7, 0x90, 0xa3, 0xe2, 0x39, 0xb5, 0x2b, 0xf3, 0x87, 0x99, 0x7f, 0x3c, 0x73, 0x35,
+	0xf3, 0xce, 0x75, 0xd8, 0x23, 0x88, 0x6a, 0x8c, 0x2a, 0x00, 0x34, 0x38, 0x04, 0xe3, 0x87, 0xb9,
+	0xb3, 0xb7, 0x7c, 0x38, 0xeb, 0x8c, 0x62, 0x84, 0x7a, 0xb0, 0x46, 0xed, 0x89, 0xfa, 0xcc, 0xcc,
+	0x0f, 0x77, 0xb3, 0xe5, 0x47, 0x73, 0x5d, 0x9a, 0x73, 0x54, 0xd0, 0x58, 0xc0, 0x71, 0x0a, 0xf4,
+	0x4b, 0x40, 0x34, 0x5e, 0x03, 0xc4, 0xe1, 0x6f, 0xb6, 0xfc, 0xf8, 0x3a, 0xcf, 0xc5, 0x8d, 0x05,
+	0x3c, 0x87, 0xa9, 0x9a, 0x81, 0x15, 0x47, 0x00, 0xb4, 0xdf, 0x02, 0xff, 0x24, 0x43, 0xe6, 0xb2,
+	0x7c, 0x8e, 0x7d, 0x19, 0x1c, 0xb9, 0x89, 0x67, 0x71, 0x2d, 0x3a, 0x67, 0x04, 0x5c, 0xec, 0x72,
+	0x64, 0x70, 0x2c, 0x57, 0x87, 0x0c, 0x71, 0x1c, 0x71, 0x04, 0x27, 0x3f, 0x69, 0x7c, 0x78, 0x91,
+	0x39, 0xdf, 0x17, 0x05, 0x1c, 0x87, 0x96, 0xe8, 0xe7, 0x4a, 0x3d, 0x11, 0x29, 0x7d, 0xf7, 0xbc,
+	0x7a, 0x22, 0x88, 0x22, 0x05, 0xe5, 0xe7, 0x61, 0x41, 0x59, 0x3a, 0x27, 0xde, 0x63, 0x9f, 0xca,
+	0xaa, 0x15, 0xe5, 0x35, 0xe4, 0xc6, 0xa2, 0x5a, 0x78, 0x36, 0x71, 0x5c, 0x99, 0xc2, 0x1f, 0x5f,
+	0x58, 0x52, 0x14, 0x9e, 0x88, 0x31, 0xfa, 0x62, 0xa6, 0xb6, 0x88, 0x04, 0x7e, 0x78, 0x49, 0x6d,
+	0x51, 0x08, 0xe3, 0x35, 0xe6, 0x18, 0x6e, 0x44, 0x0a, 0x84, 0x92, 0xd7, 0xe5, 0xab, 0xd7, 0x19,
+	0x65, 0x82, 0x59, 0x3a, 0x54, 0x8f, 0xd4, 0x1c, 0x91, 0xf3, 0x3f, 0xb9, 0xa0, 0xe6, 0x28, 0x6c,
+	0x6a, 0xed, 0x79, 0xcd, 0xaf, 0xbe, 0x43, 0x6d, 0x7f, 0x9d, 0x64, 0xc2, 0x7f, 0x74, 0x41, 0xfd,
+	0x89, 0x5c, 0xb7, 0x62, 0x8a, 0xfa, 0xfc, 0x9b, 0x94, 0x80, 0x49, 0xe4, 0x7e, 0xe9, 0xda, 0x27,
+	0xfa, 0xbc, 0xfa, 0x87, 0x3c, 0xe8, 0xb3, 0xb0, 0x1a, 0x65, 0xe7, 0x6d, 0x1e, 0xb1, 0x03, 0x6c,
+	0xb5, 0x1c, 0xbd, 0x89, 0x95, 0xa3, 0xdc, 0xcc, 0x9b, 0x8c, 0x0b, 0x4e, 0x86, 0x67, 0xea, 0x51,
+	0x35, 0x52, 0x8f, 0xf2, 0x73, 0x03, 0x77, 0x38, 0xc7, 0x1d, 0xb5, 0x20, 0xf5, 0x67, 0x0b, 0xd2,
+	0x2a, 0x27, 0xfa, 0xe4, 0x0a, 0x05, 0x29, 0x60, 0x9c, 0xa9, 0x48, 0xfa, 0xdc, 0x8a, 0xb4, 0xc6,
+	0x99, 0x3f, 0xbd, 0x56, 0xf7, 0x32, 0xbf, 0x24, 0x69, 0x25, 0x48, 0x89, 0x42, 0x82, 0x36, 0xa0,
+	0xd0, 0xed, 0x55, 0x7a, 0xfd, 0x6e, 0xe4, 0x93, 0xeb, 0x14, 0x24, 0xdb, 0xaf, 0x0b, 0x09, 0xfe,
+	0x23, 0x0a, 0x8c, 0xdb, 0xb8, 0x90, 0xd4, 0xfe, 0x26, 0x01, 0x59, 0xa5, 0x7a, 0x30, 0x43, 0x5c,
+	0xaf, 0x74, 0xdb, 0xad, 0x88, 0xe1, 0x1a, 0x64, 0xfb, 0xad, 0x6e, 0xbf, 0xd3, 0x69, 0xe3, 0x1e,
+	0xff, 0x5e, 0x7b, 0x13, 0x6e, 0x34, 0x5b, 0x5f, 0x56, 0xde, 0x34, 0x6b, 0x7a, 0xad, 0xfe, 0x65,
+	0xf3, 0xb0, 0xae, 0x37, 0x6b, 0x85, 0xa4, 0x2a, 0x66, 0x50, 0xbd, 0xf7, 0x4d, 0xa7, 0x5e, 0x58,
+	0x44, 0x59, 0x58, 0xe9, 0x35, 0xdf, 0xd6, 0xdb, 0xfd, 0x5e, 0x61, 0x89, 0xcd, 0xe0, 0x63, 0x70,
+	0xfd, 0x0b, 0x01, 0x59, 0x46, 0x08, 0x56, 0x9b, 0xad, 0x5e, 0x1d, 0xb7, 0x2a, 0x6f, 0x74, 0xe1,
+	0x5b, 0x4a, 0xc8, 0xd4, 0x49, 0x0a, 0x2b, 0x55, 0x80, 0xb4, 0x23, 0x17, 0x41, 0xfb, 0xeb, 0x04,
+	0x14, 0x2a, 0xe3, 0xb1, 0x5c, 0x2b, 0xf1, 0x19, 0x3e, 0x7a, 0x00, 0xab, 0xc4, 0x36, 0x8e, 0x87,
+	0xc4, 0x3f, 0x95, 0xe0, 0xe5, 0x37, 0x8d, 0x63, 0xd2, 0x18, 0x6e, 0x1f, 0x57, 0x78, 0x9d, 0x8d,
+	0xe2, 0xf6, 0x71, 0x05, 0xfd, 0x14, 0xf2, 0x42, 0xc2, 0x1a, 0xc6, 0x7a, 0xb3, 0x22, 0xbf, 0xc5,
+	0x8a, 0x0a, 0x91, 0x06, 0x39, 0x63, 0x30, 0x20, 0xae, 0xdb, 0xa2, 0x26, 0x69, 0xd6, 0xe4, 0x01,
+	0x71, 0x44, 0xa6, 0xfd, 0x77, 0x02, 0xd6, 0x43, 0x77, 0x79, 0xb6, 0x72, 0x8f, 0x2f, 0xff, 0x4a,
+	0xec, 0x35, 0xc0, 0x98, 0x38, 0xb2, 0xd8, 0x6e, 0x2f, 0xf3, 0x76, 0xf7, 0xff, 0xa9, 0xc7, 0xc6,
+	0xb3, 0xac, 0xc5, 0x0e, 0x37, 0x10, 0x03, 0xac, 0x98, 0xef, 0x4c, 0x21, 0xa7, 0xea, 0xd8, 0x05,
+	0x1a, 0xa7, 0xc4, 0xf6, 0x58, 0x27, 0xef, 0x31, 0xdf, 0x45, 0xcf, 0x1a, 0x15, 0xb2, 0xe5, 0xe2,
+	0x82, 0x43, 0xcb, 0x19, 0x4c, 0x2c, 0xaf, 0x59, 0x93, 0xc7, 0xe3, 0x31, 0x29, 0xda, 0x81, 0x34,
+	0x15, 0xfb, 0x82, 0xe9, 0xff, 0xb2, 0xc5, 0x1f, 0x6b, 0xff, 0x99, 0x80, 0xb5, 0x6e, 0xac, 0xe5,
+	0x8d, 0xff, 0x4e, 0x28, 0x71, 0xd5, 0xdf, 0x09, 0xa1, 0xd7, 0x80, 0x8c, 0xf1, 0x58, 0x97, 0x69,
+	0x10, 0xfd, 0x9d, 0xd1, 0xee, 0xdc, 0xc5, 0x09, 0x78, 0x0a, 0x46, 0x3c, 0x6a, 0xfa, 0xb0, 0xa5,
+	0x92, 0x51, 0x7b, 0xe2, 0x13, 0xce, 0xee, 0x9b, 0x73, 0x56, 0xbb, 0xb1, 0x80, 0xd7, 0x8d, 0x59,
+	0xb1, 0xda, 0x23, 0xfc, 0x63, 0x12, 0x0a, 0xdd, 0xeb, 0xf4, 0x08, 0xdd, 0xdf, 0xad, 0x47, 0xe8,
+	0x5e, 0xad, 0x47, 0xf8, 0x3e, 0x35, 0xe3, 0xbb, 0x1f, 0xb2, 0x64, 0xdc, 0x82, 0x4d, 0x5f, 0xdc,
+	0x6e, 0xf5, 0x15, 0xd5, 0xa2, 0x9a, 0xff, 0xfd, 0x56, 0x93, 0xc9, 0x96, 0x34, 0x0b, 0x36, 0xbb,
+	0x96, 0x7d, 0x3a, 0x24, 0xf1, 0x67, 0xa7, 0x1d, 0x48, 0x7b, 0x86, 0x73, 0x4a, 0xbc, 0x20, 0x85,
+	0x82, 0x31, 0x7a, 0x1e, 0xdc, 0x06, 0x19, 0x1f, 0x3b, 0x73, 0x9b, 0x29, 0x8e, 0xc0, 0xc1, 0x1d,
+	0xfb, 0x02, 0xb6, 0xe2, 0x53, 0xc9, 0xdb, 0xf6, 0x22, 0x2c, 0x42, 0x32, 0x60, 0x77, 0x2f, 0xe8,
+	0xce, 0x70, 0x58, 0xb1, 0x02, 0xef, 0xbb, 0x3f, 0x94, 0xf7, 0xdd, 0x4b, 0xbd, 0xef, 0x5e, 0xcf,
+	0xfb, 0xee, 0xb9, 0xde, 0x97, 0xff, 0x2e, 0x01, 0x99, 0xba, 0x0f, 0x44, 0x18, 0xb2, 0xaf, 0x88,
+	0x57, 0x9f, 0x0a, 0x38, 0x52, 0xf7, 0xd8, 0xb9, 0x77, 0x68, 0xe7, 0xa3, 0x0b, 0x10, 0xd2, 0x35,
+	0x0c, 0xd9, 0xee, 0x85, 0x9c, 0xdd, 0x4b, 0x39, 0xe3, 0xfe, 0x57, 0x31, 0xdc, 0xa1, 0xce, 0x69,
+	0x91, 0x8e, 0x89, 0x3d, 0xa0, 0x8e, 0x59, 0x14, 0xbf, 0x78, 0x0c, 0xed, 0xfe, 0xa0, 0x74, 0x6a,
+	0x79, 0xef, 0x26, 0xc7, 0xc5, 0x01, 0x1d, 0x3d, 0xf1, 0x51, 0x4f, 0x04, 0xea, 0x53, 0xf9, 0xbb,
+	0xc8, 0xb3, 0xbd, 0x27, 0xa7, 0x34, 0xfc, 0x21, 0xe5, 0x71, 0x8a, 0xcb, 0x9f, 0xfd, 0x4f, 0x00,
+	0x00, 0x00, 0xff, 0xff, 0x1e, 0x03, 0xf8, 0x72, 0x6a, 0x39, 0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
diff --git a/vendor/modules.txt b/vendor/modules.txt
index f0e9ca1..470d3e6 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -74,12 +74,12 @@
 github.com/olekukonko/tablewriter
 # github.com/opencord/cordctl v0.0.0-20190909161711-01e9c1f04bf4
 github.com/opencord/cordctl/pkg/format
-# github.com/opencord/device-management-interface v1.4.0
+# github.com/opencord/device-management-interface v1.17.0
 github.com/opencord/device-management-interface/go/dmi
 # github.com/opencord/omci-lib-go/v2 v2.2.3
 github.com/opencord/omci-lib-go/v2
 github.com/opencord/omci-lib-go/v2/generated
-# github.com/opencord/voltha-protos/v5 v5.4.11
+# github.com/opencord/voltha-protos/v5 v5.6.2
 github.com/opencord/voltha-protos/v5/go/ext/config
 github.com/opencord/voltha-protos/v5/go/extension
 github.com/opencord/voltha-protos/v5/go/openolt
