From 1043c79a70d4c4b2aa9bdd6eb80d3125914998f3 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期五, 19 七月 2019 15:07:00 +0800
Subject: [PATCH] 添加videotapInfo

---
 .idea/vcs.xml       |    6 
 commsg.pb.go        | 1201 ----
 .idea/modules.xml   |    8 
 .idea/protomsg.iml  |    9 
 sdk.pb.go           | 3213 -----------
 .idea/workspace.xml |  152 
 protomsg.proto      |    8 
 base.pb.go          |  520 -
 sysset.pb.go        | 1884 ------
 protomsg.pb.go      | 7208 +------------------------
 es.pb.go            | 2008 -------
 .idea/misc.xml      |    6 
 12 files changed, 1,071 insertions(+), 15,152 deletions(-)

diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..ef004d1
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="JavaScriptSettings">
+    <option name="languageLevel" value="ES6" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..88ce8e3
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ProjectModuleManager">
+    <modules>
+      <module fileurl="file://$PROJECT_DIR$/.idea/protomsg.iml" filepath="$PROJECT_DIR$/.idea/protomsg.iml" />
+    </modules>
+  </component>
+</project>
\ No newline at end of file
diff --git a/.idea/protomsg.iml b/.idea/protomsg.iml
new file mode 100644
index 0000000..6f70409
--- /dev/null
+++ b/.idea/protomsg.iml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="WEB_MODULE" version="4">
+  <component name="NewModuleRootManager">
+    <content url="file://$MODULE_DIR$" />
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="library" name="Bundled Protobuf Distribution" level="application" />
+  </component>
+</module>
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..9661ac7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="VcsDirectoryMappings">
+    <mapping directory="$PROJECT_DIR$" vcs="Git" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
new file mode 100644
index 0000000..741ac40
--- /dev/null
+++ b/.idea/workspace.xml
@@ -0,0 +1,152 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ChangeListManager">
+    <list default="true" id="becdd117-1021-4e06-af58-0f70d982f4ee" name="Default Changelist" comment="">
+      <change beforePath="$PROJECT_DIR$/base.pb.go" beforeDir="false" afterPath="$PROJECT_DIR$/base.pb.go" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/commsg.pb.go" beforeDir="false" afterPath="$PROJECT_DIR$/commsg.pb.go" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/es.pb.go" beforeDir="false" afterPath="$PROJECT_DIR$/es.pb.go" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/protomsg.pb.go" beforeDir="false" afterPath="$PROJECT_DIR$/protomsg.pb.go" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/protomsg.proto" beforeDir="false" afterPath="$PROJECT_DIR$/protomsg.proto" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/sdk.pb.go" beforeDir="false" afterPath="$PROJECT_DIR$/sdk.pb.go" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/sysset.pb.go" beforeDir="false" afterPath="$PROJECT_DIR$/sysset.pb.go" afterDir="false" />
+    </list>
+    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
+    <option name="SHOW_DIALOG" value="false" />
+    <option name="HIGHLIGHT_CONFLICTS" value="true" />
+    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
+    <option name="LAST_RESOLUTION" value="IGNORE" />
+  </component>
+  <component name="FileEditorManager">
+    <leaf>
+      <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/sdk.proto">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="168">
+              <caret line="29" column="16" selection-start-line="29" selection-start-column="16" selection-end-line="29" selection-end-column="16" />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/protomsg.proto">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="297">
+              <caret line="163" column="30" lean-forward="true" selection-start-line="163" selection-start-column="30" selection-end-line="163" selection-end-column="30" />
+            </state>
+          </provider>
+        </entry>
+      </file>
+    </leaf>
+  </component>
+  <component name="GOROOT" path="D:\Go" />
+  <component name="Git.Settings">
+    <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
+  </component>
+  <component name="IdeDocumentHistory">
+    <option name="CHANGED_PATHS">
+      <list>
+        <option value="$PROJECT_DIR$/protomsg.proto" />
+      </list>
+    </option>
+  </component>
+  <component name="ProjectConfigurationFiles">
+    <option name="files">
+      <list>
+        <option value="$PROJECT_DIR$/.idea/protomsg.iml" />
+        <option value="$PROJECT_DIR$/.idea/vcs.xml" />
+        <option value="$PROJECT_DIR$/.idea/misc.xml" />
+        <option value="$PROJECT_DIR$/.idea/modules.xml" />
+      </list>
+    </option>
+  </component>
+  <component name="ProjectFrameBounds" extendedState="6">
+    <option name="x" value="260" />
+    <option name="y" value="80" />
+    <option name="width" value="1400" />
+    <option name="height" value="1000" />
+  </component>
+  <component name="ProjectView">
+    <navigator proportions="" version="1">
+      <foldersAlwaysOnTop value="true" />
+    </navigator>
+    <panes>
+      <pane id="ProjectPane">
+        <subPane>
+          <expand>
+            <path>
+              <item name="protomsg" type="b2602c69:ProjectViewProjectNode" />
+              <item name="protomsg" type="462c0819:PsiDirectoryNode" />
+            </path>
+          </expand>
+          <select />
+        </subPane>
+      </pane>
+      <pane id="Scope" />
+    </panes>
+  </component>
+  <component name="PropertiesComponent">
+    <property name="WebServerToolWindowFactoryState" value="false" />
+    <property name="go.gopath.indexing.explicitly.defined" value="true" />
+    <property name="go.import.settings.migrated" value="true" />
+    <property name="go.sdk.automatically.set" value="true" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$" />
+    <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
+    <property name="nodejs_npm_path_reset_for_default_project" value="true" />
+  </component>
+  <component name="RunDashboard">
+    <option name="ruleStates">
+      <list>
+        <RuleState>
+          <option name="name" value="ConfigurationTypeDashboardGroupingRule" />
+        </RuleState>
+        <RuleState>
+          <option name="name" value="StatusDashboardGroupingRule" />
+        </RuleState>
+      </list>
+    </option>
+  </component>
+  <component name="ToolWindowManager">
+    <frame x="-8" y="-8" width="1936" height="1176" extended-state="6" />
+    <editor active="true" />
+    <layout>
+      <window_info id="Favorites" side_tool="true" />
+      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.25" />
+      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
+      <window_info anchor="bottom" id="Docker" show_stripe_button="false" />
+      <window_info anchor="bottom" id="Database Changes" />
+      <window_info anchor="bottom" id="Version Control" />
+      <window_info active="true" anchor="bottom" id="Terminal" visible="true" weight="0.43039215" />
+      <window_info anchor="bottom" id="Event Log" side_tool="true" />
+      <window_info anchor="bottom" id="Message" order="0" />
+      <window_info anchor="bottom" id="Find" order="1" />
+      <window_info anchor="bottom" id="Run" order="2" />
+      <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
+      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
+      <window_info anchor="bottom" id="TODO" order="6" />
+      <window_info anchor="right" id="Database" />
+      <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
+      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
+      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
+    </layout>
+  </component>
+  <component name="TypeScriptGeneratedFilesManager">
+    <option name="version" value="1" />
+  </component>
+  <component name="editorHistoryManager">
+    <entry file="file://$PROJECT_DIR$/sdk.proto">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="168">
+          <caret line="29" column="16" selection-start-line="29" selection-start-column="16" selection-end-line="29" selection-end-column="16" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/protomsg.proto">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="297">
+          <caret line="163" column="30" lean-forward="true" selection-start-line="163" selection-start-column="30" selection-end-line="163" selection-end-column="30" />
+        </state>
+      </provider>
+    </entry>
+  </component>
+</project>
\ No newline at end of file
diff --git a/base.pb.go b/base.pb.go
index 2034d85..358f35c 100644
--- a/base.pb.go
+++ b/base.pb.go
@@ -1,12 +1,11 @@
-// Code generated by protoc-gen-gogo. DO NOT EDIT.
+// Code generated by protoc-gen-go. DO NOT EDIT.
 // source: base.proto
 
 package protomsg
 
 import (
 	fmt "fmt"
-	proto "github.com/gogo/protobuf/proto"
-	io "io"
+	proto "github.com/golang/protobuf/proto"
 	math "math"
 )
 
@@ -19,12 +18,15 @@
 // is compatible with the proto package it is being compiled against.
 // A compilation error at this line likely means your copy of the
 // proto package needs to be updated.
-const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
 
 // struct for sdk
 type Point struct {
-	X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
-	Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"`
+	X                    int32    `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
+	Y                    int32    `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Point) Reset()         { *m = Point{} }
@@ -33,26 +35,18 @@
 func (*Point) Descriptor() ([]byte, []int) {
 	return fileDescriptor_db1b6b0986796150, []int{0}
 }
