# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: user.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from biostarPython.service import card_pb2 as card__pb2
from biostarPython.service import finger_pb2 as finger__pb2
from biostarPython.service import face_pb2 as face__pb2
from biostarPython.service import tna_pb2 as tna__pb2
from biostarPython.service import err_pb2 as err__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='user.proto',
  package='user',
  syntax='proto3',
  serialized_options=_b('\n\027com.supremainc.sdk.userP\001Z\024biostar/service/user'),
  serialized_pb=_b('\n\nuser.proto\x12\x04user\x1a\ncard.proto\x1a\x0c\x66inger.proto\x1a\nface.proto\x1a\ttna.proto\x1a\terr.proto\"e\n\x07UserHdr\x12\n\n\x02ID\x18\x01 \x01(\t\x12\x11\n\tnumOfCard\x18\x02 \x01(\x05\x12\x13\n\x0bnumOfFinger\x18\x03 \x01(\x05\x12\x11\n\tnumOfFace\x18\x04 \x01(\x05\x12\x13\n\x0b\x61uthGroupID\x18\x05 \x01(\r\"\"\n\x0eGetListRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\".\n\x0fGetListResponse\x12\x1b\n\x04hdrs\x18\x01 \x03(\x0b\x32\r.user.UserHdr\"\xf1\x01\n\x0bUserSetting\x12\x11\n\tstartTime\x18\x01 \x01(\r\x12\x0f\n\x07\x65ndTime\x18\x02 \x01(\r\x12\x19\n\x11\x62iometricAuthMode\x18\x03 \x01(\r\x12\x14\n\x0c\x63\x61rdAuthMode\x18\x04 \x01(\r\x12\x12\n\nIDAuthMode\x18\x05 \x01(\r\x12\x15\n\rsecurityLevel\x18\x06 \x01(\r\x12\x17\n\x0f\x66\x61\x63\x65\x41uthExtMode\x18\x07 \x01(\r\x12\x19\n\x11\x66ingerAuthExtMode\x18\x08 \x01(\r\x12\x17\n\x0f\x63\x61rdAuthExtMode\x18\t \x01(\r\x12\x15\n\rIDAuthExtMode\x18\n \x01(\r\"\x92\x02\n\x08UserInfo\x12\x1a\n\x03hdr\x18\x01 \x01(\x0b\x32\r.user.UserHdr\x12\"\n\x07setting\x18\x02 \x01(\x0b\x32\x11.user.UserSetting\x12\x0c\n\x04name\x18\x03 \x01(\t\x12 \n\x05\x63\x61rds\x18\x04 \x03(\x0b\x32\x11.card.CSNCardData\x12#\n\x07\x66ingers\x18\x05 \x03(\x0b\x32\x12.finger.FingerData\x12\x1d\n\x05\x66\x61\x63\x65s\x18\x06 \x03(\x0b\x32\x0e.face.FaceData\x12\x16\n\x0e\x61\x63\x63\x65ssGroupIDs\x18\x07 \x03(\r\x12\x1e\n\x08jobCodes\x18\x08 \x03(\x0b\x32\x0c.tna.JobCode\x12\x0b\n\x03PIN\x18\t \x01(\x0c\x12\r\n\x05photo\x18\n \x01(\x0c\"/\n\nGetRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\x0f\n\x07userIDs\x18\x02 \x03(\t\",\n\x0bGetResponse\x12\x1d\n\x05users\x18\x01 \x03(\x0b\x32\x0e.user.UserInfo\"H\n\x11GetPartialRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\x0f\n\x07userIDs\x18\x02 \x03(\t\x12\x10\n\x08infoMask\x18\x03 \x01(\r\"3\n\x12GetPartialResponse\x12\x1d\n\x05users\x18\x01 \x03(\x0b\x32\x0e.user.UserInfo\"S\n\rEnrollRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\x1d\n\x05users\x18\x02 \x03(\x0b\x32\x0e.user.UserInfo\x12\x11\n\toverwrite\x18\x03 \x01(\x08\"\x10\n\x0e\x45nrollResponse\"Y\n\x12\x45nrollMultiRequest\x12\x11\n\tdeviceIDs\x18\x01 \x03(\r\x12\x1d\n\x05users\x18\x02 \x03(\x0b\x32\x0e.user.UserInfo\x12\x11\n\toverwrite\x18\x03 \x01(\x08\"?\n\x13\x45nrollMultiResponse\x12(\n\x0c\x64\x65viceErrors\x18\x01 \x03(\x0b\x32\x12.err.ErrorResponse\"2\n\rDeleteRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\x0f\n\x07userIDs\x18\x02 \x03(\t\"\x10\n\x0e\x44\x65leteResponse\"8\n\x12\x44\x65leteMultiRequest\x12\x11\n\tdeviceIDs\x18\x01 \x03(\r\x12\x0f\n\x07userIDs\x18\x02 \x03(\t\"?\n\x13\x44\x65leteMultiResponse\x12(\n\x0c\x64\x65viceErrors\x18\x01 \x03(\x0b\x32\x12.err.ErrorResponse\"$\n\x10\x44\x65leteAllRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\"\x13\n\x11\x44\x65leteAllResponse\"*\n\x15\x44\x65leteAllMultiRequest\x12\x11\n\tdeviceIDs\x18\x01 \x03(\r\"B\n\x16\x44\x65leteAllMultiResponse\x12(\n\x0c\x64\x65viceErrors\x18\x01 \x03(\x0b\x32\x12.err.ErrorResponse\"<\n\x08UserCard\x12\x0e\n\x06userID\x18\x01 \x01(\t\x12 \n\x05\x63\x61rds\x18\x02 \x03(\x0b\x32\x11.card.CSNCardData\"3\n\x0eGetCardRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\x0f\n\x07userIDs\x18\x02 \x03(\t\"4\n\x0fGetCardResponse\x12!\n\tuserCards\x18\x01 \x03(\x0b\x32\x0e.user.UserCard\"E\n\x0eSetCardRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12!\n\tuserCards\x18\x02 \x03(\x0b\x32\x0e.user.UserCard\"\x11\n\x0fSetCardResponse\"K\n\x13SetCardMultiRequest\x12\x11\n\tdeviceIDs\x18\x01 \x03(\r\x12!\n\tuserCards\x18\x02 \x03(\x0b\x32\x0e.user.UserCard\"@\n\x14SetCardMultiResponse\x12(\n\x0c\x64\x65viceErrors\x18\x01 \x03(\x0b\x32\x12.err.ErrorResponse\"A\n\nUserFinger\x12\x0e\n\x06userID\x18\x01 \x01(\t\x12#\n\x07\x66ingers\x18\x02 \x03(\x0b\x32\x12.finger.FingerData\"5\n\x10GetFingerRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\x0f\n\x07userIDs\x18\x02 \x03(\t\":\n\x11GetFingerResponse\x12%\n\x0buserFingers\x18\x01 \x03(\x0b\x32\x10.user.UserFinger\"K\n\x10SetFingerRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12%\n\x0buserFingers\x18\x02 \x03(\x0b\x32\x10.user.UserFinger\"\x13\n\x11SetFingerResponse\"Q\n\x15SetFingerMultiRequest\x12\x11\n\tdeviceIDs\x18\x01 \x03(\r\x12%\n\x0buserFingers\x18\x02 \x03(\x0b\x32\x10.user.UserFinger\"B\n\x16SetFingerMultiResponse\x12(\n\x0c\x64\x65viceErrors\x18\x01 \x03(\x0b\x32\x12.err.ErrorResponse\"9\n\x08UserFace\x12\x0e\n\x06userID\x18\x01 \x01(\t\x12\x1d\n\x05\x66\x61\x63\x65s\x18\x02 \x03(\x0b\x32\x0e.face.FaceData\"3\n\x0eGetFaceRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\x0f\n\x07userIDs\x18\x02 \x03(\t\"4\n\x0fGetFaceResponse\x12!\n\tuserFaces\x18\x01 \x03(\x0b\x32\x0e.user.UserFace\"E\n\x0eSetFaceRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12!\n\tuserFaces\x18\x02 \x03(\x0b\x32\x0e.user.UserFace\"\x11\n\x0fSetFaceResponse\"K\n\x13SetFaceMultiRequest\x12\x11\n\tdeviceIDs\x18\x01 \x03(\r\x12!\n\tuserFaces\x18\x02 \x03(\x0b\x32\x0e.user.UserFace\"@\n\x14SetFaceMultiResponse\x12(\n\x0c\x64\x65viceErrors\x18\x01 \x03(\x0b\x32\x12.err.ErrorResponse\"9\n\x0fUserAccessGroup\x12\x0e\n\x06userID\x18\x01 \x01(\t\x12\x16\n\x0e\x61\x63\x63\x65ssGroupIDs\x18\x02 \x03(\r\":\n\x15GetAccessGroupRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\x0f\n\x07userIDs\x18\x02 \x03(\t\"I\n\x16GetAccessGroupResponse\x12/\n\x10userAccessGroups\x18\x01 \x03(\x0b\x32\x15.user.UserAccessGroup\"Z\n\x15SetAccessGroupRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12/\n\x10userAccessGroups\x18\x02 \x03(\x0b\x32\x15.user.UserAccessGroup\"\x18\n\x16SetAccessGroupResponse\"`\n\x1aSetAccessGroupMultiRequest\x12\x11\n\tdeviceIDs\x18\x01 \x03(\r\x12/\n\x10userAccessGroups\x18\x02 \x03(\x0b\x32\x15.user.UserAccessGroup\"G\n\x1bSetAccessGroupMultiResponse\x12(\n\x0c\x64\x65viceErrors\x18\x01 \x03(\x0b\x32\x12.err.ErrorResponse\"=\n\x0bUserJobCode\x12\x0e\n\x06userID\x18\x01 \x01(\t\x12\x1e\n\x08jobCodes\x18\x02 \x03(\x0b\x32\x0c.tna.JobCode\"6\n\x11GetJobCodeRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\x0f\n\x07userIDs\x18\x02 \x03(\t\"=\n\x12GetJobCodeResponse\x12\'\n\x0cuserJobCodes\x18\x01 \x03(\x0b\x32\x11.user.UserJobCode\"N\n\x11SetJobCodeRequest\x12\x10\n\x08\x64\x65viceID\x18\x01 \x01(\r\x12\'\n\x0cuserJobCodes\x18\x02 \x03(\x0b\x32\x11.user.UserJobCode\"\x14\n\x12SetJobCodeResponse\"T\n\x16SetJobCodeMultiRequest\x12\x11\n\tdeviceIDs\x18\x01 \x03(\r\x12\'\n\x0cuserJobCodes\x18\x02 \x03(\x0b\x32\x11.user.UserJobCode\"C\n\x17SetJobCodeMultiResponse\x12(\n\x0c\x64\x65viceErrors\x18\x01 \x03(\x0b\x32\x12.err.ErrorResponse\" \n\x11GetPINHashRequest\x12\x0b\n\x03PIN\x18\x01 \x01(\t\"%\n\x12GetPINHashResponse\x12\x0f\n\x07hashVal\x18\x01 \x01(\x0c*\x8c\x02\n\x08InfoMask\x12\x15\n\x11USER_MASK_ID_ONLY\x10\x00\x12\x11\n\rUSER_MASK_HDR\x10\x01\x12\x15\n\x11USER_MASK_SETTING\x10\x02\x12\x12\n\x0eUSER_MASK_NAME\x10\x04\x12\x13\n\x0fUSER_MASK_PHOTO\x10\x08\x12\x11\n\rUSER_MASK_PIN\x10\x10\x12\x12\n\x0eUSER_MASK_CARD\x10 \x12\x14\n\x10USER_MASK_FINGER\x10@\x12\x13\n\x0eUSER_MASK_FACE\x10\x80\x01\x12\x1b\n\x16USER_MASK_ACCESS_GROUP\x10\x80\x02\x12\x12\n\rUSER_MASK_JOB\x10\x80\x04\x12\x13\n\rUSER_MASK_ALL\x10\xff\xff\x03\x32\xe8\x0c\n\x04User\x12\x36\n\x07GetList\x12\x14.user.GetListRequest\x1a\x15.user.GetListResponse\x12*\n\x03Get\x12\x10.user.GetRequest\x1a\x11.user.GetResponse\x12?\n\nGetPartial\x12\x17.user.GetPartialRequest\x1a\x18.user.GetPartialResponse\x12\x33\n\x06\x45nroll\x12\x13.user.EnrollRequest\x1a\x14.user.EnrollResponse\x12\x42\n\x0b\x45nrollMulti\x12\x18.user.EnrollMultiRequest\x1a\x19.user.EnrollMultiResponse\x12\x33\n\x06\x44\x65lete\x12\x13.user.DeleteRequest\x1a\x14.user.DeleteResponse\x12\x42\n\x0b\x44\x65leteMulti\x12\x18.user.DeleteMultiRequest\x1a\x19.user.DeleteMultiResponse\x12<\n\tDeleteAll\x12\x16.user.DeleteAllRequest\x1a\x17.user.DeleteAllResponse\x12K\n\x0e\x44\x65leteAllMulti\x12\x1b.user.DeleteAllMultiRequest\x1a\x1c.user.DeleteAllMultiResponse\x12\x36\n\x07GetCard\x12\x14.user.GetCardRequest\x1a\x15.user.GetCardResponse\x12\x36\n\x07SetCard\x12\x14.user.SetCardRequest\x1a\x15.user.SetCardResponse\x12\x45\n\x0cSetCardMulti\x12\x19.user.SetCardMultiRequest\x1a\x1a.user.SetCardMultiResponse\x12<\n\tGetFinger\x12\x16.user.GetFingerRequest\x1a\x17.user.GetFingerResponse\x12<\n\tSetFinger\x12\x16.user.SetFingerRequest\x1a\x17.user.SetFingerResponse\x12K\n\x0eSetFingerMulti\x12\x1b.user.SetFingerMultiRequest\x1a\x1c.user.SetFingerMultiResponse\x12\x36\n\x07GetFace\x12\x14.user.GetFaceRequest\x1a\x15.user.GetFaceResponse\x12\x36\n\x07SetFace\x12\x14.user.SetFaceRequest\x1a\x15.user.SetFaceResponse\x12\x45\n\x0cSetFaceMulti\x12\x19.user.SetFaceMultiRequest\x1a\x1a.user.SetFaceMultiResponse\x12K\n\x0eGetAccessGroup\x12\x1b.user.GetAccessGroupRequest\x1a\x1c.user.GetAccessGroupResponse\x12K\n\x0eSetAccessGroup\x12\x1b.user.SetAccessGroupRequest\x1a\x1c.user.SetAccessGroupResponse\x12Z\n\x13SetAccessGroupMulti\x12 .user.SetAccessGroupMultiRequest\x1a!.user.SetAccessGroupMultiResponse\x12?\n\nGetJobCode\x12\x17.user.GetJobCodeRequest\x1a\x18.user.GetJobCodeResponse\x12?\n\nSetJobCode\x12\x17.user.SetJobCodeRequest\x1a\x18.user.SetJobCodeResponse\x12N\n\x0fSetJobCodeMulti\x12\x1c.user.SetJobCodeMultiRequest\x1a\x1d.user.SetJobCodeMultiResponse\x12?\n\nGetPINHash\x12\x17.user.GetPINHashRequest\x1a\x18.user.GetPINHashResponseB1\n\x17\x63om.supremainc.sdk.userP\x01Z\x14\x62iostar/service/userb\x06proto3')
  ,
  dependencies=[card__pb2.DESCRIPTOR,finger__pb2.DESCRIPTOR,face__pb2.DESCRIPTOR,tna__pb2.DESCRIPTOR,err__pb2.DESCRIPTOR,])

