liuxiaolong
2019-05-21 a238764b88adc52a3c629e6e719b3ff61d902743
protomsg.pb.go
New file
@@ -0,0 +1,1849 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: protomsg.proto
package protomsg
import (
   fmt "fmt"
   proto "github.com/golang/protobuf/proto"
   math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// 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.ProtoPackageIsVersion3 // please upgrade the proto package
type TaskLabel struct {
   Taskid               string   `protobuf:"bytes,1,opt,name=taskid,proto3" json:"taskid,omitempty"`
   Sdkids               []string `protobuf:"bytes,2,rep,name=sdkids,proto3" json:"sdkids,omitempty"`
   Index                int32    `protobuf:"varint,3,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{} }
func (m *TaskLabel) String() string { return proto.CompactTextString(m) }
func (*TaskLabel) ProtoMessage()    {}
func (*TaskLabel) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{0}
}
func (m *TaskLabel) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_TaskLabel.Unmarshal(m, b)
}
func (m *TaskLabel) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_TaskLabel.Size(m)
}
func (m *TaskLabel) XXX_DiscardUnknown() {
   xxx_messageInfo_TaskLabel.DiscardUnknown(m)
}
var xxx_messageInfo_TaskLabel proto.InternalMessageInfo
func (m *TaskLabel) GetTaskid() string {
   if m != nil {
      return m.Taskid
   }
   return ""
}
func (m *TaskLabel) GetSdkids() []string {
   if m != nil {
      return m.Sdkids
   }
   return nil
}
func (m *TaskLabel) GetIndex() int32 {
   if m != nil {
      return m.Index
   }
   return 0
}
type SdkMessage struct {
   Cid                  string     `protobuf:"bytes,1,opt,name=cid,proto3" json:"cid,omitempty"`
   Tasklab              *TaskLabel `protobuf:"bytes,2,opt,name=tasklab,proto3" json:"tasklab,omitempty"`
   Data                 []byte     `protobuf:"bytes,3,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{} }
func (m *SdkMessage) String() string { return proto.CompactTextString(m) }
func (*SdkMessage) ProtoMessage()    {}
func (*SdkMessage) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{1}
}
func (m *SdkMessage) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_SdkMessage.Unmarshal(m, b)
}
func (m *SdkMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_SdkMessage.Size(m)
}
func (m *SdkMessage) XXX_DiscardUnknown() {
   xxx_messageInfo_SdkMessage.DiscardUnknown(m)
}
var xxx_messageInfo_SdkMessage proto.InternalMessageInfo
func (m *SdkMessage) GetCid() string {
   if m != nil {
      return m.Cid
   }
   return ""
}
func (m *SdkMessage) GetTasklab() *TaskLabel {
   if m != nil {
      return m.Tasklab
   }
   return nil
}
func (m *SdkMessage) GetData() []byte {
   if m != nil {
      return m.Data
   }
   return nil
}
// 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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *Image) Reset()         { *m = Image{} }
func (m *Image) String() string { return proto.CompactTextString(m) }
func (*Image) ProtoMessage()    {}
func (*Image) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{2}
}
func (m *Image) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_Image.Unmarshal(m, b)
}
func (m *Image) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_Image.Size(m)
}
func (m *Image) XXX_DiscardUnknown() {
   xxx_messageInfo_Image.DiscardUnknown(m)
}
var xxx_messageInfo_Image proto.InternalMessageInfo
func (m *Image) GetWidth() int32 {
   if m != nil {
      return m.Width
   }
   return 0
}
func (m *Image) GetHeight() int32 {
   if m != nil {
      return m.Height
   }
   return 0
}
func (m *Image) GetData() []byte {
   if m != nil {
      return m.Data
   }
   return nil
}
//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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *Area) Reset()         { *m = Area{} }
func (m *Area) String() string { return proto.CompactTextString(m) }
func (*Area) ProtoMessage()    {}
func (*Area) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{3}
}
func (m *Area) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_Area.Unmarshal(m, b)
}
func (m *Area) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_Area.Size(m)
}
func (m *Area) XXX_DiscardUnknown() {
   xxx_messageInfo_Area.DiscardUnknown(m)
}
var xxx_messageInfo_Area proto.InternalMessageInfo
func (m *Area) GetId() int32 {
   if m != nil {
      return m.Id
   }
   return 0
}
func (m *Area) GetParentid() int32 {
   if m != nil {
      return m.Parentid
   }
   return 0
}
func (m *Area) GetName() string {
   if m != nil {
      return m.Name
   }
   return ""
}
//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"`
   Type                 int32    `protobuf:"varint,3,opt,name=type,proto3" json:"type,omitempty"`
   Addr                 string   `protobuf:"bytes,4,opt,name=addr,proto3" json:"addr,omitempty"`
   Areaid               int32    `protobuf:"varint,5,opt,name=areaid,proto3" json:"areaid,omitempty"`
   Longitude            float32  `protobuf:"fixed32,6,opt,name=longitude,proto3" json:"longitude,omitempty"`
   Latitude             float32  `protobuf:"fixed32,7,opt,name=latitude,proto3" json:"latitude,omitempty"`
   Rtsp                 string   `protobuf:"bytes,8,opt,name=rtsp,proto3" json:"rtsp,omitempty"`
   Ip                   string   `protobuf:"bytes,9,opt,name=ip,proto3" json:"ip,omitempty"`
   Port                 int32    `protobuf:"varint,10,opt,name=port,proto3" json:"port,omitempty"`
   Username             string   `protobuf:"bytes,11,opt,name=username,proto3" json:"username,omitempty"`
   Password             string   `protobuf:"bytes,12,opt,name=password,proto3" json:"password,omitempty"`
   Brand                string   `protobuf:"bytes,13,opt,name=brand,proto3" json:"brand,omitempty"`
   Reserved             string   `protobuf:"bytes,14,opt,name=reserved,proto3" json:"reserved,omitempty"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *Camera) Reset()         { *m = Camera{} }
func (m *Camera) String() string { return proto.CompactTextString(m) }
func (*Camera) ProtoMessage()    {}
func (*Camera) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{4}
}
func (m *Camera) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_Camera.Unmarshal(m, b)
}
func (m *Camera) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_Camera.Size(m)
}
func (m *Camera) XXX_DiscardUnknown() {
   xxx_messageInfo_Camera.DiscardUnknown(m)
}
var xxx_messageInfo_Camera proto.InternalMessageInfo
func (m *Camera) GetId() string {
   if m != nil {
      return m.Id
   }
   return ""
}
func (m *Camera) GetName() string {
   if m != nil {
      return m.Name
   }
   return ""
}
func (m *Camera) GetType() int32 {
   if m != nil {
      return m.Type
   }
   return 0
}
func (m *Camera) GetAddr() string {
   if m != nil {
      return m.Addr
   }
   return ""
}
func (m *Camera) GetAreaid() int32 {
   if m != nil {
      return m.Areaid
   }
   return 0
}
func (m *Camera) GetLongitude() float32 {
   if m != nil {
      return m.Longitude
   }
   return 0
}
func (m *Camera) GetLatitude() float32 {
   if m != nil {
      return m.Latitude
   }
   return 0
}
func (m *Camera) GetRtsp() string {
   if m != nil {
      return m.Rtsp
   }
   return ""
}
func (m *Camera) GetIp() string {
   if m != nil {
      return m.Ip
   }
   return ""
}
func (m *Camera) GetPort() int32 {
   if m != nil {
      return m.Port
   }
   return 0
}
func (m *Camera) GetUsername() string {
   if m != nil {
      return m.Username
   }
   return ""
}
func (m *Camera) GetPassword() string {
   if m != nil {
      return m.Password
   }
   return ""
}
func (m *Camera) GetBrand() string {
   if m != nil {
      return m.Brand
   }
   return ""
}
func (m *Camera) GetReserved() string {
   if m != nil {
      return m.Reserved
   }
   return ""
}
//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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *Task) Reset()         { *m = Task{} }
func (m *Task) String() string { return proto.CompactTextString(m) }
func (*Task) ProtoMessage()    {}
func (*Task) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{5}
}
func (m *Task) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_Task.Unmarshal(m, b)
}
func (m *Task) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_Task.Size(m)
}
func (m *Task) XXX_DiscardUnknown() {
   xxx_messageInfo_Task.DiscardUnknown(m)
}
var xxx_messageInfo_Task proto.InternalMessageInfo
func (m *Task) GetTaskid() string {
   if m != nil {
      return m.Taskid
   }
   return ""
}
func (m *Task) GetTaskname() string {
   if m != nil {
      return m.Taskname
   }
   return ""
}
func (m *Task) GetCreateAt() string {
   if m != nil {
      return m.CreateAt
   }
   return ""
}
func (m *Task) GetCreateBy() string {
   if m != nil {
      return m.CreateBy
   }
   return ""
}
func (m *Task) GetUpdateAt() string {
   if m != nil {
      return m.UpdateAt
   }
   return ""
}
func (m *Task) GetEnable() bool {
   if m != nil {
      return m.Enable
   }
   return false
}
func (m *Task) GetIsAlarm() bool {
   if m != nil {
      return m.IsAlarm
   }
   return false
}
func (m *Task) GetDelFlag() bool {
   if m != nil {
      return m.DelFlag
   }
   return false
}
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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *TaskSdkInfo) Reset()         { *m = TaskSdkInfo{} }
func (m *TaskSdkInfo) String() string { return proto.CompactTextString(m) }
func (*TaskSdkInfo) ProtoMessage()    {}
func (*TaskSdkInfo) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{6}
}
func (m *TaskSdkInfo) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_TaskSdkInfo.Unmarshal(m, b)
}
func (m *TaskSdkInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_TaskSdkInfo.Size(m)
}
func (m *TaskSdkInfo) XXX_DiscardUnknown() {
   xxx_messageInfo_TaskSdkInfo.DiscardUnknown(m)
}
var xxx_messageInfo_TaskSdkInfo proto.InternalMessageInfo
func (m *TaskSdkInfo) GetTask() *Task {
   if m != nil {
      return m.Task
   }
   return nil
}
func (m *TaskSdkInfo) GetSdks() []*Sdk {
   if m != nil {
      return m.Sdks
   }
   return nil
}
//摄像机任务
type CameraTask struct {
   Id                   string    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
   CameraIds            string    `protobuf:"bytes,2,opt,name=camera_ids,json=cameraIds,proto3" json:"camera_ids,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"`
   LinkGroupId          string    `protobuf:"bytes,12,opt,name=link_group_id,json=linkGroupId,proto3" json:"link_group_id,omitempty"`
   XXX_NoUnkeyedLiteral struct{}  `json:"-"`
   XXX_unrecognized     []byte    `json:"-"`
   XXX_sizecache        int32     `json:"-"`
}
func (m *CameraTask) Reset()         { *m = CameraTask{} }
func (m *CameraTask) String() string { return proto.CompactTextString(m) }
func (*CameraTask) ProtoMessage()    {}
func (*CameraTask) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{7}
}
func (m *CameraTask) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_CameraTask.Unmarshal(m, b)
}
func (m *CameraTask) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_CameraTask.Size(m)
}
func (m *CameraTask) XXX_DiscardUnknown() {
   xxx_messageInfo_CameraTask.DiscardUnknown(m)
}
var xxx_messageInfo_CameraTask proto.InternalMessageInfo
func (m *CameraTask) GetId() string {
   if m != nil {
      return m.Id
   }
   return ""
}
func (m *CameraTask) GetCameraIds() string {
   if m != nil {
      return m.CameraIds
   }
   return ""
}
func (m *CameraTask) GetTaskId() string {
   if m != nil {
      return m.TaskId
   }
   return ""
}
func (m *CameraTask) GetTimeRule() []*DayCtl {
   if m != nil {
      return m.TimeRule
   }
   return nil
}
func (m *CameraTask) GetReactRule() string {
   if m != nil {
      return m.ReactRule
   }
   return ""
}
func (m *CameraTask) GetReactDevice() string {
   if m != nil {
      return m.ReactDevice
   }
   return ""
}
func (m *CameraTask) GetDelFlag() bool {
   if m != nil {
      return m.DelFlag
   }
   return false
}
func (m *CameraTask) GetUpdateFlag() bool {
   if m != nil {
      return m.UpdateFlag
   }
   return false
}
func (m *CameraTask) GetEnable() bool {
   if m != nil {
      return m.Enable
   }
   return false
}
func (m *CameraTask) GetSort() int32 {
   if m != nil {
      return m.Sort
   }
   return 0
}
func (m *CameraTask) GetIsFull() bool {
   if m != nil {
      return m.IsFull
   }
   return false
}
func (m *CameraTask) GetLinkGroupId() string {
   if m != nil {
      return m.LinkGroupId
   }
   return ""
}
//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"`
   XXX_NoUnkeyedLiteral struct{}     `json:"-"`
   XXX_unrecognized     []byte       `json:"-"`
   XXX_sizecache        int32        `json:"-"`
}
func (m *DayCtl) Reset()         { *m = DayCtl{} }
func (m *DayCtl) String() string { return proto.CompactTextString(m) }
func (*DayCtl) ProtoMessage()    {}
func (*DayCtl) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{8}
}
func (m *DayCtl) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_DayCtl.Unmarshal(m, b)
}
func (m *DayCtl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_DayCtl.Size(m)
}
func (m *DayCtl) XXX_DiscardUnknown() {
   xxx_messageInfo_DayCtl.DiscardUnknown(m)
}
var xxx_messageInfo_DayCtl proto.InternalMessageInfo
func (m *DayCtl) GetDay() int32 {
   if m != nil {
      return m.Day
   }
   return 0
}
func (m *DayCtl) GetTimeRange() []*TimeRange {
   if m != nil {
      return m.TimeRange
   }
   return nil
}
//时间起始范围
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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *TimeRange) Reset()         { *m = TimeRange{} }
func (m *TimeRange) String() string { return proto.CompactTextString(m) }
func (*TimeRange) ProtoMessage()    {}
func (*TimeRange) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{9}
}
func (m *TimeRange) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_TimeRange.Unmarshal(m, b)
}
func (m *TimeRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_TimeRange.Size(m)
}
func (m *TimeRange) XXX_DiscardUnknown() {
   xxx_messageInfo_TimeRange.DiscardUnknown(m)
}
var xxx_messageInfo_TimeRange proto.InternalMessageInfo
func (m *TimeRange) GetStart() string {
   if m != nil {
      return m.Start
   }
   return ""
}
func (m *TimeRange) GetEnd() string {
   if m != nil {
      return m.End
   }
   return ""
}
//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,4,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{} }
func (m *Polygon) String() string { return proto.CompactTextString(m) }
func (*Polygon) ProtoMessage()    {}
func (*Polygon) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{10}
}
func (m *Polygon) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_Polygon.Unmarshal(m, b)
}
func (m *Polygon) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_Polygon.Size(m)
}
func (m *Polygon) XXX_DiscardUnknown() {
   xxx_messageInfo_Polygon.DiscardUnknown(m)
}
var xxx_messageInfo_Polygon proto.InternalMessageInfo
func (m *Polygon) GetId() string {
   if m != nil {
      return m.Id
   }
   return ""
}
func (m *Polygon) GetName() string {
   if m != nil {
      return m.Name
   }
   return ""
}
func (m *Polygon) GetPoints() []*Point {
   if m != nil {
      return m.Points
   }
   return nil
}
type CameraTaskArgs 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"`
   RuleWithNext         string   `protobuf:"bytes,11,opt,name=rule_with_next,json=ruleWithNext,proto3" json:"rule_with_next,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 *CameraTaskArgs) Reset()         { *m = CameraTaskArgs{} }
func (m *CameraTaskArgs) String() string { return proto.CompactTextString(m) }
func (*CameraTaskArgs) ProtoMessage()    {}
func (*CameraTaskArgs) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{11}
}
func (m *CameraTaskArgs) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_CameraTaskArgs.Unmarshal(m, b)
}
func (m *CameraTaskArgs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_CameraTaskArgs.Size(m)
}
func (m *CameraTaskArgs) XXX_DiscardUnknown() {
   xxx_messageInfo_CameraTaskArgs.DiscardUnknown(m)
}
var xxx_messageInfo_CameraTaskArgs proto.InternalMessageInfo
func (m *CameraTaskArgs) GetId() string {
   if m != nil {
      return m.Id
   }
   return ""
}
func (m *CameraTaskArgs) GetCameraTaskId() string {
   if m != nil {
      return m.CameraTaskId
   }
   return ""
}
func (m *CameraTaskArgs) GetCameraId() string {
   if m != nil {
      return m.CameraId
   }
   return ""
}
func (m *CameraTaskArgs) GetPolygonId() string {
   if m != nil {
      return m.PolygonId
   }
   return ""
}
func (m *CameraTaskArgs) GetSdkId() string {
   if m != nil {
      return m.SdkId
   }
   return ""
}
func (m *CameraTaskArgs) GetSdkArgAlias() string {
   if m != nil {
      return m.SdkArgAlias
   }
   return ""
}
func (m *CameraTaskArgs) GetOperator() string {
   if m != nil {
      return m.Operator
   }
   return ""
}
func (m *CameraTaskArgs) GetOperatorType() string {
   if m != nil {
      return m.OperatorType
   }
   return ""
}
func (m *CameraTaskArgs) GetSdkArgValue() string {
   if m != nil {
      return m.SdkArgValue
   }
   return ""
}
func (m *CameraTaskArgs) GetSort() int32 {
   if m != nil {
      return m.Sort
   }
   return 0
}
func (m *CameraTaskArgs) GetRuleWithNext() string {
   if m != nil {
      return m.RuleWithNext
   }
   return ""
}
func (m *CameraTaskArgs) GetGroupId() string {
   if m != nil {
      return m.GroupId
   }
   return ""
}
//Sdk struct
type Sdk struct {
   Id                   string    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
   CreateTime           string    `protobuf:"bytes,2,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
   UpdateTime           string    `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
   CreateBy             string    `protobuf:"bytes,4,opt,name=create_by,json=createBy,proto3" json:"create_by,omitempty"`
   DelFlag              string    `protobuf:"bytes,5,opt,name=del_flag,json=delFlag,proto3" json:"del_flag,omitempty"`
   Enabled              string    `protobuf:"bytes,6,opt,name=enabled,proto3" json:"enabled,omitempty"`
   SdkName              string    `protobuf:"bytes,7,opt,name=sdk_name,json=sdkName,proto3" json:"sdk_name,omitempty"`
   Icon                 string    `protobuf:"bytes,8,opt,name=icon,proto3" json:"icon,omitempty"`
   Url                  string    `protobuf:"bytes,9,opt,name=url,proto3" json:"url,omitempty"`
   Args                 []*SdkArg `protobuf:"bytes,10,rep,name=args,proto3" json:"args,omitempty"`
   XXX_NoUnkeyedLiteral struct{}  `json:"-"`
   XXX_unrecognized     []byte    `json:"-"`
   XXX_sizecache        int32     `json:"-"`
}
func (m *Sdk) Reset()         { *m = Sdk{} }
func (m *Sdk) String() string { return proto.CompactTextString(m) }
func (*Sdk) ProtoMessage()    {}
func (*Sdk) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{12}
}
func (m *Sdk) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_Sdk.Unmarshal(m, b)
}
func (m *Sdk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_Sdk.Size(m)
}
func (m *Sdk) XXX_DiscardUnknown() {
   xxx_messageInfo_Sdk.DiscardUnknown(m)
}
var xxx_messageInfo_Sdk proto.InternalMessageInfo
func (m *Sdk) GetId() string {
   if m != nil {
      return m.Id
   }
   return ""
}
func (m *Sdk) GetCreateTime() string {
   if m != nil {
      return m.CreateTime
   }
   return ""
}
func (m *Sdk) GetUpdateTime() string {
   if m != nil {
      return m.UpdateTime
   }
   return ""
}
func (m *Sdk) GetCreateBy() string {
   if m != nil {
      return m.CreateBy
   }
   return ""
}
func (m *Sdk) GetDelFlag() string {
   if m != nil {
      return m.DelFlag
   }
   return ""
}
func (m *Sdk) GetEnabled() string {
   if m != nil {
      return m.Enabled
   }
   return ""
}
func (m *Sdk) GetSdkName() string {
   if m != nil {
      return m.SdkName
   }
   return ""
}
func (m *Sdk) GetIcon() string {
   if m != nil {
      return m.Icon
   }
   return ""
}
func (m *Sdk) GetUrl() string {
   if m != nil {
      return m.Url
   }
   return ""
}
func (m *Sdk) GetArgs() []*SdkArg {
   if m != nil {
      return m.Args
   }
   return nil
}
//SdkArg struct
type SdkArg struct {
   Alias                string   `protobuf:"bytes,2,opt,name=alias,proto3" json:"alias,omitempty"`
   Name                 string   `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
   Type                 string   `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"`
   Must                 bool     `protobuf:"varint,5,opt,name=must,proto3" json:"must,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{} }
func (m *SdkArg) String() string { return proto.CompactTextString(m) }
func (*SdkArg) ProtoMessage()    {}
func (*SdkArg) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{13}
}
func (m *SdkArg) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_SdkArg.Unmarshal(m, b)
}
func (m *SdkArg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_SdkArg.Size(m)
}
func (m *SdkArg) XXX_DiscardUnknown() {
   xxx_messageInfo_SdkArg.DiscardUnknown(m)
}
var xxx_messageInfo_SdkArg proto.InternalMessageInfo
func (m *SdkArg) GetAlias() string {
   if m != nil {
      return m.Alias
   }
   return ""
}
func (m *SdkArg) GetName() string {
   if m != nil {
      return m.Name
   }
   return ""
}
func (m *SdkArg) GetType() string {
   if m != nil {
      return m.Type
   }
   return ""
}
func (m *SdkArg) GetMust() bool {
   if m != nil {
      return m.Must
   }
   return false
}
func (m *SdkArg) GetRange() string {
   if m != nil {
      return m.Range
   }
   return ""
}
func (m *SdkArg) GetSort() int32 {
   if m != nil {
      return m.Sort
   }
   return 0
}
// 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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *Point) Reset()         { *m = Point{} }
func (m *Point) String() string { return proto.CompactTextString(m) }
func (*Point) ProtoMessage()    {}
func (*Point) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{14}
}
func (m *Point) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_Point.Unmarshal(m, b)
}
func (m *Point) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_Point.Size(m)
}
func (m *Point) XXX_DiscardUnknown() {
   xxx_messageInfo_Point.DiscardUnknown(m)
}
var xxx_messageInfo_Point proto.InternalMessageInfo
func (m *Point) GetX() int32 {
   if m != nil {
      return m.X
   }
   return 0
}
func (m *Point) GetY() int32 {
   if m != nil {
      return m.Y
   }
   return 0
}
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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *Rect) Reset()         { *m = Rect{} }
func (m *Rect) String() string { return proto.CompactTextString(m) }
func (*Rect) ProtoMessage()    {}
func (*Rect) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{15}
}
func (m *Rect) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_Rect.Unmarshal(m, b)
}
func (m *Rect) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_Rect.Size(m)
}
func (m *Rect) XXX_DiscardUnknown() {
   xxx_messageInfo_Rect.DiscardUnknown(m)
}
var xxx_messageInfo_Rect proto.InternalMessageInfo
func (m *Rect) GetLeft() int32 {
   if m != nil {
      return m.Left
   }
   return 0
}
func (m *Rect) GetTop() int32 {
   if m != nil {
      return m.Top
   }
   return 0
}
func (m *Rect) GetRight() int32 {
   if m != nil {
      return m.Right
   }
   return 0
}
func (m *Rect) GetBottom() int32 {
   if m != nil {
      return m.Bottom
   }
   return 0
}
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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *FaceAngle) Reset()         { *m = FaceAngle{} }
func (m *FaceAngle) String() string { return proto.CompactTextString(m) }
func (*FaceAngle) ProtoMessage()    {}
func (*FaceAngle) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{16}
}
func (m *FaceAngle) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_FaceAngle.Unmarshal(m, b)
}
func (m *FaceAngle) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_FaceAngle.Size(m)
}
func (m *FaceAngle) XXX_DiscardUnknown() {
   xxx_messageInfo_FaceAngle.DiscardUnknown(m)
}
var xxx_messageInfo_FaceAngle proto.InternalMessageInfo
func (m *FaceAngle) GetYaw() int32 {
   if m != nil {
      return m.Yaw
   }
   return 0
}
func (m *FaceAngle) GetPitch() int32 {
   if m != nil {
      return m.Pitch
   }
   return 0
}
func (m *FaceAngle) GetRoll() int32 {
   if m != nil {
      return m.Roll
   }
   return 0
}
func (m *FaceAngle) GetConfidence() float32 {
   if m != nil {
      return m.Confidence
   }
   return 0
}
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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *ThftResult) Reset()         { *m = ThftResult{} }
func (m *ThftResult) String() string { return proto.CompactTextString(m) }
func (*ThftResult) ProtoMessage()    {}
func (*ThftResult) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{17}
}
func (m *ThftResult) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_ThftResult.Unmarshal(m, b)
}
func (m *ThftResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_ThftResult.Size(m)
}
func (m *ThftResult) XXX_DiscardUnknown() {
   xxx_messageInfo_ThftResult.DiscardUnknown(m)
}
var xxx_messageInfo_ThftResult proto.InternalMessageInfo
func (m *ThftResult) GetGender() int32 {
   if m != nil {
      return m.Gender
   }
   return 0
}
func (m *ThftResult) GetAge() int32 {
   if m != nil {
      return m.Age
   }
   return 0
}
func (m *ThftResult) GetRace() int32 {
   if m != nil {
      return m.Race
   }
   return 0
}
func (m *ThftResult) GetBeauty() int32 {
   if m != nil {
      return m.Beauty
   }
   return 0
}
func (m *ThftResult) GetSmile() int32 {
   if m != nil {
      return m.Smile
   }
   return 0
}
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"`
   XXX_NoUnkeyedLiteral struct{}   `json:"-"`
   XXX_unrecognized     []byte     `json:"-"`
   XXX_sizecache        int32      `json:"-"`
}
func (m *FacePos) Reset()         { *m = FacePos{} }
func (m *FacePos) String() string { return proto.CompactTextString(m) }
func (*FacePos) ProtoMessage()    {}
func (*FacePos) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{18}
}
func (m *FacePos) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_FacePos.Unmarshal(m, b)
}
func (m *FacePos) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_FacePos.Size(m)
}
func (m *FacePos) XXX_DiscardUnknown() {
   xxx_messageInfo_FacePos.DiscardUnknown(m)
}
var xxx_messageInfo_FacePos proto.InternalMessageInfo
func (m *FacePos) GetRcFace() *Rect {
   if m != nil {
      return m.RcFace
   }
   return nil
}
func (m *FacePos) GetPtLeftEye() *Point {
   if m != nil {
      return m.PtLeftEye
   }
   return nil
}
func (m *FacePos) GetPtRightEye() *Point {
   if m != nil {
      return m.PtRightEye
   }
   return nil
}
func (m *FacePos) GetPtMouth() *Point {
   if m != nil {
      return m.PtMouth
   }
   return nil
}
func (m *FacePos) GetPtNose() *Point {
   if m != nil {
      return m.PtNose
   }
   return nil
}
func (m *FacePos) GetFAngle() *FaceAngle {
   if m != nil {
      return m.FAngle
   }
   return nil
}
func (m *FacePos) GetQuality() int32 {
   if m != nil {
      return m.Quality
   }
   return 0
}
func (m *FacePos) GetFacialData() []byte {
   if m != nil {
      return m.FacialData
   }
   return nil
}
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"`
   XXX_NoUnkeyedLiteral struct{}   `json:"-"`
   XXX_unrecognized     []byte     `json:"-"`
   XXX_sizecache        int32      `json:"-"`
}
func (m *FaceInfo) Reset()         { *m = FaceInfo{} }
func (m *FaceInfo) String() string { return proto.CompactTextString(m) }
func (*FaceInfo) ProtoMessage()    {}
func (*FaceInfo) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{19}
}
func (m *FaceInfo) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_FaceInfo.Unmarshal(m, b)
}
func (m *FaceInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_FaceInfo.Size(m)
}
func (m *FaceInfo) XXX_DiscardUnknown() {
   xxx_messageInfo_FaceInfo.DiscardUnknown(m)
}
var xxx_messageInfo_FaceInfo proto.InternalMessageInfo
func (m *FaceInfo) GetRcFace() *Rect {
   if m != nil {
      return m.RcFace
   }
   return nil
}
func (m *FaceInfo) GetPtLeftEye() *Point {
   if m != nil {
      return m.PtLeftEye
   }
   return nil
}
func (m *FaceInfo) GetPtRightEye() *Point {
   if m != nil {
      return m.PtRightEye
   }
   return nil
}
func (m *FaceInfo) GetPtMouth() *Point {
   if m != nil {
      return m.PtMouth
   }
   return nil
}
func (m *FaceInfo) GetPtNose() *Point {
   if m != nil {
      return m.PtNose
   }
   return nil
}
func (m *FaceInfo) GetFAngle() *FaceAngle {
   if m != nil {
      return m.FAngle
   }
   return nil
}
func (m *FaceInfo) GetQuality() int32 {
   if m != nil {
      return m.Quality
   }
   return 0
}
func (m *FaceInfo) GetFacialData() []byte {
   if m != nil {
      return m.FacialData
   }
   return nil
}
func (m *FaceInfo) GetFaceID() int64 {
   if m != nil {
      return m.FaceID
   }
   return 0
}
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"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *ObjInfo) Reset()         { *m = ObjInfo{} }
func (m *ObjInfo) String() string { return proto.CompactTextString(m) }
func (*ObjInfo) ProtoMessage()    {}
func (*ObjInfo) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{20}
}
func (m *ObjInfo) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_ObjInfo.Unmarshal(m, b)
}
func (m *ObjInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   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 xxx_messageInfo_ObjInfo.Size(m)
}
func (m *ObjInfo) XXX_DiscardUnknown() {
   xxx_messageInfo_ObjInfo.DiscardUnknown(m)
}
var xxx_messageInfo_ObjInfo proto.InternalMessageInfo
func (m *ObjInfo) GetRcObj() *Rect {
   if m != nil {
      return m.RcObj
   }
   return nil
}
func (m *ObjInfo) GetTyp() int32 {
   if m != nil {
      return m.Typ
   }
   return 0
}
func (m *ObjInfo) GetProb() float32 {
   if m != nil {
      return m.Prob
   }
   return 0
}
// sdk face property
type ParamFaceProperty struct {
   Pos                  *FacePos `protobuf:"bytes,1,opt,name=pos,proto3" json:"pos,omitempty"`
   Img                  *Image   `protobuf:"bytes,2,opt,name=img,proto3" json:"img,omitempty"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *ParamFaceProperty) Reset()         { *m = ParamFaceProperty{} }
func (m *ParamFaceProperty) String() string { return proto.CompactTextString(m) }
func (*ParamFaceProperty) ProtoMessage()    {}
func (*ParamFaceProperty) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{21}
}
func (m *ParamFaceProperty) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_ParamFaceProperty.Unmarshal(m, b)
}
func (m *ParamFaceProperty) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   return xxx_messageInfo_ParamFaceProperty.Marshal(b, m, deterministic)
}
func (m *ParamFaceProperty) XXX_Merge(src proto.Message) {
   xxx_messageInfo_ParamFaceProperty.Merge(m, src)
}
func (m *ParamFaceProperty) XXX_Size() int {
   return xxx_messageInfo_ParamFaceProperty.Size(m)
}
func (m *ParamFaceProperty) XXX_DiscardUnknown() {
   xxx_messageInfo_ParamFaceProperty.DiscardUnknown(m)
}
var xxx_messageInfo_ParamFaceProperty proto.InternalMessageInfo
func (m *ParamFaceProperty) GetPos() *FacePos {
   if m != nil {
      return m.Pos
   }
   return nil
}
func (m *ParamFaceProperty) GetImg() *Image {
   if m != nil {
      return m.Img
   }
   return nil
}
// sdk face extract
type ParamFaceCompare struct {
   Feat1                []byte   `protobuf:"bytes,1,opt,name=feat1,proto3" json:"feat1,omitempty"`
   Feat2                []byte   `protobuf:"bytes,2,opt,name=feat2,proto3" json:"feat2,omitempty"`
   XXX_NoUnkeyedLiteral struct{} `json:"-"`
   XXX_unrecognized     []byte   `json:"-"`
   XXX_sizecache        int32    `json:"-"`
}
func (m *ParamFaceCompare) Reset()         { *m = ParamFaceCompare{} }
func (m *ParamFaceCompare) String() string { return proto.CompactTextString(m) }
func (*ParamFaceCompare) ProtoMessage()    {}
func (*ParamFaceCompare) Descriptor() ([]byte, []int) {
   return fileDescriptor_32de24555f916688, []int{22}
}
func (m *ParamFaceCompare) XXX_Unmarshal(b []byte) error {
   return xxx_messageInfo_ParamFaceCompare.Unmarshal(m, b)
}
func (m *ParamFaceCompare) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   return xxx_messageInfo_ParamFaceCompare.Marshal(b, m, deterministic)
}
func (m *ParamFaceCompare) XXX_Merge(src proto.Message) {
   xxx_messageInfo_ParamFaceCompare.Merge(m, src)
}
func (m *ParamFaceCompare) XXX_Size() int {
   return xxx_messageInfo_ParamFaceCompare.Size(m)
}
func (m *ParamFaceCompare) XXX_DiscardUnknown() {
   xxx_messageInfo_ParamFaceCompare.DiscardUnknown(m)
}
var xxx_messageInfo_ParamFaceCompare proto.InternalMessageInfo
func (m *ParamFaceCompare) GetFeat1() []byte {
   if m != nil {
      return m.Feat1
   }
   return nil
}
func (m *ParamFaceCompare) GetFeat2() []byte {
   if m != nil {
      return m.Feat2
   }
   return nil
}
func init() {
   proto.RegisterType((*TaskLabel)(nil), "protomsg.TaskLabel")
   proto.RegisterType((*SdkMessage)(nil), "protomsg.SdkMessage")
   proto.RegisterType((*Image)(nil), "protomsg.Image")
   proto.RegisterType((*Area)(nil), "protomsg.Area")
   proto.RegisterType((*Camera)(nil), "protomsg.Camera")
   proto.RegisterType((*Task)(nil), "protomsg.Task")
   proto.RegisterType((*TaskSdkInfo)(nil), "protomsg.TaskSdkInfo")
   proto.RegisterType((*CameraTask)(nil), "protomsg.CameraTask")
   proto.RegisterType((*DayCtl)(nil), "protomsg.DayCtl")
   proto.RegisterType((*TimeRange)(nil), "protomsg.TimeRange")
   proto.RegisterType((*Polygon)(nil), "protomsg.Polygon")
   proto.RegisterType((*CameraTaskArgs)(nil), "protomsg.CameraTaskArgs")
   proto.RegisterType((*Sdk)(nil), "protomsg.Sdk")
   proto.RegisterType((*SdkArg)(nil), "protomsg.SdkArg")
   proto.RegisterType((*Point)(nil), "protomsg.Point")
   proto.RegisterType((*Rect)(nil), "protomsg.Rect")
   proto.RegisterType((*FaceAngle)(nil), "protomsg.FaceAngle")
   proto.RegisterType((*ThftResult)(nil), "protomsg.ThftResult")
   proto.RegisterType((*FacePos)(nil), "protomsg.FacePos")
   proto.RegisterType((*FaceInfo)(nil), "protomsg.FaceInfo")
   proto.RegisterType((*ObjInfo)(nil), "protomsg.ObjInfo")
   proto.RegisterType((*ParamFaceProperty)(nil), "protomsg.ParamFaceProperty")
   proto.RegisterType((*ParamFaceCompare)(nil), "protomsg.ParamFaceCompare")
}
func init() { proto.RegisterFile("protomsg.proto", fileDescriptor_32de24555f916688) }
var fileDescriptor_32de24555f916688 = []byte{
   // 1489 bytes of a gzipped FileDescriptorProto
   0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x57, 0x4f, 0x6f, 0x1c, 0xc5,
   0x12, 0xd7, 0xfe, 0xdf, 0xa9, 0x5d, 0xfb, 0x25, 0xfd, 0xf2, 0xde, 0x9b, 0x97, 0xf7, 0x20, 0xce,
   0xc4, 0x02, 0x23, 0x44, 0x10, 0xce, 0x1d, 0xc9, 0xc4, 0x18, 0xad, 0x94, 0x38, 0xa6, 0x6d, 0x82,
   0x04, 0x87, 0x55, 0xef, 0x74, 0xef, 0xec, 0x64, 0x67, 0x67, 0x86, 0xee, 0xde, 0xd8, 0x73, 0xe7,
   0x03, 0xf0, 0xb1, 0x38, 0xf0, 0x1d, 0x38, 0x71, 0xe1, 0x0b, 0x70, 0x45, 0x55, 0xdd, 0x33, 0xbb,
   0x8e, 0x1d, 0x84, 0xc4, 0x95, 0x5b, 0xfd, 0xaa, 0x6a, 0xaa, 0xbb, 0x7e, 0x5d, 0x55, 0xdd, 0x03,
   0xbb, 0xa5, 0x2e, 0x6c, 0xb1, 0x32, 0xc9, 0x63, 0x12, 0xd8, 0xb0, 0xc6, 0xd1, 0x97, 0x10, 0x5c,
   0x08, 0xb3, 0x7c, 0x26, 0x66, 0x2a, 0x63, 0xff, 0x86, 0xbe, 0x15, 0x66, 0x99, 0xca, 0xb0, 0xb5,
   0xd7, 0x3a, 0x08, 0xb8, 0x47, 0xa8, 0x37, 0x72, 0x99, 0x4a, 0x13, 0xb6, 0xf7, 0x3a, 0xa8, 0x77,
   0x88, 0xdd, 0x83, 0x5e, 0x9a, 0x4b, 0x75, 0x15, 0x76, 0xf6, 0x5a, 0x07, 0x3d, 0xee, 0x40, 0x24,
   0x00, 0xce, 0xe5, 0xf2, 0xb9, 0x32, 0x46, 0x24, 0x8a, 0xdd, 0x81, 0x4e, 0xdc, 0x04, 0x44, 0x91,
   0x7d, 0x04, 0x03, 0x8c, 0x9b, 0x89, 0x59, 0xd8, 0xde, 0x6b, 0x1d, 0x8c, 0x0e, 0xff, 0xf9, 0xb8,
   0xd9, 0x5e, 0xb3, 0x17, 0x5e, 0xfb, 0x30, 0x06, 0x5d, 0x29, 0xac, 0xa0, 0x35, 0xc6, 0x9c, 0xe4,
   0x68, 0x02, 0xbd, 0xc9, 0x0a, 0xa3, 0xdf, 0x83, 0xde, 0x65, 0x2a, 0xed, 0x82, 0xe2, 0xf7, 0xb8,
   0x03, 0xb8, 0xdf, 0x85, 0x4a, 0x93, 0x85, 0xa5, 0x05, 0x7a, 0xdc, 0xa3, 0x5b, 0x43, 0x9d, 0x40,
   0xf7, 0x48, 0x2b, 0xc1, 0x76, 0xa1, 0xed, 0xb7, 0xd9, 0xe3, 0xed, 0x54, 0xb2, 0xfb, 0x30, 0x2c,
   0x85, 0x56, 0xb9, 0x4d, 0xa5, 0x8f, 0xd2, 0x60, 0x8c, 0x93, 0x8b, 0x95, 0xa2, 0x38, 0x01, 0x27,
   0x39, 0xfa, 0xb1, 0x0d, 0xfd, 0xa7, 0x62, 0xa5, 0xf4, 0x76, 0xa8, 0x80, 0x42, 0xd5, 0xee, 0xed,
   0x8d, 0x3b, 0xea, 0x6c, 0x55, 0x2a, 0xcf, 0x1c, 0xc9, 0xa8, 0x13, 0x52, 0xea, 0xb0, 0xeb, 0xfc,
   0x50, 0xc6, 0x54, 0x84, 0x56, 0x22, 0x95, 0x61, 0xcf, 0xa5, 0xe2, 0x10, 0xfb, 0x3f, 0x04, 0x59,
   0x91, 0x27, 0xa9, 0x5d, 0x4b, 0x15, 0xf6, 0xf7, 0x5a, 0x07, 0x6d, 0xbe, 0x51, 0xe0, 0xe6, 0x33,
   0x61, 0x9d, 0x71, 0x40, 0xc6, 0x06, 0xe3, 0x2a, 0xda, 0x9a, 0x32, 0x1c, 0xba, 0x55, 0x50, 0xa6,
   0x1d, 0x97, 0x61, 0xe0, 0x77, 0x5c, 0xa2, 0x4f, 0x59, 0x68, 0x1b, 0x82, 0xdb, 0x1d, 0xca, 0x18,
   0x73, 0x6d, 0x94, 0xa6, 0x4c, 0x46, 0xe4, 0xd9, 0x60, 0x47, 0x96, 0x31, 0x97, 0x85, 0x96, 0xe1,
   0xd8, 0xd9, 0x6a, 0x8c, 0x47, 0x34, 0xd3, 0x22, 0x97, 0xe1, 0x0e, 0x19, 0x1c, 0xc0, 0x2f, 0xb4,
   0x32, 0x4a, 0xbf, 0x56, 0x32, 0xdc, 0x75, 0x5f, 0xd4, 0x38, 0xfa, 0xb9, 0x05, 0x5d, 0x2c, 0x84,
   0xb7, 0xd6, 0xe3, 0x7d, 0x18, 0xa2, 0xb4, 0x45, 0x6a, 0x83, 0xd9, 0xff, 0x20, 0x88, 0xb5, 0x12,
   0x56, 0x4d, 0x85, 0xf5, 0x07, 0x34, 0x74, 0x8a, 0x23, 0xbb, 0x65, 0x9c, 0x55, 0x9e, 0x66, 0x6f,
   0xfc, 0xac, 0x42, 0xe3, 0xba, 0x94, 0xfe, 0xcb, 0x9e, 0xcf, 0x90, 0x14, 0x47, 0x16, 0xb7, 0xa2,
   0x72, 0x31, 0xcb, 0x1c, 0xd9, 0x43, 0xee, 0x11, 0xfb, 0x2f, 0x0c, 0x53, 0x33, 0x15, 0x99, 0xd0,
   0x2b, 0x62, 0x7a, 0xc8, 0x07, 0xa9, 0x39, 0x42, 0x88, 0x26, 0xa9, 0xb2, 0xe9, 0x3c, 0x13, 0x09,
   0x91, 0x3d, 0xe4, 0x03, 0xa9, 0xb2, 0x93, 0x4c, 0x24, 0xd1, 0x05, 0x8c, 0x30, 0xc1, 0x73, 0xb9,
   0x9c, 0xe4, 0xf3, 0x82, 0x45, 0xd0, 0xc5, 0xfd, 0x53, 0x96, 0xa3, 0xc3, 0xdd, 0xeb, 0xed, 0xc0,
   0xc9, 0xc6, 0x1e, 0x42, 0xd7, 0xc8, 0xa5, 0xeb, 0xc0, 0xd1, 0xe1, 0xce, 0xc6, 0xe7, 0x5c, 0x2e,
   0x39, 0x99, 0xa2, 0x5f, 0xdb, 0x00, 0xae, 0x04, 0x89, 0xbd, 0x37, 0xcb, 0xf0, 0x1d, 0x80, 0x98,
   0xac, 0x53, 0xd7, 0xc9, 0xa8, 0x0f, 0x9c, 0x66, 0x22, 0x0d, 0xfb, 0x8f, 0x6b, 0xcb, 0x69, 0x2a,
   0x3d, 0x6d, 0xc4, 0xf6, 0x04, 0xfb, 0x35, 0xb0, 0xe9, 0x4a, 0x4d, 0xf5, 0x3a, 0x53, 0x61, 0x97,
   0x96, 0xbf, 0xb3, 0x59, 0xfe, 0x58, 0x54, 0x4f, 0x6d, 0xc6, 0x87, 0xe8, 0xc2, 0xd7, 0x99, 0xc2,
   0x65, 0xb4, 0x12, 0xb1, 0x75, 0xfe, 0x8e, 0xc7, 0x80, 0x34, 0x64, 0x7e, 0x08, 0x63, 0x67, 0x96,
   0xea, 0x75, 0x1a, 0x3b, 0x3a, 0x03, 0x3e, 0x22, 0xdd, 0x31, 0xa9, 0xae, 0x11, 0x37, 0xb8, 0x46,
   0x1c, 0x7b, 0x00, 0x23, 0x7f, 0x46, 0x5b, 0xb4, 0x82, 0x53, 0x91, 0xc3, 0xe6, 0x9c, 0x82, 0x6b,
   0xe7, 0xc4, 0xa0, 0x6b, 0xb6, 0x2a, 0x1a, 0x65, 0xcc, 0x38, 0x35, 0xd3, 0xf9, 0x3a, 0xcb, 0xa8,
   0xa0, 0x87, 0xbc, 0x9f, 0x9a, 0x93, 0x75, 0x96, 0xb1, 0x08, 0x76, 0xb2, 0x34, 0x5f, 0x4e, 0x13,
   0x5d, 0xac, 0x4b, 0x24, 0xc4, 0xd5, 0xf4, 0x08, 0x95, 0x5f, 0xa0, 0x6e, 0x22, 0xa3, 0x53, 0xe8,
   0xbb, 0xd4, 0x71, 0xc2, 0x49, 0x51, 0xf9, 0xd1, 0x81, 0x22, 0x3b, 0x04, 0x70, 0x8c, 0x89, 0x3c,
   0x51, 0xfe, 0xc4, 0xb6, 0x87, 0x1c, 0x52, 0x85, 0x26, 0x4e, 0xc4, 0x92, 0x18, 0x3d, 0x81, 0xa0,
   0xd1, 0x63, 0xcf, 0x18, 0x2b, 0xb4, 0xf5, 0xa7, 0xe7, 0x00, 0x2e, 0xa4, 0x72, 0xe9, 0x4f, 0x0e,
   0xc5, 0xe8, 0x25, 0x0c, 0xce, 0x8a, 0xac, 0x4a, 0x8a, 0xfc, 0x4f, 0x0d, 0x9d, 0xf7, 0xa1, 0x5f,
   0x16, 0x69, 0x6e, 0x8d, 0x3f, 0xc6, 0x7f, 0x6c, 0xf6, 0x74, 0x86, 0x7a, 0xee, 0xcd, 0xd1, 0x6f,
   0x6d, 0xd8, 0xdd, 0x54, 0xd2, 0x91, 0x4e, 0xcc, 0x8d, 0xf8, 0xfb, 0xb0, 0xeb, 0xab, 0xa9, 0xae,
   0x1a, 0xb7, 0xd2, 0x38, 0x6e, 0xbe, 0x9b, 0x48, 0x6a, 0xb8, 0xba, 0xe6, 0x9a, 0x6e, 0xf4, 0x25,
   0x87, 0x95, 0x52, 0xba, 0xdd, 0xa3, 0xd5, 0xb5, 0x63, 0xe0, 0x35, 0x13, 0xc9, 0xfe, 0x45, 0xb7,
   0xce, 0xd4, 0x8f, 0x3e, 0x64, 0x41, 0x62, 0xc8, 0x08, 0x76, 0x50, 0x2d, 0x74, 0x32, 0x15, 0x59,
   0x2a, 0x4c, 0x5d, 0x41, 0x46, 0xe2, 0x46, 0x8f, 0x50, 0x85, 0x03, 0xa2, 0x28, 0x95, 0x16, 0xb6,
   0xd0, 0x54, 0x41, 0x01, 0x6f, 0x30, 0x7b, 0x04, 0x3b, 0xb5, 0x3c, 0xa5, 0x11, 0xec, 0x06, 0xe1,
   0xb8, 0x56, 0x5e, 0xe0, 0x28, 0xde, 0x5a, 0xe4, 0xb5, 0xc8, 0xd6, 0xca, 0xcf, 0x46, 0xbf, 0xc8,
   0x4b, 0x54, 0xdd, 0x5a, 0x52, 0xfb, 0xb0, 0x8b, 0x65, 0x3f, 0xbd, 0x4c, 0xed, 0x62, 0x9a, 0xab,
   0x2b, 0xeb, 0x47, 0xe5, 0x18, 0xb5, 0x5f, 0xa7, 0x76, 0x71, 0xaa, 0xae, 0x2c, 0x16, 0xf8, 0x1b,
   0xa5, 0x35, 0x48, 0x7c, 0x59, 0xfd, 0xd0, 0x86, 0xce, 0xb9, 0xbc, 0xd9, 0xbc, 0x0f, 0x60, 0xe4,
   0x27, 0x17, 0x96, 0x8c, 0xe7, 0x1a, 0x9c, 0x0a, 0xeb, 0x66, 0xab, 0x33, 0xc8, 0xc1, 0x71, 0xed,
   0x3b, 0x83, 0x1c, 0xfe, 0x70, 0xf6, 0x6d, 0xb7, 0x9c, 0x63, 0xbb, 0x69, 0xb9, 0x10, 0x06, 0xae,
   0x87, 0xa4, 0x67, 0xba, 0x86, 0xf8, 0x11, 0x92, 0x44, 0x65, 0xe6, 0x58, 0x1e, 0x18, 0xb9, 0x3c,
   0xf5, 0xd7, 0x5b, 0x1a, 0x17, 0x79, 0x7d, 0xc9, 0xa0, 0x8c, 0xe5, 0xbb, 0xd6, 0x99, 0x67, 0x12,
   0x45, 0xb6, 0x0f, 0x5d, 0xa1, 0x13, 0x13, 0xc2, 0x9b, 0x43, 0xe5, 0x9c, 0x68, 0xe6, 0x64, 0x8d,
   0xbe, 0x6f, 0x41, 0xdf, 0x29, 0xb0, 0x2f, 0xdc, 0x99, 0xbb, 0xfc, 0x1d, 0xb8, 0xed, 0x3a, 0x6e,
   0xee, 0x57, 0x7f, 0x97, 0xd6, 0xf7, 0xeb, 0x6a, 0x6d, 0xdc, 0x6c, 0x1f, 0x72, 0x92, 0x31, 0xa2,
   0xeb, 0x52, 0x97, 0x9b, 0x03, 0xcd, 0xd1, 0x0e, 0x36, 0x47, 0x1b, 0x3d, 0x82, 0x1e, 0x35, 0x09,
   0x1b, 0x43, 0xeb, 0xca, 0x77, 0x7b, 0xeb, 0x0a, 0x51, 0xe5, 0x1f, 0x08, 0xad, 0x2a, 0xfa, 0x06,
   0xba, 0x5c, 0xc5, 0xf4, 0xd2, 0xc8, 0xd4, 0xdc, 0x7a, 0x37, 0x92, 0x31, 0x7f, 0x5b, 0x94, 0xde,
   0x17, 0x45, 0x5a, 0x9c, 0x9e, 0x29, 0xfe, 0xfd, 0x44, 0x00, 0x47, 0xd8, 0xac, 0xb0, 0xb6, 0x58,
   0xd1, 0xe6, 0x7b, 0xdc, 0xa3, 0x28, 0x81, 0xe0, 0x44, 0xc4, 0xea, 0x28, 0x4f, 0x32, 0x7a, 0x56,
   0x55, 0xe2, 0xb2, 0x1e, 0x3a, 0x95, 0xb8, 0xc4, 0x60, 0x65, 0x6a, 0xe3, 0x85, 0x5f, 0xc0, 0x01,
   0xba, 0xed, 0x8b, 0x2c, 0xab, 0xdf, 0x19, 0x28, 0xb3, 0x77, 0x01, 0xe2, 0x22, 0x9f, 0xa7, 0x52,
   0xe5, 0xb1, 0x63, 0xa8, 0xcd, 0xb7, 0x34, 0xd1, 0x15, 0xc0, 0xc5, 0x62, 0x6e, 0xb9, 0x32, 0xeb,
   0x8c, 0xb6, 0x93, 0xa8, 0x5c, 0x2a, 0xed, 0x17, 0xf3, 0x08, 0x77, 0x20, 0x12, 0x55, 0xa7, 0x23,
   0x1c, 0x6b, 0x5a, 0xc4, 0xcd, 0x9b, 0x06, 0x65, 0x4a, 0x46, 0x89, 0xb5, 0xad, 0x9a, 0x64, 0x08,
   0xd1, 0x84, 0x5b, 0xa5, 0xfe, 0x82, 0xe8, 0x71, 0x07, 0xa2, 0x9f, 0xda, 0x30, 0xc0, 0x1c, 0xcf,
   0x0a, 0xc3, 0xde, 0x83, 0xbe, 0x8e, 0x11, 0xdc, 0xbc, 0x16, 0x91, 0x62, 0xee, 0xad, 0x78, 0x3d,
   0x95, 0xf6, 0x99, 0x9a, 0xdb, 0xcf, 0x2b, 0xe5, 0x1f, 0x94, 0x37, 0xe6, 0xda, 0xc6, 0x83, 0x7d,
   0x0c, 0x50, 0x5a, 0x8e, 0x44, 0xa3, 0x7f, 0xe7, 0x76, 0xff, 0x2d, 0x17, 0xf6, 0x01, 0x0c, 0x4a,
   0xfb, 0xbc, 0x58, 0xdb, 0x05, 0xa5, 0x70, 0x8b, 0x77, 0x6d, 0xa7, 0xf9, 0x6a, 0x4f, 0x0b, 0xe3,
   0xb2, 0xba, 0x75, 0xbe, 0x92, 0x99, 0x7d, 0x08, 0xfd, 0x39, 0x9d, 0x23, 0x95, 0xdd, 0xb5, 0xcb,
   0xa1, 0x39, 0x62, 0xee, 0x5d, 0xb0, 0x01, 0xbf, 0x5b, 0x8b, 0x2c, 0xb5, 0x95, 0xaf, 0xc7, 0x1a,
   0xe2, 0x41, 0xce, 0x45, 0x9c, 0x8a, 0xec, 0x18, 0x5f, 0xb5, 0x43, 0x7a, 0xd5, 0x6e, 0x69, 0xa2,
   0x5f, 0xda, 0x30, 0xc4, 0x78, 0xf4, 0xc8, 0xf8, 0x9b, 0xcf, 0xbf, 0xca, 0x27, 0x16, 0xf3, 0x1c,
   0xe9, 0x3c, 0xa6, 0x21, 0xd6, 0xe1, 0x1e, 0x45, 0x5f, 0xc1, 0xe0, 0xc5, 0xec, 0x15, 0xb1, 0xbc,
   0x0f, 0x3d, 0x1d, 0xbf, 0x98, 0xbd, 0x7a, 0x0b, 0xc9, 0xce, 0x48, 0xa3, 0xa0, 0xda, 0x8c, 0x82,
   0xca, 0xbd, 0xb8, 0x75, 0x31, 0x23, 0x02, 0xdb, 0x9c, 0xe4, 0xe8, 0x5b, 0xb8, 0x7b, 0x26, 0xb4,
   0x58, 0x51, 0x47, 0x68, 0xbc, 0x9f, 0x6c, 0xc5, 0x1e, 0x41, 0xa7, 0x2c, 0x8c, 0x0f, 0x7f, 0xf7,
   0x7a, 0x9e, 0x67, 0x85, 0xe1, 0x68, 0x65, 0x0f, 0xa1, 0x93, 0xae, 0x92, 0x9b, 0xa7, 0x47, 0x3f,
   0x4d, 0x1c, 0x6d, 0xd1, 0xa7, 0x70, 0xa7, 0x09, 0xfe, 0xb4, 0x58, 0xe1, 0xbf, 0x0d, 0x36, 0xe5,
   0x5c, 0x09, 0xfb, 0x09, 0x45, 0x1f, 0x73, 0x07, 0x6a, 0xed, 0x21, 0x85, 0xf3, 0xda, 0xc3, 0x59,
   0x9f, 0x82, 0x3e, 0xf9, 0x3d, 0x00, 0x00, 0xff, 0xff, 0xdf, 0x2d, 0xb2, 0x02, 0x5b, 0x0e, 0x00,
   0x00,
}