+
 func (m *Point) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Point.Unmarshal(m, b)
 }
 func (m *Point) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Point.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Point.Marshal(b, m, deterministic)
 }
 func (m *Point) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Point.Merge(m, src)
 }
 func (m *Point) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Point.Size(m)
 }
 func (m *Point) XXX_DiscardUnknown() {
 	xxx_messageInfo_Point.DiscardUnknown(m)
@@ -75,10 +69,13 @@
 }
 
 type Rect struct {
-	Left   int32 `protobuf:"varint,1,opt,name=left,proto3" json:"left,omitempty"`
-	Top    int32 `protobuf:"varint,2,opt,name=top,proto3" json:"top,omitempty"`
-	Right  int32 `protobuf:"varint,3,opt,name=right,proto3" json:"right,omitempty"`
-	Bottom int32 `protobuf:"varint,4,opt,name=bottom,proto3" json:"bottom,omitempty"`
+	Left                 int32    `protobuf:"varint,1,opt,name=left,proto3" json:"left,omitempty"`
+	Top                  int32    `protobuf:"varint,2,opt,name=top,proto3" json:"top,omitempty"`
+	Right                int32    `protobuf:"varint,3,opt,name=right,proto3" json:"right,omitempty"`
+	Bottom               int32    `protobuf:"varint,4,opt,name=bottom,proto3" json:"bottom,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Rect) Reset()         { *m = Rect{} }
@@ -87,26 +84,18 @@
 func (*Rect) Descriptor() ([]byte, []int) {
 	return fileDescriptor_db1b6b0986796150, []int{1}
 }
+
 func (m *Rect) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Rect.Unmarshal(m, b)
 }
 func (m *Rect) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Rect.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Rect.Marshal(b, m, deterministic)
 }
 func (m *Rect) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Rect.Merge(m, src)
 }
 func (m *Rect) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Rect.Size(m)
 }
 func (m *Rect) XXX_DiscardUnknown() {
 	xxx_messageInfo_Rect.DiscardUnknown(m)
@@ -150,7 +139,7 @@
 func init() { proto.RegisterFile("base.proto", fileDescriptor_db1b6b0986796150) }
 
 var fileDescriptor_db1b6b0986796150 = []byte{
-	// 167 bytes of a gzipped FileDescriptorProto
+	// 139 bytes of a gzipped FileDescriptorProto
 	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xe2, 0x4a, 0x4a, 0x2c, 0x4e,
 	0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x00, 0x53, 0xb9, 0xc5, 0xe9, 0x4a, 0xca, 0x5c,
 	0xac, 0x01, 0xf9, 0x99, 0x79, 0x25, 0x42, 0x3c, 0x5c, 0x8c, 0x15, 0x12, 0x8c, 0x0a, 0x8c, 0x1a,
@@ -158,463 +147,6 @@
 	0x94, 0x9a, 0x5c, 0x22, 0x24, 0xc4, 0xc5, 0x92, 0x93, 0x9a, 0x56, 0x02, 0x55, 0x06, 0x66, 0x0b,
 	0x09, 0x70, 0x31, 0x97, 0xe4, 0x17, 0x40, 0xd5, 0x82, 0x98, 0x42, 0x22, 0x5c, 0xac, 0x45, 0x99,
 	0xe9, 0x19, 0x25, 0x12, 0xcc, 0x60, 0x31, 0x08, 0x47, 0x48, 0x8c, 0x8b, 0x2d, 0x29, 0xbf, 0xa4,
-	0x24, 0x3f, 0x57, 0x82, 0x05, 0x2c, 0x0c, 0xe5, 0x39, 0x49, 0x9c, 0x78, 0x24, 0xc7, 0x78, 0xe1,
-	0x91, 0x1c, 0xe3, 0x83, 0x47, 0x72, 0x8c, 0x13, 0x1e, 0xcb, 0x31, 0x5c, 0x78, 0x2c, 0xc7, 0x70,
-	0xe3, 0xb1, 0x1c, 0x43, 0x12, 0x1b, 0xd8, 0x91, 0xc6, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0xa5,
-	0xe9, 0x4a, 0x5f, 0xb9, 0x00, 0x00, 0x00,
+	0x24, 0x3f, 0x57, 0x82, 0x05, 0x2c, 0x0c, 0xe5, 0x25, 0xb1, 0x81, 0x9d, 0x62, 0x0c, 0x08, 0x00,
+	0x00, 0xff, 0xff, 0xec, 0x3b, 0x08, 0x21, 0x9f, 0x00, 0x00, 0x00,
 }
-
-func (m *Point) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Point) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.X != 0 {
-		dAtA[i] = 0x8
-		i++
-		i = encodeVarintBase(dAtA, i, uint64(m.X))
-	}
-	if m.Y != 0 {
-		dAtA[i] = 0x10
-		i++
-		i = encodeVarintBase(dAtA, i, uint64(m.Y))
-	}
-	return i, nil
-}
-
-func (m *Rect) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Rect) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Left != 0 {
-		dAtA[i] = 0x8
-		i++
-		i = encodeVarintBase(dAtA, i, uint64(m.Left))
-	}
-	if m.Top != 0 {
-		dAtA[i] = 0x10
-		i++
-		i = encodeVarintBase(dAtA, i, uint64(m.Top))
-	}
-	if m.Right != 0 {
-		dAtA[i] = 0x18
-		i++
-		i = encodeVarintBase(dAtA, i, uint64(m.Right))
-	}
-	if m.Bottom != 0 {
-		dAtA[i] = 0x20
-		i++
-		i = encodeVarintBase(dAtA, i, uint64(m.Bottom))
-	}
-	return i, nil
-}
-
-func encodeVarintBase(dAtA []byte, offset int, v uint64) int {
-	for v >= 1<<7 {
-		dAtA[offset] = uint8(v&0x7f | 0x80)
-		v >>= 7
-		offset++
-	}
-	dAtA[offset] = uint8(v)
-	return offset + 1
-}
-func (m *Point) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.X != 0 {
-		n += 1 + sovBase(uint64(m.X))
-	}
-	if m.Y != 0 {
-		n += 1 + sovBase(uint64(m.Y))
-	}
-	return n
-}
-
-func (m *Rect) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Left != 0 {
-		n += 1 + sovBase(uint64(m.Left))
-	}
-	if m.Top != 0 {
-		n += 1 + sovBase(uint64(m.Top))
-	}
-	if m.Right != 0 {
-		n += 1 + sovBase(uint64(m.Right))
-	}
-	if m.Bottom != 0 {
-		n += 1 + sovBase(uint64(m.Bottom))
-	}
-	return n
-}
-
-func sovBase(x uint64) (n int) {
-	for {
-		n++
-		x >>= 7
-		if x == 0 {
-			break
-		}
-	}
-	return n
-}
-func sozBase(x uint64) (n int) {
-	return sovBase(uint64((x << 1) ^ uint64((int64(x) >> 63))))
-}
-func (m *Point) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowBase
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Point: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Point: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field X", wireType)
-			}
-			m.X = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowBase
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.X |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 2:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Y", wireType)
-			}
-			m.Y = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowBase
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Y |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipBase(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthBase
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthBase
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Rect) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowBase
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Rect: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Rect: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Left", wireType)
-			}
-			m.Left = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowBase
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Left |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 2:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Top", wireType)
-			}
-			m.Top = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowBase
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Top |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 3:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Right", wireType)
-			}
-			m.Right = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowBase
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Right |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 4:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Bottom", wireType)
-			}
-			m.Bottom = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowBase
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Bottom |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipBase(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthBase
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthBase
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func skipBase(dAtA []byte) (n int, err error) {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return 0, ErrIntOverflowBase
-			}
-			if iNdEx >= l {
-				return 0, io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= (uint64(b) & 0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		wireType := int(wire & 0x7)
-		switch wireType {
-		case 0:
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowBase
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				iNdEx++
-				if dAtA[iNdEx-1] < 0x80 {
-					break
-				}
-			}
-			return iNdEx, nil
-		case 1:
-			iNdEx += 8
-			return iNdEx, nil
-		case 2:
-			var length int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowBase
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				length |= (int(b) & 0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if length < 0 {
-				return 0, ErrInvalidLengthBase
-			}
-			iNdEx += length
-			if iNdEx < 0 {
-				return 0, ErrInvalidLengthBase
-			}
-			return iNdEx, nil
-		case 3:
-			for {
-				var innerWire uint64
-				var start int = iNdEx
-				for shift := uint(0); ; shift += 7 {
-					if shift >= 64 {
-						return 0, ErrIntOverflowBase
-					}
-					if iNdEx >= l {
-						return 0, io.ErrUnexpectedEOF
-					}
-					b := dAtA[iNdEx]
-					iNdEx++
-					innerWire |= (uint64(b) & 0x7F) << shift
-					if b < 0x80 {
-						break
-					}
-				}
-				innerWireType := int(innerWire & 0x7)
-				if innerWireType == 4 {
-					break
-				}
-				next, err := skipBase(dAtA[start:])
-				if err != nil {
-					return 0, err
-				}
-				iNdEx = start + next
-				if iNdEx < 0 {
-					return 0, ErrInvalidLengthBase
-				}
-			}
-			return iNdEx, nil
-		case 4:
-			return iNdEx, nil
-		case 5:
-			iNdEx += 4
-			return iNdEx, nil
-		default:
-			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
-		}
-	}
-	panic("unreachable")
-}
-
-var (
-	ErrInvalidLengthBase = fmt.Errorf("proto: negative length found during unmarshaling")
-	ErrIntOverflowBase   = fmt.Errorf("proto: integer overflow")
-)
diff --git a/commsg.pb.go b/commsg.pb.go
index 2866693..23abc96 100644
--- a/commsg.pb.go
+++ b/commsg.pb.go
@@ -1,12 +1,11 @@
-// Code generated by protoc-gen-gogo. DO NOT EDIT.
+// Code generated by protoc-gen-go. DO NOT EDIT.
 // source: commsg.proto
 
 package protomsg
 
 import (
 	fmt "fmt"
-	proto "github.com/gogo/protobuf/proto"
-	io "io"
+	proto "github.com/golang/protobuf/proto"
 	math "math"
 )
 
@@ -19,12 +18,15 @@
 // is compatible with the proto package it is being compiled against.
 // A compilation error at this line likely means your copy of the
 // proto package needs to be updated.
-const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
 
 type SdkmsgWithTask struct {
-	Ipcid   string `protobuf:"bytes,1,opt,name=ipcid,proto3" json:"ipcid,omitempty"`
-	Sdktype string `protobuf:"bytes,2,opt,name=sdktype,proto3" json:"sdktype,omitempty"`
-	Sdkdata []byte `protobuf:"bytes,4,opt,name=sdkdata,proto3" json:"sdkdata,omitempty"`
+	Ipcid                string   `protobuf:"bytes,1,opt,name=ipcid,proto3" json:"ipcid,omitempty"`
+	Sdktype              string   `protobuf:"bytes,2,opt,name=sdktype,proto3" json:"sdktype,omitempty"`
+	Sdkdata              []byte   `protobuf:"bytes,4,opt,name=sdkdata,proto3" json:"sdkdata,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *SdkmsgWithTask) Reset()         { *m = SdkmsgWithTask{} }
@@ -33,26 +35,18 @@
 func (*SdkmsgWithTask) Descriptor() ([]byte, []int) {
 	return fileDescriptor_968fba5e415d8aac, []int{0}
 }
+
 func (m *SdkmsgWithTask) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_SdkmsgWithTask.Unmarshal(m, b)
 }
 func (m *SdkmsgWithTask) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_SdkmsgWithTask.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_SdkmsgWithTask.Marshal(b, m, deterministic)
 }
 func (m *SdkmsgWithTask) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_SdkmsgWithTask.Merge(m, src)
 }
 func (m *SdkmsgWithTask) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_SdkmsgWithTask.Size(m)
 }
 func (m *SdkmsgWithTask) XXX_DiscardUnknown() {
 	xxx_messageInfo_SdkmsgWithTask.DiscardUnknown(m)
@@ -82,10 +76,13 @@
 }
 
 type TaskLabel struct {
-	Taskid   string            `protobuf:"bytes,1,opt,name=taskid,proto3" json:"taskid,omitempty"`
-	Taskname string            `protobuf:"bytes,2,opt,name=taskname,proto3" json:"taskname,omitempty"`
-	Sdkinfos []*SdkmsgWithTask `protobuf:"bytes,3,rep,name=sdkinfos,proto3" json:"sdkinfos,omitempty"`
-	Index    int32             `protobuf:"varint,4,opt,name=index,proto3" json:"index,omitempty"`
+	Taskid               string            `protobuf:"bytes,1,opt,name=taskid,proto3" json:"taskid,omitempty"`
+	Taskname             string            `protobuf:"bytes,2,opt,name=taskname,proto3" json:"taskname,omitempty"`
+	Sdkinfos             []*SdkmsgWithTask `protobuf:"bytes,3,rep,name=sdkinfos,proto3" json:"sdkinfos,omitempty"`
+	Index                int32             `protobuf:"varint,4,opt,name=index,proto3" json:"index,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
+	XXX_unrecognized     []byte            `json:"-"`
+	XXX_sizecache        int32             `json:"-"`
 }
 
 func (m *TaskLabel) Reset()         { *m = TaskLabel{} }
@@ -94,26 +91,18 @@
 func (*TaskLabel) Descriptor() ([]byte, []int) {
 	return fileDescriptor_968fba5e415d8aac, []int{1}
 }
+
 func (m *TaskLabel) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_TaskLabel.Unmarshal(m, b)
 }
 func (m *TaskLabel) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_TaskLabel.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_TaskLabel.Marshal(b, m, deterministic)
 }
 func (m *TaskLabel) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_TaskLabel.Merge(m, src)
 }
 func (m *TaskLabel) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_TaskLabel.Size(m)
 }
 func (m *TaskLabel) XXX_DiscardUnknown() {
 	xxx_messageInfo_TaskLabel.DiscardUnknown(m)
@@ -150,10 +139,13 @@
 }
 
 type SdkMessage struct {
-	Cid     string     `protobuf:"bytes,1,opt,name=cid,proto3" json:"cid,omitempty"`
-	Caddr   string     `protobuf:"bytes,2,opt,name=caddr,proto3" json:"caddr,omitempty"`
-	Tasklab *TaskLabel `protobuf:"bytes,3,opt,name=tasklab,proto3" json:"tasklab,omitempty"`
-	Data    []byte     `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"`
+	Cid                  string     `protobuf:"bytes,1,opt,name=cid,proto3" json:"cid,omitempty"`
+	Caddr                string     `protobuf:"bytes,2,opt,name=caddr,proto3" json:"caddr,omitempty"`
+	Tasklab              *TaskLabel `protobuf:"bytes,3,opt,name=tasklab,proto3" json:"tasklab,omitempty"`
+	Data                 []byte     `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
+	XXX_unrecognized     []byte     `json:"-"`
+	XXX_sizecache        int32      `json:"-"`
 }
 
 func (m *SdkMessage) Reset()         { *m = SdkMessage{} }
@@ -162,26 +154,18 @@
 func (*SdkMessage) Descriptor() ([]byte, []int) {
 	return fileDescriptor_968fba5e415d8aac, []int{2}
 }
+
 func (m *SdkMessage) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_SdkMessage.Unmarshal(m, b)
 }
 func (m *SdkMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_SdkMessage.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_SdkMessage.Marshal(b, m, deterministic)
 }
 func (m *SdkMessage) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_SdkMessage.Merge(m, src)
 }
 func (m *SdkMessage) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_SdkMessage.Size(m)
 }
 func (m *SdkMessage) XXX_DiscardUnknown() {
 	xxx_messageInfo_SdkMessage.DiscardUnknown(m)
@@ -218,9 +202,12 @@
 }
 
 type Recvmsg struct {
-	Id      string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	Addr    string `protobuf:"bytes,2,opt,name=addr,proto3" json:"addr,omitempty"`
-	Picdata []byte `protobuf:"bytes,3,opt,name=picdata,proto3" json:"picdata,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	Addr                 string   `protobuf:"bytes,2,opt,name=addr,proto3" json:"addr,omitempty"`
+	Picdata              []byte   `protobuf:"bytes,3,opt,name=picdata,proto3" json:"picdata,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Recvmsg) Reset()         { *m = Recvmsg{} }
@@ -229,26 +216,18 @@
 func (*Recvmsg) Descriptor() ([]byte, []int) {
 	return fileDescriptor_968fba5e415d8aac, []int{3}
 }
+
 func (m *Recvmsg) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Recvmsg.Unmarshal(m, b)
 }
 func (m *Recvmsg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Recvmsg.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Recvmsg.Marshal(b, m, deterministic)
 }
 func (m *Recvmsg) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Recvmsg.Merge(m, src)
 }
 func (m *Recvmsg) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Recvmsg.Size(m)
 }
 func (m *Recvmsg) XXX_DiscardUnknown() {
 	xxx_messageInfo_Recvmsg.DiscardUnknown(m)
@@ -287,1075 +266,23 @@
 func init() { proto.RegisterFile("commsg.proto", fileDescriptor_968fba5e415d8aac) }
 
 var fileDescriptor_968fba5e415d8aac = []byte{
-	// 315 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x54, 0x90, 0xbb, 0x4e, 0xc3, 0x30,
-	0x14, 0x86, 0xeb, 0xa6, 0xd7, 0xd3, 0xaa, 0x42, 0x06, 0x21, 0x8b, 0xc1, 0x8a, 0x32, 0x65, 0xa1,
-	0x43, 0xe1, 0x09, 0x58, 0x58, 0x60, 0x49, 0x91, 0x90, 0xd8, 0xdc, 0xd8, 0x04, 0xcb, 0x75, 0x13,
-	0xc5, 0x11, 0x97, 0x67, 0x60, 0xe1, 0xb1, 0x18, 0x3b, 0x32, 0xa2, 0xe4, 0x45, 0x90, 0x9d, 0x4b,
-	0xcb, 0xe4, 0xff, 0xb3, 0x8f, 0xff, 0xf3, 0x9f, 0x03, 0xf3, 0x38, 0xd5, 0xda, 0x24, 0xcb, 0x2c,
-	0x4f, 0x8b, 0x14, 0x4f, 0xdc, 0xa1, 0x4d, 0x12, 0x3c, 0xc1, 0x62, 0xcd, 0x95, 0x36, 0xc9, 0xa3,
-	0x2c, 0x5e, 0x1e, 0x98, 0x51, 0xf8, 0x0c, 0x86, 0x32, 0x8b, 0x25, 0x27, 0xc8, 0x47, 0xe1, 0x34,
-	0xaa, 0x01, 0x13, 0x18, 0x1b, 0xae, 0x8a, 0x8f, 0x4c, 0x90, 0xbe, 0xbb, 0x6f, 0xb1, 0x79, 0xe1,
-	0xac, 0x60, 0x64, 0xe0, 0xa3, 0x70, 0x1e, 0xb5, 0x18, 0x7c, 0x22, 0x98, 0x5a, 0xcb, 0x3b, 0xb6,
-	0x11, 0x5b, 0x7c, 0x0e, 0xa3, 0x82, 0x19, 0xd5, 0x19, 0x37, 0x84, 0x2f, 0x60, 0x62, 0xd5, 0x8e,
-	0xe9, 0xd6, 0xba, 0x63, 0x7c, 0x0d, 0x13, 0xc3, 0x95, 0xdc, 0x3d, 0xa7, 0x86, 0x78, 0xbe, 0x17,
-	0xce, 0x56, 0x64, 0xd9, 0x46, 0x5f, 0xfe, 0xcf, 0x1d, 0x75, 0x95, 0x6e, 0x82, 0x1d, 0x17, 0xef,
-	0x2e, 0xcf, 0x30, 0xaa, 0x21, 0x78, 0x03, 0x58, 0x73, 0x75, 0x2f, 0x8c, 0x61, 0x89, 0xc0, 0x27,
-	0xe0, 0x1d, 0x66, 0xb4, 0xd2, 0xfe, 0x8a, 0x19, 0xe7, 0x79, 0x13, 0xa2, 0x06, 0x7c, 0x09, 0x63,
-	0x9b, 0x66, 0xcb, 0x36, 0xc4, 0xf3, 0x51, 0x38, 0x5b, 0x9d, 0x1e, 0x02, 0x74, 0xb3, 0x45, 0x6d,
-	0x0d, 0xc6, 0x30, 0x38, 0xda, 0x84, 0xd3, 0xc1, 0x2d, 0x8c, 0x73, 0x11, 0xbf, 0x6a, 0x93, 0xe0,
-	0x05, 0xf4, 0xbb, 0xa6, 0x7d, 0xc9, 0x6d, 0xf9, 0x51, 0x4b, 0xa7, 0xed, 0x3e, 0x33, 0x19, 0x3b,
-	0x17, 0xaf, 0xde, 0x67, 0x83, 0x37, 0xe4, 0xbb, 0xa4, 0x68, 0x5f, 0x52, 0xf4, 0x5b, 0x52, 0xf4,
-	0x55, 0xd1, 0xde, 0xbe, 0xa2, 0xbd, 0x9f, 0x8a, 0xf6, 0x36, 0x23, 0x97, 0xe9, 0xea, 0x2f, 0x00,
-	0x00, 0xff, 0xff, 0xc8, 0x63, 0xfd, 0xdb, 0xe6, 0x01, 0x00, 0x00,
+	// 283 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x54, 0x90, 0x4d, 0x4e, 0xc3, 0x30,
+	0x10, 0x85, 0x95, 0xa4, 0x6d, 0xd2, 0x69, 0x55, 0xa1, 0x01, 0x21, 0x8b, 0x55, 0x94, 0x55, 0x36,
+	0x64, 0x51, 0xb8, 0x03, 0x1b, 0xd8, 0xa4, 0x48, 0x48, 0xec, 0x9c, 0xd8, 0x04, 0xcb, 0x75, 0x12,
+	0x65, 0x22, 0x7e, 0xce, 0xc0, 0xa5, 0x91, 0x9d, 0x9f, 0xb6, 0x2b, 0xbf, 0xcf, 0x1e, 0xbf, 0x79,
+	0x33, 0xb0, 0x2d, 0x1b, 0x63, 0xa8, 0xca, 0xda, 0xae, 0xe9, 0x1b, 0x8c, 0xdc, 0x61, 0xa8, 0x4a,
+	0xde, 0x61, 0x77, 0x10, 0xda, 0x50, 0xf5, 0xa6, 0xfa, 0xcf, 0x57, 0x4e, 0x1a, 0x6f, 0x60, 0xa9,
+	0xda, 0x52, 0x09, 0xe6, 0xc5, 0x5e, 0xba, 0xce, 0x07, 0x40, 0x06, 0x21, 0x09, 0xdd, 0xff, 0xb6,
+	0x92, 0xf9, 0xee, 0x7e, 0xc2, 0xf1, 0x45, 0xf0, 0x9e, 0xb3, 0x45, 0xec, 0xa5, 0xdb, 0x7c, 0xc2,
+	0xe4, 0xcf, 0x83, 0xb5, 0xb5, 0x7c, 0xe6, 0x85, 0x3c, 0xe2, 0x2d, 0xac, 0x7a, 0x4e, 0x7a, 0x36,
+	0x1e, 0x09, 0xef, 0x20, 0xb2, 0xaa, 0xe6, 0x66, 0xb2, 0x9e, 0x19, 0x1f, 0x21, 0x22, 0xa1, 0x55,
+	0xfd, 0xd1, 0x10, 0x0b, 0xe2, 0x20, 0xdd, 0xec, 0x59, 0x36, 0x45, 0xcf, 0x2e, 0x73, 0xe7, 0x73,
+	0xa5, 0x9b, 0xa0, 0x16, 0xf2, 0xc7, 0xe5, 0x59, 0xe6, 0x03, 0x24, 0xdf, 0x00, 0x07, 0xa1, 0x5f,
+	0x24, 0x11, 0xaf, 0x24, 0x5e, 0x41, 0x70, 0x9a, 0xd1, 0x4a, 0xfb, 0xab, 0xe4, 0x42, 0x74, 0x63,
+	0x88, 0x01, 0xf0, 0x1e, 0x42, 0x9b, 0xe6, 0xc8, 0x0b, 0x16, 0xc4, 0x5e, 0xba, 0xd9, 0x5f, 0x9f,
+	0x02, 0xcc, 0xb3, 0xe5, 0x53, 0x0d, 0x22, 0x2c, 0xce, 0x36, 0xe1, 0x74, 0xf2, 0x04, 0x61, 0x27,
+	0xcb, 0x2f, 0x43, 0x15, 0xee, 0xc0, 0x9f, 0x9b, 0xfa, 0x4a, 0xd8, 0xf2, 0xb3, 0x96, 0x4e, 0xdb,
+	0x7d, 0xb6, 0xaa, 0x74, 0x2e, 0xc1, 0xb0, 0xcf, 0x11, 0x8b, 0x95, 0xeb, 0xfc, 0xf0, 0x1f, 0x00,
+	0x00, 0xff, 0xff, 0xf6, 0xc9, 0xa4, 0x99, 0xcc, 0x01, 0x00, 0x00,
 }
-
-func (m *SdkmsgWithTask) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *SdkmsgWithTask) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Ipcid) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Ipcid)))
-		i += copy(dAtA[i:], m.Ipcid)
-	}
-	if len(m.Sdktype) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Sdktype)))
-		i += copy(dAtA[i:], m.Sdktype)
-	}
-	if len(m.Sdkdata) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Sdkdata)))
-		i += copy(dAtA[i:], m.Sdkdata)
-	}
-	return i, nil
-}
-
-func (m *TaskLabel) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *TaskLabel) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Taskid) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Taskid)))
-		i += copy(dAtA[i:], m.Taskid)
-	}
-	if len(m.Taskname) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Taskname)))
-		i += copy(dAtA[i:], m.Taskname)
-	}
-	if len(m.Sdkinfos) > 0 {
-		for _, msg := range m.Sdkinfos {
-			dAtA[i] = 0x1a
-			i++
-			i = encodeVarintCommsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	if m.Index != 0 {
-		dAtA[i] = 0x20
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(m.Index))
-	}
-	return i, nil
-}
-
-func (m *SdkMessage) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *SdkMessage) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Cid) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Cid)))
-		i += copy(dAtA[i:], m.Cid)
-	}
-	if len(m.Caddr) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Caddr)))
-		i += copy(dAtA[i:], m.Caddr)
-	}
-	if m.Tasklab != nil {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(m.Tasklab.Size()))
-		n1, err1 := m.Tasklab.MarshalTo(dAtA[i:])
-		if err1 != nil {
-			return 0, err1
-		}
-		i += n1
-	}
-	if len(m.Data) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Data)))
-		i += copy(dAtA[i:], m.Data)
-	}
-	return i, nil
-}
-
-func (m *Recvmsg) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Recvmsg) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.Addr) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Addr)))
-		i += copy(dAtA[i:], m.Addr)
-	}
-	if len(m.Picdata) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintCommsg(dAtA, i, uint64(len(m.Picdata)))
-		i += copy(dAtA[i:], m.Picdata)
-	}
-	return i, nil
-}
-
-func encodeVarintCommsg(dAtA []byte, offset int, v uint64) int {
-	for v >= 1<<7 {
-		dAtA[offset] = uint8(v&0x7f | 0x80)
-		v >>= 7
-		offset++
-	}
-	dAtA[offset] = uint8(v)
-	return offset + 1
-}
-func (m *SdkmsgWithTask) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Ipcid)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	l = len(m.Sdktype)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	l = len(m.Sdkdata)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	return n
-}
-
-func (m *TaskLabel) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Taskid)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	l = len(m.Taskname)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	if len(m.Sdkinfos) > 0 {
-		for _, e := range m.Sdkinfos {
-			l = e.Size()
-			n += 1 + l + sovCommsg(uint64(l))
-		}
-	}
-	if m.Index != 0 {
-		n += 1 + sovCommsg(uint64(m.Index))
-	}
-	return n
-}
-
-func (m *SdkMessage) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Cid)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	l = len(m.Caddr)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	if m.Tasklab != nil {
-		l = m.Tasklab.Size()
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	l = len(m.Data)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	return n
-}
-
-func (m *Recvmsg) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	l = len(m.Addr)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	l = len(m.Picdata)
-	if l > 0 {
-		n += 1 + l + sovCommsg(uint64(l))
-	}
-	return n
-}
-
-func sovCommsg(x uint64) (n int) {
-	for {
-		n++
-		x >>= 7
-		if x == 0 {
-			break
-		}
-	}
-	return n
-}
-func sozCommsg(x uint64) (n int) {
-	return sovCommsg(uint64((x << 1) ^ uint64((int64(x) >> 63))))
-}
-func (m *SdkmsgWithTask) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowCommsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: SdkmsgWithTask: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: SdkmsgWithTask: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Ipcid", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Ipcid = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Sdktype", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Sdktype = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Sdkdata", wireType)
-			}
-			var byteLen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				byteLen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if byteLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + byteLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Sdkdata = append(m.Sdkdata[:0], dAtA[iNdEx:postIndex]...)
-			if m.Sdkdata == nil {
-				m.Sdkdata = []byte{}
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipCommsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *TaskLabel) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowCommsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: TaskLabel: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: TaskLabel: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Taskid", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Taskid = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Taskname", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Taskname = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Sdkinfos", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Sdkinfos = append(m.Sdkinfos, &SdkmsgWithTask{})
-			if err := m.Sdkinfos[len(m.Sdkinfos)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 4:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
-			}
-			m.Index = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Index |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipCommsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *SdkMessage) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowCommsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: SdkMessage: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: SdkMessage: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Cid", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Cid = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Caddr", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Caddr = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Tasklab", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.Tasklab == nil {
-				m.Tasklab = &TaskLabel{}
-			}
-			if err := m.Tasklab.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType)
-			}
-			var byteLen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				byteLen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if byteLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + byteLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Data = append(m.Data[:0], dAtA[iNdEx:postIndex]...)
-			if m.Data == nil {
-				m.Data = []byte{}
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipCommsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Recvmsg) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowCommsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: recvmsg: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: recvmsg: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Addr", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Addr = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Picdata", wireType)
-			}
-			var byteLen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				byteLen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if byteLen < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			postIndex := iNdEx + byteLen
-			if postIndex < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Picdata = append(m.Picdata[:0], dAtA[iNdEx:postIndex]...)
-			if m.Picdata == nil {
-				m.Picdata = []byte{}
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipCommsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthCommsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func skipCommsg(dAtA []byte) (n int, err error) {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return 0, ErrIntOverflowCommsg
-			}
-			if iNdEx >= l {
-				return 0, io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= (uint64(b) & 0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		wireType := int(wire & 0x7)
-		switch wireType {
-		case 0:
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				iNdEx++
-				if dAtA[iNdEx-1] < 0x80 {
-					break
-				}
-			}
-			return iNdEx, nil
-		case 1:
-			iNdEx += 8
-			return iNdEx, nil
-		case 2:
-			var length int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowCommsg
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				length |= (int(b) & 0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if length < 0 {
-				return 0, ErrInvalidLengthCommsg
-			}
-			iNdEx += length
-			if iNdEx < 0 {
-				return 0, ErrInvalidLengthCommsg
-			}
-			return iNdEx, nil
-		case 3:
-			for {
-				var innerWire uint64
-				var start int = iNdEx
-				for shift := uint(0); ; shift += 7 {
-					if shift >= 64 {
-						return 0, ErrIntOverflowCommsg
-					}
-					if iNdEx >= l {
-						return 0, io.ErrUnexpectedEOF
-					}
-					b := dAtA[iNdEx]
-					iNdEx++
-					innerWire |= (uint64(b) & 0x7F) << shift
-					if b < 0x80 {
-						break
-					}
-				}
-				innerWireType := int(innerWire & 0x7)
-				if innerWireType == 4 {
-					break
-				}
-				next, err := skipCommsg(dAtA[start:])
-				if err != nil {
-					return 0, err
-				}
-				iNdEx = start + next
-				if iNdEx < 0 {
-					return 0, ErrInvalidLengthCommsg
-				}
-			}
-			return iNdEx, nil
-		case 4:
-			return iNdEx, nil
-		case 5:
-			iNdEx += 4
-			return iNdEx, nil
-		default:
-			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
-		}
-	}
-	panic("unreachable")
-}
-
-var (
-	ErrInvalidLengthCommsg = fmt.Errorf("proto: negative length found during unmarshaling")
-	ErrIntOverflowCommsg   = fmt.Errorf("proto: integer overflow")
-)
diff --git a/es.pb.go b/es.pb.go
index 32bf8f8..6a82f03 100644
--- a/es.pb.go
+++ b/es.pb.go
@@ -1,13 +1,11 @@
-// Code generated by protoc-gen-gogo. DO NOT EDIT.
+// Code generated by protoc-gen-go. DO NOT EDIT.
 // source: es.proto
 
 package protomsg
 
 import (
-	encoding_binary "encoding/binary"
 	fmt "fmt"
-	proto "github.com/gogo/protobuf/proto"
-	io "io"
+	proto "github.com/golang/protobuf/proto"
 	math "math"
 )
 
@@ -20,13 +18,16 @@
 // is compatible with the proto package it is being compiled against.
 // A compilation error at this line likely means your copy of the
 // proto package needs to be updated.
-const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
 
 type Esinfo struct {
-	Id           string  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	Tableid      string  `protobuf:"bytes,2,opt,name=tableid,proto3" json:"tableid,omitempty"`
-	FaceFeature  string  `protobuf:"bytes,3,opt,name=faceFeature,proto3" json:"faceFeature,omitempty"`
-	CompareScore float32 `protobuf:"fixed32,4,opt,name=compareScore,proto3" json:"compareScore,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	Tableid              string   `protobuf:"bytes,2,opt,name=tableid,proto3" json:"tableid,omitempty"`
+	FaceFeature          string   `protobuf:"bytes,3,opt,name=faceFeature,proto3" json:"faceFeature,omitempty"`
+	CompareScore         float32  `protobuf:"fixed32,4,opt,name=compareScore,proto3" json:"compareScore,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Esinfo) Reset()         { *m = Esinfo{} }
@@ -35,26 +36,18 @@
 func (*Esinfo) Descriptor() ([]byte, []int) {
 	return fileDescriptor_718db5c20d0f3738, []int{0}
 }
+
 func (m *Esinfo) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Esinfo.Unmarshal(m, b)
 }
 func (m *Esinfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Esinfo.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Esinfo.Marshal(b, m, deterministic)
 }
 func (m *Esinfo) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Esinfo.Merge(m, src)
 }
 func (m *Esinfo) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Esinfo.Size(m)
 }
 func (m *Esinfo) XXX_DiscardUnknown() {
 	xxx_messageInfo_Esinfo.DiscardUnknown(m)
@@ -91,23 +84,26 @@
 }
 
 type Dbperson struct {
-	Id           string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	TableId      string `protobuf:"bytes,2,opt,name=tableId,proto3" json:"tableId,omitempty"`
-	FaceFeature  string `protobuf:"bytes,3,opt,name=faceFeature,proto3" json:"faceFeature,omitempty"`
-	PersonPicUrl string `protobuf:"bytes,4,opt,name=personPicUrl,proto3" json:"personPicUrl,omitempty"`
-	PersonName   string `protobuf:"bytes,5,opt,name=personName,proto3" json:"personName,omitempty"`
-	Age          string `protobuf:"bytes,6,opt,name=age,proto3" json:"age,omitempty"`
-	Sex          string `protobuf:"bytes,7,opt,name=sex,proto3" json:"sex,omitempty"`
-	IdCard       string `protobuf:"bytes,8,opt,name=idCard,proto3" json:"idCard,omitempty"`
-	PicDesc      string `protobuf:"bytes,9,opt,name=picDesc,proto3" json:"picDesc,omitempty"`
-	PhoneNum     string `protobuf:"bytes,10,opt,name=phoneNum,proto3" json:"phoneNum,omitempty"`
-	CreateTime   string `protobuf:"bytes,11,opt,name=createTime,proto3" json:"createTime,omitempty"`
-	UpdateTime   string `protobuf:"bytes,12,opt,name=updateTime,proto3" json:"updateTime,omitempty"`
-	CreateBy     string `protobuf:"bytes,13,opt,name=createBy,proto3" json:"createBy,omitempty"`
-	IsDelete     int32  `protobuf:"varint,14,opt,name=isDelete,proto3" json:"isDelete,omitempty"`
-	MonitorLevel string `protobuf:"bytes,15,opt,name=monitorLevel,proto3" json:"monitorLevel,omitempty"`
-	Enable       int32  `protobuf:"varint,16,opt,name=enable,proto3" json:"enable,omitempty"`
-	Reserved     string `protobuf:"bytes,17,opt,name=reserved,proto3" json:"reserved,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	TableId              string   `protobuf:"bytes,2,opt,name=tableId,proto3" json:"tableId,omitempty"`
+	FaceFeature          string   `protobuf:"bytes,3,opt,name=faceFeature,proto3" json:"faceFeature,omitempty"`
+	PersonPicUrl         string   `protobuf:"bytes,4,opt,name=personPicUrl,proto3" json:"personPicUrl,omitempty"`
+	PersonName           string   `protobuf:"bytes,5,opt,name=personName,proto3" json:"personName,omitempty"`
+	Age                  string   `protobuf:"bytes,6,opt,name=age,proto3" json:"age,omitempty"`
+	Sex                  string   `protobuf:"bytes,7,opt,name=sex,proto3" json:"sex,omitempty"`
+	IdCard               string   `protobuf:"bytes,8,opt,name=idCard,proto3" json:"idCard,omitempty"`
+	PicDesc              string   `protobuf:"bytes,9,opt,name=picDesc,proto3" json:"picDesc,omitempty"`
+	PhoneNum             string   `protobuf:"bytes,10,opt,name=phoneNum,proto3" json:"phoneNum,omitempty"`
+	CreateTime           string   `protobuf:"bytes,11,opt,name=createTime,proto3" json:"createTime,omitempty"`
+	UpdateTime           string   `protobuf:"bytes,12,opt,name=updateTime,proto3" json:"updateTime,omitempty"`
+	CreateBy             string   `protobuf:"bytes,13,opt,name=createBy,proto3" json:"createBy,omitempty"`
+	IsDelete             int32    `protobuf:"varint,14,opt,name=isDelete,proto3" json:"isDelete,omitempty"`
+	MonitorLevel         string   `protobuf:"bytes,15,opt,name=monitorLevel,proto3" json:"monitorLevel,omitempty"`
+	Enable               int32    `protobuf:"varint,16,opt,name=enable,proto3" json:"enable,omitempty"`
+	Reserved             string   `protobuf:"bytes,17,opt,name=reserved,proto3" json:"reserved,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Dbperson) Reset()         { *m = Dbperson{} }
@@ -116,26 +112,18 @@
 func (*Dbperson) Descriptor() ([]byte, []int) {
 	return fileDescriptor_718db5c20d0f3738, []int{1}
 }
+
 func (m *Dbperson) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Dbperson.Unmarshal(m, b)
 }
 func (m *Dbperson) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Dbperson.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Dbperson.Marshal(b, m, deterministic)
 }
 func (m *Dbperson) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Dbperson.Merge(m, src)
 }
 func (m *Dbperson) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Dbperson.Size(m)
 }
 func (m *Dbperson) XXX_DiscardUnknown() {
 	xxx_messageInfo_Dbperson.DiscardUnknown(m)
@@ -263,21 +251,24 @@
 }
 
 type Dbtable struct {
-	Id            string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	TableName     string `protobuf:"bytes,2,opt,name=tableName,proto3" json:"tableName,omitempty"`
-	TableDesc     string `protobuf:"bytes,3,opt,name=tableDesc,proto3" json:"tableDesc,omitempty"`
-	TableType     string `protobuf:"bytes,4,opt,name=tableType,proto3" json:"tableType,omitempty"`
-	BwType        string `protobuf:"bytes,5,opt,name=bwType,proto3" json:"bwType,omitempty"`
-	StartTime     string `protobuf:"bytes,6,opt,name=startTime,proto3" json:"startTime,omitempty"`
-	EndTime       string `protobuf:"bytes,7,opt,name=endTime,proto3" json:"endTime,omitempty"`
-	CreateTime    string `protobuf:"bytes,8,opt,name=createTime,proto3" json:"createTime,omitempty"`
-	UpdateTime    string `protobuf:"bytes,9,opt,name=updateTime,proto3" json:"updateTime,omitempty"`
-	CreateBy      string `protobuf:"bytes,10,opt,name=createBy,proto3" json:"createBy,omitempty"`
-	IsDelete      int32  `protobuf:"varint,11,opt,name=isDelete,proto3" json:"isDelete,omitempty"`
-	IsForever     string `protobuf:"bytes,12,opt,name=isForever,proto3" json:"isForever,omitempty"`
-	Enable        int32  `protobuf:"varint,13,opt,name=enable,proto3" json:"enable,omitempty"`
-	IsSync        string `protobuf:"bytes,14,opt,name=isSync,proto3" json:"isSync,omitempty"`
-	AnalyServerId string `protobuf:"bytes,15,opt,name=analyServerId,proto3" json:"analyServerId,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	TableName            string   `protobuf:"bytes,2,opt,name=tableName,proto3" json:"tableName,omitempty"`
+	TableDesc            string   `protobuf:"bytes,3,opt,name=tableDesc,proto3" json:"tableDesc,omitempty"`
+	TableType            string   `protobuf:"bytes,4,opt,name=tableType,proto3" json:"tableType,omitempty"`
+	BwType               string   `protobuf:"bytes,5,opt,name=bwType,proto3" json:"bwType,omitempty"`
+	StartTime            string   `protobuf:"bytes,6,opt,name=startTime,proto3" json:"startTime,omitempty"`
+	EndTime              string   `protobuf:"bytes,7,opt,name=endTime,proto3" json:"endTime,omitempty"`
+	CreateTime           string   `protobuf:"bytes,8,opt,name=createTime,proto3" json:"createTime,omitempty"`
+	UpdateTime           string   `protobuf:"bytes,9,opt,name=updateTime,proto3" json:"updateTime,omitempty"`
+	CreateBy             string   `protobuf:"bytes,10,opt,name=createBy,proto3" json:"createBy,omitempty"`
+	IsDelete             int32    `protobuf:"varint,11,opt,name=isDelete,proto3" json:"isDelete,omitempty"`
+	IsForever            string   `protobuf:"bytes,12,opt,name=isForever,proto3" json:"isForever,omitempty"`
+	Enable               int32    `protobuf:"varint,13,opt,name=enable,proto3" json:"enable,omitempty"`
+	IsSync               string   `protobuf:"bytes,14,opt,name=isSync,proto3" json:"isSync,omitempty"`
+	AnalyServerId        string   `protobuf:"bytes,15,opt,name=analyServerId,proto3" json:"analyServerId,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Dbtable) Reset()         { *m = Dbtable{} }
@@ -286,26 +277,18 @@
 func (*Dbtable) Descriptor() ([]byte, []int) {
 	return fileDescriptor_718db5c20d0f3738, []int{2}
 }
+
 func (m *Dbtable) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Dbtable.Unmarshal(m, b)
 }
 func (m *Dbtable) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Dbtable.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Dbtable.Marshal(b, m, deterministic)
 }
 func (m *Dbtable) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Dbtable.Merge(m, src)
 }
 func (m *Dbtable) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Dbtable.Size(m)
 }
 func (m *Dbtable) XXX_DiscardUnknown() {
 	xxx_messageInfo_Dbtable.DiscardUnknown(m)
@@ -427,1844 +410,35 @@
 func init() { proto.RegisterFile("es.proto", fileDescriptor_718db5c20d0f3738) }
 
 var fileDescriptor_718db5c20d0f3738 = []byte{
-	// 500 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x94, 0x41, 0x8e, 0xd3, 0x30,
-	0x14, 0x86, 0x9b, 0x86, 0x69, 0x13, 0x77, 0x3a, 0x0c, 0x5e, 0x20, 0x0b, 0x8d, 0xa2, 0xaa, 0x62,
-	0xd1, 0x15, 0x1b, 0x6e, 0x30, 0x94, 0x91, 0x2a, 0xa1, 0x11, 0x6a, 0x87, 0x03, 0x38, 0xf1, 0x9b,
-	0xc1, 0x52, 0x12, 0x47, 0x76, 0x5a, 0xda, 0x5b, 0x70, 0x13, 0xae, 0xc1, 0x72, 0x96, 0x2c, 0x58,
-	0xa0, 0xf6, 0x22, 0xc8, 0xcf, 0x49, 0x93, 0x0c, 0xa2, 0xb0, 0x6a, 0xff, 0xff, 0xb7, 0xdf, 0x7b,
-	0x7d, 0x9f, 0x55, 0x12, 0x80, 0x79, 0x53, 0x68, 0x55, 0x2a, 0x1a, 0xe0, 0x47, 0x66, 0x1e, 0xa6,
-	0x5b, 0x32, 0x78, 0x6f, 0x64, 0x7e, 0xaf, 0xe8, 0x05, 0xe9, 0x4b, 0xc1, 0xbc, 0x89, 0x37, 0x0b,
-	0x97, 0x7d, 0x29, 0x28, 0x23, 0xc3, 0x92, 0xc7, 0x29, 0x48, 0xc1, 0xfa, 0x68, 0xd6, 0x92, 0x4e,
-	0xc8, 0xe8, 0x9e, 0x27, 0x70, 0x03, 0xbc, 0x5c, 0x6b, 0x60, 0x3e, 0xa6, 0x6d, 0x8b, 0x4e, 0xc9,
-	0x79, 0xa2, 0xb2, 0x82, 0x6b, 0x58, 0x25, 0x4a, 0x03, 0x7b, 0x36, 0xf1, 0x66, 0xfd, 0x65, 0xc7,
-	0x9b, 0xfe, 0xf4, 0x49, 0x30, 0x8f, 0x0b, 0xd0, 0x46, 0xe5, 0x7f, 0x6d, 0xbe, 0xe8, 0x36, 0x5f,
-	0xfc, 0x67, 0x73, 0x57, 0xf5, 0xa3, 0x4c, 0x3e, 0xe9, 0x14, 0x9b, 0x87, 0xcb, 0x8e, 0x47, 0x23,
-	0x42, 0x9c, 0xbe, 0xe5, 0x19, 0xb0, 0x33, 0x3c, 0xd1, 0x72, 0xe8, 0x25, 0xf1, 0xf9, 0x03, 0xb0,
-	0x01, 0x06, 0xf6, 0xab, 0x75, 0x0c, 0x6c, 0xd9, 0xd0, 0x39, 0x06, 0xb6, 0xf4, 0x25, 0x19, 0x48,
-	0xf1, 0x8e, 0x6b, 0xc1, 0x02, 0x34, 0x2b, 0x65, 0x67, 0x2f, 0x64, 0x32, 0x07, 0x93, 0xb0, 0xd0,
-	0xcd, 0x5e, 0x49, 0xfa, 0x8a, 0x04, 0xc5, 0x67, 0x95, 0xc3, 0xed, 0x3a, 0x63, 0x04, 0xa3, 0xa3,
-	0xb6, 0x13, 0x25, 0x1a, 0x78, 0x09, 0x77, 0x32, 0x03, 0x36, 0x72, 0x13, 0x35, 0x8e, 0xcd, 0xd7,
-	0x85, 0xa8, 0xf3, 0x73, 0x97, 0x37, 0x8e, 0xad, 0xed, 0x4e, 0x5f, 0xef, 0xd8, 0xd8, 0xd5, 0xae,
-	0xb5, 0xcd, 0xa4, 0x99, 0x43, 0x0a, 0x25, 0xb0, 0x8b, 0x89, 0x37, 0x3b, 0x5b, 0x1e, 0xb5, 0xdd,
-	0x56, 0xa6, 0x72, 0x59, 0x2a, 0xfd, 0x01, 0x36, 0x90, 0xb2, 0xe7, 0x6e, 0x5b, 0x6d, 0xcf, 0xfe,
-	0x52, 0xc8, 0xed, 0xfe, 0xd9, 0x25, 0xde, 0xae, 0x94, 0xad, 0xab, 0xc1, 0x80, 0xde, 0x80, 0x60,
-	0x2f, 0x5c, 0xcf, 0x5a, 0x4f, 0xbf, 0xf9, 0x64, 0x38, 0x8f, 0x91, 0xda, 0x1f, 0x74, 0xaf, 0x48,
-	0x88, 0x01, 0x2e, 0xdf, 0xf1, 0x6d, 0x8c, 0x63, 0x8a, 0x1b, 0xf4, 0x5b, 0x29, 0xee, 0xb0, 0x4e,
-	0xef, 0x76, 0x05, 0x54, 0x68, 0x1b, 0xc3, 0x4e, 0x1a, 0x7f, 0xc1, 0xc8, 0x31, 0xad, 0x94, 0xbd,
-	0x65, 0x4a, 0xae, 0x4b, 0x5c, 0x9e, 0xa3, 0xda, 0x18, 0x96, 0x18, 0xe4, 0x02, 0x33, 0xc7, 0xb7,
-	0x96, 0x4f, 0xa8, 0x04, 0xff, 0xa0, 0x12, 0x9e, 0xa4, 0x42, 0x4e, 0x50, 0x19, 0x3d, 0xa1, 0x72,
-	0x45, 0x42, 0x69, 0x6e, 0x94, 0x86, 0x0d, 0xe8, 0x0a, 0x76, 0x63, 0xb4, 0x78, 0x8c, 0x3b, 0x3c,
-	0xec, 0x8b, 0x34, 0xab, 0x5d, 0x9e, 0x20, 0x65, 0xfb, 0x22, 0x51, 0xd1, 0xd7, 0x64, 0xcc, 0x73,
-	0x9e, 0xee, 0x56, 0x16, 0x8d, 0x5e, 0x88, 0x0a, 0x72, 0xd7, 0xbc, 0x66, 0xdf, 0xf7, 0x91, 0xf7,
-	0xb8, 0x8f, 0xbc, 0x5f, 0xfb, 0xc8, 0xfb, 0x7a, 0x88, 0x7a, 0x8f, 0x87, 0xa8, 0xf7, 0xe3, 0x10,
-	0xf5, 0xe2, 0x01, 0xfe, 0x5d, 0xbc, 0xfd, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x22, 0xde, 0x39, 0x6b,
-	0x41, 0x04, 0x00, 0x00,
+	// 467 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x94, 0x51, 0x6e, 0xd3, 0x40,
+	0x10, 0x86, 0x95, 0x98, 0x26, 0xf6, 0xa4, 0x29, 0x65, 0x1f, 0xd0, 0x0a, 0x55, 0x28, 0x8a, 0x78,
+	0xc8, 0x13, 0x2f, 0xdc, 0x00, 0x42, 0xa5, 0x48, 0xa8, 0x42, 0x49, 0x39, 0xc0, 0xda, 0x3b, 0x2d,
+	0x2b, 0xd9, 0x5e, 0x6b, 0xd7, 0x09, 0xc9, 0xa9, 0xb8, 0x10, 0x87, 0x41, 0x33, 0x6b, 0xc7, 0x76,
+	0x11, 0x85, 0xa7, 0xe4, 0xff, 0xff, 0xdd, 0x99, 0xc9, 0x7c, 0xab, 0x40, 0x8c, 0xfe, 0x7d, 0xe5,
+	0x6c, 0x6d, 0x45, 0xcc, 0x1f, 0x85, 0x7f, 0x5c, 0x1e, 0x61, 0xf2, 0xd9, 0x9b, 0xf2, 0xc1, 0x8a,
+	0x2b, 0x18, 0x1b, 0x2d, 0x47, 0x8b, 0xd1, 0x2a, 0xd9, 0x8e, 0x8d, 0x16, 0x12, 0xa6, 0xb5, 0x4a,
+	0x73, 0x34, 0x5a, 0x8e, 0xd9, 0x6c, 0xa5, 0x58, 0xc0, 0xec, 0x41, 0x65, 0x78, 0x8b, 0xaa, 0xde,
+	0x3b, 0x94, 0x11, 0xa7, 0x7d, 0x4b, 0x2c, 0xe1, 0x32, 0xb3, 0x45, 0xa5, 0x1c, 0xee, 0x32, 0xeb,
+	0x50, 0xbe, 0x58, 0x8c, 0x56, 0xe3, 0xed, 0xc0, 0x5b, 0xfe, 0x8a, 0x20, 0x5e, 0xa7, 0x15, 0x3a,
+	0x6f, 0xcb, 0xbf, 0x36, 0xdf, 0x0c, 0x9b, 0x6f, 0xfe, 0xb3, 0x79, 0xa8, 0xfa, 0xd5, 0x64, 0xdf,
+	0x5c, 0xce, 0xcd, 0x93, 0xed, 0xc0, 0x13, 0x6f, 0x01, 0x82, 0xbe, 0x53, 0x05, 0xca, 0x0b, 0x3e,
+	0xd1, 0x73, 0xc4, 0x35, 0x44, 0xea, 0x11, 0xe5, 0x84, 0x03, 0xfa, 0x4a, 0x8e, 0xc7, 0xa3, 0x9c,
+	0x06, 0xc7, 0xe3, 0x51, 0xbc, 0x86, 0x89, 0xd1, 0x9f, 0x94, 0xd3, 0x32, 0x66, 0xb3, 0x51, 0x34,
+	0x7b, 0x65, 0xb2, 0x35, 0xfa, 0x4c, 0x26, 0x61, 0xf6, 0x46, 0x8a, 0x37, 0x10, 0x57, 0xdf, 0x6d,
+	0x89, 0x77, 0xfb, 0x42, 0x02, 0x47, 0x67, 0x4d, 0x13, 0x65, 0x0e, 0x55, 0x8d, 0xf7, 0xa6, 0x40,
+	0x39, 0x0b, 0x13, 0x75, 0x0e, 0xe5, 0xfb, 0x4a, 0xb7, 0xf9, 0x65, 0xc8, 0x3b, 0x87, 0x6a, 0x87,
+	0xd3, 0x1f, 0x4f, 0x72, 0x1e, 0x6a, 0xb7, 0x9a, 0x32, 0xe3, 0xd7, 0x98, 0x63, 0x8d, 0xf2, 0x6a,
+	0x31, 0x5a, 0x5d, 0x6c, 0xcf, 0x9a, 0xb6, 0x55, 0xd8, 0xd2, 0xd4, 0xd6, 0x7d, 0xc1, 0x03, 0xe6,
+	0xf2, 0x65, 0xd8, 0x56, 0xdf, 0xa3, 0x5f, 0x8a, 0x25, 0xed, 0x5f, 0x5e, 0xf3, 0xed, 0x46, 0x51,
+	0x5d, 0x87, 0x1e, 0xdd, 0x01, 0xb5, 0x7c, 0x15, 0x7a, 0xb6, 0x7a, 0xf9, 0x33, 0x82, 0xe9, 0x3a,
+	0x65, 0x6a, 0x7f, 0xd0, 0xbd, 0x81, 0x84, 0x03, 0x5e, 0x7e, 0xe0, 0xdb, 0x19, 0xe7, 0x94, 0x37,
+	0x18, 0xf5, 0x52, 0xde, 0x61, 0x9b, 0xde, 0x9f, 0x2a, 0x6c, 0xd0, 0x76, 0x06, 0x4d, 0x9a, 0xfe,
+	0xe0, 0x28, 0x30, 0x6d, 0x14, 0xdd, 0xf2, 0xb5, 0x72, 0x35, 0x2f, 0x2f, 0x50, 0xed, 0x0c, 0x22,
+	0x86, 0xa5, 0xe6, 0x2c, 0xf0, 0x6d, 0xe5, 0x13, 0x2a, 0xf1, 0x3f, 0xa8, 0x24, 0xcf, 0x52, 0x81,
+	0x67, 0xa8, 0xcc, 0x9e, 0x50, 0xb9, 0x81, 0xc4, 0xf8, 0x5b, 0xeb, 0xf0, 0x80, 0xae, 0x81, 0xdd,
+	0x19, 0x3d, 0x1e, 0xf3, 0x01, 0x0f, 0x7a, 0x91, 0x7e, 0x77, 0x2a, 0x33, 0xa6, 0x4c, 0x2f, 0x92,
+	0x95, 0x78, 0x07, 0x73, 0x55, 0xaa, 0xfc, 0xb4, 0x23, 0x34, 0x6e, 0xa3, 0x1b, 0xc8, 0x43, 0x33,
+	0x9d, 0xf0, 0x9f, 0xc2, 0x87, 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x16, 0x2e, 0x3a, 0x08, 0x27,
+	0x04, 0x00, 0x00,
 }
-
-func (m *Esinfo) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Esinfo) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.Tableid) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.Tableid)))
-		i += copy(dAtA[i:], m.Tableid)
-	}
-	if len(m.FaceFeature) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.FaceFeature)))
-		i += copy(dAtA[i:], m.FaceFeature)
-	}
-	if m.CompareScore != 0 {
-		dAtA[i] = 0x25
-		i++
-		encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.CompareScore))))
-		i += 4
-	}
-	return i, nil
-}
-
-func (m *Dbperson) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Dbperson) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.TableId) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.TableId)))
-		i += copy(dAtA[i:], m.TableId)
-	}
-	if len(m.FaceFeature) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.FaceFeature)))
-		i += copy(dAtA[i:], m.FaceFeature)
-	}
-	if len(m.PersonPicUrl) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.PersonPicUrl)))
-		i += copy(dAtA[i:], m.PersonPicUrl)
-	}
-	if len(m.PersonName) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.PersonName)))
-		i += copy(dAtA[i:], m.PersonName)
-	}
-	if len(m.Age) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.Age)))
-		i += copy(dAtA[i:], m.Age)
-	}
-	if len(m.Sex) > 0 {
-		dAtA[i] = 0x3a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.Sex)))
-		i += copy(dAtA[i:], m.Sex)
-	}
-	if len(m.IdCard) > 0 {
-		dAtA[i] = 0x42
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.IdCard)))
-		i += copy(dAtA[i:], m.IdCard)
-	}
-	if len(m.PicDesc) > 0 {
-		dAtA[i] = 0x4a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.PicDesc)))
-		i += copy(dAtA[i:], m.PicDesc)
-	}
-	if len(m.PhoneNum) > 0 {
-		dAtA[i] = 0x52
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.PhoneNum)))
-		i += copy(dAtA[i:], m.PhoneNum)
-	}
-	if len(m.CreateTime) > 0 {
-		dAtA[i] = 0x5a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.CreateTime)))
-		i += copy(dAtA[i:], m.CreateTime)
-	}
-	if len(m.UpdateTime) > 0 {
-		dAtA[i] = 0x62
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.UpdateTime)))
-		i += copy(dAtA[i:], m.UpdateTime)
-	}
-	if len(m.CreateBy) > 0 {
-		dAtA[i] = 0x6a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.CreateBy)))
-		i += copy(dAtA[i:], m.CreateBy)
-	}
-	if m.IsDelete != 0 {
-		dAtA[i] = 0x70
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(m.IsDelete))
-	}
-	if len(m.MonitorLevel) > 0 {
-		dAtA[i] = 0x7a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.MonitorLevel)))
-		i += copy(dAtA[i:], m.MonitorLevel)
-	}
-	if m.Enable != 0 {
-		dAtA[i] = 0x80
-		i++
-		dAtA[i] = 0x1
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(m.Enable))
-	}
-	if len(m.Reserved) > 0 {
-		dAtA[i] = 0x8a
-		i++
-		dAtA[i] = 0x1
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.Reserved)))
-		i += copy(dAtA[i:], m.Reserved)
-	}
-	return i, nil
-}
-
-func (m *Dbtable) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Dbtable) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.TableName) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.TableName)))
-		i += copy(dAtA[i:], m.TableName)
-	}
-	if len(m.TableDesc) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.TableDesc)))
-		i += copy(dAtA[i:], m.TableDesc)
-	}
-	if len(m.TableType) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.TableType)))
-		i += copy(dAtA[i:], m.TableType)
-	}
-	if len(m.BwType) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.BwType)))
-		i += copy(dAtA[i:], m.BwType)
-	}
-	if len(m.StartTime) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.StartTime)))
-		i += copy(dAtA[i:], m.StartTime)
-	}
-	if len(m.EndTime) > 0 {
-		dAtA[i] = 0x3a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.EndTime)))
-		i += copy(dAtA[i:], m.EndTime)
-	}
-	if len(m.CreateTime) > 0 {
-		dAtA[i] = 0x42
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.CreateTime)))
-		i += copy(dAtA[i:], m.CreateTime)
-	}
-	if len(m.UpdateTime) > 0 {
-		dAtA[i] = 0x4a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.UpdateTime)))
-		i += copy(dAtA[i:], m.UpdateTime)
-	}
-	if len(m.CreateBy) > 0 {
-		dAtA[i] = 0x52
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.CreateBy)))
-		i += copy(dAtA[i:], m.CreateBy)
-	}
-	if m.IsDelete != 0 {
-		dAtA[i] = 0x58
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(m.IsDelete))
-	}
-	if len(m.IsForever) > 0 {
-		dAtA[i] = 0x62
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.IsForever)))
-		i += copy(dAtA[i:], m.IsForever)
-	}
-	if m.Enable != 0 {
-		dAtA[i] = 0x68
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(m.Enable))
-	}
-	if len(m.IsSync) > 0 {
-		dAtA[i] = 0x72
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.IsSync)))
-		i += copy(dAtA[i:], m.IsSync)
-	}
-	if len(m.AnalyServerId) > 0 {
-		dAtA[i] = 0x7a
-		i++
-		i = encodeVarintEs(dAtA, i, uint64(len(m.AnalyServerId)))
-		i += copy(dAtA[i:], m.AnalyServerId)
-	}
-	return i, nil
-}
-
-func encodeVarintEs(dAtA []byte, offset int, v uint64) int {
-	for v >= 1<<7 {
-		dAtA[offset] = uint8(v&0x7f | 0x80)
-		v >>= 7
-		offset++
-	}
-	dAtA[offset] = uint8(v)
-	return offset + 1
-}
-func (m *Esinfo) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.Tableid)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.FaceFeature)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	if m.CompareScore != 0 {
-		n += 5
-	}
-	return n
-}
-
-func (m *Dbperson) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.TableId)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.FaceFeature)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.PersonPicUrl)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.PersonName)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.Age)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.Sex)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.IdCard)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.PicDesc)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.PhoneNum)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.CreateTime)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.UpdateTime)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.CreateBy)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	if m.IsDelete != 0 {
-		n += 1 + sovEs(uint64(m.IsDelete))
-	}
-	l = len(m.MonitorLevel)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	if m.Enable != 0 {
-		n += 2 + sovEs(uint64(m.Enable))
-	}
-	l = len(m.Reserved)
-	if l > 0 {
-		n += 2 + l + sovEs(uint64(l))
-	}
-	return n
-}
-
-func (m *Dbtable) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.TableName)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.TableDesc)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.TableType)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.BwType)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.StartTime)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.EndTime)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.CreateTime)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.UpdateTime)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.CreateBy)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	if m.IsDelete != 0 {
-		n += 1 + sovEs(uint64(m.IsDelete))
-	}
-	l = len(m.IsForever)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	if m.Enable != 0 {
-		n += 1 + sovEs(uint64(m.Enable))
-	}
-	l = len(m.IsSync)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	l = len(m.AnalyServerId)
-	if l > 0 {
-		n += 1 + l + sovEs(uint64(l))
-	}
-	return n
-}
-
-func sovEs(x uint64) (n int) {
-	for {
-		n++
-		x >>= 7
-		if x == 0 {
-			break
-		}
-	}
-	return n
-}
-func sozEs(x uint64) (n int) {
-	return sovEs(uint64((x << 1) ^ uint64((int64(x) >> 63))))
-}
-func (m *Esinfo) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowEs
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Esinfo: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Esinfo: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Tableid", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Tableid = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field FaceFeature", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.FaceFeature = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 5 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CompareScore", wireType)
-			}
-			var v uint32
-			if (iNdEx + 4) > l {
-				return io.ErrUnexpectedEOF
-			}
-			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
-			iNdEx += 4
-			m.CompareScore = float32(math.Float32frombits(v))
-		default:
-			iNdEx = preIndex
-			skippy, err := skipEs(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthEs
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthEs
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Dbperson) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowEs
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Dbperson: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Dbperson: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TableId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TableId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field FaceFeature", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.FaceFeature = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PersonPicUrl", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.PersonPicUrl = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PersonName", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.PersonName = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Age", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Age = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 7:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Sex", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Sex = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 8:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IdCard", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.IdCard = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 9:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PicDesc", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.PicDesc = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 10:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PhoneNum", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.PhoneNum = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 11:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CreateTime", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CreateTime = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 12:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field UpdateTime", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.UpdateTime = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 13:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CreateBy", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CreateBy = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 14:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IsDelete", wireType)
-			}
-			m.IsDelete = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.IsDelete |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 15:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field MonitorLevel", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.MonitorLevel = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 16:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Enable", wireType)
-			}
-			m.Enable = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Enable |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 17:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Reserved", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Reserved = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipEs(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthEs
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthEs
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Dbtable) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowEs
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Dbtable: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Dbtable: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TableName", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TableName = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TableDesc", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TableDesc = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TableType", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TableType = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field BwType", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.BwType = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field StartTime", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.StartTime = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 7:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field EndTime", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.EndTime = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 8:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CreateTime", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CreateTime = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 9:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field UpdateTime", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.UpdateTime = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 10:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CreateBy", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CreateBy = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 11:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IsDelete", wireType)
-			}
-			m.IsDelete = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.IsDelete |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 12:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IsForever", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.IsForever = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 13:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Enable", wireType)
-			}
-			m.Enable = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Enable |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 14:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IsSync", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.IsSync = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 15:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field AnalyServerId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthEs
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthEs
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.AnalyServerId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipEs(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthEs
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthEs
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func skipEs(dAtA []byte) (n int, err error) {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return 0, ErrIntOverflowEs
-			}
-			if iNdEx >= l {
-				return 0, io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= (uint64(b) & 0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		wireType := int(wire & 0x7)
-		switch wireType {
-		case 0:
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				iNdEx++
-				if dAtA[iNdEx-1] < 0x80 {
-					break
-				}
-			}
-			return iNdEx, nil
-		case 1:
-			iNdEx += 8
-			return iNdEx, nil
-		case 2:
-			var length int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowEs
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				length |= (int(b) & 0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if length < 0 {
-				return 0, ErrInvalidLengthEs
-			}
-			iNdEx += length
-			if iNdEx < 0 {
-				return 0, ErrInvalidLengthEs
-			}
-			return iNdEx, nil
-		case 3:
-			for {
-				var innerWire uint64
-				var start int = iNdEx
-				for shift := uint(0); ; shift += 7 {
-					if shift >= 64 {
-						return 0, ErrIntOverflowEs
-					}
-					if iNdEx >= l {
-						return 0, io.ErrUnexpectedEOF
-					}
-					b := dAtA[iNdEx]
-					iNdEx++
-					innerWire |= (uint64(b) & 0x7F) << shift
-					if b < 0x80 {
-						break
-					}
-				}
-				innerWireType := int(innerWire & 0x7)
-				if innerWireType == 4 {
-					break
-				}
-				next, err := skipEs(dAtA[start:])
-				if err != nil {
-					return 0, err
-				}
-				iNdEx = start + next
-				if iNdEx < 0 {
-					return 0, ErrInvalidLengthEs
-				}
-			}
-			return iNdEx, nil
-		case 4:
-			return iNdEx, nil
-		case 5:
-			iNdEx += 4
-			return iNdEx, nil
-		default:
-			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
-		}
-	}
-	panic("unreachable")
-}
-
-var (
-	ErrInvalidLengthEs = fmt.Errorf("proto: negative length found during unmarshaling")
-	ErrIntOverflowEs   = fmt.Errorf("proto: integer overflow")
-)
diff --git a/protomsg.pb.go b/protomsg.pb.go
index 9b6d399..3bf8e57 100644
--- a/protomsg.pb.go
+++ b/protomsg.pb.go
@@ -1,13 +1,11 @@
-// Code generated by protoc-gen-gogo. DO NOT EDIT.
+// Code generated by protoc-gen-go. DO NOT EDIT.
 // source: protomsg.proto
 
 package protomsg
 
 import (
-	encoding_binary "encoding/binary"
 	fmt "fmt"
-	proto "github.com/gogo/protobuf/proto"
-	io "io"
+	proto "github.com/golang/protobuf/proto"
 	math "math"
 )
 
@@ -20,7 +18,7 @@
 // is compatible with the proto package it is being compiled against.
 // A compilation error at this line likely means your copy of the
 // proto package needs to be updated.
-const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
 
 //TableChanged enum
 type TableChanged int32
@@ -105,9 +103,12 @@
 
 //Area缁撴瀯浣�
 type Area struct {
-	Id       int32  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
-	Parentid int32  `protobuf:"varint,2,opt,name=parentid,proto3" json:"parentid,omitempty"`
-	Name     string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
+	Id                   int32    `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
+	Parentid             int32    `protobuf:"varint,2,opt,name=parentid,proto3" json:"parentid,omitempty"`
+	Name                 string   `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Area) Reset()         { *m = Area{} }
@@ -116,26 +117,18 @@
 func (*Area) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{0}
 }
+
 func (m *Area) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Area.Unmarshal(m, b)
 }
 func (m *Area) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Area.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Area.Marshal(b, m, deterministic)
 }
 func (m *Area) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Area.Merge(m, src)
 }
 func (m *Area) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Area.Size(m)
 }
 func (m *Area) XXX_DiscardUnknown() {
 	xxx_messageInfo_Area.DiscardUnknown(m)
@@ -166,26 +159,29 @@
 
 //Camera缁撴瀯浣�
 type Camera struct {
-	Id          string  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	Name        string  `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
-	Alias       string  `protobuf:"bytes,3,opt,name=alias,proto3" json:"alias,omitempty"`
-	SnapshotUrl string  `protobuf:"bytes,4,opt,name=snapshot_url,json=snapshotUrl,proto3" json:"snapshot_url,omitempty"`
-	Type        int32   `protobuf:"varint,5,opt,name=type,proto3" json:"type,omitempty"`
-	Addr        string  `protobuf:"bytes,6,opt,name=addr,proto3" json:"addr,omitempty"`
-	Areaid      int32   `protobuf:"varint,7,opt,name=areaid,proto3" json:"areaid,omitempty"`
-	Longitude   float32 `protobuf:"fixed32,8,opt,name=longitude,proto3" json:"longitude,omitempty"`
-	Latitude    float32 `protobuf:"fixed32,9,opt,name=latitude,proto3" json:"latitude,omitempty"`
-	Rtsp        string  `protobuf:"bytes,10,opt,name=rtsp,proto3" json:"rtsp,omitempty"`
-	Ip          string  `protobuf:"bytes,11,opt,name=ip,proto3" json:"ip,omitempty"`
-	Port        int32   `protobuf:"varint,12,opt,name=port,proto3" json:"port,omitempty"`
-	Username    string  `protobuf:"bytes,13,opt,name=username,proto3" json:"username,omitempty"`
-	Password    string  `protobuf:"bytes,14,opt,name=password,proto3" json:"password,omitempty"`
-	Brand       string  `protobuf:"bytes,15,opt,name=brand,proto3" json:"brand,omitempty"`
-	Reserved    string  `protobuf:"bytes,16,opt,name=reserved,proto3" json:"reserved,omitempty"`
-	IsRunning   bool    `protobuf:"varint,17,opt,name=is_running,json=isRunning,proto3" json:"is_running,omitempty"`
-	RunEnable   bool    `protobuf:"varint,18,opt,name=run_enable,json=runEnable,proto3" json:"run_enable,omitempty"`
-	RunType     int32   `protobuf:"varint,19,opt,name=run_type,json=runType,proto3" json:"run_type,omitempty"`
-	RunServerId string  `protobuf:"bytes,20,opt,name=run_server_id,json=runServerId,proto3" json:"run_server_id,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	Name                 string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+	Alias                string   `protobuf:"bytes,3,opt,name=alias,proto3" json:"alias,omitempty"`
+	SnapshotUrl          string   `protobuf:"bytes,4,opt,name=snapshot_url,json=snapshotUrl,proto3" json:"snapshot_url,omitempty"`
+	Type                 int32    `protobuf:"varint,5,opt,name=type,proto3" json:"type,omitempty"`
+	Addr                 string   `protobuf:"bytes,6,opt,name=addr,proto3" json:"addr,omitempty"`
+	Areaid               int32    `protobuf:"varint,7,opt,name=areaid,proto3" json:"areaid,omitempty"`
+	Longitude            float32  `protobuf:"fixed32,8,opt,name=longitude,proto3" json:"longitude,omitempty"`
+	Latitude             float32  `protobuf:"fixed32,9,opt,name=latitude,proto3" json:"latitude,omitempty"`
+	Rtsp                 string   `protobuf:"bytes,10,opt,name=rtsp,proto3" json:"rtsp,omitempty"`
+	Ip                   string   `protobuf:"bytes,11,opt,name=ip,proto3" json:"ip,omitempty"`
+	Port                 int32    `protobuf:"varint,12,opt,name=port,proto3" json:"port,omitempty"`
+	Username             string   `protobuf:"bytes,13,opt,name=username,proto3" json:"username,omitempty"`
+	Password             string   `protobuf:"bytes,14,opt,name=password,proto3" json:"password,omitempty"`
+	Brand                string   `protobuf:"bytes,15,opt,name=brand,proto3" json:"brand,omitempty"`
+	Reserved             string   `protobuf:"bytes,16,opt,name=reserved,proto3" json:"reserved,omitempty"`
+	IsRunning            bool     `protobuf:"varint,17,opt,name=is_running,json=isRunning,proto3" json:"is_running,omitempty"`
+	RunEnable            bool     `protobuf:"varint,18,opt,name=run_enable,json=runEnable,proto3" json:"run_enable,omitempty"`
+	RunType              int32    `protobuf:"varint,19,opt,name=run_type,json=runType,proto3" json:"run_type,omitempty"`
+	RunServerId          string   `protobuf:"bytes,20,opt,name=run_server_id,json=runServerId,proto3" json:"run_server_id,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Camera) Reset()         { *m = Camera{} }
@@ -194,26 +190,18 @@
 func (*Camera) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{1}
 }