_INFOMASK = _descriptor.EnumDescriptor(
  name='InfoMask',
  full_name='user.InfoMask',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_ID_ONLY', index=0, number=0,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_HDR', index=1, number=1,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_SETTING', index=2, number=2,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_NAME', index=3, number=4,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_PHOTO', index=4, number=8,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_PIN', index=5, number=16,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_CARD', index=6, number=32,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_FINGER', index=7, number=64,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_FACE', index=8, number=128,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_ACCESS_GROUP', index=9, number=256,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_JOB', index=10, number=512,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='USER_MASK_ALL', index=11, number=65535,
      serialized_options=None,
      type=None),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=3861,
  serialized_end=4129,
)
_sym_db.RegisterEnumDescriptor(_INFOMASK)

InfoMask = enum_type_wrapper.EnumTypeWrapper(_INFOMASK)
USER_MASK_ID_ONLY = 0
USER_MASK_HDR = 1
USER_MASK_SETTING = 2
USER_MASK_NAME = 4
USER_MASK_PHOTO = 8
USER_MASK_PIN = 16
USER_MASK_CARD = 32
USER_MASK_FINGER = 64
USER_MASK_FACE = 128
USER_MASK_ACCESS_GROUP = 256
USER_MASK_JOB = 512
USER_MASK_ALL = 65535



_USERHDR = _descriptor.Descriptor(
  name='UserHdr',
  full_name='user.UserHdr',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='ID', full_name='user.UserHdr.ID', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='numOfCard', full_name='user.UserHdr.numOfCard', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='numOfFinger', full_name='user.UserHdr.numOfFinger', index=2,
      number=3, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='numOfFace', full_name='user.UserHdr.numOfFace', index=3,
      number=4, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='authGroupID', full_name='user.UserHdr.authGroupID', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=80,
  serialized_end=181,
)


_GETLISTREQUEST = _descriptor.Descriptor(
  name='GetListRequest',
  full_name='user.GetListRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.GetListRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=183,
  serialized_end=217,
)


_GETLISTRESPONSE = _descriptor.Descriptor(
  name='GetListResponse',
  full_name='user.GetListResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hdrs', full_name='user.GetListResponse.hdrs', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=219,
  serialized_end=265,
)


_USERSETTING = _descriptor.Descriptor(
  name='UserSetting',
  full_name='user.UserSetting',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='startTime', full_name='user.UserSetting.startTime', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='endTime', full_name='user.UserSetting.endTime', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='biometricAuthMode', full_name='user.UserSetting.biometricAuthMode', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='cardAuthMode', full_name='user.UserSetting.cardAuthMode', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='IDAuthMode', full_name='user.UserSetting.IDAuthMode', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='securityLevel', full_name='user.UserSetting.securityLevel', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='faceAuthExtMode', full_name='user.UserSetting.faceAuthExtMode', index=6,
      number=7, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fingerAuthExtMode', full_name='user.UserSetting.fingerAuthExtMode', index=7,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='cardAuthExtMode', full_name='user.UserSetting.cardAuthExtMode', index=8,
      number=9, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='IDAuthExtMode', full_name='user.UserSetting.IDAuthExtMode', index=9,
      number=10, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=268,
  serialized_end=509,
)


_USERINFO = _descriptor.Descriptor(
  name='UserInfo',
  full_name='user.UserInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hdr', full_name='user.UserInfo.hdr', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='setting', full_name='user.UserInfo.setting', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='user.UserInfo.name', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='cards', full_name='user.UserInfo.cards', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fingers', full_name='user.UserInfo.fingers', index=4,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='faces', full_name='user.UserInfo.faces', index=5,
      number=6, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='accessGroupIDs', full_name='user.UserInfo.accessGroupIDs', index=6,
      number=7, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='jobCodes', full_name='user.UserInfo.jobCodes', index=7,
      number=8, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='PIN', full_name='user.UserInfo.PIN', index=8,
      number=9, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='photo', full_name='user.UserInfo.photo', index=9,
      number=10, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=512,
  serialized_end=786,
)


_GETREQUEST = _descriptor.Descriptor(
  name='GetRequest',
  full_name='user.GetRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.GetRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userIDs', full_name='user.GetRequest.userIDs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=788,
  serialized_end=835,
)


_GETRESPONSE = _descriptor.Descriptor(
  name='GetResponse',
  full_name='user.GetResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='users', full_name='user.GetResponse.users', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=837,
  serialized_end=881,
)


_GETPARTIALREQUEST = _descriptor.Descriptor(
  name='GetPartialRequest',
  full_name='user.GetPartialRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.GetPartialRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userIDs', full_name='user.GetPartialRequest.userIDs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='infoMask', full_name='user.GetPartialRequest.infoMask', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=883,
  serialized_end=955,
)


_GETPARTIALRESPONSE = _descriptor.Descriptor(
  name='GetPartialResponse',
  full_name='user.GetPartialResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='users', full_name='user.GetPartialResponse.users', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=957,
  serialized_end=1008,
)


_ENROLLREQUEST = _descriptor.Descriptor(
  name='EnrollRequest',
  full_name='user.EnrollRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.EnrollRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='users', full_name='user.EnrollRequest.users', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='overwrite', full_name='user.EnrollRequest.overwrite', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1010,
  serialized_end=1093,
)


_ENROLLRESPONSE = _descriptor.Descriptor(
  name='EnrollResponse',
  full_name='user.EnrollResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1095,
  serialized_end=1111,
)


_ENROLLMULTIREQUEST = _descriptor.Descriptor(
  name='EnrollMultiRequest',
  full_name='user.EnrollMultiRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceIDs', full_name='user.EnrollMultiRequest.deviceIDs', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='users', full_name='user.EnrollMultiRequest.users', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='overwrite', full_name='user.EnrollMultiRequest.overwrite', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1113,
  serialized_end=1202,
)


_ENROLLMULTIRESPONSE = _descriptor.Descriptor(
  name='EnrollMultiResponse',
  full_name='user.EnrollMultiResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceErrors', full_name='user.EnrollMultiResponse.deviceErrors', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1204,
  serialized_end=1267,
)


_DELETEREQUEST = _descriptor.Descriptor(
  name='DeleteRequest',
  full_name='user.DeleteRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.DeleteRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userIDs', full_name='user.DeleteRequest.userIDs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1269,
  serialized_end=1319,
)


_DELETERESPONSE = _descriptor.Descriptor(
  name='DeleteResponse',
  full_name='user.DeleteResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1321,
  serialized_end=1337,
)


_DELETEMULTIREQUEST = _descriptor.Descriptor(
  name='DeleteMultiRequest',
  full_name='user.DeleteMultiRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceIDs', full_name='user.DeleteMultiRequest.deviceIDs', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userIDs', full_name='user.DeleteMultiRequest.userIDs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1339,
  serialized_end=1395,
)


_DELETEMULTIRESPONSE = _descriptor.Descriptor(
  name='DeleteMultiResponse',
  full_name='user.DeleteMultiResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceErrors', full_name='user.DeleteMultiResponse.deviceErrors', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1397,
  serialized_end=1460,
)


_DELETEALLREQUEST = _descriptor.Descriptor(
  name='DeleteAllRequest',
  full_name='user.DeleteAllRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.DeleteAllRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1462,
  serialized_end=1498,
)


_DELETEALLRESPONSE = _descriptor.Descriptor(
  name='DeleteAllResponse',
  full_name='user.DeleteAllResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1500,
  serialized_end=1519,
)


_DELETEALLMULTIREQUEST = _descriptor.Descriptor(
  name='DeleteAllMultiRequest',
  full_name='user.DeleteAllMultiRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceIDs', full_name='user.DeleteAllMultiRequest.deviceIDs', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1521,
  serialized_end=1563,
)