+
 func (m *Camera) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Camera.Unmarshal(m, b)
 }
 func (m *Camera) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Camera.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Camera.Marshal(b, m, deterministic)
 }
 func (m *Camera) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Camera.Merge(m, src)
 }
 func (m *Camera) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Camera.Size(m)
 }
 func (m *Camera) XXX_DiscardUnknown() {
 	xxx_messageInfo_Camera.DiscardUnknown(m)
@@ -363,8 +351,11 @@
 
 //鎽勫儚鏈虹殑浠诲姟淇℃伅
 type CameraAndTaskInfo struct {
-	Camera *Camera `protobuf:"bytes,1,opt,name=camera,proto3" json:"camera,omitempty"`
-	Tasks  []*Task `protobuf:"bytes,2,rep,name=tasks,proto3" json:"tasks,omitempty"`
+	Camera               *Camera  `protobuf:"bytes,1,opt,name=camera,proto3" json:"camera,omitempty"`
+	Tasks                []*Task  `protobuf:"bytes,2,rep,name=tasks,proto3" json:"tasks,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *CameraAndTaskInfo) Reset()         { *m = CameraAndTaskInfo{} }
@@ -373,26 +364,18 @@
 func (*CameraAndTaskInfo) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{2}
 }
+
 func (m *CameraAndTaskInfo) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_CameraAndTaskInfo.Unmarshal(m, b)
 }
 func (m *CameraAndTaskInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_CameraAndTaskInfo.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_CameraAndTaskInfo.Marshal(b, m, deterministic)
 }
 func (m *CameraAndTaskInfo) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_CameraAndTaskInfo.Merge(m, src)
 }
 func (m *CameraAndTaskInfo) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_CameraAndTaskInfo.Size(m)
 }
 func (m *CameraAndTaskInfo) XXX_DiscardUnknown() {
 	xxx_messageInfo_CameraAndTaskInfo.DiscardUnknown(m)
@@ -416,14 +399,17 @@
 
 //Task缁撴瀯浣�
 type Task struct {
-	Taskid   string `protobuf:"bytes,1,opt,name=taskid,proto3" json:"taskid,omitempty"`
-	Taskname string `protobuf:"bytes,2,opt,name=taskname,proto3" json:"taskname,omitempty"`
-	CreateAt string `protobuf:"bytes,3,opt,name=create_at,json=createAt,proto3" json:"create_at,omitempty"`
-	CreateBy string `protobuf:"bytes,4,opt,name=create_by,json=createBy,proto3" json:"create_by,omitempty"`
-	UpdateAt string `protobuf:"bytes,5,opt,name=update_at,json=updateAt,proto3" json:"update_at,omitempty"`
-	Enable   bool   `protobuf:"varint,6,opt,name=enable,proto3" json:"enable,omitempty"`
-	IsAlarm  bool   `protobuf:"varint,7,opt,name=is_alarm,json=isAlarm,proto3" json:"is_alarm,omitempty"`
-	DelFlag  bool   `protobuf:"varint,8,opt,name=del_flag,json=delFlag,proto3" json:"del_flag,omitempty"`
+	Taskid               string   `protobuf:"bytes,1,opt,name=taskid,proto3" json:"taskid,omitempty"`
+	Taskname             string   `protobuf:"bytes,2,opt,name=taskname,proto3" json:"taskname,omitempty"`
+	CreateAt             string   `protobuf:"bytes,3,opt,name=create_at,json=createAt,proto3" json:"create_at,omitempty"`
+	CreateBy             string   `protobuf:"bytes,4,opt,name=create_by,json=createBy,proto3" json:"create_by,omitempty"`
+	UpdateAt             string   `protobuf:"bytes,5,opt,name=update_at,json=updateAt,proto3" json:"update_at,omitempty"`
+	Enable               bool     `protobuf:"varint,6,opt,name=enable,proto3" json:"enable,omitempty"`
+	IsAlarm              bool     `protobuf:"varint,7,opt,name=is_alarm,json=isAlarm,proto3" json:"is_alarm,omitempty"`
+	DelFlag              bool     `protobuf:"varint,8,opt,name=del_flag,json=delFlag,proto3" json:"del_flag,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Task) Reset()         { *m = Task{} }
@@ -432,26 +418,18 @@
 func (*Task) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{3}
 }
+
 func (m *Task) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Task.Unmarshal(m, b)
 }
 func (m *Task) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Task.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Task.Marshal(b, m, deterministic)
 }
 func (m *Task) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Task.Merge(m, src)
 }
 func (m *Task) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Task.Size(m)
 }
 func (m *Task) XXX_DiscardUnknown() {
 	xxx_messageInfo_Task.DiscardUnknown(m)
@@ -516,8 +494,11 @@
 }
 
 type TaskSdkInfo struct {
-	Task *Task  `protobuf:"bytes,1,opt,name=task,proto3" json:"task,omitempty"`
-	Sdks []*Sdk `protobuf:"bytes,2,rep,name=sdks,proto3" json:"sdks,omitempty"`
+	Task                 *Task    `protobuf:"bytes,1,opt,name=task,proto3" json:"task,omitempty"`
+	Sdks                 []*Sdk   `protobuf:"bytes,2,rep,name=sdks,proto3" json:"sdks,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *TaskSdkInfo) Reset()         { *m = TaskSdkInfo{} }
@@ -526,26 +507,18 @@
 func (*TaskSdkInfo) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{4}
 }
+
 func (m *TaskSdkInfo) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_TaskSdkInfo.Unmarshal(m, b)
 }
 func (m *TaskSdkInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_TaskSdkInfo.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_TaskSdkInfo.Marshal(b, m, deterministic)
 }
 func (m *TaskSdkInfo) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_TaskSdkInfo.Merge(m, src)
 }
 func (m *TaskSdkInfo) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_TaskSdkInfo.Size(m)
 }
 func (m *TaskSdkInfo) XXX_DiscardUnknown() {
 	xxx_messageInfo_TaskSdkInfo.DiscardUnknown(m)
@@ -568,8 +541,11 @@
 }
 
 type SdkRun struct {
-	IpcId   string `protobuf:"bytes,1,opt,name=ipc_id,json=ipcId,proto3" json:"ipc_id,omitempty"`
-	SdkType string `protobuf:"bytes,2,opt,name=sdk_type,json=sdkType,proto3" json:"sdk_type,omitempty"`
+	IpcId                string   `protobuf:"bytes,1,opt,name=ipc_id,json=ipcId,proto3" json:"ipc_id,omitempty"`
+	SdkType              string   `protobuf:"bytes,2,opt,name=sdk_type,json=sdkType,proto3" json:"sdk_type,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *SdkRun) Reset()         { *m = SdkRun{} }
@@ -578,26 +554,18 @@
 func (*SdkRun) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{5}
 }
+
 func (m *SdkRun) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_SdkRun.Unmarshal(m, b)
 }
 func (m *SdkRun) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_SdkRun.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_SdkRun.Marshal(b, m, deterministic)
 }
 func (m *SdkRun) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_SdkRun.Merge(m, src)
 }
 func (m *SdkRun) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_SdkRun.Size(m)
 }
 func (m *SdkRun) XXX_DiscardUnknown() {
 	xxx_messageInfo_SdkRun.DiscardUnknown(m)
@@ -620,8 +588,11 @@
 }
 
 type TaskSdkRun struct {
-	Task *Task     `protobuf:"bytes,1,opt,name=task,proto3" json:"task,omitempty"`
-	Sdks []*SdkRun `protobuf:"bytes,2,rep,name=sdks,proto3" json:"sdks,omitempty"`
+	Task                 *Task     `protobuf:"bytes,1,opt,name=task,proto3" json:"task,omitempty"`
+	Sdks                 []*SdkRun `protobuf:"bytes,2,rep,name=sdks,proto3" json:"sdks,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
+	XXX_unrecognized     []byte    `json:"-"`
+	XXX_sizecache        int32     `json:"-"`
 }
 
 func (m *TaskSdkRun) Reset()         { *m = TaskSdkRun{} }
@@ -630,26 +601,18 @@
 func (*TaskSdkRun) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{6}
 }
+
 func (m *TaskSdkRun) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_TaskSdkRun.Unmarshal(m, b)
 }
 func (m *TaskSdkRun) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_TaskSdkRun.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_TaskSdkRun.Marshal(b, m, deterministic)
 }
 func (m *TaskSdkRun) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_TaskSdkRun.Merge(m, src)
 }
 func (m *TaskSdkRun) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_TaskSdkRun.Size(m)
 }
 func (m *TaskSdkRun) XXX_DiscardUnknown() {
 	xxx_messageInfo_TaskSdkRun.DiscardUnknown(m)
@@ -673,18 +636,21 @@
 
 //鎽勫儚鏈轰换鍔�
 type CameraTask struct {
-	Id          string    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	CameraId    string    `protobuf:"bytes,2,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
-	TaskId      string    `protobuf:"bytes,3,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
-	TimeRule    []*DayCtl `protobuf:"bytes,4,rep,name=time_rule,json=timeRule,proto3" json:"time_rule,omitempty"`
-	ReactRule   string    `protobuf:"bytes,5,opt,name=react_rule,json=reactRule,proto3" json:"react_rule,omitempty"`
-	ReactDevice string    `protobuf:"bytes,6,opt,name=react_device,json=reactDevice,proto3" json:"react_device,omitempty"`
-	DelFlag     bool      `protobuf:"varint,7,opt,name=del_flag,json=delFlag,proto3" json:"del_flag,omitempty"`
-	UpdateFlag  bool      `protobuf:"varint,8,opt,name=update_flag,json=updateFlag,proto3" json:"update_flag,omitempty"`
-	Enable      bool      `protobuf:"varint,9,opt,name=enable,proto3" json:"enable,omitempty"`
-	Sort        int32     `protobuf:"varint,10,opt,name=sort,proto3" json:"sort,omitempty"`
-	IsFull      bool      `protobuf:"varint,11,opt,name=is_full,json=isFull,proto3" json:"is_full,omitempty"`
-	LinkTaskId  string    `protobuf:"bytes,12,opt,name=link_task_id,json=linkTaskId,proto3" json:"link_task_id,omitempty"`
+	Id                   string    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	CameraId             string    `protobuf:"bytes,2,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
+	TaskId               string    `protobuf:"bytes,3,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
+	TimeRule             []*DayCtl `protobuf:"bytes,4,rep,name=time_rule,json=timeRule,proto3" json:"time_rule,omitempty"`
+	ReactRule            string    `protobuf:"bytes,5,opt,name=react_rule,json=reactRule,proto3" json:"react_rule,omitempty"`
+	ReactDevice          string    `protobuf:"bytes,6,opt,name=react_device,json=reactDevice,proto3" json:"react_device,omitempty"`
+	DelFlag              bool      `protobuf:"varint,7,opt,name=del_flag,json=delFlag,proto3" json:"del_flag,omitempty"`
+	UpdateFlag           bool      `protobuf:"varint,8,opt,name=update_flag,json=updateFlag,proto3" json:"update_flag,omitempty"`
+	Enable               bool      `protobuf:"varint,9,opt,name=enable,proto3" json:"enable,omitempty"`
+	Sort                 int32     `protobuf:"varint,10,opt,name=sort,proto3" json:"sort,omitempty"`
+	IsFull               bool      `protobuf:"varint,11,opt,name=is_full,json=isFull,proto3" json:"is_full,omitempty"`
+	LinkTaskId           string    `protobuf:"bytes,12,opt,name=link_task_id,json=linkTaskId,proto3" json:"link_task_id,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
+	XXX_unrecognized     []byte    `json:"-"`
+	XXX_sizecache        int32     `json:"-"`
 }
 
 func (m *CameraTask) Reset()         { *m = CameraTask{} }
@@ -693,26 +659,18 @@
 func (*CameraTask) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{7}
 }
+
 func (m *CameraTask) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_CameraTask.Unmarshal(m, b)
 }
 func (m *CameraTask) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_CameraTask.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_CameraTask.Marshal(b, m, deterministic)
 }
 func (m *CameraTask) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_CameraTask.Merge(m, src)
 }
 func (m *CameraTask) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_CameraTask.Size(m)
 }
 func (m *CameraTask) XXX_DiscardUnknown() {
 	xxx_messageInfo_CameraTask.DiscardUnknown(m)
@@ -806,9 +764,12 @@
 
 //鎽勫儚鏈哄竷闃茬殑鏃堕棿瑙勫垯锛屽彲浠ヨ缃涓�,鐢╥d鍏宠仈鍒板叿浣撶殑瑙勫垯閰嶇疆涓�
 type CameraTimerule struct {
-	Id       string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	Name     string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
-	TimeRule string `protobuf:"bytes,3,opt,name=time_rule,json=timeRule,proto3" json:"time_rule,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	Name                 string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+	TimeRule             string   `protobuf:"bytes,3,opt,name=time_rule,json=timeRule,proto3" json:"time_rule,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *CameraTimerule) Reset()         { *m = CameraTimerule{} }
@@ -817,26 +778,18 @@
 func (*CameraTimerule) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{8}
 }
+
 func (m *CameraTimerule) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_CameraTimerule.Unmarshal(m, b)
 }
 func (m *CameraTimerule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_CameraTimerule.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_CameraTimerule.Marshal(b, m, deterministic)
 }
 func (m *CameraTimerule) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_CameraTimerule.Merge(m, src)
 }
 func (m *CameraTimerule) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_CameraTimerule.Size(m)
 }
 func (m *CameraTimerule) XXX_DiscardUnknown() {
 	xxx_messageInfo_CameraTimerule.DiscardUnknown(m)
@@ -867,8 +820,11 @@
 
 //DayCtl struct   姣忓ぉ鐨勬椂闂存帶鍒惰鍒�
 type DayCtl struct {
-	Day       int32        `protobuf:"varint,1,opt,name=day,proto3" json:"day,omitempty"`
-	TimeRange []*TimeRange `protobuf:"bytes,2,rep,name=time_range,json=timeRange,proto3" json:"time_range,omitempty"`
+	Day                  int32        `protobuf:"varint,1,opt,name=day,proto3" json:"day,omitempty"`
+	TimeRange            []*TimeRange `protobuf:"bytes,2,rep,name=time_range,json=timeRange,proto3" json:"time_range,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
+	XXX_unrecognized     []byte       `json:"-"`
+	XXX_sizecache        int32        `json:"-"`
 }
 
 func (m *DayCtl) Reset()         { *m = DayCtl{} }
@@ -877,26 +833,18 @@
 func (*DayCtl) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{9}
 }
+
 func (m *DayCtl) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_DayCtl.Unmarshal(m, b)
 }
 func (m *DayCtl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_DayCtl.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_DayCtl.Marshal(b, m, deterministic)
 }
 func (m *DayCtl) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_DayCtl.Merge(m, src)
 }
 func (m *DayCtl) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_DayCtl.Size(m)
 }
 func (m *DayCtl) XXX_DiscardUnknown() {
 	xxx_messageInfo_DayCtl.DiscardUnknown(m)
@@ -920,8 +868,11 @@
 
 //鏃堕棿璧峰鑼冨洿
 type TimeRange struct {
-	Start string `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"`
-	End   string `protobuf:"bytes,2,opt,name=end,proto3" json:"end,omitempty"`
+	Start                string   `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"`
+	End                  string   `protobuf:"bytes,2,opt,name=end,proto3" json:"end,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *TimeRange) Reset()         { *m = TimeRange{} }
@@ -930,26 +881,18 @@
 func (*TimeRange) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{10}
 }
+
 func (m *TimeRange) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_TimeRange.Unmarshal(m, b)
 }
 func (m *TimeRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_TimeRange.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_TimeRange.Marshal(b, m, deterministic)
 }
 func (m *TimeRange) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_TimeRange.Merge(m, src)
 }
 func (m *TimeRange) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_TimeRange.Size(m)
 }
 func (m *TimeRange) XXX_DiscardUnknown() {
 	xxx_messageInfo_TimeRange.DiscardUnknown(m)
@@ -973,9 +916,12 @@
 
 //Polygon struct
 type Polygon struct {
-	Id     string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	Name   string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
-	Points []*Point `protobuf:"bytes,3,rep,name=points,proto3" json:"points,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	Name                 string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+	Points               []*Point `protobuf:"bytes,3,rep,name=points,proto3" json:"points,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Polygon) Reset()         { *m = Polygon{} }
@@ -984,26 +930,18 @@
 func (*Polygon) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{11}
 }
+
 func (m *Polygon) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Polygon.Unmarshal(m, b)
 }
 func (m *Polygon) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Polygon.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Polygon.Marshal(b, m, deterministic)
 }
 func (m *Polygon) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Polygon.Merge(m, src)
 }
 func (m *Polygon) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Polygon.Size(m)
 }
 func (m *Polygon) XXX_DiscardUnknown() {
 	xxx_messageInfo_Polygon.DiscardUnknown(m)
@@ -1033,8 +971,11 @@
 }
 
 type CameraTaskArgs struct {
-	CameraId string           `protobuf:"bytes,1,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
-	TaskArgs []*TaskGroupArgs `protobuf:"bytes,2,rep,name=task_args,json=taskArgs,proto3" json:"task_args,omitempty"`
+	CameraId             string           `protobuf:"bytes,1,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
+	TaskArgs             []*TaskGroupArgs `protobuf:"bytes,2,rep,name=task_args,json=taskArgs,proto3" json:"task_args,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
+	XXX_unrecognized     []byte           `json:"-"`
+	XXX_sizecache        int32            `json:"-"`
 }
 
 func (m *CameraTaskArgs) Reset()         { *m = CameraTaskArgs{} }
@@ -1043,26 +984,18 @@
 func (*CameraTaskArgs) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{12}
 }
+
 func (m *CameraTaskArgs) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_CameraTaskArgs.Unmarshal(m, b)
 }
 func (m *CameraTaskArgs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_CameraTaskArgs.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_CameraTaskArgs.Marshal(b, m, deterministic)
 }
 func (m *CameraTaskArgs) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_CameraTaskArgs.Merge(m, src)
 }
 func (m *CameraTaskArgs) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_CameraTaskArgs.Size(m)
 }
 func (m *CameraTaskArgs) XXX_DiscardUnknown() {
 	xxx_messageInfo_CameraTaskArgs.DiscardUnknown(m)
@@ -1085,9 +1018,12 @@
 }
 
 type TaskGroupArgs struct {
-	TaskId     string       `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
-	GroupRules []*GroupRule `protobuf:"bytes,2,rep,name=group_rules,json=groupRules,proto3" json:"group_rules,omitempty"`
-	Enable     bool         `protobuf:"varint,3,opt,name=enable,proto3" json:"enable,omitempty"`
+	TaskId               string       `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
+	GroupRules           []*GroupRule `protobuf:"bytes,2,rep,name=group_rules,json=groupRules,proto3" json:"group_rules,omitempty"`
+	Enable               bool         `protobuf:"varint,3,opt,name=enable,proto3" json:"enable,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
+	XXX_unrecognized     []byte       `json:"-"`
+	XXX_sizecache        int32        `json:"-"`
 }
 
 func (m *TaskGroupArgs) Reset()         { *m = TaskGroupArgs{} }
@@ -1096,26 +1032,18 @@
 func (*TaskGroupArgs) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{13}
 }
+
 func (m *TaskGroupArgs) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_TaskGroupArgs.Unmarshal(m, b)
 }
 func (m *TaskGroupArgs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_TaskGroupArgs.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_TaskGroupArgs.Marshal(b, m, deterministic)
 }
 func (m *TaskGroupArgs) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_TaskGroupArgs.Merge(m, src)
 }
 func (m *TaskGroupArgs) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_TaskGroupArgs.Size(m)
 }
 func (m *TaskGroupArgs) XXX_DiscardUnknown() {
 	xxx_messageInfo_TaskGroupArgs.DiscardUnknown(m)
@@ -1145,12 +1073,15 @@
 }
 
 type GroupRule struct {
-	GroupId      string  `protobuf:"bytes,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
-	GroupText    string  `protobuf:"bytes,2,opt,name=group_text,json=groupText,proto3" json:"group_text,omitempty"`
-	AlarmLevel   int32   `protobuf:"varint,3,opt,name=alarm_level,json=alarmLevel,proto3" json:"alarm_level,omitempty"`
-	Rules        []*Rule `protobuf:"bytes,4,rep,name=rules,proto3" json:"rules,omitempty"`
-	SetType      string  `protobuf:"bytes,5,opt,name=set_type,json=setType,proto3" json:"set_type,omitempty"`
-	DefenceState bool    `protobuf:"varint,6,opt,name=defence_state,json=defenceState,proto3" json:"defence_state,omitempty"`
+	GroupId              string   `protobuf:"bytes,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
+	GroupText            string   `protobuf:"bytes,2,opt,name=group_text,json=groupText,proto3" json:"group_text,omitempty"`
+	AlarmLevel           int32    `protobuf:"varint,3,opt,name=alarm_level,json=alarmLevel,proto3" json:"alarm_level,omitempty"`
+	Rules                []*Rule  `protobuf:"bytes,4,rep,name=rules,proto3" json:"rules,omitempty"`
+	SetType              string   `protobuf:"bytes,5,opt,name=set_type,json=setType,proto3" json:"set_type,omitempty"`
+	DefenceState         bool     `protobuf:"varint,6,opt,name=defence_state,json=defenceState,proto3" json:"defence_state,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *GroupRule) Reset()         { *m = GroupRule{} }
@@ -1159,26 +1090,18 @@
 func (*GroupRule) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{14}
 }
+
 func (m *GroupRule) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_GroupRule.Unmarshal(m, b)
 }
 func (m *GroupRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_GroupRule.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_GroupRule.Marshal(b, m, deterministic)
 }
 func (m *GroupRule) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_GroupRule.Merge(m, src)
 }
 func (m *GroupRule) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_GroupRule.Size(m)
 }
 func (m *GroupRule) XXX_DiscardUnknown() {
 	xxx_messageInfo_GroupRule.DiscardUnknown(m)
@@ -1229,18 +1152,21 @@
 }
 
 type Rule struct {
-	Id           string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	CameraTaskId string `protobuf:"bytes,2,opt,name=camera_task_id,json=cameraTaskId,proto3" json:"camera_task_id,omitempty"`
-	CameraId     string `protobuf:"bytes,3,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
-	PolygonId    string `protobuf:"bytes,4,opt,name=polygon_id,json=polygonId,proto3" json:"polygon_id,omitempty"`
-	SdkId        string `protobuf:"bytes,5,opt,name=sdk_id,json=sdkId,proto3" json:"sdk_id,omitempty"`
-	SdkArgAlias  string `protobuf:"bytes,6,opt,name=sdk_arg_alias,json=sdkArgAlias,proto3" json:"sdk_arg_alias,omitempty"`
-	Operator     string `protobuf:"bytes,7,opt,name=operator,proto3" json:"operator,omitempty"`
-	OperatorType string `protobuf:"bytes,8,opt,name=operator_type,json=operatorType,proto3" json:"operator_type,omitempty"`
-	SdkArgValue  string `protobuf:"bytes,9,opt,name=sdk_arg_value,json=sdkArgValue,proto3" json:"sdk_arg_value,omitempty"`
-	Sort         int32  `protobuf:"varint,10,opt,name=sort,proto3" json:"sort,omitempty"`
-	RuleWithPre  string `protobuf:"bytes,11,opt,name=rule_with_pre,json=ruleWithPre,proto3" json:"rule_with_pre,omitempty"`
-	GroupId      string `protobuf:"bytes,12,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	CameraTaskId         string   `protobuf:"bytes,2,opt,name=camera_task_id,json=cameraTaskId,proto3" json:"camera_task_id,omitempty"`
+	CameraId             string   `protobuf:"bytes,3,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
+	PolygonId            string   `protobuf:"bytes,4,opt,name=polygon_id,json=polygonId,proto3" json:"polygon_id,omitempty"`
+	SdkId                string   `protobuf:"bytes,5,opt,name=sdk_id,json=sdkId,proto3" json:"sdk_id,omitempty"`
+	SdkArgAlias          string   `protobuf:"bytes,6,opt,name=sdk_arg_alias,json=sdkArgAlias,proto3" json:"sdk_arg_alias,omitempty"`
+	Operator             string   `protobuf:"bytes,7,opt,name=operator,proto3" json:"operator,omitempty"`
+	OperatorType         string   `protobuf:"bytes,8,opt,name=operator_type,json=operatorType,proto3" json:"operator_type,omitempty"`
+	SdkArgValue          string   `protobuf:"bytes,9,opt,name=sdk_arg_value,json=sdkArgValue,proto3" json:"sdk_arg_value,omitempty"`
+	Sort                 int32    `protobuf:"varint,10,opt,name=sort,proto3" json:"sort,omitempty"`
+	RuleWithPre          string   `protobuf:"bytes,11,opt,name=rule_with_pre,json=ruleWithPre,proto3" json:"rule_with_pre,omitempty"`
+	GroupId              string   `protobuf:"bytes,12,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Rule) Reset()         { *m = Rule{} }
@@ -1249,26 +1175,18 @@
 func (*Rule) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{15}
 }
+
 func (m *Rule) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Rule.Unmarshal(m, b)
 }
 func (m *Rule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Rule.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Rule.Marshal(b, m, deterministic)
 }
 func (m *Rule) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Rule.Merge(m, src)
 }
 func (m *Rule) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Rule.Size(m)
 }
 func (m *Rule) XXX_DiscardUnknown() {
 	xxx_messageInfo_Rule.DiscardUnknown(m)
@@ -1362,18 +1280,21 @@
 
 //Sdk struct
 type Sdk struct {
-	Id         string    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	IpcId      string    `protobuf:"bytes,2,opt,name=ipc_id,json=ipcId,proto3" json:"ipc_id,omitempty"`
-	SdkType    string    `protobuf:"bytes,3,opt,name=sdk_type,json=sdkType,proto3" json:"sdk_type,omitempty"`
-	SdkName    string    `protobuf:"bytes,4,opt,name=sdk_name,json=sdkName,proto3" json:"sdk_name,omitempty"`
-	Args       []*SdkArg `protobuf:"bytes,5,rep,name=args,proto3" json:"args,omitempty"`
-	Icon       string    `protobuf:"bytes,6,opt,name=icon,proto3" json:"icon,omitempty"`
-	Url        string    `protobuf:"bytes,7,opt,name=url,proto3" json:"url,omitempty"`
-	CreateTime string    `protobuf:"bytes,8,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
-	UpdateTime string    `protobuf:"bytes,9,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
-	CreateBy   string    `protobuf:"bytes,10,opt,name=create_by,json=createBy,proto3" json:"create_by,omitempty"`
-	Enable     bool      `protobuf:"varint,11,opt,name=enable,proto3" json:"enable,omitempty"`
-	DelFlag    int32     `protobuf:"varint,12,opt,name=del_flag,json=delFlag,proto3" json:"del_flag,omitempty"`
+	Id                   string    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	IpcId                string    `protobuf:"bytes,2,opt,name=ipc_id,json=ipcId,proto3" json:"ipc_id,omitempty"`
+	SdkType              string    `protobuf:"bytes,3,opt,name=sdk_type,json=sdkType,proto3" json:"sdk_type,omitempty"`
+	SdkName              string    `protobuf:"bytes,4,opt,name=sdk_name,json=sdkName,proto3" json:"sdk_name,omitempty"`
+	Args                 []*SdkArg `protobuf:"bytes,5,rep,name=args,proto3" json:"args,omitempty"`
+	Icon                 string    `protobuf:"bytes,6,opt,name=icon,proto3" json:"icon,omitempty"`
+	Url                  string    `protobuf:"bytes,7,opt,name=url,proto3" json:"url,omitempty"`
+	CreateTime           string    `protobuf:"bytes,8,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+	UpdateTime           string    `protobuf:"bytes,9,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+	CreateBy             string    `protobuf:"bytes,10,opt,name=create_by,json=createBy,proto3" json:"create_by,omitempty"`
+	Enable               bool      `protobuf:"varint,11,opt,name=enable,proto3" json:"enable,omitempty"`
+	DelFlag              int32     `protobuf:"varint,12,opt,name=del_flag,json=delFlag,proto3" json:"del_flag,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
+	XXX_unrecognized     []byte    `json:"-"`
+	XXX_sizecache        int32     `json:"-"`
 }
 
 func (m *Sdk) Reset()         { *m = Sdk{} }
@@ -1382,26 +1303,18 @@
 func (*Sdk) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{16}
 }
+
 func (m *Sdk) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Sdk.Unmarshal(m, b)
 }
 func (m *Sdk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Sdk.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Sdk.Marshal(b, m, deterministic)
 }
 func (m *Sdk) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Sdk.Merge(m, src)
 }
 func (m *Sdk) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Sdk.Size(m)
 }
 func (m *Sdk) XXX_DiscardUnknown() {
 	xxx_messageInfo_Sdk.DiscardUnknown(m)
@@ -1495,13 +1408,16 @@
 
 //SdkArg struct
 type SdkArg struct {
-	Alias string `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"`
-	Name  string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
-	Type  string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
-	Must  bool   `protobuf:"varint,4,opt,name=must,proto3" json:"must,omitempty"`
-	Unit  string `protobuf:"bytes,5,opt,name=unit,proto3" json:"unit,omitempty"`
-	Range string `protobuf:"bytes,6,opt,name=range,proto3" json:"range,omitempty"`
-	Sort  int32  `protobuf:"varint,7,opt,name=sort,proto3" json:"sort,omitempty"`
+	Alias                string   `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"`
+	Name                 string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+	Type                 string   `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
+	Must                 bool     `protobuf:"varint,4,opt,name=must,proto3" json:"must,omitempty"`
+	Unit                 string   `protobuf:"bytes,5,opt,name=unit,proto3" json:"unit,omitempty"`
+	Range                string   `protobuf:"bytes,6,opt,name=range,proto3" json:"range,omitempty"`
+	Sort                 int32    `protobuf:"varint,7,opt,name=sort,proto3" json:"sort,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *SdkArg) Reset()         { *m = SdkArg{} }
@@ -1510,26 +1426,18 @@
 func (*SdkArg) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{17}
 }
+
 func (m *SdkArg) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_SdkArg.Unmarshal(m, b)
 }
 func (m *SdkArg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_SdkArg.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_SdkArg.Marshal(b, m, deterministic)
 }
 func (m *SdkArg) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_SdkArg.Merge(m, src)
 }
 func (m *SdkArg) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_SdkArg.Size(m)
 }
 func (m *SdkArg) XXX_DiscardUnknown() {
 	xxx_messageInfo_SdkArg.DiscardUnknown(m)
@@ -1588,10 +1496,13 @@
 
 //publish db change message
 type DbChangeMessage struct {
-	Table  TableChanged `protobuf:"varint,1,opt,name=table,proto3,enum=protomsg.TableChanged" json:"table,omitempty"`
-	Id     string       `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
-	Action DbAction     `protobuf:"varint,3,opt,name=action,proto3,enum=protomsg.DbAction" json:"action,omitempty"`
-	Info   string       `protobuf:"bytes,4,opt,name=info,proto3" json:"info,omitempty"`
+	Table                TableChanged `protobuf:"varint,1,opt,name=table,proto3,enum=protomsg.TableChanged" json:"table,omitempty"`
+	Id                   string       `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
+	Action               DbAction     `protobuf:"varint,3,opt,name=action,proto3,enum=protomsg.DbAction" json:"action,omitempty"`
+	Info                 string       `protobuf:"bytes,4,opt,name=info,proto3" json:"info,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
+	XXX_unrecognized     []byte       `json:"-"`
+	XXX_sizecache        int32        `json:"-"`
 }
 
 func (m *DbChangeMessage) Reset()         { *m = DbChangeMessage{} }
@@ -1600,26 +1511,18 @@
 func (*DbChangeMessage) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{18}
 }
+
 func (m *DbChangeMessage) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_DbChangeMessage.Unmarshal(m, b)
 }
 func (m *DbChangeMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_DbChangeMessage.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_DbChangeMessage.Marshal(b, m, deterministic)
 }
 func (m *DbChangeMessage) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_DbChangeMessage.Merge(m, src)
 }
 func (m *DbChangeMessage) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_DbChangeMessage.Size(m)
 }
 func (m *DbChangeMessage) XXX_DiscardUnknown() {
 	xxx_messageInfo_DbChangeMessage.DiscardUnknown(m)
@@ -1656,14 +1559,17 @@
 }
 
 type CameraPolygon struct {
-	Id            string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	CameraId      string `protobuf:"bytes,2,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
-	Name          string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
-	Polygon       string `protobuf:"bytes,4,opt,name=polygon,proto3" json:"polygon,omitempty"`
-	TriggerLine   string `protobuf:"bytes,5,opt,name=trigger_line,json=triggerLine,proto3" json:"trigger_line,omitempty"`
-	DirectionLine string `protobuf:"bytes,6,opt,name=direction_line,json=directionLine,proto3" json:"direction_line,omitempty"`
-	Type          string `protobuf:"bytes,7,opt,name=type,proto3" json:"type,omitempty"`
-	DefenceState  int32  `protobuf:"varint,8,opt,name=defence_state,json=defenceState,proto3" json:"defence_state,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	CameraId             string   `protobuf:"bytes,2,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
+	Name                 string   `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
+	Polygon              string   `protobuf:"bytes,4,opt,name=polygon,proto3" json:"polygon,omitempty"`
+	TriggerLine          string   `protobuf:"bytes,5,opt,name=trigger_line,json=triggerLine,proto3" json:"trigger_line,omitempty"`
+	DirectionLine        string   `protobuf:"bytes,6,opt,name=direction_line,json=directionLine,proto3" json:"direction_line,omitempty"`
+	Type                 string   `protobuf:"bytes,7,opt,name=type,proto3" json:"type,omitempty"`
+	DefenceState         int32    `protobuf:"varint,8,opt,name=defence_state,json=defenceState,proto3" json:"defence_state,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *CameraPolygon) Reset()         { *m = CameraPolygon{} }
@@ -1672,26 +1578,18 @@
 func (*CameraPolygon) Descriptor() ([]byte, []int) {
 	return fileDescriptor_32de24555f916688, []int{19}
 }
+
 func (m *CameraPolygon) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_CameraPolygon.Unmarshal(m, b)
 }
 func (m *CameraPolygon) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_CameraPolygon.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_CameraPolygon.Marshal(b, m, deterministic)
 }
 func (m *CameraPolygon) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_CameraPolygon.Merge(m, src)
 }
 func (m *CameraPolygon) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_CameraPolygon.Size(m)
 }
 func (m *CameraPolygon) XXX_DiscardUnknown() {
 	xxx_messageInfo_CameraPolygon.DiscardUnknown(m)
@@ -1755,6 +1653,77 @@
 	return 0
 }
 