_DELETEALLMULTIRESPONSE = _descriptor.Descriptor(
  name='DeleteAllMultiResponse',
  full_name='user.DeleteAllMultiResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceErrors', full_name='user.DeleteAllMultiResponse.deviceErrors', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1565,
  serialized_end=1631,
)


_USERCARD = _descriptor.Descriptor(
  name='UserCard',
  full_name='user.UserCard',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userID', full_name='user.UserCard.userID', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='cards', full_name='user.UserCard.cards', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1633,
  serialized_end=1693,
)


_GETCARDREQUEST = _descriptor.Descriptor(
  name='GetCardRequest',
  full_name='user.GetCardRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.GetCardRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userIDs', full_name='user.GetCardRequest.userIDs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1695,
  serialized_end=1746,
)


_GETCARDRESPONSE = _descriptor.Descriptor(
  name='GetCardResponse',
  full_name='user.GetCardResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userCards', full_name='user.GetCardResponse.userCards', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1748,
  serialized_end=1800,
)


_SETCARDREQUEST = _descriptor.Descriptor(
  name='SetCardRequest',
  full_name='user.SetCardRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.SetCardRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userCards', full_name='user.SetCardRequest.userCards', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1802,
  serialized_end=1871,
)


_SETCARDRESPONSE = _descriptor.Descriptor(
  name='SetCardResponse',
  full_name='user.SetCardResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1873,
  serialized_end=1890,
)


_SETCARDMULTIREQUEST = _descriptor.Descriptor(
  name='SetCardMultiRequest',
  full_name='user.SetCardMultiRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceIDs', full_name='user.SetCardMultiRequest.deviceIDs', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userCards', full_name='user.SetCardMultiRequest.userCards', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1892,
  serialized_end=1967,
)


_SETCARDMULTIRESPONSE = _descriptor.Descriptor(
  name='SetCardMultiResponse',
  full_name='user.SetCardMultiResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceErrors', full_name='user.SetCardMultiResponse.deviceErrors', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1969,
  serialized_end=2033,
)


_USERFINGER = _descriptor.Descriptor(
  name='UserFinger',
  full_name='user.UserFinger',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userID', full_name='user.UserFinger.userID', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fingers', full_name='user.UserFinger.fingers', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2035,
  serialized_end=2100,
)


_GETFINGERREQUEST = _descriptor.Descriptor(
  name='GetFingerRequest',
  full_name='user.GetFingerRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.GetFingerRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userIDs', full_name='user.GetFingerRequest.userIDs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2102,
  serialized_end=2155,
)


_GETFINGERRESPONSE = _descriptor.Descriptor(
  name='GetFingerResponse',
  full_name='user.GetFingerResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userFingers', full_name='user.GetFingerResponse.userFingers', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2157,
  serialized_end=2215,
)


_SETFINGERREQUEST = _descriptor.Descriptor(
  name='SetFingerRequest',
  full_name='user.SetFingerRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.SetFingerRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userFingers', full_name='user.SetFingerRequest.userFingers', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2217,
  serialized_end=2292,
)


_SETFINGERRESPONSE = _descriptor.Descriptor(
  name='SetFingerResponse',
  full_name='user.SetFingerResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2294,
  serialized_end=2313,
)


_SETFINGERMULTIREQUEST = _descriptor.Descriptor(
  name='SetFingerMultiRequest',
  full_name='user.SetFingerMultiRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceIDs', full_name='user.SetFingerMultiRequest.deviceIDs', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userFingers', full_name='user.SetFingerMultiRequest.userFingers', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2315,
  serialized_end=2396,
)


_SETFINGERMULTIRESPONSE = _descriptor.Descriptor(
  name='SetFingerMultiResponse',
  full_name='user.SetFingerMultiResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceErrors', full_name='user.SetFingerMultiResponse.deviceErrors', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2398,
  serialized_end=2464,
)


_USERFACE = _descriptor.Descriptor(
  name='UserFace',
  full_name='user.UserFace',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userID', full_name='user.UserFace.userID', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='faces', full_name='user.UserFace.faces', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2466,
  serialized_end=2523,
)


_GETFACEREQUEST = _descriptor.Descriptor(
  name='GetFaceRequest',
  full_name='user.GetFaceRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.GetFaceRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userIDs', full_name='user.GetFaceRequest.userIDs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2525,
  serialized_end=2576,
)


_GETFACERESPONSE = _descriptor.Descriptor(
  name='GetFaceResponse',
  full_name='user.GetFaceResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userFaces', full_name='user.GetFaceResponse.userFaces', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2578,
  serialized_end=2630,
)


_SETFACEREQUEST = _descriptor.Descriptor(
  name='SetFaceRequest',
  full_name='user.SetFaceRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.SetFaceRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userFaces', full_name='user.SetFaceRequest.userFaces', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2632,
  serialized_end=2701,
)


_SETFACERESPONSE = _descriptor.Descriptor(
  name='SetFaceResponse',
  full_name='user.SetFaceResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2703,
  serialized_end=2720,
)


_SETFACEMULTIREQUEST = _descriptor.Descriptor(
  name='SetFaceMultiRequest',
  full_name='user.SetFaceMultiRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceIDs', full_name='user.SetFaceMultiRequest.deviceIDs', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userFaces', full_name='user.SetFaceMultiRequest.userFaces', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2722,
  serialized_end=2797,
)


_SETFACEMULTIRESPONSE = _descriptor.Descriptor(
  name='SetFaceMultiResponse',
  full_name='user.SetFaceMultiResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceErrors', full_name='user.SetFaceMultiResponse.deviceErrors', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2799,
  serialized_end=2863,
)


_USERACCESSGROUP = _descriptor.Descriptor(
  name='UserAccessGroup',
  full_name='user.UserAccessGroup',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userID', full_name='user.UserAccessGroup.userID', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='accessGroupIDs', full_name='user.UserAccessGroup.accessGroupIDs', index=1,
      number=2, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2865,
  serialized_end=2922,
)


_GETACCESSGROUPREQUEST = _descriptor.Descriptor(
  name='GetAccessGroupRequest',
  full_name='user.GetAccessGroupRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.GetAccessGroupRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userIDs', full_name='user.GetAccessGroupRequest.userIDs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2924,
  serialized_end=2982,
)


_GETACCESSGROUPRESPONSE = _descriptor.Descriptor(
  name='GetAccessGroupResponse',
  full_name='user.GetAccessGroupResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userAccessGroups', full_name='user.GetAccessGroupResponse.userAccessGroups', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2984,
  serialized_end=3057,
)


_SETACCESSGROUPREQUEST = _descriptor.Descriptor(
  name='SetAccessGroupRequest',
  full_name='user.SetAccessGroupRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.SetAccessGroupRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userAccessGroups', full_name='user.SetAccessGroupRequest.userAccessGroups', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3059,
  serialized_end=3149,
)


_SETACCESSGROUPRESPONSE = _descriptor.Descriptor(
  name='SetAccessGroupResponse',
  full_name='user.SetAccessGroupResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3151,
  serialized_end=3175,
)


_SETACCESSGROUPMULTIREQUEST = _descriptor.Descriptor(
  name='SetAccessGroupMultiRequest',
  full_name='user.SetAccessGroupMultiRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceIDs', full_name='user.SetAccessGroupMultiRequest.deviceIDs', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userAccessGroups', full_name='user.SetAccessGroupMultiRequest.userAccessGroups', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3177,
  serialized_end=3273,
)


_SETACCESSGROUPMULTIRESPONSE = _descriptor.Descriptor(
  name='SetAccessGroupMultiResponse',
  full_name='user.SetAccessGroupMultiResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceErrors', full_name='user.SetAccessGroupMultiResponse.deviceErrors', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3275,
  serialized_end=3346,
)


_USERJOBCODE = _descriptor.Descriptor(
  name='UserJobCode',
  full_name='user.UserJobCode',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userID', full_name='user.UserJobCode.userID', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='jobCodes', full_name='user.UserJobCode.jobCodes', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3348,
  serialized_end=3409,
)