+type VideotapeInfo struct {
+	EsDataId             string   `protobuf:"bytes,1,opt,name=esDataId,proto3" json:"esDataId,omitempty"`
+	CameraId             string   `protobuf:"bytes,2,opt,name=cameraId,proto3" json:"cameraId,omitempty"`
+	TaskId               string   `protobuf:"bytes,3,opt,name=taskId,proto3" json:"taskId,omitempty"`
+	ImgId                string   `protobuf:"bytes,4,opt,name=imgId,proto3" json:"imgId,omitempty"`
+	SdkIds               []string `protobuf:"bytes,5,rep,name=sdkIds,proto3" json:"sdkIds,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
+}
+
+func (m *VideotapeInfo) Reset()         { *m = VideotapeInfo{} }
+func (m *VideotapeInfo) String() string { return proto.CompactTextString(m) }
+func (*VideotapeInfo) ProtoMessage()    {}
+func (*VideotapeInfo) Descriptor() ([]byte, []int) {
+	return fileDescriptor_32de24555f916688, []int{20}
+}
+
+func (m *VideotapeInfo) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_VideotapeInfo.Unmarshal(m, b)
+}
+func (m *VideotapeInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_VideotapeInfo.Marshal(b, m, deterministic)
+}
+func (m *VideotapeInfo) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_VideotapeInfo.Merge(m, src)
+}
+func (m *VideotapeInfo) XXX_Size() int {
+	return xxx_messageInfo_VideotapeInfo.Size(m)
+}
+func (m *VideotapeInfo) XXX_DiscardUnknown() {
+	xxx_messageInfo_VideotapeInfo.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_VideotapeInfo proto.InternalMessageInfo
+
+func (m *VideotapeInfo) GetEsDataId() string {
+	if m != nil {
+		return m.EsDataId
+	}
+	return ""
+}
+
+func (m *VideotapeInfo) GetCameraId() string {
+	if m != nil {
+		return m.CameraId
+	}
+	return ""
+}
+
+func (m *VideotapeInfo) GetTaskId() string {
+	if m != nil {
+		return m.TaskId
+	}
+	return ""
+}
+
+func (m *VideotapeInfo) GetImgId() string {
+	if m != nil {
+		return m.ImgId
+	}
+	return ""
+}
+
+func (m *VideotapeInfo) GetSdkIds() []string {
+	if m != nil {
+		return m.SdkIds
+	}
+	return nil
+}
+
 func init() {
 	proto.RegisterEnum("protomsg.TableChanged", TableChanged_name, TableChanged_value)
 	proto.RegisterEnum("protomsg.DbAction", DbAction_name, DbAction_value)
@@ -1778,6423 +1747,114 @@
 	proto.RegisterType((*SdkArg)(nil), "protomsg.SdkArg")
 	proto.RegisterType((*DbChangeMessage)(nil), "protomsg.DbChangeMessage")
 	proto.RegisterType((*CameraPolygon)(nil), "protomsg.CameraPolygon")
+	proto.RegisterType((*VideotapeInfo)(nil), "protomsg.videotapeInfo")
 }
 
 func init() { proto.RegisterFile("protomsg.proto", fileDescriptor_32de24555f916688) }
 
 var fileDescriptor_32de24555f916688 = []byte{
-	// 1629 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x57, 0x4b, 0x8f, 0xdc, 0xc6,
-	0x11, 0x5e, 0xce, 0x93, 0xac, 0x79, 0x88, 0x6a, 0x29, 0x36, 0x23, 0xc7, 0x9b, 0x15, 0xa3, 0x20,
-	0x0b, 0x21, 0xd1, 0x61, 0xed, 0x53, 0x6e, 0x63, 0x29, 0x0a, 0x06, 0x70, 0x0c, 0x85, 0x3b, 0x56,
-	0x8e, 0x44, 0xef, 0x74, 0x2f, 0xd5, 0x58, 0x2e, 0x39, 0xe8, 0x6e, 0xae, 0xbd, 0xbf, 0x22, 0x39,
-	0xe6, 0xe7, 0x04, 0x39, 0xe5, 0x90, 0x83, 0x8f, 0xb9, 0x25, 0x90, 0x80, 0x5c, 0x82, 0xfc, 0x85,
-	0x20, 0xa8, 0xea, 0x26, 0xe7, 0xa1, 0xb5, 0xa1, 0x5b, 0xbd, 0xa6, 0xbb, 0xba, 0xea, 0xe3, 0x57,
-	0x35, 0x30, 0xdf, 0xe8, 0xda, 0xd6, 0xd7, 0xa6, 0x78, 0x46, 0x02, 0x0b, 0x5b, 0xfd, 0x11, 0x5c,
-	0x70, 0x23, 0x9d, 0x35, 0x7d, 0x09, 0x83, 0x85, 0x96, 0x9c, 0xcd, 0xa1, 0xa7, 0x44, 0x12, 0x9c,
-	0x04, 0xa7, 0xc3, 0xac, 0xa7, 0x04, 0x7b, 0x04, 0xe1, 0x86, 0x6b, 0x59, 0x59, 0x25, 0x92, 0x1e,
-	0x59, 0x3b, 0x9d, 0x31, 0x18, 0x54, 0xfc, 0x5a, 0x26, 0xfd, 0x93, 0xe0, 0x34, 0xca, 0x48, 0x4e,
-	0xff, 0xd7, 0x87, 0xd1, 0x73, 0x7e, 0x2d, 0xf5, 0xee, 0x51, 0x11, 0x1d, 0xd5, 0x86, 0xf7, 0xb6,
-	0xe1, 0xec, 0x21, 0x0c, 0x79, 0xa9, 0xb8, 0xf1, 0x67, 0x38, 0x85, 0x3d, 0x86, 0xa9, 0xa9, 0xf8,
-	0xc6, 0xbc, 0xa9, 0x6d, 0xde, 0xe8, 0x32, 0x19, 0x90, 0x73, 0xd2, 0xda, 0xbe, 0xd6, 0x25, 0x1e,
-	0x66, 0x6f, 0x37, 0x32, 0x19, 0x52, 0x4e, 0x24, 0xa3, 0x8d, 0x0b, 0xa1, 0x93, 0x91, 0xbb, 0x00,
-	0x65, 0xf6, 0x11, 0x8c, 0xb8, 0x96, 0x5c, 0x89, 0x64, 0x4c, 0x91, 0x5e, 0x63, 0x3f, 0x81, 0xa8,
-	0xac, 0xab, 0x42, 0xd9, 0x46, 0xc8, 0x24, 0x3c, 0x09, 0x4e, 0x7b, 0xd9, 0xd6, 0x80, 0xaf, 0x2e,
-	0xb9, 0x75, 0xce, 0x88, 0x9c, 0x9d, 0x8e, 0xb7, 0x68, 0x6b, 0x36, 0x09, 0xb8, 0x5b, 0x50, 0xa6,
-	0xa7, 0x6e, 0x92, 0x89, 0x7f, 0xea, 0x06, 0x63, 0x36, 0xb5, 0xb6, 0xc9, 0xd4, 0x65, 0x87, 0x32,
-	0x9e, 0xd9, 0x18, 0xa9, 0xa9, 0x04, 0x33, 0x8a, 0xec, 0x74, 0x57, 0x65, 0x63, 0xbe, 0xa9, 0xb5,
-	0x48, 0xe6, 0xce, 0xd7, 0xea, 0x58, 0xa2, 0x0b, 0xcd, 0x2b, 0x91, 0xdc, 0x73, 0x25, 0x22, 0x05,
-	0x7f, 0xa1, 0xa5, 0x91, 0xfa, 0x46, 0x8a, 0x24, 0x76, 0xbf, 0x68, 0x75, 0xf6, 0x29, 0x80, 0x32,
-	0xb9, 0x6e, 0xaa, 0x4a, 0x55, 0x45, 0x72, 0xff, 0x24, 0x38, 0x0d, 0xb3, 0x48, 0x99, 0xcc, 0x19,
-	0xd0, 0xad, 0x9b, 0x2a, 0x97, 0x15, 0xbf, 0x28, 0x65, 0xc2, 0x9c, 0x5b, 0x37, 0xd5, 0x6f, 0xc8,
-	0xc0, 0x7e, 0x0c, 0x21, 0xba, 0xa9, 0xba, 0x0f, 0x28, 0xff, 0xb1, 0x6e, 0xaa, 0x15, 0x16, 0x38,
-	0x85, 0x19, 0xba, 0xe8, 0x1a, 0x9d, 0x2b, 0x91, 0x3c, 0x74, 0x8d, 0xd1, 0x4d, 0x75, 0x4e, 0xb6,
-	0xa5, 0x48, 0xd7, 0x70, 0xdf, 0xf5, 0x7f, 0x51, 0x89, 0x15, 0x37, 0x57, 0xcb, 0xea, 0xb2, 0x66,
-	0xa7, 0x30, 0x5a, 0x93, 0x91, 0xe0, 0x30, 0x39, 0x8b, 0x9f, 0x75, 0xa0, 0x74, 0xc1, 0x99, 0xf7,
-	0xb3, 0x27, 0x30, 0xb4, 0xdc, 0x5c, 0x99, 0xa4, 0x77, 0xd2, 0x3f, 0x9d, 0x9c, 0xcd, 0xb7, 0x81,
-	0x78, 0x58, 0xe6, 0x9c, 0xe9, 0x3f, 0x03, 0x18, 0xa0, 0x8e, 0xed, 0x45, 0x4b, 0x87, 0x33, 0xaf,
-	0x61, 0x79, 0x50, 0xda, 0xc1, 0x5b, 0xa7, 0xb3, 0x4f, 0x20, 0x5a, 0x6b, 0xc9, 0xad, 0xcc, 0xb9,
-	0xf5, 0xb8, 0x0b, 0x9d, 0x61, 0x61, 0x77, 0x9c, 0x17, 0xb7, 0x1e, 0x77, 0xde, 0xf9, 0xc5, 0x2d,
-	0x3a, 0x9b, 0x8d, 0xf0, 0xbf, 0x1c, 0xfa, 0x1e, 0x92, 0x61, 0x61, 0x31, 0x15, 0x5f, 0xd2, 0x11,
-	0x95, 0xd4, 0x6b, 0x58, 0x4f, 0x65, 0x72, 0x5e, 0x72, 0x7d, 0x4d, 0x18, 0x0c, 0xb3, 0xb1, 0x32,
-	0x0b, 0x54, 0xd1, 0x25, 0x64, 0x99, 0x5f, 0x96, 0xbc, 0x20, 0x0c, 0x86, 0xd9, 0x58, 0xc8, 0xf2,
-	0x65, 0xc9, 0x8b, 0x74, 0x05, 0x13, 0x7c, 0xe0, 0xb9, 0x70, 0x05, 0x4c, 0x61, 0x80, 0xf9, 0xfb,
-	0xf2, 0x1d, 0x56, 0x85, 0x7c, 0xec, 0x31, 0x0c, 0x8c, 0xe8, 0x2a, 0x37, 0xdb, 0xc6, 0x9c, 0x8b,
-	0xab, 0x8c, 0x5c, 0xe9, 0xaf, 0x61, 0x84, 0x4a, 0x53, 0xb1, 0x1f, 0xc1, 0x48, 0x6d, 0xd6, 0x79,
-	0x57, 0xb8, 0xa1, 0xda, 0xac, 0x97, 0x02, 0x33, 0x32, 0xe2, 0xca, 0x35, 0xdf, 0xd5, 0x6d, 0x6c,
-	0xc4, 0x15, 0x36, 0x3f, 0x7d, 0x0d, 0xe0, 0x33, 0xc2, 0xdf, 0x7f, 0x48, 0x42, 0x4f, 0xf6, 0x12,
-	0x8a, 0xf7, 0x13, 0x6a, 0x2a, 0x9f, 0xd3, 0xbf, 0x7b, 0x00, 0x0e, 0x04, 0xd4, 0xd1, 0x43, 0xd6,
-	0xc0, 0x86, 0x90, 0x37, 0xf7, 0x0c, 0x84, 0x0d, 0x21, 0xc3, 0x52, 0xb0, 0x8f, 0x61, 0x8c, 0x37,
-	0xa1, 0xab, 0xbf, 0xed, 0xff, 0x52, 0xb0, 0x5f, 0x41, 0x64, 0xd5, 0xb5, 0xcc, 0x75, 0x53, 0xca,
-	0x64, 0x70, 0x78, 0xff, 0x0b, 0x7e, 0xfb, 0xdc, 0x96, 0x59, 0x88, 0x21, 0x59, 0x53, 0x4a, 0xfa,
-	0x24, 0x24, 0x5f, 0x5b, 0x17, 0xef, 0x3a, 0x1b, 0x91, 0x85, 0xdc, 0x8f, 0x61, 0xea, 0xdc, 0x42,
-	0xde, 0xa8, 0xb5, 0xf4, 0x04, 0x33, 0x21, 0xdb, 0x0b, 0x32, 0xed, 0xb5, 0x72, 0xbc, 0xd7, 0x4a,
-	0xf6, 0x53, 0x98, 0x78, 0xd4, 0xec, 0x34, 0x1a, 0x9c, 0x89, 0x02, 0xb6, 0xc8, 0x89, 0xf6, 0x90,
-	0xc3, 0x60, 0x60, 0x90, 0x45, 0xc0, 0xb1, 0x08, 0xca, 0xf8, 0x62, 0x65, 0xf2, 0xcb, 0xa6, 0x2c,
-	0x89, 0x6e, 0xc2, 0x6c, 0xa4, 0xcc, 0xcb, 0xa6, 0x2c, 0xd9, 0x09, 0x4c, 0x4b, 0x55, 0x5d, 0xe5,
-	0x6d, 0x3d, 0xa6, 0x94, 0x23, 0xa0, 0x8d, 0x3e, 0x43, 0x91, 0xfe, 0x1e, 0xe6, 0xbe, 0xce, 0xea,
-	0x5a, 0xe2, 0x43, 0x3f, 0x88, 0xa1, 0x3f, 0xd9, 0xad, 0xa4, 0xff, 0x5a, 0xda, 0xba, 0xa5, 0x5f,
-	0xc1, 0xc8, 0xd5, 0x92, 0xc5, 0xd0, 0x17, 0xfc, 0xd6, 0x0f, 0x0e, 0x14, 0xd9, 0x19, 0x80, 0xfb,
-	0x21, 0xaf, 0x0a, 0xe9, 0x31, 0xf0, 0x60, 0x07, 0x27, 0x78, 0x06, 0xba, 0x32, 0x3a, 0x9f, 0xc4,
-	0xf4, 0x33, 0x88, 0x3a, 0x3b, 0x12, 0x9f, 0xb1, 0x5c, 0xdb, 0x16, 0xa1, 0xa4, 0xe0, 0x45, 0xb2,
-	0x6a, 0x91, 0x80, 0x62, 0xfa, 0x1a, 0xc6, 0xaf, 0xea, 0xf2, 0xb6, 0xa8, 0xab, 0x0f, 0x7a, 0xd0,
-	0x2f, 0x60, 0xb4, 0xa9, 0x55, 0x65, 0x71, 0xe6, 0x60, 0x4e, 0xf7, 0xb6, 0x39, 0xbd, 0x42, 0x7b,
-	0xe6, 0xdd, 0xe9, 0xba, 0xab, 0x17, 0x37, 0x57, 0x0b, 0x5d, 0x98, 0x7d, 0x2c, 0x06, 0x07, 0x58,
-	0xfc, 0x1c, 0x22, 0xaa, 0x3d, 0xd7, 0x45, 0x0b, 0xf9, 0x8f, 0xf7, 0x3f, 0x8b, 0xdf, 0xea, 0xba,
-	0xd9, 0xe0, 0x41, 0x8e, 0x8c, 0x50, 0x4a, 0x6f, 0x60, 0xb6, 0xe7, 0xda, 0x85, 0x74, 0xb0, 0x07,
-	0xe9, 0xcf, 0x61, 0x52, 0x60, 0x14, 0x75, 0xc2, 0xbc, 0x5f, 0x50, 0x3a, 0x02, 0xbb, 0x92, 0x41,
-	0xd1, 0x8a, 0x66, 0x07, 0x5b, 0xfd, 0x5d, 0x6c, 0xa5, 0x7f, 0x0f, 0x20, 0xea, 0x7e, 0x81, 0xe8,
-	0x75, 0x67, 0x77, 0xb7, 0x8e, 0x49, 0x5f, 0xd2, 0x30, 0x71, 0x2e, 0x2b, 0xbf, 0xb5, 0xbe, 0x90,
-	0x11, 0x59, 0x56, 0xf2, 0x5b, 0x8b, 0xe0, 0x26, 0x6a, 0xcb, 0x4b, 0x79, 0x23, 0x4b, 0xba, 0x64,
-	0x98, 0x01, 0x99, 0xbe, 0x44, 0x0b, 0x12, 0xba, 0x4b, 0x78, 0x70, 0x48, 0xe8, 0x94, 0xab, 0x73,
-	0x12, 0xef, 0x48, 0x9b, 0x77, 0x23, 0x1d, 0x79, 0x47, 0x5a, 0x1a, 0x3a, 0x3f, 0x83, 0x99, 0x90,
-	0x97, 0xb2, 0x5a, 0xcb, 0xdc, 0x58, 0x6e, 0x5b, 0x7a, 0x9d, 0x7a, 0xe3, 0x39, 0xda, 0xd2, 0xff,
-	0xf4, 0x60, 0x90, 0xdd, 0x05, 0xe9, 0x27, 0x30, 0xf7, 0x2d, 0x6b, 0xab, 0xea, 0x9e, 0x30, 0x5d,
-	0x77, 0xad, 0x5d, 0x1e, 0x90, 0x4c, 0xff, 0xa0, 0xb1, 0x9f, 0x02, 0x6c, 0x1c, 0xbe, 0xd0, 0xeb,
-	0x66, 0x42, 0xe4, 0x2d, 0x4b, 0x81, 0x4c, 0x8a, 0x94, 0xa9, 0x84, 0x4f, 0x7c, 0x68, 0x04, 0x1e,
-	0x99, 0xc2, 0x0c, 0xcd, 0x5c, 0x17, 0xb9, 0xdb, 0x70, 0x3c, 0x69, 0x18, 0x81, 0x8d, 0x5f, 0xd0,
-	0x9e, 0xf3, 0x08, 0xc2, 0x7a, 0x23, 0x35, 0xb7, 0xb5, 0x26, 0xd2, 0x88, 0xb2, 0x4e, 0xc7, 0x67,
-	0xb7, 0xb2, 0x2b, 0x4b, 0xe8, 0xf2, 0x6e, 0x8d, 0xed, 0x40, 0x6e, 0x2f, 0xb9, 0xe1, 0x65, 0xe3,
-	0x08, 0xa4, 0xbb, 0xe4, 0x35, 0x9a, 0xee, 0x64, 0x11, 0x1a, 0xe4, 0xa5, 0xcc, 0xbf, 0x51, 0xf6,
-	0x4d, 0xbe, 0xd1, 0xd2, 0xaf, 0x2e, 0x13, 0x34, 0xfe, 0x41, 0xd9, 0x37, 0xaf, 0xf4, 0x3e, 0x26,
-	0xa6, 0x7b, 0x98, 0x48, 0xff, 0xd2, 0x83, 0xfe, 0xb9, 0x78, 0x9f, 0xab, 0xb7, 0x43, 0xa5, 0xf7,
-	0x7d, 0x43, 0xa5, 0xbf, 0x37, 0x54, 0x5a, 0x17, 0x7d, 0xa4, 0x83, 0xce, 0xf5, 0x15, 0x7e, 0xa7,
-	0x4f, 0x60, 0x40, 0x9f, 0xd2, 0xf0, 0x8e, 0xe9, 0xb1, 0xd0, 0x45, 0x46, 0x5e, 0x7c, 0x9d, 0x5a,
-	0xd7, 0x55, 0xbb, 0xf3, 0xa1, 0x8c, 0x14, 0x81, 0x5b, 0xa3, 0xab, 0x28, 0x8a, 0x88, 0x52, 0x3f,
-	0xd5, 0x91, 0x6b, 0x7c, 0x29, 0xc1, 0x99, 0x90, 0x70, 0x76, 0x38, 0x9a, 0x02, 0x5c, 0x19, 0x3d,
-	0x47, 0x53, 0xc0, 0xde, 0x5e, 0x00, 0x07, 0x7b, 0xc1, 0xf6, 0x23, 0x9b, 0x1c, 0x8e, 0xfe, 0x6e,
-	0x28, 0xb8, 0x55, 0xb0, 0x9b, 0xef, 0x7f, 0x0e, 0x68, 0x14, 0x2f, 0x74, 0xb1, 0xdd, 0x81, 0x83,
-	0xdd, 0x1d, 0xf8, 0x2e, 0xea, 0x6a, 0x97, 0x5e, 0xbf, 0x70, 0xb7, 0x4b, 0xef, 0x75, 0x63, 0x2c,
-	0x55, 0x2f, 0xcc, 0x48, 0x46, 0x5b, 0x53, 0xa9, 0x76, 0x45, 0x21, 0x19, 0x6f, 0x71, 0x4c, 0xec,
-	0x2a, 0xe5, 0x94, 0x0e, 0x1c, 0xe3, 0x2d, 0x38, 0xd2, 0x3f, 0x06, 0x70, 0xef, 0xc5, 0xc5, 0xf3,
-	0x37, 0x18, 0xf0, 0x3b, 0x69, 0x0c, 0x2f, 0x24, 0xfb, 0x25, 0xae, 0x65, 0xf8, 0x40, 0xcc, 0x71,
-	0x7e, 0xf6, 0xd1, 0x2e, 0xb1, 0x5d, 0x94, 0xd2, 0x05, 0x8b, 0xcc, 0x05, 0x79, 0x5c, 0xf4, 0x3a,
-	0x5c, 0x3c, 0x85, 0x11, 0x5f, 0x5b, 0x55, 0x57, 0x94, 0xf9, 0xfc, 0x8c, 0xed, 0x8c, 0xe2, 0x8b,
-	0x05, 0x79, 0x32, 0x1f, 0x41, 0x0d, 0xad, 0x2e, 0x6b, 0x8f, 0x06, 0x92, 0xd3, 0xff, 0x06, 0x30,
-	0x73, 0x54, 0xfc, 0x7d, 0x44, 0xff, 0x83, 0x5b, 0xc2, 0x1d, 0xff, 0x53, 0x58, 0x02, 0x63, 0xff,
-	0x09, 0xb7, 0xb8, 0xf3, 0x2a, 0x0e, 0x7b, 0xab, 0x55, 0x51, 0x48, 0x9d, 0x97, 0xaa, 0x6a, 0xe9,
-	0x68, 0xe2, 0x6d, 0x5f, 0xaa, 0x4a, 0xb2, 0x9f, 0xc3, 0x5c, 0x28, 0x2d, 0x29, 0x61, 0x17, 0xe4,
-	0x8a, 0x3a, 0xeb, 0xac, 0x14, 0xd6, 0xb6, 0x6b, 0xbc, 0xd3, 0xae, 0xf7, 0xd8, 0x2c, 0xa4, 0xca,
-	0xef, 0xb1, 0xd9, 0xd3, 0xbf, 0x06, 0x30, 0xdd, 0xad, 0x2b, 0x9b, 0x42, 0xb8, 0xca, 0x5d, 0x05,
-	0xe2, 0x23, 0x16, 0xc3, 0xb4, 0xd5, 0x90, 0xbf, 0xe2, 0x80, 0x3d, 0x84, 0x78, 0xd7, 0x82, 0x83,
-	0x24, 0xee, 0x31, 0x80, 0xd1, 0x2a, 0xa7, 0x88, 0x3e, 0x9b, 0x41, 0xe4, 0xe4, 0x73, 0x71, 0x15,
-	0x0f, 0xd8, 0x7d, 0x98, 0x75, 0x2a, 0xf2, 0x66, 0x3c, 0x64, 0x11, 0x0c, 0x57, 0x39, 0x7a, 0x47,
-	0xec, 0x01, 0xdc, 0x6b, 0x8f, 0xf3, 0x05, 0x8f, 0xc7, 0x6c, 0x0e, 0xb0, 0xca, 0x57, 0x7e, 0xf2,
-	0xc7, 0xa1, 0xcb, 0xc9, 0xad, 0xfd, 0x71, 0xe4, 0x72, 0x7a, 0x55, 0x97, 0xe5, 0xf3, 0xba, 0xba,
-	0x54, 0x45, 0x0c, 0x4f, 0x9f, 0x41, 0xd8, 0x36, 0x17, 0x33, 0x59, 0x56, 0x46, 0x6a, 0x1b, 0x1f,
-	0xa1, 0xfc, 0x35, 0x7d, 0x57, 0x71, 0x80, 0xf2, 0x0b, 0x59, 0x4a, 0x2b, 0xe3, 0xde, 0x17, 0xc9,
-	0xdf, 0xde, 0x1e, 0x07, 0xdf, 0xbd, 0x3d, 0x0e, 0xfe, 0xf5, 0xf6, 0x38, 0xf8, 0xd3, 0xbb, 0xe3,
-	0xa3, 0xef, 0xde, 0x1d, 0x1f, 0xfd, 0xe3, 0xdd, 0xf1, 0xd1, 0xc5, 0x88, 0xd0, 0xf2, 0xd9, 0xff,
-	0x03, 0x00, 0x00, 0xff, 0xff, 0x59, 0x02, 0xcd, 0x8b, 0xca, 0x0e, 0x00, 0x00,
-}
-
-func (m *Area) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Area) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Id != 0 {
-		dAtA[i] = 0x8
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Id))
-	}
-	if m.Parentid != 0 {
-		dAtA[i] = 0x10
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Parentid))
-	}
-	if len(m.Name) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Name)))
-		i += copy(dAtA[i:], m.Name)
-	}
-	return i, nil
-}
-
-func (m *Camera) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Camera) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.Name) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Name)))
-		i += copy(dAtA[i:], m.Name)
-	}
-	if len(m.Alias) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Alias)))
-		i += copy(dAtA[i:], m.Alias)
-	}
-	if len(m.SnapshotUrl) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.SnapshotUrl)))
-		i += copy(dAtA[i:], m.SnapshotUrl)
-	}
-	if m.Type != 0 {
-		dAtA[i] = 0x28
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Type))
-	}
-	if len(m.Addr) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Addr)))
-		i += copy(dAtA[i:], m.Addr)
-	}
-	if m.Areaid != 0 {
-		dAtA[i] = 0x38
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Areaid))
-	}
-	if m.Longitude != 0 {
-		dAtA[i] = 0x45
-		i++
-		encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Longitude))))
-		i += 4
-	}
-	if m.Latitude != 0 {
-		dAtA[i] = 0x4d
-		i++
-		encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Latitude))))
-		i += 4
-	}
-	if len(m.Rtsp) > 0 {
-		dAtA[i] = 0x52
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Rtsp)))
-		i += copy(dAtA[i:], m.Rtsp)
-	}
-	if len(m.Ip) > 0 {
-		dAtA[i] = 0x5a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Ip)))
-		i += copy(dAtA[i:], m.Ip)
-	}
-	if m.Port != 0 {
-		dAtA[i] = 0x60
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Port))
-	}
-	if len(m.Username) > 0 {
-		dAtA[i] = 0x6a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Username)))
-		i += copy(dAtA[i:], m.Username)
-	}
-	if len(m.Password) > 0 {
-		dAtA[i] = 0x72
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Password)))
-		i += copy(dAtA[i:], m.Password)
-	}
-	if len(m.Brand) > 0 {
-		dAtA[i] = 0x7a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Brand)))
-		i += copy(dAtA[i:], m.Brand)
-	}
-	if len(m.Reserved) > 0 {
-		dAtA[i] = 0x82
-		i++
-		dAtA[i] = 0x1
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Reserved)))
-		i += copy(dAtA[i:], m.Reserved)
-	}
-	if m.IsRunning {
-		dAtA[i] = 0x88
-		i++
-		dAtA[i] = 0x1
-		i++
-		if m.IsRunning {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if m.RunEnable {
-		dAtA[i] = 0x90
-		i++
-		dAtA[i] = 0x1
-		i++
-		if m.RunEnable {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if m.RunType != 0 {
-		dAtA[i] = 0x98
-		i++
-		dAtA[i] = 0x1
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.RunType))
-	}
-	if len(m.RunServerId) > 0 {
-		dAtA[i] = 0xa2
-		i++
-		dAtA[i] = 0x1
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.RunServerId)))
-		i += copy(dAtA[i:], m.RunServerId)
-	}
-	return i, nil
-}
-
-func (m *CameraAndTaskInfo) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *CameraAndTaskInfo) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Camera != nil {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Camera.Size()))
-		n1, err1 := m.Camera.MarshalTo(dAtA[i:])
-		if err1 != nil {
-			return 0, err1
-		}
-		i += n1
-	}
-	if len(m.Tasks) > 0 {
-		for _, msg := range m.Tasks {
-			dAtA[i] = 0x12
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func (m *Task) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Task) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Taskid) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Taskid)))
-		i += copy(dAtA[i:], m.Taskid)
-	}
-	if len(m.Taskname) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Taskname)))
-		i += copy(dAtA[i:], m.Taskname)
-	}
-	if len(m.CreateAt) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.CreateAt)))
-		i += copy(dAtA[i:], m.CreateAt)
-	}
-	if len(m.CreateBy) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.CreateBy)))
-		i += copy(dAtA[i:], m.CreateBy)
-	}
-	if len(m.UpdateAt) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.UpdateAt)))
-		i += copy(dAtA[i:], m.UpdateAt)
-	}
-	if m.Enable {
-		dAtA[i] = 0x30
-		i++
-		if m.Enable {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if m.IsAlarm {
-		dAtA[i] = 0x38
-		i++
-		if m.IsAlarm {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if m.DelFlag {
-		dAtA[i] = 0x40
-		i++
-		if m.DelFlag {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	return i, nil
-}
-
-func (m *TaskSdkInfo) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *TaskSdkInfo) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Task != nil {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Task.Size()))
-		n2, err2 := m.Task.MarshalTo(dAtA[i:])
-		if err2 != nil {
-			return 0, err2
-		}
-		i += n2
-	}
-	if len(m.Sdks) > 0 {
-		for _, msg := range m.Sdks {
-			dAtA[i] = 0x12
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func (m *SdkRun) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *SdkRun) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.IpcId) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.IpcId)))
-		i += copy(dAtA[i:], m.IpcId)
-	}
-	if len(m.SdkType) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.SdkType)))
-		i += copy(dAtA[i:], m.SdkType)
-	}
-	return i, nil
-}
-
-func (m *TaskSdkRun) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *TaskSdkRun) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Task != nil {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Task.Size()))
-		n3, err3 := m.Task.MarshalTo(dAtA[i:])
-		if err3 != nil {
-			return 0, err3
-		}
-		i += n3
-	}
-	if len(m.Sdks) > 0 {
-		for _, msg := range m.Sdks {
-			dAtA[i] = 0x12
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func (m *CameraTask) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *CameraTask) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.CameraId) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.CameraId)))
-		i += copy(dAtA[i:], m.CameraId)
-	}
-	if len(m.TaskId) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.TaskId)))
-		i += copy(dAtA[i:], m.TaskId)
-	}
-	if len(m.TimeRule) > 0 {
-		for _, msg := range m.TimeRule {
-			dAtA[i] = 0x22
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	if len(m.ReactRule) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.ReactRule)))
-		i += copy(dAtA[i:], m.ReactRule)
-	}
-	if len(m.ReactDevice) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.ReactDevice)))
-		i += copy(dAtA[i:], m.ReactDevice)
-	}
-	if m.DelFlag {
-		dAtA[i] = 0x38
-		i++
-		if m.DelFlag {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if m.UpdateFlag {
-		dAtA[i] = 0x40
-		i++
-		if m.UpdateFlag {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if m.Enable {
-		dAtA[i] = 0x48
-		i++
-		if m.Enable {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if m.Sort != 0 {
-		dAtA[i] = 0x50
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Sort))
-	}
-	if m.IsFull {
-		dAtA[i] = 0x58
-		i++
-		if m.IsFull {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if len(m.LinkTaskId) > 0 {
-		dAtA[i] = 0x62
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.LinkTaskId)))
-		i += copy(dAtA[i:], m.LinkTaskId)
-	}
-	return i, nil
-}
-
-func (m *CameraTimerule) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *CameraTimerule) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.Name) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Name)))
-		i += copy(dAtA[i:], m.Name)
-	}
-	if len(m.TimeRule) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.TimeRule)))
-		i += copy(dAtA[i:], m.TimeRule)
-	}
-	return i, nil
-}
-
-func (m *DayCtl) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *DayCtl) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Day != 0 {
-		dAtA[i] = 0x8
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Day))
-	}
-	if len(m.TimeRange) > 0 {
-		for _, msg := range m.TimeRange {
-			dAtA[i] = 0x12
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func (m *TimeRange) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *TimeRange) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Start) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Start)))
-		i += copy(dAtA[i:], m.Start)
-	}
-	if len(m.End) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.End)))
-		i += copy(dAtA[i:], m.End)
-	}
-	return i, nil
-}
-
-func (m *Polygon) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Polygon) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.Name) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Name)))
-		i += copy(dAtA[i:], m.Name)
-	}
-	if len(m.Points) > 0 {
-		for _, msg := range m.Points {
-			dAtA[i] = 0x1a
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func (m *CameraTaskArgs) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *CameraTaskArgs) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.CameraId) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.CameraId)))
-		i += copy(dAtA[i:], m.CameraId)
-	}
-	if len(m.TaskArgs) > 0 {
-		for _, msg := range m.TaskArgs {
-			dAtA[i] = 0x12
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func (m *TaskGroupArgs) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *TaskGroupArgs) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.TaskId) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.TaskId)))
-		i += copy(dAtA[i:], m.TaskId)
-	}
-	if len(m.GroupRules) > 0 {
-		for _, msg := range m.GroupRules {
-			dAtA[i] = 0x12
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	if m.Enable {
-		dAtA[i] = 0x18
-		i++
-		if m.Enable {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	return i, nil
-}
-
-func (m *GroupRule) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *GroupRule) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.GroupId) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.GroupId)))
-		i += copy(dAtA[i:], m.GroupId)
-	}
-	if len(m.GroupText) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.GroupText)))
-		i += copy(dAtA[i:], m.GroupText)
-	}
-	if m.AlarmLevel != 0 {
-		dAtA[i] = 0x18
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.AlarmLevel))
-	}
-	if len(m.Rules) > 0 {
-		for _, msg := range m.Rules {
-			dAtA[i] = 0x22
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	if len(m.SetType) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.SetType)))
-		i += copy(dAtA[i:], m.SetType)
-	}
-	if m.DefenceState {
-		dAtA[i] = 0x30
-		i++
-		if m.DefenceState {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	return i, nil
-}
-
-func (m *Rule) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Rule) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.CameraTaskId) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.CameraTaskId)))
-		i += copy(dAtA[i:], m.CameraTaskId)
-	}
-	if len(m.CameraId) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.CameraId)))
-		i += copy(dAtA[i:], m.CameraId)
-	}
-	if len(m.PolygonId) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.PolygonId)))
-		i += copy(dAtA[i:], m.PolygonId)
-	}
-	if len(m.SdkId) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.SdkId)))
-		i += copy(dAtA[i:], m.SdkId)
-	}
-	if len(m.SdkArgAlias) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.SdkArgAlias)))
-		i += copy(dAtA[i:], m.SdkArgAlias)
-	}
-	if len(m.Operator) > 0 {
-		dAtA[i] = 0x3a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Operator)))
-		i += copy(dAtA[i:], m.Operator)
-	}
-	if len(m.OperatorType) > 0 {
-		dAtA[i] = 0x42
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.OperatorType)))
-		i += copy(dAtA[i:], m.OperatorType)
-	}
-	if len(m.SdkArgValue) > 0 {
-		dAtA[i] = 0x4a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.SdkArgValue)))
-		i += copy(dAtA[i:], m.SdkArgValue)
-	}
-	if m.Sort != 0 {
-		dAtA[i] = 0x50
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Sort))
-	}
-	if len(m.RuleWithPre) > 0 {
-		dAtA[i] = 0x5a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.RuleWithPre)))
-		i += copy(dAtA[i:], m.RuleWithPre)
-	}
-	if len(m.GroupId) > 0 {
-		dAtA[i] = 0x62
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.GroupId)))
-		i += copy(dAtA[i:], m.GroupId)
-	}
-	return i, nil
-}
-
-func (m *Sdk) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Sdk) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.IpcId) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.IpcId)))
-		i += copy(dAtA[i:], m.IpcId)
-	}
-	if len(m.SdkType) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.SdkType)))
-		i += copy(dAtA[i:], m.SdkType)
-	}
-	if len(m.SdkName) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.SdkName)))
-		i += copy(dAtA[i:], m.SdkName)
-	}
-	if len(m.Args) > 0 {
-		for _, msg := range m.Args {
-			dAtA[i] = 0x2a
-			i++
-			i = encodeVarintProtomsg(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	if len(m.Icon) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Icon)))
-		i += copy(dAtA[i:], m.Icon)
-	}
-	if len(m.Url) > 0 {
-		dAtA[i] = 0x3a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Url)))
-		i += copy(dAtA[i:], m.Url)
-	}
-	if len(m.CreateTime) > 0 {
-		dAtA[i] = 0x42
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.CreateTime)))
-		i += copy(dAtA[i:], m.CreateTime)
-	}
-	if len(m.UpdateTime) > 0 {
-		dAtA[i] = 0x4a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.UpdateTime)))
-		i += copy(dAtA[i:], m.UpdateTime)
-	}
-	if len(m.CreateBy) > 0 {
-		dAtA[i] = 0x52
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.CreateBy)))
-		i += copy(dAtA[i:], m.CreateBy)
-	}
-	if m.Enable {
-		dAtA[i] = 0x58
-		i++
-		if m.Enable {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if m.DelFlag != 0 {
-		dAtA[i] = 0x60
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.DelFlag))
-	}
-	return i, nil
-}
-
-func (m *SdkArg) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *SdkArg) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Alias) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Alias)))
-		i += copy(dAtA[i:], m.Alias)
-	}
-	if len(m.Name) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Name)))
-		i += copy(dAtA[i:], m.Name)
-	}
-	if len(m.Type) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Type)))
-		i += copy(dAtA[i:], m.Type)
-	}
-	if m.Must {
-		dAtA[i] = 0x20
-		i++
-		if m.Must {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	if len(m.Unit) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Unit)))
-		i += copy(dAtA[i:], m.Unit)
-	}
-	if len(m.Range) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Range)))
-		i += copy(dAtA[i:], m.Range)
-	}
-	if m.Sort != 0 {
-		dAtA[i] = 0x38
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Sort))
-	}
-	return i, nil
-}
-
-func (m *DbChangeMessage) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *DbChangeMessage) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Table != 0 {
-		dAtA[i] = 0x8
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Table))
-	}
-	if len(m.Id) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if m.Action != 0 {
-		dAtA[i] = 0x18
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.Action))
-	}
-	if len(m.Info) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Info)))
-		i += copy(dAtA[i:], m.Info)
-	}
-	return i, nil
-}
-
-func (m *CameraPolygon) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *CameraPolygon) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.CameraId) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.CameraId)))
-		i += copy(dAtA[i:], m.CameraId)
-	}
-	if len(m.Name) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Name)))
-		i += copy(dAtA[i:], m.Name)
-	}
-	if len(m.Polygon) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Polygon)))
-		i += copy(dAtA[i:], m.Polygon)
-	}
-	if len(m.TriggerLine) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.TriggerLine)))
-		i += copy(dAtA[i:], m.TriggerLine)
-	}
-	if len(m.DirectionLine) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.DirectionLine)))
-		i += copy(dAtA[i:], m.DirectionLine)
-	}
-	if len(m.Type) > 0 {
-		dAtA[i] = 0x3a
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(len(m.Type)))
-		i += copy(dAtA[i:], m.Type)
-	}
-	if m.DefenceState != 0 {
-		dAtA[i] = 0x40
-		i++
-		i = encodeVarintProtomsg(dAtA, i, uint64(m.DefenceState))
-	}
-	return i, nil
-}
-
-func encodeVarintProtomsg(dAtA []byte, offset int, v uint64) int {
-	for v >= 1<<7 {
-		dAtA[offset] = uint8(v&0x7f | 0x80)
-		v >>= 7
-		offset++
-	}
-	dAtA[offset] = uint8(v)
-	return offset + 1
-}
-func (m *Area) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Id != 0 {
-		n += 1 + sovProtomsg(uint64(m.Id))
-	}
-	if m.Parentid != 0 {
-		n += 1 + sovProtomsg(uint64(m.Parentid))
-	}
-	l = len(m.Name)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	return n
-}
-
-func (m *Camera) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Name)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Alias)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.SnapshotUrl)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.Type != 0 {
-		n += 1 + sovProtomsg(uint64(m.Type))
-	}
-	l = len(m.Addr)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.Areaid != 0 {
-		n += 1 + sovProtomsg(uint64(m.Areaid))
-	}
-	if m.Longitude != 0 {
-		n += 5
-	}
-	if m.Latitude != 0 {
-		n += 5
-	}
-	l = len(m.Rtsp)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Ip)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.Port != 0 {
-		n += 1 + sovProtomsg(uint64(m.Port))
-	}
-	l = len(m.Username)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Password)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Brand)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Reserved)
-	if l > 0 {
-		n += 2 + l + sovProtomsg(uint64(l))
-	}
-	if m.IsRunning {
-		n += 3
-	}
-	if m.RunEnable {
-		n += 3
-	}
-	if m.RunType != 0 {
-		n += 2 + sovProtomsg(uint64(m.RunType))
-	}
-	l = len(m.RunServerId)
-	if l > 0 {
-		n += 2 + l + sovProtomsg(uint64(l))
-	}
-	return n
-}
-
-func (m *CameraAndTaskInfo) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Camera != nil {
-		l = m.Camera.Size()
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if len(m.Tasks) > 0 {
-		for _, e := range m.Tasks {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	return n
-}
-
-func (m *Task) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Taskid)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Taskname)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.CreateAt)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.CreateBy)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.UpdateAt)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.Enable {
-		n += 2
-	}
-	if m.IsAlarm {
-		n += 2
-	}
-	if m.DelFlag {
-		n += 2
-	}
-	return n
-}
-
-func (m *TaskSdkInfo) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Task != nil {
-		l = m.Task.Size()
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if len(m.Sdks) > 0 {
-		for _, e := range m.Sdks {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	return n
-}
-
-func (m *SdkRun) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.IpcId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.SdkType)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	return n
-}
-
-func (m *TaskSdkRun) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Task != nil {
-		l = m.Task.Size()
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if len(m.Sdks) > 0 {
-		for _, e := range m.Sdks {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	return n
-}
-
-func (m *CameraTask) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.CameraId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.TaskId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if len(m.TimeRule) > 0 {
-		for _, e := range m.TimeRule {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	l = len(m.ReactRule)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.ReactDevice)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.DelFlag {
-		n += 2
-	}
-	if m.UpdateFlag {
-		n += 2
-	}
-	if m.Enable {
-		n += 2
-	}
-	if m.Sort != 0 {
-		n += 1 + sovProtomsg(uint64(m.Sort))
-	}
-	if m.IsFull {
-		n += 2
-	}
-	l = len(m.LinkTaskId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	return n
-}
-
-func (m *CameraTimerule) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Name)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.TimeRule)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	return n
-}
-
-func (m *DayCtl) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Day != 0 {
-		n += 1 + sovProtomsg(uint64(m.Day))
-	}
-	if len(m.TimeRange) > 0 {
-		for _, e := range m.TimeRange {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	return n
-}
-
-func (m *TimeRange) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Start)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.End)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	return n
-}
-
-func (m *Polygon) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Name)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if len(m.Points) > 0 {
-		for _, e := range m.Points {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	return n
-}
-
-func (m *CameraTaskArgs) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.CameraId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if len(m.TaskArgs) > 0 {
-		for _, e := range m.TaskArgs {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	return n
-}
-
-func (m *TaskGroupArgs) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.TaskId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if len(m.GroupRules) > 0 {
-		for _, e := range m.GroupRules {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	if m.Enable {
-		n += 2
-	}
-	return n
-}
-
-func (m *GroupRule) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.GroupId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.GroupText)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.AlarmLevel != 0 {
-		n += 1 + sovProtomsg(uint64(m.AlarmLevel))
-	}
-	if len(m.Rules) > 0 {
-		for _, e := range m.Rules {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	l = len(m.SetType)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.DefenceState {
-		n += 2
-	}
-	return n
-}
-
-func (m *Rule) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.CameraTaskId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.CameraId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.PolygonId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.SdkId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.SdkArgAlias)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Operator)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.OperatorType)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.SdkArgValue)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.Sort != 0 {
-		n += 1 + sovProtomsg(uint64(m.Sort))
-	}
-	l = len(m.RuleWithPre)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.GroupId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	return n
-}
-
-func (m *Sdk) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.IpcId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.SdkType)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.SdkName)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if len(m.Args) > 0 {
-		for _, e := range m.Args {
-			l = e.Size()
-			n += 1 + l + sovProtomsg(uint64(l))
-		}
-	}
-	l = len(m.Icon)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Url)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.CreateTime)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.UpdateTime)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.CreateBy)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.Enable {
-		n += 2
-	}
-	if m.DelFlag != 0 {
-		n += 1 + sovProtomsg(uint64(m.DelFlag))
-	}
-	return n
-}
-
-func (m *SdkArg) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Alias)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Name)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Type)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.Must {
-		n += 2
-	}
-	l = len(m.Unit)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Range)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.Sort != 0 {
-		n += 1 + sovProtomsg(uint64(m.Sort))
-	}
-	return n
-}
-
-func (m *DbChangeMessage) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Table != 0 {
-		n += 1 + sovProtomsg(uint64(m.Table))
-	}
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.Action != 0 {
-		n += 1 + sovProtomsg(uint64(m.Action))
-	}
-	l = len(m.Info)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	return n
-}
-
-func (m *CameraPolygon) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.CameraId)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Name)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Polygon)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.TriggerLine)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.DirectionLine)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	l = len(m.Type)
-	if l > 0 {
-		n += 1 + l + sovProtomsg(uint64(l))
-	}
-	if m.DefenceState != 0 {
-		n += 1 + sovProtomsg(uint64(m.DefenceState))
-	}
-	return n
-}
-
-func sovProtomsg(x uint64) (n int) {
-	for {
-		n++
-		x >>= 7
-		if x == 0 {
-			break
-		}
-	}
-	return n
-}
-func sozProtomsg(x uint64) (n int) {
-	return sovProtomsg(uint64((x << 1) ^ uint64((int64(x) >> 63))))
-}
-func (m *Area) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Area: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Area: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			m.Id = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Id |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 2:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Parentid", wireType)
-			}
-			m.Parentid = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Parentid |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Name = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Camera) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Camera: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Camera: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Name = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Alias", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Alias = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field SnapshotUrl", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.SnapshotUrl = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
-			}
-			m.Type = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Type |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Addr", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Addr = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 7:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Areaid", wireType)
-			}
-			m.Areaid = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Areaid |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 8:
-			if wireType != 5 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Longitude", wireType)
-			}
-			var v uint32
-			if (iNdEx + 4) > l {
-				return io.ErrUnexpectedEOF
-			}
-			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
-			iNdEx += 4
-			m.Longitude = float32(math.Float32frombits(v))
-		case 9:
-			if wireType != 5 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Latitude", wireType)
-			}
-			var v uint32
-			if (iNdEx + 4) > l {
-				return io.ErrUnexpectedEOF
-			}
-			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
-			iNdEx += 4
-			m.Latitude = float32(math.Float32frombits(v))
-		case 10:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Rtsp", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Rtsp = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 11:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Ip", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Ip = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 12:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType)
-			}
-			m.Port = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Port |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 13:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Username", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Username = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 14:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Password", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Password = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 15:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Brand", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Brand = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 16:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Reserved", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Reserved = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 17:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IsRunning", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.IsRunning = bool(v != 0)
-		case 18:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field RunEnable", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.RunEnable = bool(v != 0)
-		case 19:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field RunType", wireType)
-			}
-			m.RunType = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.RunType |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 20:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field RunServerId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.RunServerId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *CameraAndTaskInfo) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: CameraAndTaskInfo: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: CameraAndTaskInfo: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Camera", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.Camera == nil {
-				m.Camera = &Camera{}
-			}
-			if err := m.Camera.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Tasks", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Tasks = append(m.Tasks, &Task{})
-			if err := m.Tasks[len(m.Tasks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Task) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Task: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Task: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Taskid", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Taskid = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Taskname", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Taskname = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CreateAt", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CreateAt = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CreateBy", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CreateBy = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field UpdateAt", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.UpdateAt = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Enable", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.Enable = bool(v != 0)
-		case 7:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IsAlarm", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.IsAlarm = bool(v != 0)
-		case 8:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field DelFlag", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.DelFlag = bool(v != 0)
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *TaskSdkInfo) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: TaskSdkInfo: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: TaskSdkInfo: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Task", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.Task == nil {
-				m.Task = &Task{}
-			}
-			if err := m.Task.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Sdks", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Sdks = append(m.Sdks, &Sdk{})
-			if err := m.Sdks[len(m.Sdks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *SdkRun) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: SdkRun: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: SdkRun: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IpcId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.IpcId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field SdkType", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.SdkType = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *TaskSdkRun) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: TaskSdkRun: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: TaskSdkRun: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Task", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.Task == nil {
-				m.Task = &Task{}
-			}
-			if err := m.Task.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Sdks", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Sdks = append(m.Sdks, &SdkRun{})
-			if err := m.Sdks[len(m.Sdks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *CameraTask) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: CameraTask: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: CameraTask: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CameraId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CameraId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TaskId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TaskId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TimeRule", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TimeRule = append(m.TimeRule, &DayCtl{})
-			if err := m.TimeRule[len(m.TimeRule)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ReactRule", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ReactRule = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ReactDevice", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ReactDevice = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 7:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field DelFlag", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.DelFlag = bool(v != 0)
-		case 8:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field UpdateFlag", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.UpdateFlag = bool(v != 0)
-		case 9:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Enable", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.Enable = bool(v != 0)
-		case 10:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Sort", wireType)
-			}
-			m.Sort = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Sort |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 11:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IsFull", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.IsFull = bool(v != 0)
-		case 12:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field LinkTaskId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.LinkTaskId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *CameraTimerule) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: CameraTimerule: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: CameraTimerule: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Name = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TimeRule", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TimeRule = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *DayCtl) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: DayCtl: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: DayCtl: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Day", wireType)
-			}
-			m.Day = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Day |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TimeRange", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TimeRange = append(m.TimeRange, &TimeRange{})
-			if err := m.TimeRange[len(m.TimeRange)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *TimeRange) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: TimeRange: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: TimeRange: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Start", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Start = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field End", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.End = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Polygon) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Polygon: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Polygon: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Name = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Points", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Points = append(m.Points, &Point{})
-			if err := m.Points[len(m.Points)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *CameraTaskArgs) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: CameraTaskArgs: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: CameraTaskArgs: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CameraId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CameraId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TaskArgs", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TaskArgs = append(m.TaskArgs, &TaskGroupArgs{})
-			if err := m.TaskArgs[len(m.TaskArgs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *TaskGroupArgs) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: TaskGroupArgs: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: TaskGroupArgs: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TaskId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TaskId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field GroupRules", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.GroupRules = append(m.GroupRules, &GroupRule{})
-			if err := m.GroupRules[len(m.GroupRules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 3:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Enable", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.Enable = bool(v != 0)
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *GroupRule) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: GroupRule: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: GroupRule: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field GroupId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.GroupId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field GroupText", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.GroupText = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field AlarmLevel", wireType)
-			}
-			m.AlarmLevel = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.AlarmLevel |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Rules = append(m.Rules, &Rule{})
-			if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field SetType", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.SetType = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field DefenceState", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.DefenceState = bool(v != 0)
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Rule) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Rule: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Rule: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CameraTaskId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CameraTaskId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CameraId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CameraId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PolygonId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.PolygonId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field SdkId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.SdkId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field SdkArgAlias", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.SdkArgAlias = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 7:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Operator", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Operator = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 8:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field OperatorType", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.OperatorType = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 9:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field SdkArgValue", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.SdkArgValue = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 10:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Sort", wireType)
-			}
-			m.Sort = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Sort |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 11:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field RuleWithPre", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.RuleWithPre = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 12:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field GroupId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.GroupId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Sdk) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Sdk: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Sdk: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field IpcId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.IpcId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field SdkType", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.SdkType = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field SdkName", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.SdkName = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Args", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Args = append(m.Args, &SdkArg{})
-			if err := m.Args[len(m.Args)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Icon", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Icon = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 7:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Url", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Url = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 8:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CreateTime", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CreateTime = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 9:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field UpdateTime", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.UpdateTime = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 10:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CreateBy", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CreateBy = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 11:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Enable", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.Enable = bool(v != 0)
-		case 12:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field DelFlag", wireType)
-			}
-			m.DelFlag = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.DelFlag |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *SdkArg) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: SdkArg: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: SdkArg: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Alias", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Alias = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Name = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Type = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Must", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.Must = bool(v != 0)
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Unit", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Unit = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Range", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Range = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 7:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Sort", wireType)
-			}
-			m.Sort = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Sort |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *DbChangeMessage) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: DbChangeMessage: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: DbChangeMessage: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Table", wireType)
-			}
-			m.Table = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Table |= TableChanged(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType)
-			}
-			m.Action = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Action |= DbAction(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Info", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Info = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *CameraPolygon) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: CameraPolygon: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: CameraPolygon: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CameraId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CameraId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Name = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Polygon", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Polygon = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field TriggerLine", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.TriggerLine = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field DirectionLine", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.DirectionLine = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 7:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Type = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 8:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field DefenceState", wireType)
-			}
-			m.DefenceState = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.DefenceState |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipProtomsg(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthProtomsg
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func skipProtomsg(dAtA []byte) (n int, err error) {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return 0, ErrIntOverflowProtomsg
-			}
-			if iNdEx >= l {
-				return 0, io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= (uint64(b) & 0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		wireType := int(wire & 0x7)
-		switch wireType {
-		case 0:
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				iNdEx++
-				if dAtA[iNdEx-1] < 0x80 {
-					break
-				}
-			}
-			return iNdEx, nil
-		case 1:
-			iNdEx += 8
-			return iNdEx, nil
-		case 2:
-			var length int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowProtomsg
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				length |= (int(b) & 0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if length < 0 {
-				return 0, ErrInvalidLengthProtomsg
-			}
-			iNdEx += length
-			if iNdEx < 0 {
-				return 0, ErrInvalidLengthProtomsg
-			}
-			return iNdEx, nil
-		case 3:
-			for {
-				var innerWire uint64
-				var start int = iNdEx
-				for shift := uint(0); ; shift += 7 {
-					if shift >= 64 {
-						return 0, ErrIntOverflowProtomsg
-					}
-					if iNdEx >= l {
-						return 0, io.ErrUnexpectedEOF
-					}
-					b := dAtA[iNdEx]
-					iNdEx++
-					innerWire |= (uint64(b) & 0x7F) << shift
-					if b < 0x80 {
-						break
-					}
-				}
-				innerWireType := int(innerWire & 0x7)
-				if innerWireType == 4 {
-					break
-				}
-				next, err := skipProtomsg(dAtA[start:])
-				if err != nil {
-					return 0, err
-				}
-				iNdEx = start + next
-				if iNdEx < 0 {
-					return 0, ErrInvalidLengthProtomsg
-				}
-			}
-			return iNdEx, nil
-		case 4:
-			return iNdEx, nil
-		case 5:
-			iNdEx += 4
-			return iNdEx, nil
-		default:
-			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
-		}
-	}
-	panic("unreachable")
+	// 1648 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x57, 0xcd, 0x8e, 0xdc, 0xc6,
+	0x11, 0x36, 0xe7, 0x97, 0xac, 0xf9, 0x11, 0xd5, 0x52, 0x6c, 0x46, 0x8e, 0x91, 0x15, 0xa3, 0x20,
+	0x0b, 0x21, 0xd1, 0x61, 0xed, 0x53, 0x6e, 0x13, 0x6d, 0x14, 0x0c, 0xe0, 0x18, 0x0a, 0x77, 0xac,
+	0x1c, 0x89, 0xde, 0xe9, 0x5e, 0xaa, 0xb1, 0x1c, 0x92, 0xe8, 0x6e, 0xae, 0xbd, 0x0f, 0x11, 0xe4,
+	0x9a, 0xc7, 0x09, 0x72, 0xce, 0x3b, 0xe4, 0x96, 0x4b, 0x90, 0x57, 0x08, 0x82, 0xaa, 0x6e, 0x72,
+	0x7e, 0xb4, 0x36, 0x74, 0xab, 0xbf, 0xe9, 0xae, 0xae, 0xfa, 0xf8, 0x55, 0x0d, 0x2c, 0x1b, 0x5d,
+	0xdb, 0x7a, 0x67, 0x8a, 0x57, 0x24, 0xb0, 0xb0, 0xd3, 0x9f, 0xc1, 0x35, 0x37, 0xd2, 0x59, 0xd3,
+	0x37, 0x30, 0x5a, 0x69, 0xc9, 0xd9, 0x12, 0x06, 0x4a, 0x24, 0xc1, 0x59, 0x70, 0x3e, 0xce, 0x06,
+	0x4a, 0xb0, 0x67, 0x10, 0x36, 0x5c, 0xcb, 0xca, 0x2a, 0x91, 0x0c, 0xc8, 0xda, 0xeb, 0x8c, 0xc1,
+	0xa8, 0xe2, 0x3b, 0x99, 0x0c, 0xcf, 0x82, 0xf3, 0x28, 0x23, 0x39, 0xfd, 0xdf, 0x10, 0x26, 0xaf,
+	0xf9, 0x4e, 0xea, 0xc3, 0xa3, 0x22, 0x3a, 0xaa, 0x0b, 0x1f, 0xec, 0xc3, 0xd9, 0x53, 0x18, 0xf3,
+	0x52, 0x71, 0xe3, 0xcf, 0x70, 0x0a, 0x7b, 0x0e, 0x73, 0x53, 0xf1, 0xc6, 0xbc, 0xaf, 0x6d, 0xde,
+	0xea, 0x32, 0x19, 0x91, 0x73, 0xd6, 0xd9, 0xbe, 0xd5, 0x25, 0x1e, 0x66, 0xef, 0x1b, 0x99, 0x8c,
+	0x29, 0x27, 0x92, 0xd1, 0xc6, 0x85, 0xd0, 0xc9, 0xc4, 0x5d, 0x80, 0x32, 0xfb, 0x14, 0x26, 0x5c,
+	0x4b, 0xae, 0x44, 0x32, 0xa5, 0x48, 0xaf, 0xb1, 0x9f, 0x41, 0x54, 0xd6, 0x55, 0xa1, 0x6c, 0x2b,
+	0x64, 0x12, 0x9e, 0x05, 0xe7, 0x83, 0x6c, 0x6f, 0xc0, 0x57, 0x97, 0xdc, 0x3a, 0x67, 0x44, 0xce,
+	0x5e, 0xc7, 0x5b, 0xb4, 0x35, 0x4d, 0x02, 0xee, 0x16, 0x94, 0xe9, 0xa9, 0x4d, 0x32, 0xf3, 0x4f,
+	0x6d, 0x30, 0xa6, 0xa9, 0xb5, 0x4d, 0xe6, 0x2e, 0x3b, 0x94, 0xf1, 0xcc, 0xd6, 0x48, 0x4d, 0x25,
+	0x58, 0x50, 0x64, 0xaf, 0xbb, 0x2a, 0x1b, 0xf3, 0x5d, 0xad, 0x45, 0xb2, 0x74, 0xbe, 0x4e, 0xc7,
+	0x12, 0x5d, 0x6b, 0x5e, 0x89, 0xe4, 0x91, 0x2b, 0x11, 0x29, 0xf8, 0x0b, 0x2d, 0x8d, 0xd4, 0x77,
+	0x52, 0x24, 0xb1, 0xfb, 0x45, 0xa7, 0xb3, 0x2f, 0x00, 0x94, 0xc9, 0x75, 0x5b, 0x55, 0xaa, 0x2a,
+	0x92, 0xc7, 0x67, 0xc1, 0x79, 0x98, 0x45, 0xca, 0x64, 0xce, 0x80, 0x6e, 0xdd, 0x56, 0xb9, 0xac,
+	0xf8, 0x75, 0x29, 0x13, 0xe6, 0xdc, 0xba, 0xad, 0x7e, 0x4f, 0x06, 0xf6, 0x53, 0x08, 0xd1, 0x4d,
+	0xd5, 0x7d, 0x42, 0xf9, 0x4f, 0x75, 0x5b, 0x6d, 0xb0, 0xc0, 0x29, 0x2c, 0xd0, 0x45, 0xd7, 0xe8,
+	0x5c, 0x89, 0xe4, 0xa9, 0x6b, 0x8c, 0x6e, 0xab, 0x2b, 0xb2, 0xad, 0x45, 0xba, 0x85, 0xc7, 0xae,
+	0xff, 0xab, 0x4a, 0x6c, 0xb8, 0xb9, 0x5d, 0x57, 0x37, 0x35, 0x3b, 0x87, 0xc9, 0x96, 0x8c, 0x04,
+	0x87, 0xd9, 0x45, 0xfc, 0xaa, 0x07, 0xa5, 0x0b, 0xce, 0xbc, 0x9f, 0xbd, 0x80, 0xb1, 0xe5, 0xe6,
+	0xd6, 0x24, 0x83, 0xb3, 0xe1, 0xf9, 0xec, 0x62, 0xb9, 0x0f, 0xc4, 0xc3, 0x32, 0xe7, 0x4c, 0xff,
+	0x15, 0xc0, 0x08, 0x75, 0x6c, 0x2f, 0x5a, 0x7a, 0x9c, 0x79, 0x0d, 0xcb, 0x83, 0xd2, 0x01, 0xde,
+	0x7a, 0x9d, 0x7d, 0x0e, 0xd1, 0x56, 0x4b, 0x6e, 0x65, 0xce, 0xad, 0xc7, 0x5d, 0xe8, 0x0c, 0x2b,
+	0x7b, 0xe0, 0xbc, 0xbe, 0xf7, 0xb8, 0xf3, 0xce, 0xdf, 0xdd, 0xa3, 0xb3, 0x6d, 0x84, 0xff, 0xe5,
+	0xd8, 0xf7, 0x90, 0x0c, 0x2b, 0x8b, 0xa9, 0xf8, 0x92, 0x4e, 0xa8, 0xa4, 0x5e, 0xc3, 0x7a, 0x2a,
+	0x93, 0xf3, 0x92, 0xeb, 0x1d, 0x61, 0x30, 0xcc, 0xa6, 0xca, 0xac, 0x50, 0x45, 0x97, 0x90, 0x65,
+	0x7e, 0x53, 0xf2, 0x82, 0x30, 0x18, 0x66, 0x53, 0x21, 0xcb, 0x37, 0x25, 0x2f, 0xd2, 0x0d, 0xcc,
+	0xf0, 0x81, 0x57, 0xc2, 0x15, 0x30, 0x85, 0x11, 0xe6, 0xef, 0xcb, 0x77, 0x5a, 0x15, 0xf2, 0xb1,
+	0xe7, 0x30, 0x32, 0xa2, 0xaf, 0xdc, 0x62, 0x1f, 0x73, 0x25, 0x6e, 0x33, 0x72, 0xa5, 0xbf, 0x85,
+	0x09, 0x2a, 0x6d, 0xc5, 0x7e, 0x02, 0x13, 0xd5, 0x6c, 0xf3, 0xbe, 0x70, 0x63, 0xd5, 0x6c, 0xd7,
+	0x02, 0x33, 0x32, 0xe2, 0xd6, 0x35, 0xdf, 0xd5, 0x6d, 0x6a, 0xc4, 0x2d, 0x36, 0x3f, 0x7d, 0x07,
+	0xe0, 0x33, 0xc2, 0xdf, 0x7f, 0x4c, 0x42, 0x2f, 0x8e, 0x12, 0x8a, 0x8f, 0x13, 0x6a, 0x2b, 0x9f,
+	0xd3, 0xbf, 0x07, 0x00, 0x0e, 0x04, 0xd4, 0xd1, 0x53, 0xd6, 0xc0, 0x86, 0x90, 0x37, 0xf7, 0x0c,
+	0x84, 0x0d, 0x21, 0xc3, 0x5a, 0xb0, 0xcf, 0x60, 0x8a, 0x37, 0xa1, 0x6b, 0xb8, 0xef, 0xff, 0x5a,
+	0xb0, 0xdf, 0x40, 0x64, 0xd5, 0x4e, 0xe6, 0xba, 0x2d, 0x65, 0x32, 0x3a, 0xbd, 0xff, 0x92, 0xdf,
+	0xbf, 0xb6, 0x65, 0x16, 0x62, 0x48, 0xd6, 0x96, 0x92, 0x3e, 0x09, 0xc9, 0xb7, 0xd6, 0xc5, 0xbb,
+	0xce, 0x46, 0x64, 0x21, 0xf7, 0x73, 0x98, 0x3b, 0xb7, 0x90, 0x77, 0x6a, 0x2b, 0x3d, 0xc1, 0xcc,
+	0xc8, 0x76, 0x49, 0xa6, 0xa3, 0x56, 0x4e, 0x8f, 0x5a, 0xc9, 0x7e, 0x0e, 0x33, 0x8f, 0x9a, 0x83,
+	0x46, 0x83, 0x33, 0x51, 0xc0, 0x1e, 0x39, 0xd1, 0x11, 0x72, 0x18, 0x8c, 0x0c, 0xb2, 0x08, 0x38,
+	0x16, 0x41, 0x19, 0x5f, 0xac, 0x4c, 0x7e, 0xd3, 0x96, 0x25, 0xd1, 0x4d, 0x98, 0x4d, 0x94, 0x79,
+	0xd3, 0x96, 0x25, 0x3b, 0x83, 0x79, 0xa9, 0xaa, 0xdb, 0xbc, 0xab, 0xc7, 0x9c, 0x72, 0x04, 0xb4,
+	0xd1, 0x67, 0x28, 0xd2, 0x3f, 0xc1, 0xd2, 0xd7, 0x59, 0xed, 0x24, 0x3e, 0xf4, 0xa3, 0x18, 0xfa,
+	0xf3, 0xc3, 0x4a, 0xfa, 0xaf, 0xa5, 0xab, 0x5b, 0xfa, 0x0d, 0x4c, 0x5c, 0x2d, 0x59, 0x0c, 0x43,
+	0xc1, 0xef, 0xfd, 0xe0, 0x40, 0x91, 0x5d, 0x00, 0xb8, 0x1f, 0xf2, 0xaa, 0x90, 0x1e, 0x03, 0x4f,
+	0x0e, 0x70, 0x82, 0x67, 0xa0, 0x2b, 0xa3, 0xf3, 0x49, 0x4c, 0xbf, 0x84, 0xa8, 0xb7, 0x23, 0xf1,
+	0x19, 0xcb, 0xb5, 0xed, 0x10, 0x4a, 0x0a, 0x5e, 0x24, 0xab, 0x0e, 0x09, 0x28, 0xa6, 0xef, 0x60,
+	0xfa, 0xb6, 0x2e, 0xef, 0x8b, 0xba, 0xfa, 0xa8, 0x07, 0xfd, 0x0a, 0x26, 0x4d, 0xad, 0x2a, 0x8b,
+	0x33, 0x07, 0x73, 0x7a, 0xb4, 0xcf, 0xe9, 0x2d, 0xda, 0x33, 0xef, 0x4e, 0xb7, 0x7d, 0xbd, 0xb8,
+	0xb9, 0x5d, 0xe9, 0xc2, 0x1c, 0x63, 0x31, 0x38, 0xc1, 0xe2, 0x57, 0x10, 0x51, 0xed, 0xb9, 0x2e,
+	0x3a, 0xc8, 0x7f, 0x76, 0xfc, 0x59, 0xfc, 0x41, 0xd7, 0x6d, 0x83, 0x07, 0x39, 0x32, 0x42, 0x29,
+	0xbd, 0x83, 0xc5, 0x91, 0xeb, 0x10, 0xd2, 0xc1, 0x11, 0xa4, 0xbf, 0x82, 0x59, 0x81, 0x51, 0xd4,
+	0x09, 0xf3, 0x61, 0x41, 0xe9, 0x08, 0xec, 0x4a, 0x06, 0x45, 0x27, 0x9a, 0x03, 0x6c, 0x0d, 0x0f,
+	0xb1, 0x95, 0xfe, 0x33, 0x80, 0xa8, 0xff, 0x05, 0xa2, 0xd7, 0x9d, 0xdd, 0xdf, 0x3a, 0x25, 0x7d,
+	0x4d, 0xc3, 0xc4, 0xb9, 0xac, 0xfc, 0xde, 0xfa, 0x42, 0x46, 0x64, 0xd9, 0xc8, 0xef, 0x2d, 0x82,
+	0x9b, 0xa8, 0x2d, 0x2f, 0xe5, 0x9d, 0x2c, 0xe9, 0x92, 0x71, 0x06, 0x64, 0xfa, 0x1a, 0x2d, 0x48,
+	0xe8, 0x2e, 0xe1, 0xd1, 0x29, 0xa1, 0x53, 0xae, 0xce, 0x49, 0xbc, 0x23, 0x6d, 0xde, 0x8f, 0x74,
+	0xe4, 0x1d, 0x69, 0x69, 0xe8, 0xfc, 0x02, 0x16, 0x42, 0xde, 0xc8, 0x6a, 0x2b, 0x73, 0x63, 0xb9,
+	0xed, 0xe8, 0x75, 0xee, 0x8d, 0x57, 0x68, 0x4b, 0xff, 0x33, 0x80, 0x51, 0xf6, 0x10, 0xa4, 0x5f,
+	0xc0, 0xd2, 0xb7, 0xac, 0xab, 0xaa, 0x7b, 0xc2, 0x7c, 0xdb, 0xb7, 0x76, 0x7d, 0x42, 0x32, 0xc3,
+	0x93, 0xc6, 0x7e, 0x01, 0xd0, 0x38, 0x7c, 0xa1, 0xd7, 0xcd, 0x84, 0xc8, 0x5b, 0xd6, 0x02, 0x99,
+	0x14, 0x29, 0x53, 0x09, 0x9f, 0xf8, 0xd8, 0x08, 0x3c, 0x32, 0x85, 0x05, 0x9a, 0xb9, 0x2e, 0x72,
+	0xb7, 0xe1, 0x78, 0xd2, 0x30, 0x02, 0x1b, 0xbf, 0xa2, 0x3d, 0xe7, 0x19, 0x84, 0x75, 0x23, 0x35,
+	0xb7, 0xb5, 0x26, 0xd2, 0x88, 0xb2, 0x5e, 0xc7, 0x67, 0x77, 0xb2, 0x2b, 0x4b, 0xe8, 0xf2, 0xee,
+	0x8c, 0xdd, 0x40, 0xee, 0x2e, 0xb9, 0xe3, 0x65, 0xeb, 0x08, 0xa4, 0xbf, 0xe4, 0x1d, 0x9a, 0x1e,
+	0x64, 0x11, 0x1a, 0xe4, 0xa5, 0xcc, 0xbf, 0x53, 0xf6, 0x7d, 0xde, 0x68, 0xe9, 0x57, 0x97, 0x19,
+	0x1a, 0xff, 0xac, 0xec, 0xfb, 0xb7, 0xfa, 0x18, 0x13, 0xf3, 0x23, 0x4c, 0xa4, 0x7f, 0x1f, 0xc0,
+	0xf0, 0x4a, 0x7c, 0xc8, 0xd5, 0xfb, 0xa1, 0x32, 0xf8, 0xa1, 0xa1, 0x32, 0x3c, 0x1a, 0x2a, 0x9d,
+	0x8b, 0x3e, 0xd2, 0x51, 0xef, 0xfa, 0x06, 0xbf, 0xd3, 0x17, 0x30, 0xa2, 0x4f, 0x69, 0xfc, 0xc0,
+	0xf4, 0x58, 0xe9, 0x22, 0x23, 0x2f, 0xbe, 0x4e, 0x6d, 0xeb, 0xaa, 0xdb, 0xf9, 0x50, 0x46, 0x8a,
+	0xc0, 0xad, 0xd1, 0x55, 0x14, 0x45, 0x44, 0xa9, 0x9f, 0xea, 0xc8, 0x35, 0xbe, 0x94, 0xe0, 0x4c,
+	0x48, 0x38, 0x07, 0x1c, 0x4d, 0x01, 0xae, 0x8c, 0x9e, 0xa3, 0x29, 0xe0, 0x68, 0x2f, 0x80, 0x93,
+	0xbd, 0x60, 0xff, 0x91, 0xcd, 0x4e, 0x47, 0x7f, 0x3f, 0x14, 0xdc, 0x2a, 0xd8, 0xcf, 0xf7, 0xbf,
+	0x05, 0x34, 0x8a, 0x57, 0xba, 0xd8, 0xef, 0xc0, 0xc1, 0xe1, 0x0e, 0xfc, 0x10, 0x75, 0x75, 0x4b,
+	0xaf, 0x5f, 0xb8, 0xbb, 0xa5, 0x77, 0xd7, 0x1a, 0x4b, 0xd5, 0x0b, 0x33, 0x92, 0xd1, 0xd6, 0x56,
+	0xaa, 0x5b, 0x51, 0x48, 0xc6, 0x5b, 0x1c, 0x13, 0xbb, 0x4a, 0x39, 0xa5, 0x07, 0xc7, 0x74, 0x0f,
+	0x8e, 0xf4, 0xaf, 0x01, 0x3c, 0xba, 0xbc, 0x7e, 0xfd, 0x1e, 0x03, 0xfe, 0x28, 0x8d, 0xe1, 0x85,
+	0x64, 0xbf, 0xc6, 0xb5, 0x0c, 0x1f, 0x88, 0x39, 0x2e, 0x2f, 0x3e, 0x3d, 0x24, 0xb6, 0xeb, 0x52,
+	0xba, 0x60, 0x91, 0xb9, 0x20, 0x8f, 0x8b, 0x41, 0x8f, 0x8b, 0x97, 0x30, 0xe1, 0x5b, 0xab, 0xea,
+	0x8a, 0x32, 0x5f, 0x5e, 0xb0, 0x83, 0x51, 0x7c, 0xbd, 0x22, 0x4f, 0xe6, 0x23, 0xa8, 0xa1, 0xd5,
+	0x4d, 0xed, 0xd1, 0x40, 0x72, 0xfa, 0xdf, 0x00, 0x16, 0x8e, 0x8a, 0x7f, 0x88, 0xe8, 0x7f, 0x74,
+	0x4b, 0x78, 0xe0, 0x7f, 0x0a, 0x4b, 0x60, 0xea, 0x3f, 0xe1, 0x0e, 0x77, 0x5e, 0xc5, 0x61, 0x6f,
+	0xb5, 0x2a, 0x0a, 0xa9, 0xf3, 0x52, 0x55, 0x1d, 0x1d, 0xcd, 0xbc, 0xed, 0x6b, 0x55, 0x49, 0xf6,
+	0x4b, 0x58, 0x0a, 0xa5, 0x25, 0x25, 0xec, 0x82, 0x5c, 0x51, 0x17, 0xbd, 0x95, 0xc2, 0xba, 0x76,
+	0x4d, 0x0f, 0xda, 0xf5, 0x01, 0x9b, 0x85, 0x54, 0xf9, 0x63, 0x36, 0xfb, 0x4b, 0x00, 0x8b, 0x3b,
+	0x25, 0x64, 0x6d, 0x79, 0x23, 0x69, 0xff, 0x7b, 0x06, 0xa1, 0x34, 0x97, 0xdc, 0xf2, 0x75, 0x3f,
+	0x78, 0x3a, 0x1d, 0x7d, 0xdd, 0x53, 0x3f, 0x78, 0xba, 0xdf, 0x8f, 0xd7, 0xa7, 0xfb, 0xd1, 0x53,
+	0x18, 0xab, 0x5d, 0xb1, 0xee, 0xe8, 0xcc, 0x29, 0x18, 0x4d, 0xe4, 0xe5, 0x3e, 0xba, 0x28, 0xf3,
+	0xda, 0xcb, 0x7f, 0x04, 0x30, 0x3f, 0xec, 0x33, 0x9b, 0x43, 0xb8, 0xc9, 0x5d, 0x47, 0xe2, 0x4f,
+	0x58, 0x0c, 0xf3, 0x4e, 0x43, 0x3e, 0x8d, 0x03, 0xf6, 0x14, 0xe2, 0x43, 0x0b, 0x0e, 0xb6, 0x78,
+	0xc0, 0x00, 0x26, 0x9b, 0x9c, 0x22, 0x86, 0x6c, 0x01, 0x91, 0x93, 0xaf, 0xc4, 0x6d, 0x3c, 0x62,
+	0x8f, 0x61, 0xd1, 0xab, 0xc8, 0xe3, 0xf1, 0x98, 0x45, 0x30, 0xde, 0xe4, 0xe8, 0x9d, 0xb0, 0x27,
+	0xf0, 0xa8, 0x3b, 0xce, 0x03, 0x20, 0x9e, 0xb2, 0x25, 0xc0, 0x26, 0xdf, 0xf8, 0x4d, 0x24, 0x0e,
+	0x5d, 0x4e, 0xee, 0x6f, 0x48, 0x1c, 0xb9, 0x9c, 0xde, 0xd6, 0x65, 0xf9, 0xba, 0xae, 0x6e, 0x54,
+	0x11, 0xc3, 0xcb, 0x57, 0x10, 0x76, 0x60, 0xc3, 0x4c, 0xd6, 0x95, 0x91, 0xda, 0xc6, 0x9f, 0xa0,
+	0xfc, 0x2d, 0x7d, 0xe7, 0x71, 0x80, 0xf2, 0xa5, 0x2c, 0xa5, 0x95, 0xf1, 0xe0, 0x7a, 0x42, 0x18,
+	0xfd, 0xf2, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0xed, 0xa0, 0x5b, 0x99, 0x40, 0x0f, 0x00, 0x00,
 }
-
-var (
-	ErrInvalidLengthProtomsg = fmt.Errorf("proto: negative length found during unmarshaling")
-	ErrIntOverflowProtomsg   = fmt.Errorf("proto: integer overflow")
-)
diff --git a/protomsg.proto b/protomsg.proto
index b17f0a9..7246f98 100644
--- a/protomsg.proto
+++ b/protomsg.proto
@@ -214,3 +214,11 @@
     string type = 7;
     int32 defence_state = 8;
 }
+
+message videotapeInfo {
+    string esDataId = 1;
+    string cameraId = 2;
+    string taskId = 3;
+    string imgId = 4;
+    repeated string sdkIds = 5;
+}
\ No newline at end of file
diff --git a/sdk.pb.go b/sdk.pb.go
index 96b9780..7a4a3d8 100644
--- a/sdk.pb.go
+++ b/sdk.pb.go
@@ -1,13 +1,11 @@
-// Code generated by protoc-gen-gogo. DO NOT EDIT.
+// Code generated by protoc-gen-go. DO NOT EDIT.
 // source: sdk.proto
 
 package protomsg
 
 import (
-	encoding_binary "encoding/binary"
 	fmt "fmt"
-	proto "github.com/gogo/protobuf/proto"
-	io "io"
+	proto "github.com/golang/protobuf/proto"
 	math "math"
 )
 
@@ -20,16 +18,19 @@
 // is compatible with the proto package it is being compiled against.
 // A compilation error at this line likely means your copy of the
 // proto package needs to be updated.
-const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
 
 // Image ipc struct
 type Image struct {
-	Width     int32  `protobuf:"varint,1,opt,name=width,proto3" json:"width,omitempty"`
-	Height    int32  `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"`
-	Data      []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
-	Timestamp string `protobuf:"bytes,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
-	Id        int64  `protobuf:"varint,5,opt,name=id,proto3" json:"id,omitempty"`
-	Cid       string `protobuf:"bytes,6,opt,name=cid,proto3" json:"cid,omitempty"`
+	Width                int32    `protobuf:"varint,1,opt,name=width,proto3" json:"width,omitempty"`
+	Height               int32    `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"`
+	Data                 []byte   `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
+	Timestamp            string   `protobuf:"bytes,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
+	Id                   int64    `protobuf:"varint,5,opt,name=id,proto3" json:"id,omitempty"`
+	Cid                  string   `protobuf:"bytes,6,opt,name=cid,proto3" json:"cid,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *Image) Reset()         { *m = Image{} }
@@ -38,26 +39,18 @@
 func (*Image) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{0}
 }
+
 func (m *Image) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Image.Unmarshal(m, b)
 }
 func (m *Image) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Image.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Image.Marshal(b, m, deterministic)
 }
 func (m *Image) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Image.Merge(m, src)
 }
 func (m *Image) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Image.Size(m)
 }
 func (m *Image) XXX_DiscardUnknown() {
 	xxx_messageInfo_Image.DiscardUnknown(m)
@@ -108,10 +101,13 @@
 }
 
 type FaceAngle struct {
-	Yaw        int32   `protobuf:"varint,1,opt,name=yaw,proto3" json:"yaw,omitempty"`
-	Pitch      int32   `protobuf:"varint,2,opt,name=pitch,proto3" json:"pitch,omitempty"`
-	Roll       int32   `protobuf:"varint,3,opt,name=roll,proto3" json:"roll,omitempty"`
-	Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
+	Yaw                  int32    `protobuf:"varint,1,opt,name=yaw,proto3" json:"yaw,omitempty"`
+	Pitch                int32    `protobuf:"varint,2,opt,name=pitch,proto3" json:"pitch,omitempty"`
+	Roll                 int32    `protobuf:"varint,3,opt,name=roll,proto3" json:"roll,omitempty"`
+	Confidence           float32  `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *FaceAngle) Reset()         { *m = FaceAngle{} }
@@ -120,26 +116,18 @@
 func (*FaceAngle) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{1}
 }