_GETJOBCODEREQUEST = _descriptor.Descriptor(
  name='GetJobCodeRequest',
  full_name='user.GetJobCodeRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.GetJobCodeRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userIDs', full_name='user.GetJobCodeRequest.userIDs', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3411,
  serialized_end=3465,
)


_GETJOBCODERESPONSE = _descriptor.Descriptor(
  name='GetJobCodeResponse',
  full_name='user.GetJobCodeResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='userJobCodes', full_name='user.GetJobCodeResponse.userJobCodes', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3467,
  serialized_end=3528,
)


_SETJOBCODEREQUEST = _descriptor.Descriptor(
  name='SetJobCodeRequest',
  full_name='user.SetJobCodeRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceID', full_name='user.SetJobCodeRequest.deviceID', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userJobCodes', full_name='user.SetJobCodeRequest.userJobCodes', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3530,
  serialized_end=3608,
)


_SETJOBCODERESPONSE = _descriptor.Descriptor(
  name='SetJobCodeResponse',
  full_name='user.SetJobCodeResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3610,
  serialized_end=3630,
)


_SETJOBCODEMULTIREQUEST = _descriptor.Descriptor(
  name='SetJobCodeMultiRequest',
  full_name='user.SetJobCodeMultiRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceIDs', full_name='user.SetJobCodeMultiRequest.deviceIDs', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='userJobCodes', full_name='user.SetJobCodeMultiRequest.userJobCodes', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3632,
  serialized_end=3716,
)


_SETJOBCODEMULTIRESPONSE = _descriptor.Descriptor(
  name='SetJobCodeMultiResponse',
  full_name='user.SetJobCodeMultiResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deviceErrors', full_name='user.SetJobCodeMultiResponse.deviceErrors', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3718,
  serialized_end=3785,
)


_GETPINHASHREQUEST = _descriptor.Descriptor(
  name='GetPINHashRequest',
  full_name='user.GetPINHashRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='PIN', full_name='user.GetPINHashRequest.PIN', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3787,
  serialized_end=3819,
)


_GETPINHASHRESPONSE = _descriptor.Descriptor(
  name='GetPINHashResponse',
  full_name='user.GetPINHashResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hashVal', full_name='user.GetPINHashResponse.hashVal', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3821,
  serialized_end=3858,
)

_GETLISTRESPONSE.fields_by_name['hdrs'].message_type = _USERHDR
_USERINFO.fields_by_name['hdr'].message_type = _USERHDR
_USERINFO.fields_by_name['setting'].message_type = _USERSETTING
_USERINFO.fields_by_name['cards'].message_type = card__pb2._CSNCARDDATA
_USERINFO.fields_by_name['fingers'].message_type = finger__pb2._FINGERDATA
_USERINFO.fields_by_name['faces'].message_type = face__pb2._FACEDATA
_USERINFO.fields_by_name['jobCodes'].message_type = tna__pb2._JOBCODE
_GETRESPONSE.fields_by_name['users'].message_type = _USERINFO
_GETPARTIALRESPONSE.fields_by_name['users'].message_type = _USERINFO
_ENROLLREQUEST.fields_by_name['users'].message_type = _USERINFO
_ENROLLMULTIREQUEST.fields_by_name['users'].message_type = _USERINFO
_ENROLLMULTIRESPONSE.fields_by_name['deviceErrors'].message_type = err__pb2._ERRORRESPONSE
_DELETEMULTIRESPONSE.fields_by_name['deviceErrors'].message_type = err__pb2._ERRORRESPONSE
_DELETEALLMULTIRESPONSE.fields_by_name['deviceErrors'].message_type = err__pb2._ERRORRESPONSE
_USERCARD.fields_by_name['cards'].message_type = card__pb2._CSNCARDDATA
_GETCARDRESPONSE.fields_by_name['userCards'].message_type = _USERCARD
_SETCARDREQUEST.fields_by_name['userCards'].message_type = _USERCARD
_SETCARDMULTIREQUEST.fields_by_name['userCards'].message_type = _USERCARD
_SETCARDMULTIRESPONSE.fields_by_name['deviceErrors'].message_type = err__pb2._ERRORRESPONSE
_USERFINGER.fields_by_name['fingers'].message_type = finger__pb2._FINGERDATA
_GETFINGERRESPONSE.fields_by_name['userFingers'].message_type = _USERFINGER
_SETFINGERREQUEST.fields_by_name['userFingers'].message_type = _USERFINGER
_SETFINGERMULTIREQUEST.fields_by_name['userFingers'].message_type = _USERFINGER
_SETFINGERMULTIRESPONSE.fields_by_name['deviceErrors'].message_type = err__pb2._ERRORRESPONSE
_USERFACE.fields_by_name['faces'].message_type = face__pb2._FACEDATA
_GETFACERESPONSE.fields_by_name['userFaces'].message_type = _USERFACE
_SETFACEREQUEST.fields_by_name['userFaces'].message_type = _USERFACE
_SETFACEMULTIREQUEST.fields_by_name['userFaces'].message_type = _USERFACE
_SETFACEMULTIRESPONSE.fields_by_name['deviceErrors'].message_type = err__pb2._ERRORRESPONSE
_GETACCESSGROUPRESPONSE.fields_by_name['userAccessGroups'].message_type = _USERACCESSGROUP
_SETACCESSGROUPREQUEST.fields_by_name['userAccessGroups'].message_type = _USERACCESSGROUP
_SETACCESSGROUPMULTIREQUEST.fields_by_name['userAccessGroups'].message_type = _USERACCESSGROUP
_SETACCESSGROUPMULTIRESPONSE.fields_by_name['deviceErrors'].message_type = err__pb2._ERRORRESPONSE
_USERJOBCODE.fields_by_name['jobCodes'].message_type = tna__pb2._JOBCODE
_GETJOBCODERESPONSE.fields_by_name['userJobCodes'].message_type = _USERJOBCODE
_SETJOBCODEREQUEST.fields_by_name['userJobCodes'].message_type = _USERJOBCODE
_SETJOBCODEMULTIREQUEST.fields_by_name['userJobCodes'].message_type = _USERJOBCODE
_SETJOBCODEMULTIRESPONSE.fields_by_name['deviceErrors'].message_type = err__pb2._ERRORRESPONSE
DESCRIPTOR.message_types_by_name['UserHdr'] = _USERHDR
DESCRIPTOR.message_types_by_name['GetListRequest'] = _GETLISTREQUEST
DESCRIPTOR.message_types_by_name['GetListResponse'] = _GETLISTRESPONSE
DESCRIPTOR.message_types_by_name['UserSetting'] = _USERSETTING
DESCRIPTOR.message_types_by_name['UserInfo'] = _USERINFO
DESCRIPTOR.message_types_by_name['GetRequest'] = _GETREQUEST
DESCRIPTOR.message_types_by_name['GetResponse'] = _GETRESPONSE
DESCRIPTOR.message_types_by_name['GetPartialRequest'] = _GETPARTIALREQUEST
DESCRIPTOR.message_types_by_name['GetPartialResponse'] = _GETPARTIALRESPONSE
DESCRIPTOR.message_types_by_name['EnrollRequest'] = _ENROLLREQUEST
DESCRIPTOR.message_types_by_name['EnrollResponse'] = _ENROLLRESPONSE
DESCRIPTOR.message_types_by_name['EnrollMultiRequest'] = _ENROLLMULTIREQUEST
DESCRIPTOR.message_types_by_name['EnrollMultiResponse'] = _ENROLLMULTIRESPONSE
DESCRIPTOR.message_types_by_name['DeleteRequest'] = _DELETEREQUEST
DESCRIPTOR.message_types_by_name['DeleteResponse'] = _DELETERESPONSE
DESCRIPTOR.message_types_by_name['DeleteMultiRequest'] = _DELETEMULTIREQUEST
DESCRIPTOR.message_types_by_name['DeleteMultiResponse'] = _DELETEMULTIRESPONSE
DESCRIPTOR.message_types_by_name['DeleteAllRequest'] = _DELETEALLREQUEST
DESCRIPTOR.message_types_by_name['DeleteAllResponse'] = _DELETEALLRESPONSE
DESCRIPTOR.message_types_by_name['DeleteAllMultiRequest'] = _DELETEALLMULTIREQUEST
DESCRIPTOR.message_types_by_name['DeleteAllMultiResponse'] = _DELETEALLMULTIRESPONSE
DESCRIPTOR.message_types_by_name['UserCard'] = _USERCARD
DESCRIPTOR.message_types_by_name['GetCardRequest'] = _GETCARDREQUEST
DESCRIPTOR.message_types_by_name['GetCardResponse'] = _GETCARDRESPONSE
DESCRIPTOR.message_types_by_name['SetCardRequest'] = _SETCARDREQUEST
DESCRIPTOR.message_types_by_name['SetCardResponse'] = _SETCARDRESPONSE
DESCRIPTOR.message_types_by_name['SetCardMultiRequest'] = _SETCARDMULTIREQUEST
DESCRIPTOR.message_types_by_name['SetCardMultiResponse'] = _SETCARDMULTIRESPONSE
DESCRIPTOR.message_types_by_name['UserFinger'] = _USERFINGER
DESCRIPTOR.message_types_by_name['GetFingerRequest'] = _GETFINGERREQUEST
DESCRIPTOR.message_types_by_name['GetFingerResponse'] = _GETFINGERRESPONSE
DESCRIPTOR.message_types_by_name['SetFingerRequest'] = _SETFINGERREQUEST
DESCRIPTOR.message_types_by_name['SetFingerResponse'] = _SETFINGERRESPONSE
DESCRIPTOR.message_types_by_name['SetFingerMultiRequest'] = _SETFINGERMULTIREQUEST
DESCRIPTOR.message_types_by_name['SetFingerMultiResponse'] = _SETFINGERMULTIRESPONSE
DESCRIPTOR.message_types_by_name['UserFace'] = _USERFACE
DESCRIPTOR.message_types_by_name['GetFaceRequest'] = _GETFACEREQUEST
DESCRIPTOR.message_types_by_name['GetFaceResponse'] = _GETFACERESPONSE
DESCRIPTOR.message_types_by_name['SetFaceRequest'] = _SETFACEREQUEST
DESCRIPTOR.message_types_by_name['SetFaceResponse'] = _SETFACERESPONSE
DESCRIPTOR.message_types_by_name['SetFaceMultiRequest'] = _SETFACEMULTIREQUEST
DESCRIPTOR.message_types_by_name['SetFaceMultiResponse'] = _SETFACEMULTIRESPONSE
DESCRIPTOR.message_types_by_name['UserAccessGroup'] = _USERACCESSGROUP
DESCRIPTOR.message_types_by_name['GetAccessGroupRequest'] = _GETACCESSGROUPREQUEST
DESCRIPTOR.message_types_by_name['GetAccessGroupResponse'] = _GETACCESSGROUPRESPONSE
DESCRIPTOR.message_types_by_name['SetAccessGroupRequest'] = _SETACCESSGROUPREQUEST
DESCRIPTOR.message_types_by_name['SetAccessGroupResponse'] = _SETACCESSGROUPRESPONSE
DESCRIPTOR.message_types_by_name['SetAccessGroupMultiRequest'] = _SETACCESSGROUPMULTIREQUEST
DESCRIPTOR.message_types_by_name['SetAccessGroupMultiResponse'] = _SETACCESSGROUPMULTIRESPONSE
DESCRIPTOR.message_types_by_name['UserJobCode'] = _USERJOBCODE
DESCRIPTOR.message_types_by_name['GetJobCodeRequest'] = _GETJOBCODEREQUEST
DESCRIPTOR.message_types_by_name['GetJobCodeResponse'] = _GETJOBCODERESPONSE
DESCRIPTOR.message_types_by_name['SetJobCodeRequest'] = _SETJOBCODEREQUEST
DESCRIPTOR.message_types_by_name['SetJobCodeResponse'] = _SETJOBCODERESPONSE
DESCRIPTOR.message_types_by_name['SetJobCodeMultiRequest'] = _SETJOBCODEMULTIREQUEST
DESCRIPTOR.message_types_by_name['SetJobCodeMultiResponse'] = _SETJOBCODEMULTIRESPONSE
DESCRIPTOR.message_types_by_name['GetPINHashRequest'] = _GETPINHASHREQUEST
DESCRIPTOR.message_types_by_name['GetPINHashResponse'] = _GETPINHASHRESPONSE
DESCRIPTOR.enum_types_by_name['InfoMask'] = _INFOMASK
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

UserHdr = _reflection.GeneratedProtocolMessageType('UserHdr', (_message.Message,), dict(
  DESCRIPTOR = _USERHDR,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.UserHdr)
  ))
_sym_db.RegisterMessage(UserHdr)

GetListRequest = _reflection.GeneratedProtocolMessageType('GetListRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETLISTREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetListRequest)
  ))
_sym_db.RegisterMessage(GetListRequest)

GetListResponse = _reflection.GeneratedProtocolMessageType('GetListResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETLISTRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetListResponse)
  ))
_sym_db.RegisterMessage(GetListResponse)

UserSetting = _reflection.GeneratedProtocolMessageType('UserSetting', (_message.Message,), dict(
  DESCRIPTOR = _USERSETTING,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.UserSetting)
  ))
_sym_db.RegisterMessage(UserSetting)

UserInfo = _reflection.GeneratedProtocolMessageType('UserInfo', (_message.Message,), dict(
  DESCRIPTOR = _USERINFO,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.UserInfo)
  ))
_sym_db.RegisterMessage(UserInfo)

GetRequest = _reflection.GeneratedProtocolMessageType('GetRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetRequest)
  ))
_sym_db.RegisterMessage(GetRequest)

GetResponse = _reflection.GeneratedProtocolMessageType('GetResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetResponse)
  ))
_sym_db.RegisterMessage(GetResponse)

GetPartialRequest = _reflection.GeneratedProtocolMessageType('GetPartialRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETPARTIALREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetPartialRequest)
  ))
_sym_db.RegisterMessage(GetPartialRequest)

GetPartialResponse = _reflection.GeneratedProtocolMessageType('GetPartialResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETPARTIALRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetPartialResponse)
  ))
_sym_db.RegisterMessage(GetPartialResponse)

EnrollRequest = _reflection.GeneratedProtocolMessageType('EnrollRequest', (_message.Message,), dict(
  DESCRIPTOR = _ENROLLREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.EnrollRequest)
  ))
_sym_db.RegisterMessage(EnrollRequest)

EnrollResponse = _reflection.GeneratedProtocolMessageType('EnrollResponse', (_message.Message,), dict(
  DESCRIPTOR = _ENROLLRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.EnrollResponse)
  ))
_sym_db.RegisterMessage(EnrollResponse)

EnrollMultiRequest = _reflection.GeneratedProtocolMessageType('EnrollMultiRequest', (_message.Message,), dict(
  DESCRIPTOR = _ENROLLMULTIREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.EnrollMultiRequest)
  ))
_sym_db.RegisterMessage(EnrollMultiRequest)

EnrollMultiResponse = _reflection.GeneratedProtocolMessageType('EnrollMultiResponse', (_message.Message,), dict(
  DESCRIPTOR = _ENROLLMULTIRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.EnrollMultiResponse)
  ))
_sym_db.RegisterMessage(EnrollMultiResponse)

DeleteRequest = _reflection.GeneratedProtocolMessageType('DeleteRequest', (_message.Message,), dict(
  DESCRIPTOR = _DELETEREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.DeleteRequest)
  ))