+
 func (m *FaceAngle) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_FaceAngle.Unmarshal(m, b)
 }
 func (m *FaceAngle) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_FaceAngle.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_FaceAngle.Marshal(b, m, deterministic)
 }
 func (m *FaceAngle) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_FaceAngle.Merge(m, src)
 }
 func (m *FaceAngle) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_FaceAngle.Size(m)
 }
 func (m *FaceAngle) XXX_DiscardUnknown() {
 	xxx_messageInfo_FaceAngle.DiscardUnknown(m)
@@ -176,11 +164,14 @@
 }
 
 type ThftResult struct {
-	Gender int32 `protobuf:"varint,1,opt,name=gender,proto3" json:"gender,omitempty"`
-	Age    int32 `protobuf:"varint,2,opt,name=age,proto3" json:"age,omitempty"`
-	Race   int32 `protobuf:"varint,3,opt,name=race,proto3" json:"race,omitempty"`
-	Beauty int32 `protobuf:"varint,4,opt,name=beauty,proto3" json:"beauty,omitempty"`
-	Smile  int32 `protobuf:"varint,5,opt,name=smile,proto3" json:"smile,omitempty"`
+	Gender               int32    `protobuf:"varint,1,opt,name=gender,proto3" json:"gender,omitempty"`
+	Age                  int32    `protobuf:"varint,2,opt,name=age,proto3" json:"age,omitempty"`
+	Race                 int32    `protobuf:"varint,3,opt,name=race,proto3" json:"race,omitempty"`
+	Beauty               int32    `protobuf:"varint,4,opt,name=beauty,proto3" json:"beauty,omitempty"`
+	Smile                int32    `protobuf:"varint,5,opt,name=smile,proto3" json:"smile,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *ThftResult) Reset()         { *m = ThftResult{} }
@@ -189,26 +180,18 @@
 func (*ThftResult) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{2}
 }
+
 func (m *ThftResult) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_ThftResult.Unmarshal(m, b)
 }
 func (m *ThftResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_ThftResult.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_ThftResult.Marshal(b, m, deterministic)
 }
 func (m *ThftResult) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_ThftResult.Merge(m, src)
 }
 func (m *ThftResult) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_ThftResult.Size(m)
 }
 func (m *ThftResult) XXX_DiscardUnknown() {
 	xxx_messageInfo_ThftResult.DiscardUnknown(m)
@@ -252,15 +235,18 @@
 }
 
 type FacePos struct {
-	RcFace     *Rect      `protobuf:"bytes,1,opt,name=rcFace,proto3" json:"rcFace,omitempty"`
-	PtLeftEye  *Point     `protobuf:"bytes,2,opt,name=ptLeftEye,proto3" json:"ptLeftEye,omitempty"`
-	PtRightEye *Point     `protobuf:"bytes,3,opt,name=ptRightEye,proto3" json:"ptRightEye,omitempty"`
-	PtMouth    *Point     `protobuf:"bytes,4,opt,name=ptMouth,proto3" json:"ptMouth,omitempty"`
-	PtNose     *Point     `protobuf:"bytes,5,opt,name=ptNose,proto3" json:"ptNose,omitempty"`
-	FAngle     *FaceAngle `protobuf:"bytes,6,opt,name=fAngle,proto3" json:"fAngle,omitempty"`
-	Quality    int32      `protobuf:"varint,7,opt,name=quality,proto3" json:"quality,omitempty"`
-	FacialData []byte     `protobuf:"bytes,8,opt,name=facialData,proto3" json:"facialData,omitempty"`
-	FaceID     uint64     `protobuf:"varint,9,opt,name=faceID,proto3" json:"faceID,omitempty"`
+	RcFace               *Rect      `protobuf:"bytes,1,opt,name=rcFace,proto3" json:"rcFace,omitempty"`
+	PtLeftEye            *Point     `protobuf:"bytes,2,opt,name=ptLeftEye,proto3" json:"ptLeftEye,omitempty"`
+	PtRightEye           *Point     `protobuf:"bytes,3,opt,name=ptRightEye,proto3" json:"ptRightEye,omitempty"`
+	PtMouth              *Point     `protobuf:"bytes,4,opt,name=ptMouth,proto3" json:"ptMouth,omitempty"`
+	PtNose               *Point     `protobuf:"bytes,5,opt,name=ptNose,proto3" json:"ptNose,omitempty"`
+	FAngle               *FaceAngle `protobuf:"bytes,6,opt,name=fAngle,proto3" json:"fAngle,omitempty"`
+	Quality              int32      `protobuf:"varint,7,opt,name=quality,proto3" json:"quality,omitempty"`
+	FacialData           []byte     `protobuf:"bytes,8,opt,name=facialData,proto3" json:"facialData,omitempty"`
+	FaceID               uint64     `protobuf:"varint,9,opt,name=faceID,proto3" json:"faceID,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
+	XXX_unrecognized     []byte     `json:"-"`
+	XXX_sizecache        int32      `json:"-"`
 }
 
 func (m *FacePos) Reset()         { *m = FacePos{} }
@@ -269,26 +255,18 @@
 func (*FacePos) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{3}
 }
+
 func (m *FacePos) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_FacePos.Unmarshal(m, b)
 }
 func (m *FacePos) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_FacePos.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_FacePos.Marshal(b, m, deterministic)
 }
 func (m *FacePos) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_FacePos.Merge(m, src)
 }
 func (m *FacePos) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_FacePos.Size(m)
 }
 func (m *FacePos) XXX_DiscardUnknown() {
 	xxx_messageInfo_FacePos.DiscardUnknown(m)
@@ -360,15 +338,18 @@
 }
 
 type FaceInfo struct {
-	RcFace     *Rect      `protobuf:"bytes,1,opt,name=rcFace,proto3" json:"rcFace,omitempty"`
-	PtLeftEye  *Point     `protobuf:"bytes,2,opt,name=ptLeftEye,proto3" json:"ptLeftEye,omitempty"`
-	PtRightEye *Point     `protobuf:"bytes,3,opt,name=ptRightEye,proto3" json:"ptRightEye,omitempty"`
-	PtMouth    *Point     `protobuf:"bytes,4,opt,name=ptMouth,proto3" json:"ptMouth,omitempty"`
-	PtNose     *Point     `protobuf:"bytes,5,opt,name=ptNose,proto3" json:"ptNose,omitempty"`
-	FAngle     *FaceAngle `protobuf:"bytes,6,opt,name=fAngle,proto3" json:"fAngle,omitempty"`
-	Quality    int32      `protobuf:"varint,7,opt,name=quality,proto3" json:"quality,omitempty"`
-	FacialData []byte     `protobuf:"bytes,8,opt,name=facialData,proto3" json:"facialData,omitempty"`
-	FaceID     int64      `protobuf:"varint,9,opt,name=faceID,proto3" json:"faceID,omitempty"`
+	RcFace               *Rect      `protobuf:"bytes,1,opt,name=rcFace,proto3" json:"rcFace,omitempty"`
+	PtLeftEye            *Point     `protobuf:"bytes,2,opt,name=ptLeftEye,proto3" json:"ptLeftEye,omitempty"`
+	PtRightEye           *Point     `protobuf:"bytes,3,opt,name=ptRightEye,proto3" json:"ptRightEye,omitempty"`
+	PtMouth              *Point     `protobuf:"bytes,4,opt,name=ptMouth,proto3" json:"ptMouth,omitempty"`
+	PtNose               *Point     `protobuf:"bytes,5,opt,name=ptNose,proto3" json:"ptNose,omitempty"`
+	FAngle               *FaceAngle `protobuf:"bytes,6,opt,name=fAngle,proto3" json:"fAngle,omitempty"`
+	Quality              int32      `protobuf:"varint,7,opt,name=quality,proto3" json:"quality,omitempty"`
+	FacialData           []byte     `protobuf:"bytes,8,opt,name=facialData,proto3" json:"facialData,omitempty"`
+	FaceID               int64      `protobuf:"varint,9,opt,name=faceID,proto3" json:"faceID,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
+	XXX_unrecognized     []byte     `json:"-"`
+	XXX_sizecache        int32      `json:"-"`
 }
 
 func (m *FaceInfo) Reset()         { *m = FaceInfo{} }
@@ -377,26 +358,18 @@
 func (*FaceInfo) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{4}
 }
+
 func (m *FaceInfo) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_FaceInfo.Unmarshal(m, b)
 }
 func (m *FaceInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_FaceInfo.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_FaceInfo.Marshal(b, m, deterministic)
 }
 func (m *FaceInfo) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_FaceInfo.Merge(m, src)
 }
 func (m *FaceInfo) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_FaceInfo.Size(m)
 }
 func (m *FaceInfo) XXX_DiscardUnknown() {
 	xxx_messageInfo_FaceInfo.DiscardUnknown(m)
@@ -468,10 +441,13 @@
 }
 
 type ObjInfo struct {
-	RcObj *Rect   `protobuf:"bytes,1,opt,name=rcObj,proto3" json:"rcObj,omitempty"`
-	Typ   int32   `protobuf:"varint,2,opt,name=typ,proto3" json:"typ,omitempty"`
-	Prob  float32 `protobuf:"fixed32,3,opt,name=prob,proto3" json:"prob,omitempty"`
-	ObjID uint64  `protobuf:"varint,4,opt,name=objID,proto3" json:"objID,omitempty"`
+	RcObj                *Rect    `protobuf:"bytes,1,opt,name=rcObj,proto3" json:"rcObj,omitempty"`
+	Typ                  int32    `protobuf:"varint,2,opt,name=typ,proto3" json:"typ,omitempty"`
+	Prob                 float32  `protobuf:"fixed32,3,opt,name=prob,proto3" json:"prob,omitempty"`
+	ObjID                uint64   `protobuf:"varint,4,opt,name=objID,proto3" json:"objID,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *ObjInfo) Reset()         { *m = ObjInfo{} }
@@ -480,26 +456,18 @@
 func (*ObjInfo) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{5}
 }
+
 func (m *ObjInfo) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_ObjInfo.Unmarshal(m, b)
 }
 func (m *ObjInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_ObjInfo.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_ObjInfo.Marshal(b, m, deterministic)
 }
 func (m *ObjInfo) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_ObjInfo.Merge(m, src)
 }
 func (m *ObjInfo) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_ObjInfo.Size(m)
 }
 func (m *ObjInfo) XXX_DiscardUnknown() {
 	xxx_messageInfo_ObjInfo.DiscardUnknown(m)
@@ -537,9 +505,12 @@
 
 // sdk face property
 type ResultFaceDetect struct {
-	Pos    *FacePos    `protobuf:"bytes,1,opt,name=pos,proto3" json:"pos,omitempty"`
-	Result *ThftResult `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"`
-	Feats  []byte      `protobuf:"bytes,3,opt,name=feats,proto3" json:"feats,omitempty"`
+	Pos                  *FacePos    `protobuf:"bytes,1,opt,name=pos,proto3" json:"pos,omitempty"`
+	Result               *ThftResult `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"`
+	Feats                []byte      `protobuf:"bytes,3,opt,name=feats,proto3" json:"feats,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
+	XXX_unrecognized     []byte      `json:"-"`
+	XXX_sizecache        int32       `json:"-"`
 }
 
 func (m *ResultFaceDetect) Reset()         { *m = ResultFaceDetect{} }
@@ -548,26 +519,18 @@
 func (*ResultFaceDetect) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{6}
 }
+
 func (m *ResultFaceDetect) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_ResultFaceDetect.Unmarshal(m, b)
 }
 func (m *ResultFaceDetect) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_ResultFaceDetect.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_ResultFaceDetect.Marshal(b, m, deterministic)
 }
 func (m *ResultFaceDetect) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_ResultFaceDetect.Merge(m, src)
 }
 func (m *ResultFaceDetect) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_ResultFaceDetect.Size(m)
 }
 func (m *ResultFaceDetect) XXX_DiscardUnknown() {
 	xxx_messageInfo_ResultFaceDetect.DiscardUnknown(m)
@@ -597,7 +560,10 @@
 }
 
 type ParamFacePos struct {
-	Faces []*ResultFaceDetect `protobuf:"bytes,1,rep,name=faces,proto3" json:"faces,omitempty"`
+	Faces                []*ResultFaceDetect `protobuf:"bytes,1,rep,name=faces,proto3" json:"faces,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
+	XXX_unrecognized     []byte              `json:"-"`
+	XXX_sizecache        int32               `json:"-"`
 }
 
 func (m *ParamFacePos) Reset()         { *m = ParamFacePos{} }
@@ -606,26 +572,18 @@
 func (*ParamFacePos) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{7}
 }
+
 func (m *ParamFacePos) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_ParamFacePos.Unmarshal(m, b)
 }
 func (m *ParamFacePos) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_ParamFacePos.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_ParamFacePos.Marshal(b, m, deterministic)
 }
 func (m *ParamFacePos) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_ParamFacePos.Merge(m, src)
 }
 func (m *ParamFacePos) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_ParamFacePos.Size(m)
 }
 func (m *ParamFacePos) XXX_DiscardUnknown() {
 	xxx_messageInfo_ParamFacePos.DiscardUnknown(m)
@@ -641,9 +599,12 @@
 }
 
 type ResultFaceExtCom struct {
-	Feats []byte            `protobuf:"bytes,1,opt,name=feats,proto3" json:"feats,omitempty"`
-	Comp  []byte            `protobuf:"bytes,2,opt,name=comp,proto3" json:"comp,omitempty"`
-	Pos   *ResultFaceDetect `protobuf:"bytes,3,opt,name=pos,proto3" json:"pos,omitempty"`
+	Feats                []byte            `protobuf:"bytes,1,opt,name=feats,proto3" json:"feats,omitempty"`
+	Comp                 []byte            `protobuf:"bytes,2,opt,name=comp,proto3" json:"comp,omitempty"`
+	Pos                  *ResultFaceDetect `protobuf:"bytes,3,opt,name=pos,proto3" json:"pos,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
+	XXX_unrecognized     []byte            `json:"-"`
+	XXX_sizecache        int32             `json:"-"`
 }
 
 func (m *ResultFaceExtCom) Reset()         { *m = ResultFaceExtCom{} }
@@ -652,26 +613,18 @@
 func (*ResultFaceExtCom) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{8}
 }
+
 func (m *ResultFaceExtCom) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_ResultFaceExtCom.Unmarshal(m, b)
 }
 func (m *ResultFaceExtCom) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_ResultFaceExtCom.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_ResultFaceExtCom.Marshal(b, m, deterministic)
 }
 func (m *ResultFaceExtCom) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_ResultFaceExtCom.Merge(m, src)
 }
 func (m *ResultFaceExtCom) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_ResultFaceExtCom.Size(m)
 }
 func (m *ResultFaceExtCom) XXX_DiscardUnknown() {
 	xxx_messageInfo_ResultFaceExtCom.DiscardUnknown(m)
@@ -701,7 +654,10 @@
 }
 
 type ParamFaceFeature struct {
-	ExtComp []*ResultFaceExtCom `protobuf:"bytes,2,rep,name=extComp,proto3" json:"extComp,omitempty"`
+	ExtComp              []*ResultFaceExtCom `protobuf:"bytes,2,rep,name=extComp,proto3" json:"extComp,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
+	XXX_unrecognized     []byte              `json:"-"`
+	XXX_sizecache        int32               `json:"-"`
 }
 
 func (m *ParamFaceFeature) Reset()         { *m = ParamFaceFeature{} }
@@ -710,26 +666,18 @@
 func (*ParamFaceFeature) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{9}
 }