_sym_db.RegisterMessage(DeleteRequest)

DeleteResponse = _reflection.GeneratedProtocolMessageType('DeleteResponse', (_message.Message,), dict(
  DESCRIPTOR = _DELETERESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.DeleteResponse)
  ))
_sym_db.RegisterMessage(DeleteResponse)

DeleteMultiRequest = _reflection.GeneratedProtocolMessageType('DeleteMultiRequest', (_message.Message,), dict(
  DESCRIPTOR = _DELETEMULTIREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.DeleteMultiRequest)
  ))
_sym_db.RegisterMessage(DeleteMultiRequest)

DeleteMultiResponse = _reflection.GeneratedProtocolMessageType('DeleteMultiResponse', (_message.Message,), dict(
  DESCRIPTOR = _DELETEMULTIRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.DeleteMultiResponse)
  ))
_sym_db.RegisterMessage(DeleteMultiResponse)

DeleteAllRequest = _reflection.GeneratedProtocolMessageType('DeleteAllRequest', (_message.Message,), dict(
  DESCRIPTOR = _DELETEALLREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.DeleteAllRequest)
  ))
_sym_db.RegisterMessage(DeleteAllRequest)

DeleteAllResponse = _reflection.GeneratedProtocolMessageType('DeleteAllResponse', (_message.Message,), dict(
  DESCRIPTOR = _DELETEALLRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.DeleteAllResponse)
  ))
_sym_db.RegisterMessage(DeleteAllResponse)

DeleteAllMultiRequest = _reflection.GeneratedProtocolMessageType('DeleteAllMultiRequest', (_message.Message,), dict(
  DESCRIPTOR = _DELETEALLMULTIREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.DeleteAllMultiRequest)
  ))
_sym_db.RegisterMessage(DeleteAllMultiRequest)

DeleteAllMultiResponse = _reflection.GeneratedProtocolMessageType('DeleteAllMultiResponse', (_message.Message,), dict(
  DESCRIPTOR = _DELETEALLMULTIRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.DeleteAllMultiResponse)
  ))
_sym_db.RegisterMessage(DeleteAllMultiResponse)

UserCard = _reflection.GeneratedProtocolMessageType('UserCard', (_message.Message,), dict(
  DESCRIPTOR = _USERCARD,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.UserCard)
  ))
_sym_db.RegisterMessage(UserCard)

GetCardRequest = _reflection.GeneratedProtocolMessageType('GetCardRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETCARDREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetCardRequest)
  ))
_sym_db.RegisterMessage(GetCardRequest)

GetCardResponse = _reflection.GeneratedProtocolMessageType('GetCardResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETCARDRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetCardResponse)
  ))
_sym_db.RegisterMessage(GetCardResponse)

SetCardRequest = _reflection.GeneratedProtocolMessageType('SetCardRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETCARDREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetCardRequest)
  ))
_sym_db.RegisterMessage(SetCardRequest)

SetCardResponse = _reflection.GeneratedProtocolMessageType('SetCardResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETCARDRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetCardResponse)
  ))
_sym_db.RegisterMessage(SetCardResponse)

SetCardMultiRequest = _reflection.GeneratedProtocolMessageType('SetCardMultiRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETCARDMULTIREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetCardMultiRequest)
  ))
_sym_db.RegisterMessage(SetCardMultiRequest)

SetCardMultiResponse = _reflection.GeneratedProtocolMessageType('SetCardMultiResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETCARDMULTIRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetCardMultiResponse)
  ))
_sym_db.RegisterMessage(SetCardMultiResponse)

UserFinger = _reflection.GeneratedProtocolMessageType('UserFinger', (_message.Message,), dict(
  DESCRIPTOR = _USERFINGER,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.UserFinger)
  ))
_sym_db.RegisterMessage(UserFinger)

GetFingerRequest = _reflection.GeneratedProtocolMessageType('GetFingerRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETFINGERREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetFingerRequest)
  ))
_sym_db.RegisterMessage(GetFingerRequest)

GetFingerResponse = _reflection.GeneratedProtocolMessageType('GetFingerResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETFINGERRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetFingerResponse)
  ))
_sym_db.RegisterMessage(GetFingerResponse)

SetFingerRequest = _reflection.GeneratedProtocolMessageType('SetFingerRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETFINGERREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetFingerRequest)
  ))
_sym_db.RegisterMessage(SetFingerRequest)

SetFingerResponse = _reflection.GeneratedProtocolMessageType('SetFingerResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETFINGERRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetFingerResponse)
  ))
_sym_db.RegisterMessage(SetFingerResponse)

SetFingerMultiRequest = _reflection.GeneratedProtocolMessageType('SetFingerMultiRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETFINGERMULTIREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetFingerMultiRequest)
  ))
_sym_db.RegisterMessage(SetFingerMultiRequest)

SetFingerMultiResponse = _reflection.GeneratedProtocolMessageType('SetFingerMultiResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETFINGERMULTIRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetFingerMultiResponse)
  ))
_sym_db.RegisterMessage(SetFingerMultiResponse)

UserFace = _reflection.GeneratedProtocolMessageType('UserFace', (_message.Message,), dict(
  DESCRIPTOR = _USERFACE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.UserFace)
  ))
_sym_db.RegisterMessage(UserFace)

GetFaceRequest = _reflection.GeneratedProtocolMessageType('GetFaceRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETFACEREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetFaceRequest)
  ))
_sym_db.RegisterMessage(GetFaceRequest)

GetFaceResponse = _reflection.GeneratedProtocolMessageType('GetFaceResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETFACERESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetFaceResponse)
  ))
_sym_db.RegisterMessage(GetFaceResponse)

SetFaceRequest = _reflection.GeneratedProtocolMessageType('SetFaceRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETFACEREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetFaceRequest)
  ))
_sym_db.RegisterMessage(SetFaceRequest)

SetFaceResponse = _reflection.GeneratedProtocolMessageType('SetFaceResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETFACERESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetFaceResponse)
  ))
_sym_db.RegisterMessage(SetFaceResponse)

SetFaceMultiRequest = _reflection.GeneratedProtocolMessageType('SetFaceMultiRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETFACEMULTIREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetFaceMultiRequest)
  ))
_sym_db.RegisterMessage(SetFaceMultiRequest)

SetFaceMultiResponse = _reflection.GeneratedProtocolMessageType('SetFaceMultiResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETFACEMULTIRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetFaceMultiResponse)
  ))
_sym_db.RegisterMessage(SetFaceMultiResponse)

UserAccessGroup = _reflection.GeneratedProtocolMessageType('UserAccessGroup', (_message.Message,), dict(
  DESCRIPTOR = _USERACCESSGROUP,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.UserAccessGroup)
  ))
_sym_db.RegisterMessage(UserAccessGroup)

GetAccessGroupRequest = _reflection.GeneratedProtocolMessageType('GetAccessGroupRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETACCESSGROUPREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetAccessGroupRequest)
  ))
_sym_db.RegisterMessage(GetAccessGroupRequest)

GetAccessGroupResponse = _reflection.GeneratedProtocolMessageType('GetAccessGroupResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETACCESSGROUPRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetAccessGroupResponse)
  ))
_sym_db.RegisterMessage(GetAccessGroupResponse)

SetAccessGroupRequest = _reflection.GeneratedProtocolMessageType('SetAccessGroupRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETACCESSGROUPREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetAccessGroupRequest)
  ))
_sym_db.RegisterMessage(SetAccessGroupRequest)

SetAccessGroupResponse = _reflection.GeneratedProtocolMessageType('SetAccessGroupResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETACCESSGROUPRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetAccessGroupResponse)
  ))
_sym_db.RegisterMessage(SetAccessGroupResponse)

SetAccessGroupMultiRequest = _reflection.GeneratedProtocolMessageType('SetAccessGroupMultiRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETACCESSGROUPMULTIREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetAccessGroupMultiRequest)
  ))
_sym_db.RegisterMessage(SetAccessGroupMultiRequest)

SetAccessGroupMultiResponse = _reflection.GeneratedProtocolMessageType('SetAccessGroupMultiResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETACCESSGROUPMULTIRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetAccessGroupMultiResponse)
  ))
_sym_db.RegisterMessage(SetAccessGroupMultiResponse)

UserJobCode = _reflection.GeneratedProtocolMessageType('UserJobCode', (_message.Message,), dict(
  DESCRIPTOR = _USERJOBCODE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.UserJobCode)
  ))
_sym_db.RegisterMessage(UserJobCode)

GetJobCodeRequest = _reflection.GeneratedProtocolMessageType('GetJobCodeRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETJOBCODEREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetJobCodeRequest)
  ))
_sym_db.RegisterMessage(GetJobCodeRequest)

GetJobCodeResponse = _reflection.GeneratedProtocolMessageType('GetJobCodeResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETJOBCODERESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetJobCodeResponse)
  ))
_sym_db.RegisterMessage(GetJobCodeResponse)

SetJobCodeRequest = _reflection.GeneratedProtocolMessageType('SetJobCodeRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETJOBCODEREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetJobCodeRequest)
  ))
_sym_db.RegisterMessage(SetJobCodeRequest)

SetJobCodeResponse = _reflection.GeneratedProtocolMessageType('SetJobCodeResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETJOBCODERESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetJobCodeResponse)
  ))
_sym_db.RegisterMessage(SetJobCodeResponse)

SetJobCodeMultiRequest = _reflection.GeneratedProtocolMessageType('SetJobCodeMultiRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETJOBCODEMULTIREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetJobCodeMultiRequest)
  ))
_sym_db.RegisterMessage(SetJobCodeMultiRequest)

SetJobCodeMultiResponse = _reflection.GeneratedProtocolMessageType('SetJobCodeMultiResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETJOBCODEMULTIRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.SetJobCodeMultiResponse)
  ))
_sym_db.RegisterMessage(SetJobCodeMultiResponse)

GetPINHashRequest = _reflection.GeneratedProtocolMessageType('GetPINHashRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETPINHASHREQUEST,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetPINHashRequest)
  ))
_sym_db.RegisterMessage(GetPINHashRequest)

GetPINHashResponse = _reflection.GeneratedProtocolMessageType('GetPINHashResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETPINHASHRESPONSE,
  __module__ = 'user_pb2'
  # @@protoc_insertion_point(class_scope:user.GetPINHashResponse)
  ))
_sym_db.RegisterMessage(GetPINHashResponse)


DESCRIPTOR._options = None

_USER = _descriptor.ServiceDescriptor(
  name='User',
  full_name='user.User',
  file=DESCRIPTOR,
  index=0,
  serialized_options=None,
  serialized_start=4132,
  serialized_end=5772,
  methods=[
  _descriptor.MethodDescriptor(
    name='GetList',
    full_name='user.User.GetList',
    index=0,
    containing_service=None,
    input_type=_GETLISTREQUEST,
    output_type=_GETLISTRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='Get',
    full_name='user.User.Get',
    index=1,
    containing_service=None,
    input_type=_GETREQUEST,
    output_type=_GETRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetPartial',
    full_name='user.User.GetPartial',
    index=2,
    containing_service=None,
    input_type=_GETPARTIALREQUEST,
    output_type=_GETPARTIALRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='Enroll',
    full_name='user.User.Enroll',
    index=3,
    containing_service=None,
    input_type=_ENROLLREQUEST,
    output_type=_ENROLLRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='EnrollMulti',
    full_name='user.User.EnrollMulti',
    index=4,
    containing_service=None,
    input_type=_ENROLLMULTIREQUEST,
    output_type=_ENROLLMULTIRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='Delete',
    full_name='user.User.Delete',
    index=5,
    containing_service=None,
    input_type=_DELETEREQUEST,
    output_type=_DELETERESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='DeleteMulti',
    full_name='user.User.DeleteMulti',
    index=6,
    containing_service=None,
    input_type=_DELETEMULTIREQUEST,
    output_type=_DELETEMULTIRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='DeleteAll',
    full_name='user.User.DeleteAll',
    index=7,
    containing_service=None,
    input_type=_DELETEALLREQUEST,
    output_type=_DELETEALLRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='DeleteAllMulti',
    full_name='user.User.DeleteAllMulti',
    index=8,
    containing_service=None,
    input_type=_DELETEALLMULTIREQUEST,
    output_type=_DELETEALLMULTIRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetCard',
    full_name='user.User.GetCard',
    index=9,
    containing_service=None,
    input_type=_GETCARDREQUEST,
    output_type=_GETCARDRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetCard',
    full_name='user.User.SetCard',
    index=10,
    containing_service=None,
    input_type=_SETCARDREQUEST,
    output_type=_SETCARDRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetCardMulti',
    full_name='user.User.SetCardMulti',
    index=11,
    containing_service=None,
    input_type=_SETCARDMULTIREQUEST,
    output_type=_SETCARDMULTIRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetFinger',
    full_name='user.User.GetFinger',
    index=12,
    containing_service=None,
    input_type=_GETFINGERREQUEST,
    output_type=_GETFINGERRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetFinger',
    full_name='user.User.SetFinger',
    index=13,
    containing_service=None,
    input_type=_SETFINGERREQUEST,
    output_type=_SETFINGERRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetFingerMulti',
    full_name='user.User.SetFingerMulti',
    index=14,
    containing_service=None,
    input_type=_SETFINGERMULTIREQUEST,
    output_type=_SETFINGERMULTIRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetFace',
    full_name='user.User.GetFace',
    index=15,
    containing_service=None,
    input_type=_GETFACEREQUEST,
    output_type=_GETFACERESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetFace',
    full_name='user.User.SetFace',
    index=16,
    containing_service=None,
    input_type=_SETFACEREQUEST,
    output_type=_SETFACERESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetFaceMulti',
    full_name='user.User.SetFaceMulti',
    index=17,
    containing_service=None,
    input_type=_SETFACEMULTIREQUEST,
    output_type=_SETFACEMULTIRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetAccessGroup',
    full_name='user.User.GetAccessGroup',
    index=18,
    containing_service=None,
    input_type=_GETACCESSGROUPREQUEST,
    output_type=_GETACCESSGROUPRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetAccessGroup',
    full_name='user.User.SetAccessGroup',
    index=19,
    containing_service=None,
    input_type=_SETACCESSGROUPREQUEST,
    output_type=_SETACCESSGROUPRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetAccessGroupMulti',
    full_name='user.User.SetAccessGroupMulti',
    index=20,
    containing_service=None,
    input_type=_SETACCESSGROUPMULTIREQUEST,
    output_type=_SETACCESSGROUPMULTIRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetJobCode',
    full_name='user.User.GetJobCode',
    index=21,
    containing_service=None,
    input_type=_GETJOBCODEREQUEST,
    output_type=_GETJOBCODERESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetJobCode',
    full_name='user.User.SetJobCode',
    index=22,
    containing_service=None,
    input_type=_SETJOBCODEREQUEST,
    output_type=_SETJOBCODERESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='SetJobCodeMulti',
    full_name='user.User.SetJobCodeMulti',
    index=23,
    containing_service=None,
    input_type=_SETJOBCODEMULTIREQUEST,
    output_type=_SETJOBCODEMULTIRESPONSE,
    serialized_options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetPINHash',
    full_name='user.User.GetPINHash',
    index=24,
    containing_service=None,
    input_type=_GETPINHASHREQUEST,
    output_type=_GETPINHASHRESPONSE,
    serialized_options=None,
  ),
])
_sym_db.RegisterServiceDescriptor(_USER)

DESCRIPTOR.services_by_name['User'] = _USER

# @@protoc_insertion_point(module_scope)