+
 func (m *ParamFaceFeature) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_ParamFaceFeature.Unmarshal(m, b)
 }
 func (m *ParamFaceFeature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_ParamFaceFeature.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_ParamFaceFeature.Marshal(b, m, deterministic)
 }
 func (m *ParamFaceFeature) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_ParamFaceFeature.Merge(m, src)
 }
 func (m *ParamFaceFeature) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_ParamFaceFeature.Size(m)
 }
 func (m *ParamFaceFeature) XXX_DiscardUnknown() {
 	xxx_messageInfo_ParamFaceFeature.DiscardUnknown(m)
@@ -746,7 +694,10 @@
 
 // sdk yolo detect
 type ParamYoloObj struct {
-	Infos []*ObjInfo `protobuf:"bytes,1,rep,name=infos,proto3" json:"infos,omitempty"`
+	Infos                []*ObjInfo `protobuf:"bytes,1,rep,name=infos,proto3" json:"infos,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
+	XXX_unrecognized     []byte     `json:"-"`
+	XXX_sizecache        int32      `json:"-"`
 }
 
 func (m *ParamYoloObj) Reset()         { *m = ParamYoloObj{} }
@@ -755,26 +706,18 @@
 func (*ParamYoloObj) Descriptor() ([]byte, []int) {
 	return fileDescriptor_70decb0fb6f436df, []int{10}
 }
+
 func (m *ParamYoloObj) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_ParamYoloObj.Unmarshal(m, b)
 }
 func (m *ParamYoloObj) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_ParamYoloObj.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_ParamYoloObj.Marshal(b, m, deterministic)
 }
 func (m *ParamYoloObj) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_ParamYoloObj.Merge(m, src)
 }
 func (m *ParamYoloObj) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_ParamYoloObj.Size(m)
 }
 func (m *ParamYoloObj) XXX_DiscardUnknown() {
 	xxx_messageInfo_ParamYoloObj.DiscardUnknown(m)
@@ -806,2865 +749,47 @@
 func init() { proto.RegisterFile("sdk.proto", fileDescriptor_70decb0fb6f436df) }
 
 var fileDescriptor_70decb0fb6f436df = []byte{
-	// 704 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0xcf, 0x6f, 0xd3, 0x4a,
-	0x10, 0xae, 0x93, 0x38, 0x69, 0x26, 0x55, 0x5f, 0xdf, 0xbe, 0xea, 0xc9, 0xaa, 0x9e, 0xa2, 0xc8,
-	0x0f, 0xd1, 0x20, 0x4a, 0x41, 0x01, 0x89, 0x2b, 0x3f, 0xd2, 0x8a, 0x48, 0x40, 0xa3, 0x15, 0x17,
-	0x8e, 0x9b, 0xf5, 0x3a, 0x71, 0x6a, 0x67, 0x8d, 0xbd, 0x51, 0x1b, 0xf1, 0x17, 0x70, 0xe3, 0xcf,
-	0xe2, 0xd8, 0x23, 0x47, 0xd4, 0xc2, 0xff, 0x81, 0x66, 0x77, 0x1d, 0xbb, 0x52, 0xcb, 0x89, 0x23,
-	0xa7, 0xcc, 0xec, 0x7c, 0x9b, 0xef, 0x9b, 0x6f, 0x76, 0x0c, 0xed, 0x3c, 0x38, 0x3d, 0x4c, 0x33,
-	0xa9, 0x24, 0xd9, 0xd4, 0x3f, 0x49, 0x3e, 0xdd, 0x83, 0x09, 0xcb, 0x85, 0x39, 0xf5, 0x3f, 0x39,
-	0xe0, 0x8e, 0x12, 0x36, 0x15, 0x64, 0x17, 0xdc, 0xb3, 0x28, 0x50, 0x33, 0xcf, 0xe9, 0x39, 0x7d,
-	0x97, 0x9a, 0x84, 0xfc, 0x0b, 0xcd, 0x99, 0x88, 0xa6, 0x33, 0xe5, 0xd5, 0xf4, 0xb1, 0xcd, 0x08,
-	0x81, 0x46, 0xc0, 0x14, 0xf3, 0xea, 0x3d, 0xa7, 0xbf, 0x45, 0x75, 0x4c, 0xfe, 0x83, 0xb6, 0x8a,
-	0x12, 0x91, 0x2b, 0x96, 0xa4, 0x5e, 0xa3, 0xe7, 0xf4, 0xdb, 0xb4, 0x3c, 0x20, 0xdb, 0x50, 0x8b,
-	0x02, 0xcf, 0xed, 0x39, 0xfd, 0x3a, 0xad, 0x45, 0x01, 0xd9, 0x81, 0x3a, 0x8f, 0x02, 0xaf, 0xa9,
-	0x71, 0x18, 0xfa, 0x53, 0x68, 0x1f, 0x33, 0x2e, 0x9e, 0x2f, 0xa6, 0xb1, 0xc0, 0xf2, 0x8a, 0x9d,
-	0x59, 0x31, 0x18, 0xa2, 0xc0, 0x34, 0x52, 0x7c, 0x66, 0x95, 0x98, 0x04, 0x85, 0x64, 0x32, 0x8e,
-	0xb5, 0x10, 0x97, 0xea, 0x98, 0x74, 0x01, 0xb8, 0x5c, 0x84, 0x51, 0x20, 0x16, 0x5c, 0x68, 0x25,
-	0x35, 0x5a, 0x39, 0xf1, 0xcf, 0x01, 0xde, 0xcd, 0x42, 0x45, 0x45, 0xbe, 0x8c, 0x15, 0xb6, 0x38,
-	0x15, 0x8b, 0x40, 0x64, 0x96, 0xcc, 0x66, 0xa8, 0x80, 0x4d, 0x85, 0x65, 0xc3, 0x50, 0x73, 0x31,
-	0x2e, 0xd6, 0x5c, 0x8c, 0x0b, 0xbc, 0x3d, 0x11, 0x6c, 0xa9, 0x56, 0x9a, 0xc7, 0xa5, 0x36, 0x43,
-	0xb5, 0x79, 0x12, 0xc5, 0x42, 0x77, 0xec, 0x52, 0x93, 0xf8, 0xdf, 0x6b, 0xd0, 0xc2, 0x1e, 0xc7,
-	0x32, 0x27, 0x77, 0xa1, 0x99, 0x71, 0x4c, 0x34, 0x6f, 0x67, 0xb0, 0x7d, 0x58, 0x4c, 0xe8, 0x90,
-	0x0a, 0xae, 0xa8, 0xad, 0x92, 0x07, 0xd0, 0x4e, 0xd5, 0x6b, 0x11, 0xaa, 0xa3, 0x95, 0x51, 0xd3,
-	0x19, 0xfc, 0x55, 0x42, 0xc7, 0x32, 0x5a, 0x28, 0x5a, 0x22, 0xc8, 0x43, 0x80, 0x54, 0x51, 0x1c,
-	0x12, 0xe2, 0xeb, 0x37, 0xe3, 0x2b, 0x10, 0x72, 0x0f, 0x5a, 0xa9, 0x7a, 0x23, 0x97, 0x6a, 0xa6,
-	0x5b, 0xb8, 0x01, 0x5d, 0xd4, 0xc9, 0x3e, 0x34, 0x53, 0xf5, 0x56, 0xe6, 0xa6, 0xab, 0x1b, 0x90,
-	0xb6, 0x4c, 0xee, 0x43, 0x33, 0xd4, 0x73, 0xd4, 0xf3, 0xed, 0x0c, 0xfe, 0x29, 0x81, 0xeb, 0x11,
-	0x53, 0x0b, 0x21, 0x1e, 0xb4, 0x3e, 0x2c, 0x59, 0x1c, 0xa9, 0x95, 0xd7, 0xd2, 0x66, 0x15, 0x29,
-	0x0e, 0x32, 0x64, 0x3c, 0x62, 0xf1, 0x10, 0xdf, 0xda, 0xa6, 0x7e, 0x6b, 0x95, 0x13, 0x34, 0x3f,
-	0x64, 0x5c, 0x8c, 0x86, 0x5e, 0xbb, 0xe7, 0xf4, 0x1b, 0xd4, 0x66, 0xfe, 0x8f, 0x1a, 0x6c, 0x22,
-	0xcf, 0x68, 0x11, 0xca, 0x3f, 0x3e, 0xff, 0x6e, 0x9f, 0xeb, 0x6b, 0x9f, 0x4f, 0xa1, 0x75, 0x32,
-	0x99, 0x6b, 0x97, 0xef, 0x80, 0x9b, 0xf1, 0x93, 0xc9, 0xfc, 0x16, 0x93, 0x4d, 0x11, 0x77, 0x4a,
-	0xad, 0xd2, 0x62, 0xa7, 0xd4, 0x2a, 0xc5, 0x9d, 0x4a, 0x33, 0x39, 0xd1, 0x06, 0xd6, 0xa8, 0x8e,
-	0x71, 0x77, 0xe4, 0x64, 0x3e, 0x1a, 0x6a, 0x9f, 0x1a, 0xd4, 0x24, 0xfe, 0x47, 0xd8, 0x31, 0x1b,
-	0x8b, 0x9d, 0x0d, 0x85, 0x12, 0x5c, 0x91, 0xff, 0xa1, 0x9e, 0xca, 0xdc, 0x72, 0xfe, 0x7d, 0xbd,
-	0xf9, 0xb1, 0xcc, 0x29, 0x56, 0xc9, 0x01, 0x34, 0x33, 0x7d, 0xd1, 0x4e, 0x75, 0xb7, 0xc4, 0x95,
-	0x9f, 0x01, 0x6a, 0x31, 0x48, 0x1e, 0x0a, 0xa6, 0x72, 0xfb, 0x69, 0x33, 0x89, 0xff, 0x0c, 0xb6,
-	0xc6, 0x2c, 0x63, 0x49, 0xb1, 0xbc, 0x8f, 0xc0, 0x45, 0x0f, 0x90, 0xba, 0xde, 0xef, 0x0c, 0xf6,
-	0xaa, 0xed, 0x5e, 0xd7, 0x48, 0x0d, 0xd0, 0x9f, 0x57, 0xe5, 0x1f, 0x9d, 0xab, 0x97, 0x32, 0x29,
-	0xb9, 0x9c, 0x0a, 0x17, 0x5a, 0xc2, 0x65, 0x62, 0x5c, 0xda, 0xa2, 0x3a, 0x26, 0x07, 0xa6, 0x51,
-	0xf3, 0xcc, 0x7e, 0xc5, 0x86, 0x30, 0xff, 0x15, 0xec, 0xac, 0xd5, 0x1e, 0x0b, 0xa6, 0x96, 0x99,
-	0x20, 0x4f, 0xa0, 0x25, 0x34, 0x2b, 0xfe, 0xf1, 0xad, 0x9a, 0x8d, 0x30, 0x5a, 0x40, 0xfd, 0xa7,
-	0xb6, 0xef, 0xf7, 0x32, 0x96, 0x38, 0xc0, 0x7d, 0x70, 0xa3, 0x45, 0x28, 0x8b, 0xbe, 0x2b, 0x96,
-	0xdb, 0x87, 0x40, 0x4d, 0xfd, 0x85, 0xf7, 0xe5, 0xb2, 0xeb, 0x5c, 0x5c, 0x76, 0x9d, 0x6f, 0x97,
-	0x5d, 0xe7, 0xf3, 0x55, 0x77, 0xe3, 0xe2, 0xaa, 0xbb, 0xf1, 0xf5, 0xaa, 0xbb, 0x31, 0x69, 0xea,
-	0x2b, 0x8f, 0x7f, 0x06, 0x00, 0x00, 0xff, 0xff, 0xb6, 0x6a, 0xf8, 0x9f, 0x9c, 0x06, 0x00, 0x00,
+	// 669 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0xd1, 0x6e, 0xd3, 0x4a,
+	0x10, 0x95, 0x93, 0xd8, 0x69, 0x26, 0x55, 0x6f, 0xef, 0xde, 0xea, 0xca, 0xaa, 0xae, 0xae, 0x22,
+	0x83, 0x68, 0x10, 0xa5, 0xa0, 0x80, 0xc4, 0x2b, 0x88, 0xb4, 0x22, 0x12, 0xd0, 0x68, 0xc5, 0x0b,
+	0x8f, 0xeb, 0xf5, 0xda, 0x71, 0x6a, 0x7b, 0x8d, 0xbd, 0x51, 0x1b, 0xf1, 0x05, 0xfc, 0x27, 0xfc,
+	0x07, 0x9a, 0xdd, 0x75, 0xec, 0x4a, 0x2d, 0x4f, 0x3c, 0xf2, 0x94, 0x99, 0x9d, 0xe3, 0x9c, 0x33,
+	0x67, 0x76, 0x16, 0x46, 0x75, 0x74, 0x75, 0x56, 0x56, 0x52, 0x49, 0xb2, 0xa7, 0x7f, 0xf2, 0x3a,
+	0x39, 0x86, 0x90, 0xd5, 0xc2, 0x9c, 0x06, 0xdf, 0x1c, 0x70, 0x17, 0x39, 0x4b, 0x04, 0x39, 0x02,
+	0xf7, 0x3a, 0x8d, 0xd4, 0xca, 0x77, 0x26, 0xce, 0xd4, 0xa5, 0x26, 0x21, 0xff, 0x82, 0xb7, 0x12,
+	0x69, 0xb2, 0x52, 0x7e, 0x4f, 0x1f, 0xdb, 0x8c, 0x10, 0x18, 0x44, 0x4c, 0x31, 0xbf, 0x3f, 0x71,
+	0xa6, 0xfb, 0x54, 0xc7, 0xe4, 0x3f, 0x18, 0xa9, 0x34, 0x17, 0xb5, 0x62, 0x79, 0xe9, 0x0f, 0x26,
+	0xce, 0x74, 0x44, 0xdb, 0x03, 0x72, 0x00, 0xbd, 0x34, 0xf2, 0xdd, 0x89, 0x33, 0xed, 0xd3, 0x5e,
+	0x1a, 0x91, 0x43, 0xe8, 0xf3, 0x34, 0xf2, 0x3d, 0x8d, 0xc3, 0x30, 0x48, 0x60, 0x74, 0xc1, 0xb8,
+	0x78, 0x53, 0x24, 0x99, 0xc0, 0xf2, 0x96, 0x5d, 0x5b, 0x31, 0x18, 0xa2, 0xc0, 0x32, 0x55, 0x7c,
+	0x65, 0x95, 0x98, 0x04, 0x85, 0x54, 0x32, 0xcb, 0xb4, 0x10, 0x97, 0xea, 0x98, 0xfc, 0x0f, 0xc0,
+	0x65, 0x11, 0xa7, 0x91, 0x28, 0xb8, 0xd0, 0x4a, 0x7a, 0xb4, 0x73, 0x12, 0xdc, 0x00, 0x7c, 0x5a,
+	0xc5, 0x8a, 0x8a, 0x7a, 0x93, 0x29, 0x6c, 0x31, 0x11, 0x45, 0x24, 0x2a, 0x4b, 0x66, 0x33, 0x54,
+	0xc0, 0x12, 0x61, 0xd9, 0x30, 0xd4, 0x5c, 0x8c, 0x8b, 0x1d, 0x17, 0xe3, 0x02, 0xbf, 0x0e, 0x05,
+	0xdb, 0xa8, 0xad, 0xe6, 0x71, 0xa9, 0xcd, 0x50, 0x6d, 0x9d, 0xa7, 0x99, 0xd0, 0x1d, 0xbb, 0xd4,
+	0x24, 0xc1, 0xf7, 0x1e, 0x0c, 0xb1, 0xc7, 0xa5, 0xac, 0xc9, 0x23, 0xf0, 0x2a, 0x8e, 0x89, 0xe6,
+	0x1d, 0xcf, 0x0e, 0xce, 0x9a, 0x09, 0x9d, 0x51, 0xc1, 0x15, 0xb5, 0x55, 0xf2, 0x14, 0x46, 0xa5,
+	0x7a, 0x2f, 0x62, 0x75, 0xbe, 0x35, 0x6a, 0xc6, 0xb3, 0xbf, 0x5a, 0xe8, 0x52, 0xa6, 0x85, 0xa2,
+	0x2d, 0x82, 0x3c, 0x03, 0x28, 0x15, 0xc5, 0x21, 0x21, 0xbe, 0x7f, 0x37, 0xbe, 0x03, 0x21, 0x8f,
+	0x61, 0x58, 0xaa, 0x0f, 0x72, 0xa3, 0x56, 0xba, 0x85, 0x3b, 0xd0, 0x4d, 0x9d, 0x9c, 0x80, 0x57,
+	0xaa, 0x8f, 0xb2, 0x36, 0x5d, 0xdd, 0x81, 0xb4, 0x65, 0xf2, 0x04, 0xbc, 0x58, 0xcf, 0x51, 0xcf,
+	0x77, 0x3c, 0xfb, 0xa7, 0x05, 0xee, 0x46, 0x4c, 0x2d, 0x84, 0xf8, 0x30, 0xfc, 0xb2, 0x61, 0x59,
+	0xaa, 0xb6, 0xfe, 0x50, 0x9b, 0xd5, 0xa4, 0x38, 0xc8, 0x98, 0xf1, 0x94, 0x65, 0x73, 0xbc, 0x6b,
+	0x7b, 0xfa, 0xae, 0x75, 0x4e, 0xd0, 0xfc, 0x98, 0x71, 0xb1, 0x98, 0xfb, 0xa3, 0x89, 0x33, 0x1d,
+	0x50, 0x9b, 0x05, 0x3f, 0x7a, 0xb0, 0x87, 0x3c, 0x8b, 0x22, 0x96, 0x7f, 0x7c, 0xfe, 0xdd, 0x3e,
+	0xf7, 0x77, 0x3e, 0x5f, 0xc1, 0xf0, 0x32, 0x5c, 0x6b, 0x97, 0x1f, 0x82, 0x5b, 0xf1, 0xcb, 0x70,
+	0x7d, 0x8f, 0xc9, 0xa6, 0x88, 0x3b, 0xa5, 0xb6, 0x65, 0xb3, 0x53, 0x6a, 0x5b, 0xe2, 0x4e, 0x95,
+	0x95, 0x0c, 0xb5, 0x81, 0x3d, 0xaa, 0x63, 0xdc, 0x1d, 0x19, 0xae, 0x17, 0x73, 0xed, 0xd3, 0x80,
+	0x9a, 0x24, 0xf8, 0x0a, 0x87, 0x66, 0x63, 0xb1, 0xb3, 0xb9, 0x50, 0x82, 0x2b, 0xf2, 0x00, 0xfa,
+	0xa5, 0xac, 0x2d, 0xe7, 0xdf, 0xb7, 0x9b, 0x5f, 0xca, 0x9a, 0x62, 0x95, 0x9c, 0x82, 0x57, 0xe9,
+	0x0f, 0xed, 0x54, 0x8f, 0x5a, 0x5c, 0xfb, 0x0c, 0x50, 0x8b, 0x41, 0xf2, 0x58, 0x30, 0x55, 0xdb,
+	0xa7, 0xcd, 0x24, 0xc1, 0x6b, 0xd8, 0x5f, 0xb2, 0x8a, 0xe5, 0xcd, 0xf2, 0x3e, 0x07, 0x17, 0x3d,
+	0x40, 0xea, 0xfe, 0x74, 0x3c, 0x3b, 0xee, 0xb6, 0x7b, 0x5b, 0x23, 0x35, 0xc0, 0x60, 0xdd, 0x95,
+	0x7f, 0x7e, 0xa3, 0xde, 0xca, 0xbc, 0xe5, 0x72, 0x3a, 0x5c, 0x68, 0x09, 0x97, 0xb9, 0x71, 0x69,
+	0x9f, 0xea, 0x98, 0x9c, 0x9a, 0x46, 0xcd, 0x35, 0xfb, 0x15, 0x1b, 0xc2, 0x82, 0x77, 0x70, 0xb8,
+	0x53, 0x7b, 0x21, 0x98, 0xda, 0x54, 0x82, 0xbc, 0x84, 0xa1, 0xd0, 0xac, 0xf8, 0xc7, 0xf7, 0x6a,
+	0x36, 0xc2, 0x68, 0x03, 0x0d, 0x5e, 0xd9, 0xbe, 0x3f, 0xcb, 0x4c, 0xe2, 0x00, 0x4f, 0xc0, 0x4d,
+	0x8b, 0x58, 0x36, 0x7d, 0x77, 0x2c, 0xb7, 0x17, 0x81, 0x9a, 0x7a, 0xe8, 0xe9, 0xc2, 0x8b, 0x9f,
+	0x01, 0x00, 0x00, 0xff, 0xff, 0x71, 0xcf, 0xd4, 0xbd, 0x82, 0x06, 0x00, 0x00,
 }
-
-func (m *Image) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Image) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Width != 0 {
-		dAtA[i] = 0x8
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Width))
-	}
-	if m.Height != 0 {
-		dAtA[i] = 0x10
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Height))
-	}
-	if len(m.Data) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(len(m.Data)))
-		i += copy(dAtA[i:], m.Data)
-	}
-	if len(m.Timestamp) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(len(m.Timestamp)))
-		i += copy(dAtA[i:], m.Timestamp)
-	}
-	if m.Id != 0 {
-		dAtA[i] = 0x28
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Id))
-	}
-	if len(m.Cid) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(len(m.Cid)))
-		i += copy(dAtA[i:], m.Cid)
-	}
-	return i, nil
-}
-
-func (m *FaceAngle) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *FaceAngle) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Yaw != 0 {
-		dAtA[i] = 0x8
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Yaw))
-	}
-	if m.Pitch != 0 {
-		dAtA[i] = 0x10
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Pitch))
-	}
-	if m.Roll != 0 {
-		dAtA[i] = 0x18
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Roll))
-	}
-	if m.Confidence != 0 {
-		dAtA[i] = 0x25
-		i++
-		encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Confidence))))
-		i += 4
-	}
-	return i, nil
-}
-
-func (m *ThftResult) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *ThftResult) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Gender != 0 {
-		dAtA[i] = 0x8
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Gender))
-	}
-	if m.Age != 0 {
-		dAtA[i] = 0x10
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Age))
-	}
-	if m.Race != 0 {
-		dAtA[i] = 0x18
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Race))
-	}
-	if m.Beauty != 0 {
-		dAtA[i] = 0x20
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Beauty))
-	}
-	if m.Smile != 0 {
-		dAtA[i] = 0x28
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Smile))
-	}
-	return i, nil
-}
-
-func (m *FacePos) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *FacePos) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.RcFace != nil {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.RcFace.Size()))
-		n1, err1 := m.RcFace.MarshalTo(dAtA[i:])
-		if err1 != nil {
-			return 0, err1
-		}
-		i += n1
-	}
-	if m.PtLeftEye != nil {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.PtLeftEye.Size()))
-		n2, err2 := m.PtLeftEye.MarshalTo(dAtA[i:])
-		if err2 != nil {
-			return 0, err2
-		}
-		i += n2
-	}
-	if m.PtRightEye != nil {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.PtRightEye.Size()))
-		n3, err3 := m.PtRightEye.MarshalTo(dAtA[i:])
-		if err3 != nil {
-			return 0, err3
-		}
-		i += n3
-	}
-	if m.PtMouth != nil {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.PtMouth.Size()))
-		n4, err4 := m.PtMouth.MarshalTo(dAtA[i:])
-		if err4 != nil {
-			return 0, err4
-		}
-		i += n4
-	}
-	if m.PtNose != nil {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.PtNose.Size()))
-		n5, err5 := m.PtNose.MarshalTo(dAtA[i:])
-		if err5 != nil {
-			return 0, err5
-		}
-		i += n5
-	}
-	if m.FAngle != nil {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.FAngle.Size()))
-		n6, err6 := m.FAngle.MarshalTo(dAtA[i:])
-		if err6 != nil {
-			return 0, err6
-		}
-		i += n6
-	}
-	if m.Quality != 0 {
-		dAtA[i] = 0x38
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Quality))
-	}
-	if len(m.FacialData) > 0 {
-		dAtA[i] = 0x42
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(len(m.FacialData)))
-		i += copy(dAtA[i:], m.FacialData)
-	}
-	if m.FaceID != 0 {
-		dAtA[i] = 0x48
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.FaceID))
-	}
-	return i, nil
-}
-
-func (m *FaceInfo) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *FaceInfo) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.RcFace != nil {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.RcFace.Size()))
-		n7, err7 := m.RcFace.MarshalTo(dAtA[i:])
-		if err7 != nil {
-			return 0, err7
-		}
-		i += n7
-	}
-	if m.PtLeftEye != nil {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.PtLeftEye.Size()))
-		n8, err8 := m.PtLeftEye.MarshalTo(dAtA[i:])
-		if err8 != nil {
-			return 0, err8
-		}
-		i += n8
-	}
-	if m.PtRightEye != nil {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.PtRightEye.Size()))
-		n9, err9 := m.PtRightEye.MarshalTo(dAtA[i:])
-		if err9 != nil {
-			return 0, err9
-		}
-		i += n9
-	}
-	if m.PtMouth != nil {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.PtMouth.Size()))
-		n10, err10 := m.PtMouth.MarshalTo(dAtA[i:])
-		if err10 != nil {
-			return 0, err10
-		}
-		i += n10
-	}
-	if m.PtNose != nil {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.PtNose.Size()))
-		n11, err11 := m.PtNose.MarshalTo(dAtA[i:])
-		if err11 != nil {
-			return 0, err11
-		}
-		i += n11
-	}
-	if m.FAngle != nil {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.FAngle.Size()))
-		n12, err12 := m.FAngle.MarshalTo(dAtA[i:])
-		if err12 != nil {
-			return 0, err12
-		}
-		i += n12
-	}
-	if m.Quality != 0 {
-		dAtA[i] = 0x38
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Quality))
-	}
-	if len(m.FacialData) > 0 {
-		dAtA[i] = 0x42
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(len(m.FacialData)))
-		i += copy(dAtA[i:], m.FacialData)
-	}
-	if m.FaceID != 0 {
-		dAtA[i] = 0x48
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.FaceID))
-	}
-	return i, nil
-}
-
-func (m *ObjInfo) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *ObjInfo) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.RcObj != nil {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.RcObj.Size()))
-		n13, err13 := m.RcObj.MarshalTo(dAtA[i:])
-		if err13 != nil {
-			return 0, err13
-		}
-		i += n13
-	}
-	if m.Typ != 0 {
-		dAtA[i] = 0x10
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Typ))
-	}
-	if m.Prob != 0 {
-		dAtA[i] = 0x1d
-		i++
-		encoding_binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Prob))))
-		i += 4
-	}
-	if m.ObjID != 0 {
-		dAtA[i] = 0x20
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.ObjID))
-	}
-	return i, nil
-}
-
-func (m *ResultFaceDetect) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *ResultFaceDetect) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if m.Pos != nil {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Pos.Size()))
-		n14, err14 := m.Pos.MarshalTo(dAtA[i:])
-		if err14 != nil {
-			return 0, err14
-		}
-		i += n14
-	}
-	if m.Result != nil {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Result.Size()))
-		n15, err15 := m.Result.MarshalTo(dAtA[i:])
-		if err15 != nil {
-			return 0, err15
-		}
-		i += n15
-	}
-	if len(m.Feats) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(len(m.Feats)))
-		i += copy(dAtA[i:], m.Feats)
-	}
-	return i, nil
-}
-
-func (m *ParamFacePos) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *ParamFacePos) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Faces) > 0 {
-		for _, msg := range m.Faces {
-			dAtA[i] = 0xa
-			i++
-			i = encodeVarintSdk(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func (m *ResultFaceExtCom) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *ResultFaceExtCom) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Feats) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(len(m.Feats)))
-		i += copy(dAtA[i:], m.Feats)
-	}
-	if len(m.Comp) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(len(m.Comp)))
-		i += copy(dAtA[i:], m.Comp)
-	}
-	if m.Pos != nil {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintSdk(dAtA, i, uint64(m.Pos.Size()))
-		n16, err16 := m.Pos.MarshalTo(dAtA[i:])
-		if err16 != nil {
-			return 0, err16
-		}
-		i += n16
-	}
-	return i, nil
-}
-
-func (m *ParamFaceFeature) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *ParamFaceFeature) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.ExtComp) > 0 {
-		for _, msg := range m.ExtComp {
-			dAtA[i] = 0x12
-			i++
-			i = encodeVarintSdk(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func (m *ParamYoloObj) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *ParamYoloObj) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Infos) > 0 {
-		for _, msg := range m.Infos {
-			dAtA[i] = 0xa
-			i++
-			i = encodeVarintSdk(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func encodeVarintSdk(dAtA []byte, offset int, v uint64) int {
-	for v >= 1<<7 {
-		dAtA[offset] = uint8(v&0x7f | 0x80)
-		v >>= 7
-		offset++
-	}
-	dAtA[offset] = uint8(v)
-	return offset + 1
-}
-func (m *Image) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Width != 0 {
-		n += 1 + sovSdk(uint64(m.Width))
-	}
-	if m.Height != 0 {
-		n += 1 + sovSdk(uint64(m.Height))
-	}
-	l = len(m.Data)
-	if l > 0 {
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	l = len(m.Timestamp)
-	if l > 0 {
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.Id != 0 {
-		n += 1 + sovSdk(uint64(m.Id))
-	}
-	l = len(m.Cid)
-	if l > 0 {
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	return n
-}
-
-func (m *FaceAngle) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Yaw != 0 {
-		n += 1 + sovSdk(uint64(m.Yaw))
-	}
-	if m.Pitch != 0 {
-		n += 1 + sovSdk(uint64(m.Pitch))
-	}
-	if m.Roll != 0 {
-		n += 1 + sovSdk(uint64(m.Roll))
-	}
-	if m.Confidence != 0 {
-		n += 5
-	}
-	return n
-}
-
-func (m *ThftResult) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Gender != 0 {
-		n += 1 + sovSdk(uint64(m.Gender))
-	}
-	if m.Age != 0 {
-		n += 1 + sovSdk(uint64(m.Age))
-	}
-	if m.Race != 0 {
-		n += 1 + sovSdk(uint64(m.Race))
-	}
-	if m.Beauty != 0 {
-		n += 1 + sovSdk(uint64(m.Beauty))
-	}
-	if m.Smile != 0 {
-		n += 1 + sovSdk(uint64(m.Smile))
-	}
-	return n
-}
-
-func (m *FacePos) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.RcFace != nil {
-		l = m.RcFace.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.PtLeftEye != nil {
-		l = m.PtLeftEye.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.PtRightEye != nil {
-		l = m.PtRightEye.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.PtMouth != nil {
-		l = m.PtMouth.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.PtNose != nil {
-		l = m.PtNose.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.FAngle != nil {
-		l = m.FAngle.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.Quality != 0 {
-		n += 1 + sovSdk(uint64(m.Quality))
-	}
-	l = len(m.FacialData)
-	if l > 0 {
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.FaceID != 0 {
-		n += 1 + sovSdk(uint64(m.FaceID))
-	}
-	return n
-}
-
-func (m *FaceInfo) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.RcFace != nil {
-		l = m.RcFace.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.PtLeftEye != nil {
-		l = m.PtLeftEye.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.PtRightEye != nil {
-		l = m.PtRightEye.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.PtMouth != nil {
-		l = m.PtMouth.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.PtNose != nil {
-		l = m.PtNose.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.FAngle != nil {
-		l = m.FAngle.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.Quality != 0 {
-		n += 1 + sovSdk(uint64(m.Quality))
-	}
-	l = len(m.FacialData)
-	if l > 0 {
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.FaceID != 0 {
-		n += 1 + sovSdk(uint64(m.FaceID))
-	}
-	return n
-}
-
-func (m *ObjInfo) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.RcObj != nil {
-		l = m.RcObj.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.Typ != 0 {
-		n += 1 + sovSdk(uint64(m.Typ))
-	}
-	if m.Prob != 0 {
-		n += 5
-	}
-	if m.ObjID != 0 {
-		n += 1 + sovSdk(uint64(m.ObjID))
-	}
-	return n
-}
-
-func (m *ResultFaceDetect) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if m.Pos != nil {
-		l = m.Pos.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.Result != nil {
-		l = m.Result.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	l = len(m.Feats)
-	if l > 0 {
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	return n
-}
-
-func (m *ParamFacePos) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if len(m.Faces) > 0 {
-		for _, e := range m.Faces {
-			l = e.Size()
-			n += 1 + l + sovSdk(uint64(l))
-		}
-	}
-	return n
-}
-
-func (m *ResultFaceExtCom) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Feats)
-	if l > 0 {
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	l = len(m.Comp)
-	if l > 0 {
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	if m.Pos != nil {
-		l = m.Pos.Size()
-		n += 1 + l + sovSdk(uint64(l))
-	}
-	return n
-}
-
-func (m *ParamFaceFeature) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if len(m.ExtComp) > 0 {
-		for _, e := range m.ExtComp {
-			l = e.Size()
-			n += 1 + l + sovSdk(uint64(l))
-		}
-	}
-	return n
-}
-
-func (m *ParamYoloObj) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	if len(m.Infos) > 0 {
-		for _, e := range m.Infos {
-			l = e.Size()
-			n += 1 + l + sovSdk(uint64(l))
-		}
-	}
-	return n
-}
-
-func sovSdk(x uint64) (n int) {
-	for {
-		n++
-		x >>= 7
-		if x == 0 {
-			break
-		}
-	}
-	return n
-}
-func sozSdk(x uint64) (n int) {
-	return sovSdk(uint64((x << 1) ^ uint64((int64(x) >> 63))))
-}
-func (m *Image) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Image: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Image: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Width", wireType)
-			}
-			m.Width = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Width |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 2:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Height", wireType)
-			}
-			m.Height = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Height |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType)
-			}
-			var byteLen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				byteLen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if byteLen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + byteLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Data = append(m.Data[:0], dAtA[iNdEx:postIndex]...)
-			if m.Data == nil {
-				m.Data = []byte{}
-			}
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Timestamp", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Timestamp = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			m.Id = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Id |= int64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Cid", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Cid = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *FaceAngle) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: FaceAngle: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: FaceAngle: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Yaw", wireType)
-			}
-			m.Yaw = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Yaw |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 2:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Pitch", wireType)
-			}
-			m.Pitch = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Pitch |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 3:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Roll", wireType)
-			}
-			m.Roll = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Roll |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 4:
-			if wireType != 5 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Confidence", wireType)
-			}
-			var v uint32
-			if (iNdEx + 4) > l {
-				return io.ErrUnexpectedEOF
-			}
-			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
-			iNdEx += 4
-			m.Confidence = float32(math.Float32frombits(v))
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *ThftResult) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: ThftResult: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: ThftResult: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Gender", wireType)
-			}
-			m.Gender = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Gender |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 2:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Age", wireType)
-			}
-			m.Age = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Age |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 3:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Race", wireType)
-			}
-			m.Race = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Race |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 4:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Beauty", wireType)
-			}
-			m.Beauty = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Beauty |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 5:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Smile", wireType)
-			}
-			m.Smile = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Smile |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *FacePos) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: FacePos: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: FacePos: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field RcFace", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.RcFace == nil {
-				m.RcFace = &Rect{}
-			}
-			if err := m.RcFace.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PtLeftEye", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.PtLeftEye == nil {
-				m.PtLeftEye = &Point{}
-			}
-			if err := m.PtLeftEye.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PtRightEye", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.PtRightEye == nil {
-				m.PtRightEye = &Point{}
-			}
-			if err := m.PtRightEye.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PtMouth", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.PtMouth == nil {
-				m.PtMouth = &Point{}
-			}
-			if err := m.PtMouth.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PtNose", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.PtNose == nil {
-				m.PtNose = &Point{}
-			}
-			if err := m.PtNose.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field FAngle", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.FAngle == nil {
-				m.FAngle = &FaceAngle{}
-			}
-			if err := m.FAngle.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 7:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Quality", wireType)
-			}
-			m.Quality = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Quality |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 8:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field FacialData", wireType)
-			}
-			var byteLen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				byteLen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if byteLen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + byteLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.FacialData = append(m.FacialData[:0], dAtA[iNdEx:postIndex]...)
-			if m.FacialData == nil {
-				m.FacialData = []byte{}
-			}
-			iNdEx = postIndex
-		case 9:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field FaceID", wireType)
-			}
-			m.FaceID = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.FaceID |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *FaceInfo) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: FaceInfo: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: FaceInfo: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field RcFace", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.RcFace == nil {
-				m.RcFace = &Rect{}
-			}
-			if err := m.RcFace.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PtLeftEye", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.PtLeftEye == nil {
-				m.PtLeftEye = &Point{}
-			}
-			if err := m.PtLeftEye.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PtRightEye", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.PtRightEye == nil {
-				m.PtRightEye = &Point{}
-			}
-			if err := m.PtRightEye.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PtMouth", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.PtMouth == nil {
-				m.PtMouth = &Point{}
-			}
-			if err := m.PtMouth.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PtNose", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.PtNose == nil {
-				m.PtNose = &Point{}
-			}
-			if err := m.PtNose.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field FAngle", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.FAngle == nil {
-				m.FAngle = &FaceAngle{}
-			}
-			if err := m.FAngle.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 7:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Quality", wireType)
-			}
-			m.Quality = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Quality |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 8:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field FacialData", wireType)
-			}
-			var byteLen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				byteLen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if byteLen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + byteLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.FacialData = append(m.FacialData[:0], dAtA[iNdEx:postIndex]...)
-			if m.FacialData == nil {
-				m.FacialData = []byte{}
-			}
-			iNdEx = postIndex
-		case 9:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field FaceID", wireType)
-			}
-			m.FaceID = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.FaceID |= int64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *ObjInfo) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: ObjInfo: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: ObjInfo: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field RcObj", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.RcObj == nil {
-				m.RcObj = &Rect{}
-			}
-			if err := m.RcObj.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 2:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Typ", wireType)
-			}
-			m.Typ = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Typ |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 3:
-			if wireType != 5 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Prob", wireType)
-			}
-			var v uint32
-			if (iNdEx + 4) > l {
-				return io.ErrUnexpectedEOF
-			}
-			v = uint32(encoding_binary.LittleEndian.Uint32(dAtA[iNdEx:]))
-			iNdEx += 4
-			m.Prob = float32(math.Float32frombits(v))
-		case 4:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ObjID", wireType)
-			}
-			m.ObjID = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.ObjID |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *ResultFaceDetect) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: ResultFaceDetect: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: ResultFaceDetect: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Pos", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.Pos == nil {
-				m.Pos = &FacePos{}
-			}
-			if err := m.Pos.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Result", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.Result == nil {
-				m.Result = &ThftResult{}
-			}
-			if err := m.Result.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Feats", wireType)
-			}
-			var byteLen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				byteLen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if byteLen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + byteLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Feats = append(m.Feats[:0], dAtA[iNdEx:postIndex]...)
-			if m.Feats == nil {
-				m.Feats = []byte{}
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *ParamFacePos) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: ParamFacePos: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: ParamFacePos: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Faces", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Faces = append(m.Faces, &ResultFaceDetect{})
-			if err := m.Faces[len(m.Faces)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *ResultFaceExtCom) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: ResultFaceExtCom: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: ResultFaceExtCom: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Feats", wireType)
-			}
-			var byteLen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				byteLen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if byteLen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + byteLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Feats = append(m.Feats[:0], dAtA[iNdEx:postIndex]...)
-			if m.Feats == nil {
-				m.Feats = []byte{}
-			}
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Comp", wireType)
-			}
-			var byteLen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				byteLen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if byteLen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + byteLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Comp = append(m.Comp[:0], dAtA[iNdEx:postIndex]...)
-			if m.Comp == nil {
-				m.Comp = []byte{}
-			}
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Pos", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			if m.Pos == nil {
-				m.Pos = &ResultFaceDetect{}
-			}
-			if err := m.Pos.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *ParamFaceFeature) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: ParamFaceFeature: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: ParamFaceFeature: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ExtComp", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ExtComp = append(m.ExtComp, &ResultFaceExtCom{})
-			if err := m.ExtComp[len(m.ExtComp)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *ParamYoloObj) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: ParamYoloObj: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: ParamYoloObj: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Infos", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSdk
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Infos = append(m.Infos, &ObjInfo{})
-			if err := m.Infos[len(m.Infos)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSdk(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSdk
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func skipSdk(dAtA []byte) (n int, err error) {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return 0, ErrIntOverflowSdk
-			}
-			if iNdEx >= l {
-				return 0, io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= (uint64(b) & 0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		wireType := int(wire & 0x7)
-		switch wireType {
-		case 0:
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				iNdEx++
-				if dAtA[iNdEx-1] < 0x80 {
-					break
-				}
-			}
-			return iNdEx, nil
-		case 1:
-			iNdEx += 8
-			return iNdEx, nil
-		case 2:
-			var length int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowSdk
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				length |= (int(b) & 0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if length < 0 {
-				return 0, ErrInvalidLengthSdk
-			}
-			iNdEx += length
-			if iNdEx < 0 {
-				return 0, ErrInvalidLengthSdk
-			}
-			return iNdEx, nil
-		case 3:
-			for {
-				var innerWire uint64
-				var start int = iNdEx
-				for shift := uint(0); ; shift += 7 {
-					if shift >= 64 {
-						return 0, ErrIntOverflowSdk
-					}
-					if iNdEx >= l {
-						return 0, io.ErrUnexpectedEOF
-					}
-					b := dAtA[iNdEx]
-					iNdEx++
-					innerWire |= (uint64(b) & 0x7F) << shift
-					if b < 0x80 {
-						break
-					}
-				}
-				innerWireType := int(innerWire & 0x7)
-				if innerWireType == 4 {
-					break
-				}
-				next, err := skipSdk(dAtA[start:])
-				if err != nil {
-					return 0, err
-				}
-				iNdEx = start + next
-				if iNdEx < 0 {
-					return 0, ErrInvalidLengthSdk
-				}
-			}
-			return iNdEx, nil
-		case 4:
-			return iNdEx, nil
-		case 5:
-			iNdEx += 4
-			return iNdEx, nil
-		default:
-			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
-		}
-	}
-	panic("unreachable")
-}
-
-var (
-	ErrInvalidLengthSdk = fmt.Errorf("proto: negative length found during unmarshaling")
-	ErrIntOverflowSdk   = fmt.Errorf("proto: integer overflow")
-)
diff --git a/sysset.pb.go b/sysset.pb.go
index c91b5c2..72a5a57 100644
--- a/sysset.pb.go
+++ b/sysset.pb.go
@@ -1,12 +1,11 @@
-// Code generated by protoc-gen-gogo. DO NOT EDIT.
+// Code generated by protoc-gen-go. DO NOT EDIT.
 // source: sysset.proto
 
 package protomsg
 
 import (
 	fmt "fmt"
-	proto "github.com/gogo/protobuf/proto"
-	io "io"
+	proto "github.com/golang/protobuf/proto"
 	math "math"
 )
 
@@ -19,25 +18,28 @@
 // is compatible with the proto package it is being compiled against.
 // A compilation error at this line likely means your copy of the
 // proto package needs to be updated.
-const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
 
 type LocalConfig struct {
-	ServerId       string `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
-	ServerName     string `protobuf:"bytes,2,opt,name=server_name,json=serverName,proto3" json:"server_name,omitempty"`
-	ServerType     int32  `protobuf:"varint,3,opt,name=server_type,json=serverType,proto3" json:"server_type,omitempty"`
-	ServerIp       string `protobuf:"bytes,4,opt,name=server_ip,json=serverIp,proto3" json:"server_ip,omitempty"`
-	AlarmIp        string `protobuf:"bytes,5,opt,name=alarm_ip,json=alarmIp,proto3" json:"alarm_ip,omitempty"`
-	AlarmPort      int32  `protobuf:"varint,6,opt,name=alarm_port,json=alarmPort,proto3" json:"alarm_port,omitempty"`
-	WebPicIp       string `protobuf:"bytes,7,opt,name=web_pic_ip,json=webPicIp,proto3" json:"web_pic_ip,omitempty"`
-	WebPicPort     int32  `protobuf:"varint,8,opt,name=web_pic_port,json=webPicPort,proto3" json:"web_pic_port,omitempty"`
-	EsPicIp        string `protobuf:"bytes,9,opt,name=es_pic_ip,json=esPicIp,proto3" json:"es_pic_ip,omitempty"`
-	EsPicPort      int32  `protobuf:"varint,10,opt,name=es_pic_port,json=esPicPort,proto3" json:"es_pic_port,omitempty"`
-	CutMaxDuration int32  `protobuf:"varint,11,opt,name=cut_max_duration,json=cutMaxDuration,proto3" json:"cut_max_duration,omitempty"`
-	CutMinDuration int32  `protobuf:"varint,12,opt,name=cut_min_duration,json=cutMinDuration,proto3" json:"cut_min_duration,omitempty"`
-	Reserved       string `protobuf:"bytes,13,opt,name=reserved,proto3" json:"reserved,omitempty"`
-	GateWay        string `protobuf:"bytes,14,opt,name=gate_way,json=gateWay,proto3" json:"gate_way,omitempty"`
-	NetMask        string `protobuf:"bytes,15,opt,name=net_mask,json=netMask,proto3" json:"net_mask,omitempty"`
-	RealMax        int32  `protobuf:"varint,16,opt,name=real_max,json=realMax,proto3" json:"real_max,omitempty"`
+	ServerId             string   `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
+	ServerName           string   `protobuf:"bytes,2,opt,name=server_name,json=serverName,proto3" json:"server_name,omitempty"`
+	ServerType           int32    `protobuf:"varint,3,opt,name=server_type,json=serverType,proto3" json:"server_type,omitempty"`
+	ServerIp             string   `protobuf:"bytes,4,opt,name=server_ip,json=serverIp,proto3" json:"server_ip,omitempty"`
+	AlarmIp              string   `protobuf:"bytes,5,opt,name=alarm_ip,json=alarmIp,proto3" json:"alarm_ip,omitempty"`
+	AlarmPort            int32    `protobuf:"varint,6,opt,name=alarm_port,json=alarmPort,proto3" json:"alarm_port,omitempty"`
+	WebPicIp             string   `protobuf:"bytes,7,opt,name=web_pic_ip,json=webPicIp,proto3" json:"web_pic_ip,omitempty"`
+	WebPicPort           int32    `protobuf:"varint,8,opt,name=web_pic_port,json=webPicPort,proto3" json:"web_pic_port,omitempty"`
+	EsPicIp              string   `protobuf:"bytes,9,opt,name=es_pic_ip,json=esPicIp,proto3" json:"es_pic_ip,omitempty"`
+	EsPicPort            int32    `protobuf:"varint,10,opt,name=es_pic_port,json=esPicPort,proto3" json:"es_pic_port,omitempty"`
+	CutMaxDuration       int32    `protobuf:"varint,11,opt,name=cut_max_duration,json=cutMaxDuration,proto3" json:"cut_max_duration,omitempty"`
+	CutMinDuration       int32    `protobuf:"varint,12,opt,name=cut_min_duration,json=cutMinDuration,proto3" json:"cut_min_duration,omitempty"`
+	Reserved             string   `protobuf:"bytes,13,opt,name=reserved,proto3" json:"reserved,omitempty"`
+	GateWay              string   `protobuf:"bytes,14,opt,name=gate_way,json=gateWay,proto3" json:"gate_way,omitempty"`
+	NetMask              string   `protobuf:"bytes,15,opt,name=net_mask,json=netMask,proto3" json:"net_mask,omitempty"`
+	RealMax              int32    `protobuf:"varint,16,opt,name=real_max,json=realMax,proto3" json:"real_max,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *LocalConfig) Reset()         { *m = LocalConfig{} }
@@ -46,26 +48,18 @@
 func (*LocalConfig) Descriptor() ([]byte, []int) {
 	return fileDescriptor_5be590c6b2a0d755, []int{0}
 }
+
 func (m *LocalConfig) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_LocalConfig.Unmarshal(m, b)
 }
 func (m *LocalConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_LocalConfig.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_LocalConfig.Marshal(b, m, deterministic)
 }
 func (m *LocalConfig) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_LocalConfig.Merge(m, src)
 }
 func (m *LocalConfig) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_LocalConfig.Size(m)
 }
 func (m *LocalConfig) XXX_DiscardUnknown() {
 	xxx_messageInfo_LocalConfig.DiscardUnknown(m)
@@ -186,10 +180,13 @@
 }
 
 type PollConfig struct {
-	ServerId   string `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
-	PollPeriod int32  `protobuf:"varint,2,opt,name=poll_period,json=pollPeriod,proto3" json:"poll_period,omitempty"`
-	Delay      int32  `protobuf:"varint,3,opt,name=delay,proto3" json:"delay,omitempty"`
-	Enable     bool   `protobuf:"varint,4,opt,name=enable,proto3" json:"enable,omitempty"`
+	ServerId             string   `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
+	PollPeriod           int32    `protobuf:"varint,2,opt,name=poll_period,json=pollPeriod,proto3" json:"poll_period,omitempty"`
+	Delay                int32    `protobuf:"varint,3,opt,name=delay,proto3" json:"delay,omitempty"`
+	Enable               bool     `protobuf:"varint,4,opt,name=enable,proto3" json:"enable,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *PollConfig) Reset()         { *m = PollConfig{} }
@@ -198,26 +195,18 @@
 func (*PollConfig) Descriptor() ([]byte, []int) {
 	return fileDescriptor_5be590c6b2a0d755, []int{1}
 }
+
 func (m *PollConfig) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_PollConfig.Unmarshal(m, b)
 }
 func (m *PollConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_PollConfig.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_PollConfig.Marshal(b, m, deterministic)
 }
 func (m *PollConfig) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_PollConfig.Merge(m, src)
 }
 func (m *PollConfig) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_PollConfig.Size(m)
 }
 func (m *PollConfig) XXX_DiscardUnknown() {
 	xxx_messageInfo_PollConfig.DiscardUnknown(m)
@@ -254,11 +243,14 @@
 }
 
 type Cluster struct {
-	ClusterId   string         `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
-	ClusterName string         `protobuf:"bytes,2,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
-	Password    string         `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty"`
-	VirtualIp   string         `protobuf:"bytes,4,opt,name=virtual_ip,json=virtualIp,proto3" json:"virtual_ip,omitempty"`
-	Nodes       []*ClusterNode `protobuf:"bytes,5,rep,name=nodes,proto3" json:"nodes,omitempty"`
+	ClusterId            string         `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
+	ClusterName          string         `protobuf:"bytes,2,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
+	Password             string         `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty"`
+	VirtualIp            string         `protobuf:"bytes,4,opt,name=virtual_ip,json=virtualIp,proto3" json:"virtual_ip,omitempty"`
+	Nodes                []*ClusterNode `protobuf:"bytes,5,rep,name=nodes,proto3" json:"nodes,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
+	XXX_unrecognized     []byte         `json:"-"`
+	XXX_sizecache        int32          `json:"-"`
 }
 
 func (m *Cluster) Reset()         { *m = Cluster{} }
@@ -267,26 +259,18 @@
 func (*Cluster) Descriptor() ([]byte, []int) {
 	return fileDescriptor_5be590c6b2a0d755, []int{2}
 }
+
 func (m *Cluster) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_Cluster.Unmarshal(m, b)
 }
 func (m *Cluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_Cluster.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_Cluster.Marshal(b, m, deterministic)
 }
 func (m *Cluster) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_Cluster.Merge(m, src)
 }
 func (m *Cluster) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_Cluster.Size(m)
 }
 func (m *Cluster) XXX_DiscardUnknown() {
 	xxx_messageInfo_Cluster.DiscardUnknown(m)
@@ -330,13 +314,16 @@
 }
 
 type ClusterNode struct {
-	Id         string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
-	ClusterId  string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
-	ServerId   string `protobuf:"bytes,3,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
-	ServerName string `protobuf:"bytes,4,opt,name=server_name,json=serverName,proto3" json:"server_name,omitempty"`
-	NodeId     string `protobuf:"bytes,5,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
-	NodeIp     string `protobuf:"bytes,6,opt,name=node_ip,json=nodeIp,proto3" json:"node_ip,omitempty"`
-	CreateTime string `protobuf:"bytes,7,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+	Id                   string   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+	ClusterId            string   `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
+	ServerId             string   `protobuf:"bytes,3,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
+	ServerName           string   `protobuf:"bytes,4,opt,name=server_name,json=serverName,proto3" json:"server_name,omitempty"`
+	NodeId               string   `protobuf:"bytes,5,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
+	NodeIp               string   `protobuf:"bytes,6,opt,name=node_ip,json=nodeIp,proto3" json:"node_ip,omitempty"`
+	CreateTime           string   `protobuf:"bytes,7,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
 }
 
 func (m *ClusterNode) Reset()         { *m = ClusterNode{} }
@@ -345,26 +332,18 @@
 func (*ClusterNode) Descriptor() ([]byte, []int) {
 	return fileDescriptor_5be590c6b2a0d755, []int{3}
 }
+
 func (m *ClusterNode) XXX_Unmarshal(b []byte) error {
-	return m.Unmarshal(b)
+	return xxx_messageInfo_ClusterNode.Unmarshal(m, b)
 }
 func (m *ClusterNode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	if deterministic {
-		return xxx_messageInfo_ClusterNode.Marshal(b, m, deterministic)
-	} else {
-		b = b[:cap(b)]
-		n, err := m.MarshalTo(b)
-		if err != nil {
-			return nil, err
-		}
-		return b[:n], nil
-	}
+	return xxx_messageInfo_ClusterNode.Marshal(b, m, deterministic)
 }
 func (m *ClusterNode) XXX_Merge(src proto.Message) {
 	xxx_messageInfo_ClusterNode.Merge(m, src)
 }
 func (m *ClusterNode) XXX_Size() int {
-	return m.Size()
+	return xxx_messageInfo_ClusterNode.Size(m)
 }
 func (m *ClusterNode) XXX_DiscardUnknown() {
 	xxx_messageInfo_ClusterNode.DiscardUnknown(m)
@@ -431,1706 +410,39 @@
 func init() { proto.RegisterFile("sysset.proto", fileDescriptor_5be590c6b2a0d755) }
 
 var fileDescriptor_5be590c6b2a0d755 = []byte{
-	// 568 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x53, 0xcd, 0x6e, 0x13, 0x3f,
-	0x10, 0xef, 0xa6, 0x4d, 0xb2, 0x3b, 0x9b, 0x7f, 0xff, 0x95, 0xc5, 0x87, 0x29, 0xb0, 0x84, 0x9c,
-	0x22, 0x21, 0xf5, 0x00, 0x6f, 0x40, 0xb9, 0x44, 0xa2, 0x55, 0x14, 0x55, 0xe2, 0x18, 0x39, 0xeb,
-	0xa1, 0xb2, 0xba, 0xbb, 0xb6, 0x6c, 0xa7, 0xc9, 0xde, 0x78, 0x04, 0xde, 0x85, 0x97, 0xe0, 0x82,
-	0xd4, 0x23, 0x47, 0xd4, 0xbe, 0x08, 0xb2, 0xbd, 0x9b, 0xa4, 0x45, 0x42, 0x9c, 0x76, 0xe7, 0xf7,
-	0x31, 0x33, 0xb6, 0x67, 0x60, 0x60, 0x6a, 0x63, 0xd0, 0x9e, 0x28, 0x2d, 0xad, 0x24, 0xb1, 0xff,
-	0x94, 0xe6, 0x72, 0xf4, 0xe5, 0x00, 0xd2, 0x8f, 0x32, 0x67, 0xc5, 0xa9, 0xac, 0x3e, 0x8b, 0x4b,
-	0xf2, 0x1c, 0x12, 0x83, 0xfa, 0x1a, 0xf5, 0x5c, 0x70, 0x1a, 0x0d, 0xa3, 0x71, 0x32, 0x8b, 0x03,
-	0x30, 0xe1, 0xe4, 0x15, 0xa4, 0x0d, 0x59, 0xb1, 0x12, 0x69, 0xc7, 0xd3, 0x10, 0xa0, 0x73, 0x56,
-	0xe2, 0x8e, 0xc0, 0xd6, 0x0a, 0xe9, 0xfe, 0x30, 0x1a, 0x77, 0x5b, 0xc1, 0x45, 0xad, 0x70, 0x37,
-	0xbd, 0xa2, 0x07, 0xf7, 0xd2, 0x2b, 0xf2, 0x0c, 0x62, 0x56, 0x30, 0x5d, 0x3a, 0xae, 0xeb, 0xb9,
-	0xbe, 0x8f, 0x27, 0x8a, 0xbc, 0x04, 0x08, 0x94, 0x92, 0xda, 0xd2, 0x9e, 0xcf, 0x9b, 0x78, 0x64,
-	0x2a, 0xb5, 0x25, 0x2f, 0x00, 0x56, 0xb8, 0x98, 0x2b, 0x91, 0x3b, 0x6f, 0x3f, 0xe4, 0x5d, 0xe1,
-	0x62, 0x2a, 0xf2, 0x89, 0x22, 0x43, 0x18, 0xb4, 0xac, 0xb7, 0xc7, 0xa1, 0xad, 0xc0, 0x7b, 0xff,
-	0x31, 0x24, 0x68, 0x5a, 0x7b, 0x12, 0x4a, 0xa3, 0x09, 0xee, 0x0c, 0xd2, 0x86, 0xf3, 0x66, 0x08,
-	0xb5, 0x3d, 0xeb, 0xbd, 0x63, 0x38, 0xca, 0x97, 0x76, 0x5e, 0xb2, 0xf5, 0x9c, 0x2f, 0x35, 0xb3,
-	0x42, 0x56, 0x34, 0xf5, 0xa2, 0xc3, 0x7c, 0x69, 0xcf, 0xd8, 0xfa, 0x43, 0x83, 0x6e, 0x94, 0xa2,
-	0xda, 0x2a, 0x07, 0x5b, 0xa5, 0xa8, 0x36, 0xca, 0x63, 0x88, 0x35, 0xfa, 0x7b, 0xe1, 0xf4, 0xbf,
-	0x70, 0x9a, 0x36, 0x76, 0xb7, 0x74, 0xc9, 0x2c, 0xce, 0x57, 0xac, 0xa6, 0x87, 0xa1, 0x55, 0x17,
-	0x7f, 0x62, 0xb5, 0xa3, 0x2a, 0x74, 0xad, 0x98, 0x2b, 0xfa, 0x7f, 0xa0, 0x2a, 0xb4, 0x67, 0xcc,
-	0x5c, 0x39, 0x4a, 0x23, 0x2b, 0x5c, 0x9b, 0xf4, 0xc8, 0xd7, 0xec, 0xbb, 0xf8, 0x8c, 0xad, 0x47,
-	0x6b, 0x80, 0xa9, 0x2c, 0xfe, 0x75, 0x00, 0x94, 0x2c, 0x8a, 0xb9, 0x42, 0x2d, 0x24, 0xf7, 0x03,
-	0xd0, 0x9d, 0x81, 0x83, 0xa6, 0x1e, 0x21, 0x8f, 0xa0, 0xcb, 0xb1, 0x60, 0x75, 0xf3, 0xf4, 0x21,
-	0x20, 0x4f, 0xa0, 0x87, 0x15, 0x5b, 0x14, 0xe8, 0x9f, 0x3c, 0x9e, 0x35, 0xd1, 0xe8, 0x5b, 0x04,
-	0xfd, 0xd3, 0x62, 0x69, 0x2c, 0x6a, 0xf7, 0xc2, 0x79, 0xf8, 0xdd, 0x16, 0x4e, 0x1a, 0x64, 0xc2,
-	0xc9, 0x6b, 0x18, 0xb4, 0xf4, 0xce, 0xec, 0xa5, 0x0d, 0xe6, 0x87, 0xef, 0x18, 0x62, 0xc5, 0x8c,
-	0x59, 0x49, 0xcd, 0x7d, 0xf9, 0x64, 0xb6, 0x89, 0x5d, 0xf6, 0x6b, 0xa1, 0xed, 0x92, 0x15, 0xdb,
-	0xc1, 0x4b, 0x1a, 0x64, 0xa2, 0xc8, 0x1b, 0xe8, 0x56, 0x92, 0xa3, 0xa1, 0xdd, 0xe1, 0xfe, 0x38,
-	0x7d, 0xfb, 0xf8, 0xa4, 0xdd, 0x8f, 0x93, 0xa6, 0xbd, 0x73, 0xc9, 0x71, 0x16, 0x34, 0xa3, 0x1f,
-	0x11, 0xa4, 0x3b, 0x30, 0x39, 0x84, 0xce, 0xa6, 0xe3, 0x8e, 0xe0, 0x0f, 0x4e, 0xd2, 0x79, 0x78,
-	0x92, 0x7b, 0x17, 0xbc, 0xff, 0xf7, 0x0d, 0x3b, 0xf8, 0x63, 0xc3, 0x9e, 0x42, 0xdf, 0x75, 0xe1,
-	0xbc, 0x61, 0x45, 0x7a, 0x2e, 0x9c, 0xf0, 0x2d, 0xa1, 0xfc, 0x7a, 0xb4, 0x84, 0x72, 0x29, 0x73,
-	0x8d, 0x6e, 0x62, 0xac, 0x28, 0xb1, 0x59, 0x0e, 0x08, 0xd0, 0x85, 0x28, 0xf1, 0x3d, 0xfd, 0x7e,
-	0x9b, 0x45, 0x37, 0xb7, 0x59, 0xf4, 0xeb, 0x36, 0x8b, 0xbe, 0xde, 0x65, 0x7b, 0x37, 0x77, 0xd9,
-	0xde, 0xcf, 0xbb, 0x6c, 0x6f, 0xd1, 0xf3, 0xd7, 0xf0, 0xee, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff,
-	0x77, 0xe6, 0x9a, 0x28, 0x3d, 0x04, 0x00, 0x00,
+	// 531 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x53, 0xcd, 0x8e, 0xda, 0x3e,
+	0x10, 0x17, 0x2c, 0x81, 0x64, 0xc2, 0x9f, 0xff, 0xca, 0xea, 0x87, 0x4b, 0xbf, 0x28, 0x27, 0xa4,
+	0x4a, 0x1c, 0xda, 0x47, 0xd8, 0x5e, 0x22, 0x95, 0x15, 0x42, 0x2b, 0xf5, 0x18, 0x99, 0x78, 0x8a,
+	0xac, 0x4d, 0x62, 0xcb, 0x36, 0x0b, 0xb9, 0xf5, 0x9d, 0xfa, 0x1c, 0x7d, 0xa7, 0xca, 0x76, 0x02,
+	0xec, 0x56, 0xaa, 0x7a, 0x4a, 0xe6, 0xf7, 0x31, 0x33, 0xb6, 0x67, 0x60, 0x6c, 0x1a, 0x63, 0xd0,
+	0x2e, 0x95, 0x96, 0x56, 0x92, 0xd8, 0x7f, 0x2a, 0xb3, 0x9b, 0xff, 0x18, 0x40, 0xfa, 0x55, 0x16,
+	0xac, 0xbc, 0x91, 0xf5, 0x77, 0xb1, 0x23, 0xaf, 0x21, 0x31, 0xa8, 0x1f, 0x50, 0xe7, 0x82, 0xd3,
+	0xde, 0xac, 0xb7, 0x48, 0x36, 0x71, 0x00, 0x32, 0x4e, 0xde, 0x43, 0xda, 0x92, 0x35, 0xab, 0x90,
+	0xf6, 0x3d, 0x0d, 0x01, 0xba, 0x65, 0x15, 0x5e, 0x08, 0x6c, 0xa3, 0x90, 0x5e, 0xcd, 0x7a, 0x8b,
+	0xa8, 0x13, 0xdc, 0x35, 0x0a, 0x2f, 0xd3, 0x2b, 0x3a, 0x78, 0x94, 0x5e, 0x91, 0x57, 0x10, 0xb3,
+	0x92, 0xe9, 0xca, 0x71, 0x91, 0xe7, 0x46, 0x3e, 0xce, 0x14, 0x79, 0x0b, 0x10, 0x28, 0x25, 0xb5,
+	0xa5, 0x43, 0x9f, 0x37, 0xf1, 0xc8, 0x5a, 0x6a, 0x4b, 0xde, 0x00, 0x1c, 0x70, 0x9b, 0x2b, 0x51,
+	0x38, 0xef, 0x28, 0xe4, 0x3d, 0xe0, 0x76, 0x2d, 0x8a, 0x4c, 0x91, 0x19, 0x8c, 0x3b, 0xd6, 0xdb,
+	0xe3, 0xd0, 0x56, 0xe0, 0xbd, 0x7f, 0x0a, 0x09, 0x9a, 0xce, 0x9e, 0x84, 0xd2, 0x68, 0x82, 0xfb,
+	0x1d, 0xa4, 0x2d, 0xe7, 0xcd, 0x10, 0x6a, 0x7b, 0xd6, 0x7b, 0x17, 0x70, 0x5d, 0xec, 0x6d, 0x5e,
+	0xb1, 0x63, 0xce, 0xf7, 0x9a, 0x59, 0x21, 0x6b, 0x9a, 0x7a, 0xd1, 0xa4, 0xd8, 0xdb, 0x15, 0x3b,
+	0x7e, 0x69, 0xd1, 0x93, 0x52, 0xd4, 0x67, 0xe5, 0xf8, 0xac, 0x14, 0xf5, 0x49, 0x39, 0x85, 0x58,
+	0xa3, 0xbf, 0x17, 0x4e, 0xff, 0x0b, 0xa7, 0xe9, 0x62, 0x77, 0x4b, 0x3b, 0x66, 0x31, 0x3f, 0xb0,
+	0x86, 0x4e, 0x42, 0xab, 0x2e, 0xfe, 0xc6, 0x1a, 0x47, 0xd5, 0xe8, 0x5a, 0x31, 0xf7, 0xf4, 0xff,
+	0x40, 0xd5, 0x68, 0x57, 0xcc, 0xdc, 0x3b, 0x4a, 0x23, 0x2b, 0x5d, 0x9b, 0xf4, 0xda, 0xd7, 0x1c,
+	0xb9, 0x78, 0xc5, 0x8e, 0xf3, 0x23, 0xc0, 0x5a, 0x96, 0xff, 0x3a, 0x00, 0x4a, 0x96, 0x65, 0xae,
+	0x50, 0x0b, 0xc9, 0xfd, 0x00, 0x44, 0x1b, 0x70, 0xd0, 0xda, 0x23, 0xe4, 0x19, 0x44, 0x1c, 0x4b,
+	0xd6, 0xb4, 0x4f, 0x1f, 0x02, 0xf2, 0x02, 0x86, 0x58, 0xb3, 0x6d, 0x89, 0xfe, 0xc9, 0xe3, 0x4d,
+	0x1b, 0xcd, 0x7f, 0xf6, 0x60, 0x74, 0x53, 0xee, 0x8d, 0x45, 0xed, 0x5e, 0xb8, 0x08, 0xbf, 0xe7,
+	0xc2, 0x49, 0x8b, 0x64, 0x9c, 0x7c, 0x80, 0x71, 0x47, 0x5f, 0xcc, 0x5e, 0xda, 0x62, 0x7e, 0xf8,
+	0xa6, 0x10, 0x2b, 0x66, 0xcc, 0x41, 0x6a, 0xee, 0xcb, 0x27, 0x9b, 0x53, 0xec, 0xb2, 0x3f, 0x08,
+	0x6d, 0xf7, 0xac, 0x3c, 0x0f, 0x5e, 0xd2, 0x22, 0x99, 0x22, 0x1f, 0x21, 0xaa, 0x25, 0x47, 0x43,
+	0xa3, 0xd9, 0xd5, 0x22, 0xfd, 0xf4, 0x7c, 0xd9, 0xed, 0xc7, 0xb2, 0x6d, 0xef, 0x56, 0x72, 0xdc,
+	0x04, 0xcd, 0xfc, 0x57, 0x0f, 0xd2, 0x0b, 0x98, 0x4c, 0xa0, 0x7f, 0xea, 0xb8, 0x2f, 0xf8, 0x93,
+	0x93, 0xf4, 0x9f, 0x9e, 0xe4, 0xd1, 0x05, 0x5f, 0xfd, 0x7d, 0xc3, 0x06, 0x7f, 0x6c, 0xd8, 0x4b,
+	0x18, 0xb9, 0x2e, 0x9c, 0x37, 0xac, 0xc8, 0xd0, 0x85, 0x19, 0x3f, 0x13, 0xca, 0xaf, 0x47, 0x47,
+	0x28, 0x97, 0xb2, 0xd0, 0xe8, 0x26, 0xc6, 0x8a, 0x0a, 0xdb, 0xe5, 0x80, 0x00, 0xdd, 0x89, 0x0a,
+	0xb7, 0x43, 0x7f, 0xd8, 0xcf, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x2b, 0xd8, 0x92, 0x94, 0x23,
+	0x04, 0x00, 0x00,
 }
-
-func (m *LocalConfig) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *LocalConfig) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.ServerId) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.ServerId)))
-		i += copy(dAtA[i:], m.ServerId)
-	}
-	if len(m.ServerName) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.ServerName)))
-		i += copy(dAtA[i:], m.ServerName)
-	}
-	if m.ServerType != 0 {
-		dAtA[i] = 0x18
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(m.ServerType))
-	}
-	if len(m.ServerIp) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.ServerIp)))
-		i += copy(dAtA[i:], m.ServerIp)
-	}
-	if len(m.AlarmIp) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.AlarmIp)))
-		i += copy(dAtA[i:], m.AlarmIp)
-	}
-	if m.AlarmPort != 0 {
-		dAtA[i] = 0x30
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(m.AlarmPort))
-	}
-	if len(m.WebPicIp) > 0 {
-		dAtA[i] = 0x3a
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.WebPicIp)))
-		i += copy(dAtA[i:], m.WebPicIp)
-	}
-	if m.WebPicPort != 0 {
-		dAtA[i] = 0x40
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(m.WebPicPort))
-	}
-	if len(m.EsPicIp) > 0 {
-		dAtA[i] = 0x4a
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.EsPicIp)))
-		i += copy(dAtA[i:], m.EsPicIp)
-	}
-	if m.EsPicPort != 0 {
-		dAtA[i] = 0x50
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(m.EsPicPort))
-	}
-	if m.CutMaxDuration != 0 {
-		dAtA[i] = 0x58
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(m.CutMaxDuration))
-	}
-	if m.CutMinDuration != 0 {
-		dAtA[i] = 0x60
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(m.CutMinDuration))
-	}
-	if len(m.Reserved) > 0 {
-		dAtA[i] = 0x6a
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.Reserved)))
-		i += copy(dAtA[i:], m.Reserved)
-	}
-	if len(m.GateWay) > 0 {
-		dAtA[i] = 0x72
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.GateWay)))
-		i += copy(dAtA[i:], m.GateWay)
-	}
-	if len(m.NetMask) > 0 {
-		dAtA[i] = 0x7a
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.NetMask)))
-		i += copy(dAtA[i:], m.NetMask)
-	}
-	if m.RealMax != 0 {
-		dAtA[i] = 0x80
-		i++
-		dAtA[i] = 0x1
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(m.RealMax))
-	}
-	return i, nil
-}
-
-func (m *PollConfig) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *PollConfig) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.ServerId) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.ServerId)))
-		i += copy(dAtA[i:], m.ServerId)
-	}
-	if m.PollPeriod != 0 {
-		dAtA[i] = 0x10
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(m.PollPeriod))
-	}
-	if m.Delay != 0 {
-		dAtA[i] = 0x18
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(m.Delay))
-	}
-	if m.Enable {
-		dAtA[i] = 0x20
-		i++
-		if m.Enable {
-			dAtA[i] = 1
-		} else {
-			dAtA[i] = 0
-		}
-		i++
-	}
-	return i, nil
-}
-
-func (m *Cluster) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *Cluster) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.ClusterId) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.ClusterId)))
-		i += copy(dAtA[i:], m.ClusterId)
-	}
-	if len(m.ClusterName) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.ClusterName)))
-		i += copy(dAtA[i:], m.ClusterName)
-	}
-	if len(m.Password) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.Password)))
-		i += copy(dAtA[i:], m.Password)
-	}
-	if len(m.VirtualIp) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.VirtualIp)))
-		i += copy(dAtA[i:], m.VirtualIp)
-	}
-	if len(m.Nodes) > 0 {
-		for _, msg := range m.Nodes {
-			dAtA[i] = 0x2a
-			i++
-			i = encodeVarintSysset(dAtA, i, uint64(msg.Size()))
-			n, err := msg.MarshalTo(dAtA[i:])
-			if err != nil {
-				return 0, err
-			}
-			i += n
-		}
-	}
-	return i, nil
-}
-
-func (m *ClusterNode) Marshal() (dAtA []byte, err error) {
-	size := m.Size()
-	dAtA = make([]byte, size)
-	n, err := m.MarshalTo(dAtA)
-	if err != nil {
-		return nil, err
-	}
-	return dAtA[:n], nil
-}
-
-func (m *ClusterNode) MarshalTo(dAtA []byte) (int, error) {
-	var i int
-	_ = i
-	var l int
-	_ = l
-	if len(m.Id) > 0 {
-		dAtA[i] = 0xa
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.Id)))
-		i += copy(dAtA[i:], m.Id)
-	}
-	if len(m.ClusterId) > 0 {
-		dAtA[i] = 0x12
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.ClusterId)))
-		i += copy(dAtA[i:], m.ClusterId)
-	}
-	if len(m.ServerId) > 0 {
-		dAtA[i] = 0x1a
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.ServerId)))
-		i += copy(dAtA[i:], m.ServerId)
-	}
-	if len(m.ServerName) > 0 {
-		dAtA[i] = 0x22
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.ServerName)))
-		i += copy(dAtA[i:], m.ServerName)
-	}
-	if len(m.NodeId) > 0 {
-		dAtA[i] = 0x2a
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.NodeId)))
-		i += copy(dAtA[i:], m.NodeId)
-	}
-	if len(m.NodeIp) > 0 {
-		dAtA[i] = 0x32
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.NodeIp)))
-		i += copy(dAtA[i:], m.NodeIp)
-	}
-	if len(m.CreateTime) > 0 {
-		dAtA[i] = 0x3a
-		i++
-		i = encodeVarintSysset(dAtA, i, uint64(len(m.CreateTime)))
-		i += copy(dAtA[i:], m.CreateTime)
-	}
-	return i, nil
-}
-
-func encodeVarintSysset(dAtA []byte, offset int, v uint64) int {
-	for v >= 1<<7 {
-		dAtA[offset] = uint8(v&0x7f | 0x80)
-		v >>= 7
-		offset++
-	}
-	dAtA[offset] = uint8(v)
-	return offset + 1
-}
-func (m *LocalConfig) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.ServerId)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.ServerName)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	if m.ServerType != 0 {
-		n += 1 + sovSysset(uint64(m.ServerType))
-	}
-	l = len(m.ServerIp)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.AlarmIp)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	if m.AlarmPort != 0 {
-		n += 1 + sovSysset(uint64(m.AlarmPort))
-	}
-	l = len(m.WebPicIp)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	if m.WebPicPort != 0 {
-		n += 1 + sovSysset(uint64(m.WebPicPort))
-	}
-	l = len(m.EsPicIp)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	if m.EsPicPort != 0 {
-		n += 1 + sovSysset(uint64(m.EsPicPort))
-	}
-	if m.CutMaxDuration != 0 {
-		n += 1 + sovSysset(uint64(m.CutMaxDuration))
-	}
-	if m.CutMinDuration != 0 {
-		n += 1 + sovSysset(uint64(m.CutMinDuration))
-	}
-	l = len(m.Reserved)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.GateWay)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.NetMask)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	if m.RealMax != 0 {
-		n += 2 + sovSysset(uint64(m.RealMax))
-	}
-	return n
-}
-
-func (m *PollConfig) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.ServerId)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	if m.PollPeriod != 0 {
-		n += 1 + sovSysset(uint64(m.PollPeriod))
-	}
-	if m.Delay != 0 {
-		n += 1 + sovSysset(uint64(m.Delay))
-	}
-	if m.Enable {
-		n += 2
-	}
-	return n
-}
-
-func (m *Cluster) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.ClusterId)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.ClusterName)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.Password)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.VirtualIp)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	if len(m.Nodes) > 0 {
-		for _, e := range m.Nodes {
-			l = e.Size()
-			n += 1 + l + sovSysset(uint64(l))
-		}
-	}
-	return n
-}
-
-func (m *ClusterNode) Size() (n int) {
-	if m == nil {
-		return 0
-	}
-	var l int
-	_ = l
-	l = len(m.Id)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.ClusterId)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.ServerId)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.ServerName)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.NodeId)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.NodeIp)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	l = len(m.CreateTime)
-	if l > 0 {
-		n += 1 + l + sovSysset(uint64(l))
-	}
-	return n
-}
-
-func sovSysset(x uint64) (n int) {
-	for {
-		n++
-		x >>= 7
-		if x == 0 {
-			break
-		}
-	}
-	return n
-}
-func sozSysset(x uint64) (n int) {
-	return sovSysset(uint64((x << 1) ^ uint64((int64(x) >> 63))))
-}
-func (m *LocalConfig) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSysset
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: LocalConfig: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: LocalConfig: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ServerId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ServerId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ServerName", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ServerName = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ServerType", wireType)
-			}
-			m.ServerType = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.ServerType |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ServerIp", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ServerIp = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field AlarmIp", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.AlarmIp = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field AlarmPort", wireType)
-			}
-			m.AlarmPort = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.AlarmPort |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 7:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field WebPicIp", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.WebPicIp = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 8:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field WebPicPort", wireType)
-			}
-			m.WebPicPort = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.WebPicPort |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 9:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field EsPicIp", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.EsPicIp = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 10:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field EsPicPort", wireType)
-			}
-			m.EsPicPort = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.EsPicPort |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 11:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CutMaxDuration", wireType)
-			}
-			m.CutMaxDuration = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.CutMaxDuration |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 12:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CutMinDuration", wireType)
-			}
-			m.CutMinDuration = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.CutMinDuration |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 13:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Reserved", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Reserved = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 14:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field GateWay", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.GateWay = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 15:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field NetMask", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.NetMask = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 16:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field RealMax", wireType)
-			}
-			m.RealMax = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.RealMax |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSysset(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *PollConfig) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSysset
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: PollConfig: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: PollConfig: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ServerId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ServerId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field PollPeriod", wireType)
-			}
-			m.PollPeriod = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.PollPeriod |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 3:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Delay", wireType)
-			}
-			m.Delay = 0
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				m.Delay |= int32(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-		case 4:
-			if wireType != 0 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Enable", wireType)
-			}
-			var v int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				v |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			m.Enable = bool(v != 0)
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSysset(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *Cluster) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSysset
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: Cluster: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: Cluster: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ClusterId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ClusterId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ClusterName", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ClusterName = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Password", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Password = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field VirtualIp", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.VirtualIp = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Nodes", wireType)
-			}
-			var msglen int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				msglen |= int(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if msglen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + msglen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Nodes = append(m.Nodes, &ClusterNode{})
-			if err := m.Nodes[len(m.Nodes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
-				return err
-			}
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSysset(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func (m *ClusterNode) Unmarshal(dAtA []byte) error {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		preIndex := iNdEx
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return ErrIntOverflowSysset
-			}
-			if iNdEx >= l {
-				return io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= uint64(b&0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		fieldNum := int32(wire >> 3)
-		wireType := int(wire & 0x7)
-		if wireType == 4 {
-			return fmt.Errorf("proto: ClusterNode: wiretype end group for non-group")
-		}
-		if fieldNum <= 0 {
-			return fmt.Errorf("proto: ClusterNode: illegal tag %d (wire type %d)", fieldNum, wire)
-		}
-		switch fieldNum {
-		case 1:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.Id = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 2:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ClusterId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ClusterId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 3:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ServerId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ServerId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 4:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field ServerName", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.ServerName = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 5:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field NodeId", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.NodeId = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 6:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field NodeIp", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.NodeIp = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		case 7:
-			if wireType != 2 {
-				return fmt.Errorf("proto: wrong wireType = %d for field CreateTime", wireType)
-			}
-			var stringLen uint64
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				stringLen |= uint64(b&0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			intStringLen := int(stringLen)
-			if intStringLen < 0 {
-				return ErrInvalidLengthSysset
-			}
-			postIndex := iNdEx + intStringLen
-			if postIndex < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if postIndex > l {
-				return io.ErrUnexpectedEOF
-			}
-			m.CreateTime = string(dAtA[iNdEx:postIndex])
-			iNdEx = postIndex
-		default:
-			iNdEx = preIndex
-			skippy, err := skipSysset(dAtA[iNdEx:])
-			if err != nil {
-				return err
-			}
-			if skippy < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if (iNdEx + skippy) < 0 {
-				return ErrInvalidLengthSysset
-			}
-			if (iNdEx + skippy) > l {
-				return io.ErrUnexpectedEOF
-			}
-			iNdEx += skippy
-		}
-	}
-
-	if iNdEx > l {
-		return io.ErrUnexpectedEOF
-	}
-	return nil
-}
-func skipSysset(dAtA []byte) (n int, err error) {
-	l := len(dAtA)
-	iNdEx := 0
-	for iNdEx < l {
-		var wire uint64
-		for shift := uint(0); ; shift += 7 {
-			if shift >= 64 {
-				return 0, ErrIntOverflowSysset
-			}
-			if iNdEx >= l {
-				return 0, io.ErrUnexpectedEOF
-			}
-			b := dAtA[iNdEx]
-			iNdEx++
-			wire |= (uint64(b) & 0x7F) << shift
-			if b < 0x80 {
-				break
-			}
-		}
-		wireType := int(wire & 0x7)
-		switch wireType {
-		case 0:
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				iNdEx++
-				if dAtA[iNdEx-1] < 0x80 {
-					break
-				}
-			}
-			return iNdEx, nil
-		case 1:
-			iNdEx += 8
-			return iNdEx, nil
-		case 2:
-			var length int
-			for shift := uint(0); ; shift += 7 {
-				if shift >= 64 {
-					return 0, ErrIntOverflowSysset
-				}
-				if iNdEx >= l {
-					return 0, io.ErrUnexpectedEOF
-				}
-				b := dAtA[iNdEx]
-				iNdEx++
-				length |= (int(b) & 0x7F) << shift
-				if b < 0x80 {
-					break
-				}
-			}
-			if length < 0 {
-				return 0, ErrInvalidLengthSysset
-			}
-			iNdEx += length
-			if iNdEx < 0 {
-				return 0, ErrInvalidLengthSysset
-			}
-			return iNdEx, nil
-		case 3:
-			for {
-				var innerWire uint64
-				var start int = iNdEx
-				for shift := uint(0); ; shift += 7 {
-					if shift >= 64 {
-						return 0, ErrIntOverflowSysset
-					}
-					if iNdEx >= l {
-						return 0, io.ErrUnexpectedEOF
-					}
-					b := dAtA[iNdEx]
-					iNdEx++
-					innerWire |= (uint64(b) & 0x7F) << shift
-					if b < 0x80 {
-						break
-					}
-				}
-				innerWireType := int(innerWire & 0x7)
-				if innerWireType == 4 {
-					break
-				}
-				next, err := skipSysset(dAtA[start:])
-				if err != nil {
-					return 0, err
-				}
-				iNdEx = start + next
-				if iNdEx < 0 {
-					return 0, ErrInvalidLengthSysset
-				}
-			}
-			return iNdEx, nil
-		case 4:
-			return iNdEx, nil
-		case 5:
-			iNdEx += 4
-			return iNdEx, nil
-		default:
-			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
-		}
-	}
-	panic("unreachable")
-}
-
-var (
-	ErrInvalidLengthSysset = fmt.Errorf("proto: negative length found during unmarshaling")
-	ErrIntOverflowSysset   = fmt.Errorf("proto: integer overflow")
-)

--
Gitblit v1.8.0