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

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 descriptor_pb2
# @@protoc_insertion_point(imports)




DESCRIPTOR = _descriptor.FileDescriptor(
  name='cryptauth_api.proto',
  package='cryptauth',
  serialized_pb='\n\x13\x63ryptauth_api.proto\x12\tcryptauth\"\xae\x01\n\x10\x44\x65viceClassifier\x12\x1e\n\x16\x64\x65vice_os_version_code\x18\x0e \x01(\x03\x12$\n\x1c\x64\x65vice_software_version_code\x18\x12 \x01(\x03\x12\x1f\n\x17\x64\x65vice_software_package\x18\x13 \x01(\t\x12\x33\n\x0b\x64\x65vice_type\x18  \x01(\x0e\x32\x15.cryptauth.DeviceType:\x07UNKNOWN\"\x89\x01\n\x12\x45xternalDeviceInfo\x12\x12\n\npublic_key\x18\x01 \x01(\x0c\x12\x1c\n\x14\x66riendly_device_name\x18\x02 \x01(\t\x12\x19\n\x11\x62luetooth_address\x18\x03 \x01(\t\x12\x12\n\nunlock_key\x18\x04 \x01(\x08\x12\x12\n\nunlockable\x18\x05 \x01(\x08\"v\n\x1f\x46indEligibleForPromotionRequest\x12\x1b\n\x13promoter_public_key\x18\x02 \x01(\x0c\x12\x36\n\x11\x64\x65vice_classifier\x18\x03 \x01(\x0b\x32\x1b.cryptauth.DeviceClassifier\":\n FindEligibleForPromotionResponse\x12\x16\n\x0emay_show_promo\x18\x01 \x01(\x08\"\xde\x01\n FindEligibleUnlockDevicesRequest\x12\"\n\x1a\x63\x61llback_bluetooth_address\x18\x02 \x01(\t\x12\x13\n\x0bretry_count\x18\x03 \x01(\x05\x12)\n!max_last_update_time_delta_millis\x18\x04 \x01(\x03\x12\x1e\n\x0foffline_allowed\x18\x05 \x01(\x08:\x05\x66\x61lse\x12\x36\n\x11\x64\x65vice_classifier\x18\x06 \x01(\x0b\x32\x1b.cryptauth.DeviceClassifier\"\x95\x01\n!FindEligibleUnlockDevicesResponse\x12\x37\n\x10\x65ligible_devices\x18\x01 \x03(\x0b\x32\x1d.cryptauth.ExternalDeviceInfo\x12\x37\n\x12ineligible_devices\x18\x02 \x03(\x0b\x32\x1b.cryptauth.IneligibleDevice\"\xe0\x01\n\x17\x46inishEnrollmentRequest\x12\x1d\n\x15\x65nrollment_session_id\x18\x02 \x01(\x0c\x12\x1a\n\x12\x65nrollment_message\x18\x03 \x01(\x0c\x12\x1c\n\x14\x64\x65vice_ephemeral_key\x18\x04 \x01(\x0c\x12\x1c\n\x11invocation_reason\x18\x0b \x01(\x05:\x01\x30\x12\x16\n\x0bretry_count\x18\x0c \x01(\x05:\x01\x30\x12\x36\n\x11\x64\x65vice_classifier\x18\r \x01(\x0b\x32\x1b.cryptauth.DeviceClassifier\"A\n\x18\x46inishEnrollmentResponse\x12\x0e\n\x06status\x18\x01 \x01(\t\x12\x15\n\rerror_message\x18\x02 \x01(\t\"\xd5\x07\n\rGcmDeviceInfo\x12\x19\n\x11\x61ndroid_device_id\x18\x01 \x01(\x06\x12\x1b\n\x13gcm_registration_id\x18\x66 \x01(\x0c\x12\x1c\n\x13\x61pn_registration_id\x18\xca\x01 \x01(\x0c\x12(\n\x18\x61pn_notification_enabled\x18\xcb\x01 \x01(\x08:\x05\x66\x61lse\x12\x1e\n\x15\x62luetooth_mac_address\x18\xae\x02 \x01(\t\x12\x1e\n\x16\x64\x65vice_master_key_hash\x18g \x01(\x0c\x12\x17\n\x0fuser_public_key\x18\x04 \x02(\x0c\x12\x14\n\x0c\x64\x65vice_model\x18\x07 \x01(\t\x12\x0e\n\x06locale\x18\x08 \x01(\t\x12\x12\n\nkey_handle\x18\t \x01(\x0c\x12\x12\n\x07\x63ounter\x18\x0c \x01(\x03:\x01\x30\x12\x19\n\x11\x64\x65vice_os_version\x18\r \x01(\t\x12\x1e\n\x16\x64\x65vice_os_version_code\x18\x0e \x01(\x03\x12\x19\n\x11\x64\x65vice_os_release\x18\x0f \x01(\t\x12\x1a\n\x12\x64\x65vice_os_codename\x18\x10 \x01(\t\x12\x1f\n\x17\x64\x65vice_software_version\x18\x11 \x01(\t\x12$\n\x1c\x64\x65vice_software_version_code\x18\x12 \x01(\x03\x12\x1f\n\x17\x64\x65vice_software_package\x18\x13 \x01(\t\x12$\n\x1c\x64\x65vice_display_diagonal_mils\x18\x16 \x01(\x05\x12\x1e\n\x16\x64\x65vice_authzen_version\x18\x18 \x01(\x05\x12\x16\n\x0elong_device_id\x18\x1d \x01(\x0c\x12\x1b\n\x13\x64\x65vice_manufacturer\x18\x1f \x01(\t\x12\x33\n\x0b\x64\x65vice_type\x18  \x01(\x0e\x32\x15.cryptauth.DeviceType:\x07\x41NDROID\x12\'\n\x17using_secure_screenlock\x18\x90\x03 \x01(\x08:\x05\x66\x61lse\x12\x30\n auto_unlock_screenlock_supported\x18\x91\x03 \x01(\x08:\x05\x66\x61lse\x12.\n\x1e\x61uto_unlock_screenlock_enabled\x18\x92\x03 \x01(\x08:\x05\x66\x61lse\x12)\n\x19\x62luetooth_radio_supported\x18\x93\x03 \x01(\x08:\x05\x66\x61lse\x12\'\n\x17\x62luetooth_radio_enabled\x18\x94\x03 \x01(\x08:\x05\x66\x61lse\x12\x1e\n\x15\x65nrollment_session_id\x18\xe8\x07 \x01(\x0c\x12\x14\n\x0boauth_token\x18\xe9\x07 \x01(\t\"G\n\x0bGcmMetadata\x12$\n\x04type\x18\x01 \x02(\x0e\x32\x16.cryptauth.MessageType\x12\x12\n\x07version\x18\x02 \x01(\x05:\x01\x30\"\xca\x01\n\x13GetMyDevicesRequest\x12$\n\x1c\x61pproved_for_unlock_required\x18\x02 \x01(\x08\x12\x1f\n\x10\x61llow_stale_read\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x1c\n\x11invocation_reason\x18\x04 \x01(\x05:\x01\x30\x12\x16\n\x0bretry_count\x18\x05 \x01(\x05:\x01\x30\x12\x36\n\x11\x64\x65vice_classifier\x18\x06 \x01(\x0b\x32\x1b.cryptauth.DeviceClassifier\"F\n\x14GetMyDevicesResponse\x12.\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x1d.cryptauth.ExternalDeviceInfo\"R\n\x10IneligibleDevice\x12-\n\x06\x64\x65vice\x18\x01 \x01(\x0b\x32\x1d.cryptauth.ExternalDeviceInfo\x12\x0f\n\x07reasons\x18\x02 \x03(\t\"\x8d\x01\n\x1bSendDeviceSyncTickleRequest\x12\x36\n\x0btickle_type\x18\x03 \x01(\x0e\x32!.cryptauth.RegistrationTickleType\x12\x36\n\x11\x64\x65vice_classifier\x18\x04 \x01(\x0b\x32\x1b.cryptauth.DeviceClassifier\"\x1e\n\x1cSendDeviceSyncTickleResponse\"`\n\x13SetupEnrollmentInfo\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x1d\n\x15\x65nrollment_session_id\x18\x02 \x01(\x0c\x12\x1c\n\x14server_ephemeral_key\x18\x03 \x01(\x0c\"\xd8\x01\n\x16SetupEnrollmentRequest\x12\x0e\n\x06origin\x18\x02 \x01(\t\x12\r\n\x05types\x18\x03 \x03(\t\x12\x19\n\x11use_legacy_crypto\x18\x04 \x01(\x08\x12\x16\n\x0e\x61pplication_id\x18\x05 \x01(\t\x12\x1c\n\x11invocation_reason\x18\x06 \x01(\x05:\x01\x30\x12\x16\n\x0bretry_count\x18\x07 \x01(\x05:\x01\x30\x12\x36\n\x11\x64\x65vice_classifier\x18\x08 \x01(\x0b\x32\x1b.cryptauth.DeviceClassifier\"X\n\x17SetupEnrollmentResponse\x12\x0e\n\x06status\x18\x01 \x01(\t\x12-\n\x05infos\x18\x02 \x03(\x0b\x32\x1e.cryptauth.SetupEnrollmentInfo\"\x8b\x01\n\x17ToggleEasyUnlockRequest\x12\x0e\n\x06\x65nable\x18\x01 \x01(\x08\x12\x12\n\npublic_key\x18\x02 \x01(\x0c\x12\x14\n\x0c\x61pply_to_all\x18\x03 \x01(\x08\x12\x36\n\x11\x64\x65vice_classifier\x18\x04 \x01(\x0b\x32\x1b.cryptauth.DeviceClassifier\"\x1a\n\x18ToggleEasyUnlockResponse*H\n\nDeviceType\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x0b\n\x07\x41NDROID\x10\x01\x12\n\n\x06\x43HROME\x10\x02\x12\x07\n\x03IOS\x10\x03\x12\x0b\n\x07\x42ROWSER\x10\x04*\x8f\x04\n\x10InvocationReason\x12\x1d\n\x19INVOCATION_REASON_UNKNOWN\x10\x00\x12$\n INVOCATION_REASON_INITIALIZATION\x10\x01\x12\x1e\n\x1aINVOCATION_REASON_PERIODIC\x10\x02\x12#\n\x1fINVOCATION_REASON_SLOW_PERIODIC\x10\x03\x12#\n\x1fINVOCATION_REASON_FAST_PERIODIC\x10\x04\x12 \n\x1cINVOCATION_REASON_EXPIRATION\x10\x05\x12&\n\"INVOCATION_REASON_FAILURE_RECOVERY\x10\x06\x12!\n\x1dINVOCATION_REASON_NEW_ACCOUNT\x10\x07\x12%\n!INVOCATION_REASON_CHANGED_ACCOUNT\x10\x08\x12%\n!INVOCATION_REASON_FEATURE_TOGGLED\x10\t\x12&\n\"INVOCATION_REASON_SERVER_INITIATED\x10\n\x12$\n INVOCATION_REASON_ADDRESS_CHANGE\x10\x0b\x12%\n!INVOCATION_REASON_SOFTWARE_UPDATE\x10\x0c\x12\x1c\n\x18INVOCATION_REASON_MANUAL\x10\r*\xf3\x02\n\x0bMessageType\x12\x0e\n\nENROLLMENT\x10\x00\x12\n\n\x06TICKLE\x10\x01\x12\x0e\n\nTX_REQUEST\x10\x02\x12\x0c\n\x08TX_REPLY\x10\x03\x12\x13\n\x0fTX_SYNC_REQUEST\x10\x04\x12\x14\n\x10TX_SYNC_RESPONSE\x10\x05\x12\x0b\n\x07TX_PING\x10\x06\x12\x16\n\x12\x44\x45VICE_INFO_UPDATE\x10\x07\x12\x15\n\x11TX_CANCEL_REQUEST\x10\x08\x12\x19\n\x15PROXIMITYAUTH_PAIRING\x10\n\x12\x1c\n\x18GCMV1_IDENTITY_ASSERTION\x10\x0b\x12,\n(DEVICE_TO_DEVICE_RESPONDER_HELLO_PAYLOAD\x10\x0c\x12\x1c\n\x18\x44\x45VICE_TO_DEVICE_MESSAGE\x10\r\x12\x1d\n\x19\x44\x45VICE_PROXIMITY_CALLBACK\x10\x0e\x12\x1f\n\x1bUNLOCK_KEY_SIGNED_CHALLENGE\x10\x0f*}\n\x16RegistrationTickleType\x12$\n UNKNOWN_REGISTRATION_TICKLE_TYPE\x10\x00\x12\x14\n\x10\x46ORCE_ENROLLMENT\x10\x01\x12\x15\n\x11UPDATE_ENROLLMENT\x10\x02\x12\x10\n\x0c\x44\x45VICES_SYNC\x10\x03\x42\x02H\x03')

_DEVICETYPE = _descriptor.EnumDescriptor(
  name='DeviceType',
  full_name='cryptauth.DeviceType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='ANDROID', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='CHROME', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='IOS', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='BROWSER', index=4, number=4,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=3373,
  serialized_end=3445,
)

DeviceType = enum_type_wrapper.EnumTypeWrapper(_DEVICETYPE)
_INVOCATIONREASON = _descriptor.EnumDescriptor(
  name='InvocationReason',
  full_name='cryptauth.InvocationReason',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_INITIALIZATION', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_PERIODIC', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_SLOW_PERIODIC', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_FAST_PERIODIC', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_EXPIRATION', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_FAILURE_RECOVERY', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_NEW_ACCOUNT', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_CHANGED_ACCOUNT', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_FEATURE_TOGGLED', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_SERVER_INITIATED', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_ADDRESS_CHANGE', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_SOFTWARE_UPDATE', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='INVOCATION_REASON_MANUAL', index=13, number=13,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=3448,
  serialized_end=3975,
)

InvocationReason = enum_type_wrapper.EnumTypeWrapper(_INVOCATIONREASON)
_MESSAGETYPE = _descriptor.EnumDescriptor(
  name='MessageType',
  full_name='cryptauth.MessageType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='ENROLLMENT', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TICKLE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TX_REQUEST', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TX_REPLY', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TX_SYNC_REQUEST', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TX_SYNC_RESPONSE', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TX_PING', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DEVICE_INFO_UPDATE', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TX_CANCEL_REQUEST', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='PROXIMITYAUTH_PAIRING', index=9, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='GCMV1_IDENTITY_ASSERTION', index=10, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DEVICE_TO_DEVICE_RESPONDER_HELLO_PAYLOAD', index=11, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DEVICE_TO_DEVICE_MESSAGE', index=12, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DEVICE_PROXIMITY_CALLBACK', index=13, number=14,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='UNLOCK_KEY_SIGNED_CHALLENGE', index=14, number=15,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=3978,
  serialized_end=4349,
)

MessageType = enum_type_wrapper.EnumTypeWrapper(_MESSAGETYPE)
_REGISTRATIONTICKLETYPE = _descriptor.EnumDescriptor(
  name='RegistrationTickleType',
  full_name='cryptauth.RegistrationTickleType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN_REGISTRATION_TICKLE_TYPE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='FORCE_ENROLLMENT', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='UPDATE_ENROLLMENT', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DEVICES_SYNC', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=4351,
  serialized_end=4476,
)

RegistrationTickleType = enum_type_wrapper.EnumTypeWrapper(_REGISTRATIONTICKLETYPE)
UNKNOWN = 0
ANDROID = 1
CHROME = 2
IOS = 3
BROWSER = 4
INVOCATION_REASON_UNKNOWN = 0
INVOCATION_REASON_INITIALIZATION = 1
INVOCATION_REASON_PERIODIC = 2
INVOCATION_REASON_SLOW_PERIODIC = 3
INVOCATION_REASON_FAST_PERIODIC = 4
INVOCATION_REASON_EXPIRATION = 5
INVOCATION_REASON_FAILURE_RECOVERY = 6
INVOCATION_REASON_NEW_ACCOUNT = 7
INVOCATION_REASON_CHANGED_ACCOUNT = 8
INVOCATION_REASON_FEATURE_TOGGLED = 9
INVOCATION_REASON_SERVER_INITIATED = 10
INVOCATION_REASON_ADDRESS_CHANGE = 11
INVOCATION_REASON_SOFTWARE_UPDATE = 12
INVOCATION_REASON_MANUAL = 13
ENROLLMENT = 0
TICKLE = 1
TX_REQUEST = 2
TX_REPLY = 3
TX_SYNC_REQUEST = 4
TX_SYNC_RESPONSE = 5
TX_PING = 6
DEVICE_INFO_UPDATE = 7
TX_CANCEL_REQUEST = 8
PROXIMITYAUTH_PAIRING = 10
GCMV1_IDENTITY_ASSERTION = 11
DEVICE_TO_DEVICE_RESPONDER_HELLO_PAYLOAD = 12
DEVICE_TO_DEVICE_MESSAGE = 13
DEVICE_PROXIMITY_CALLBACK = 14
UNLOCK_KEY_SIGNED_CHALLENGE = 15
UNKNOWN_REGISTRATION_TICKLE_TYPE = 0
FORCE_ENROLLMENT = 1
UPDATE_ENROLLMENT = 2
DEVICES_SYNC = 3



_DEVICECLASSIFIER = _descriptor.Descriptor(
  name='DeviceClassifier',
  full_name='cryptauth.DeviceClassifier',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='device_os_version_code', full_name='cryptauth.DeviceClassifier.device_os_version_code', index=0,
      number=14, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_software_version_code', full_name='cryptauth.DeviceClassifier.device_software_version_code', index=1,
      number=18, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_software_package', full_name='cryptauth.DeviceClassifier.device_software_package', index=2,
      number=19, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_type', full_name='cryptauth.DeviceClassifier.device_type', index=3,
      number=32, type=14, cpp_type=8, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=35,
  serialized_end=209,
)


_EXTERNALDEVICEINFO = _descriptor.Descriptor(
  name='ExternalDeviceInfo',
  full_name='cryptauth.ExternalDeviceInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='public_key', full_name='cryptauth.ExternalDeviceInfo.public_key', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='friendly_device_name', full_name='cryptauth.ExternalDeviceInfo.friendly_device_name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bluetooth_address', full_name='cryptauth.ExternalDeviceInfo.bluetooth_address', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='unlock_key', full_name='cryptauth.ExternalDeviceInfo.unlock_key', index=3,
      number=4, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='unlockable', full_name='cryptauth.ExternalDeviceInfo.unlockable', index=4,
      number=5, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=212,
  serialized_end=349,
)


_FINDELIGIBLEFORPROMOTIONREQUEST = _descriptor.Descriptor(
  name='FindEligibleForPromotionRequest',
  full_name='cryptauth.FindEligibleForPromotionRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='promoter_public_key', full_name='cryptauth.FindEligibleForPromotionRequest.promoter_public_key', index=0,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_classifier', full_name='cryptauth.FindEligibleForPromotionRequest.device_classifier', index=1,
      number=3, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=351,
  serialized_end=469,
)


_FINDELIGIBLEFORPROMOTIONRESPONSE = _descriptor.Descriptor(
  name='FindEligibleForPromotionResponse',
  full_name='cryptauth.FindEligibleForPromotionResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='may_show_promo', full_name='cryptauth.FindEligibleForPromotionResponse.may_show_promo', index=0,
      number=1, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=471,
  serialized_end=529,
)


_FINDELIGIBLEUNLOCKDEVICESREQUEST = _descriptor.Descriptor(
  name='FindEligibleUnlockDevicesRequest',
  full_name='cryptauth.FindEligibleUnlockDevicesRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='callback_bluetooth_address', full_name='cryptauth.FindEligibleUnlockDevicesRequest.callback_bluetooth_address', index=0,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='retry_count', full_name='cryptauth.FindEligibleUnlockDevicesRequest.retry_count', index=1,
      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,
      options=None),
    _descriptor.FieldDescriptor(
      name='max_last_update_time_delta_millis', full_name='cryptauth.FindEligibleUnlockDevicesRequest.max_last_update_time_delta_millis', index=2,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='offline_allowed', full_name='cryptauth.FindEligibleUnlockDevicesRequest.offline_allowed', index=3,
      number=5, type=8, cpp_type=7, label=1,
      has_default_value=True, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_classifier', full_name='cryptauth.FindEligibleUnlockDevicesRequest.device_classifier', index=4,
      number=6, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=532,
  serialized_end=754,
)


_FINDELIGIBLEUNLOCKDEVICESRESPONSE = _descriptor.Descriptor(
  name='FindEligibleUnlockDevicesResponse',
  full_name='cryptauth.FindEligibleUnlockDevicesResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='eligible_devices', full_name='cryptauth.FindEligibleUnlockDevicesResponse.eligible_devices', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='ineligible_devices', full_name='cryptauth.FindEligibleUnlockDevicesResponse.ineligible_devices', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=757,
  serialized_end=906,
)


_FINISHENROLLMENTREQUEST = _descriptor.Descriptor(
  name='FinishEnrollmentRequest',
  full_name='cryptauth.FinishEnrollmentRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='enrollment_session_id', full_name='cryptauth.FinishEnrollmentRequest.enrollment_session_id', index=0,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='enrollment_message', full_name='cryptauth.FinishEnrollmentRequest.enrollment_message', index=1,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_ephemeral_key', full_name='cryptauth.FinishEnrollmentRequest.device_ephemeral_key', index=2,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='invocation_reason', full_name='cryptauth.FinishEnrollmentRequest.invocation_reason', index=3,
      number=11, type=5, cpp_type=1, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='retry_count', full_name='cryptauth.FinishEnrollmentRequest.retry_count', index=4,
      number=12, type=5, cpp_type=1, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_classifier', full_name='cryptauth.FinishEnrollmentRequest.device_classifier', index=5,
      number=13, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=909,
  serialized_end=1133,
)


_FINISHENROLLMENTRESPONSE = _descriptor.Descriptor(
  name='FinishEnrollmentResponse',
  full_name='cryptauth.FinishEnrollmentResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='status', full_name='cryptauth.FinishEnrollmentResponse.status', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='error_message', full_name='cryptauth.FinishEnrollmentResponse.error_message', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=1135,
  serialized_end=1200,
)


_GCMDEVICEINFO = _descriptor.Descriptor(
  name='GcmDeviceInfo',
  full_name='cryptauth.GcmDeviceInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='android_device_id', full_name='cryptauth.GcmDeviceInfo.android_device_id', index=0,
      number=1, type=6, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='gcm_registration_id', full_name='cryptauth.GcmDeviceInfo.gcm_registration_id', index=1,
      number=102, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='apn_registration_id', full_name='cryptauth.GcmDeviceInfo.apn_registration_id', index=2,
      number=202, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='apn_notification_enabled', full_name='cryptauth.GcmDeviceInfo.apn_notification_enabled', index=3,
      number=203, type=8, cpp_type=7, label=1,
      has_default_value=True, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bluetooth_mac_address', full_name='cryptauth.GcmDeviceInfo.bluetooth_mac_address', index=4,
      number=302, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_master_key_hash', full_name='cryptauth.GcmDeviceInfo.device_master_key_hash', index=5,
      number=103, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='user_public_key', full_name='cryptauth.GcmDeviceInfo.user_public_key', index=6,
      number=4, type=12, cpp_type=9, label=2,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_model', full_name='cryptauth.GcmDeviceInfo.device_model', index=7,
      number=7, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='locale', full_name='cryptauth.GcmDeviceInfo.locale', index=8,
      number=8, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='key_handle', full_name='cryptauth.GcmDeviceInfo.key_handle', index=9,
      number=9, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='counter', full_name='cryptauth.GcmDeviceInfo.counter', index=10,
      number=12, type=3, cpp_type=2, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_os_version', full_name='cryptauth.GcmDeviceInfo.device_os_version', index=11,
      number=13, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_os_version_code', full_name='cryptauth.GcmDeviceInfo.device_os_version_code', index=12,
      number=14, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_os_release', full_name='cryptauth.GcmDeviceInfo.device_os_release', index=13,
      number=15, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_os_codename', full_name='cryptauth.GcmDeviceInfo.device_os_codename', index=14,
      number=16, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_software_version', full_name='cryptauth.GcmDeviceInfo.device_software_version', index=15,
      number=17, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_software_version_code', full_name='cryptauth.GcmDeviceInfo.device_software_version_code', index=16,
      number=18, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_software_package', full_name='cryptauth.GcmDeviceInfo.device_software_package', index=17,
      number=19, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_display_diagonal_mils', full_name='cryptauth.GcmDeviceInfo.device_display_diagonal_mils', index=18,
      number=22, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_authzen_version', full_name='cryptauth.GcmDeviceInfo.device_authzen_version', index=19,
      number=24, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='long_device_id', full_name='cryptauth.GcmDeviceInfo.long_device_id', index=20,
      number=29, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_manufacturer', full_name='cryptauth.GcmDeviceInfo.device_manufacturer', index=21,
      number=31, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_type', full_name='cryptauth.GcmDeviceInfo.device_type', index=22,
      number=32, type=14, cpp_type=8, label=1,
      has_default_value=True, default_value=1,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='using_secure_screenlock', full_name='cryptauth.GcmDeviceInfo.using_secure_screenlock', index=23,
      number=400, type=8, cpp_type=7, label=1,
      has_default_value=True, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='auto_unlock_screenlock_supported', full_name='cryptauth.GcmDeviceInfo.auto_unlock_screenlock_supported', index=24,
      number=401, type=8, cpp_type=7, label=1,
      has_default_value=True, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='auto_unlock_screenlock_enabled', full_name='cryptauth.GcmDeviceInfo.auto_unlock_screenlock_enabled', index=25,
      number=402, type=8, cpp_type=7, label=1,
      has_default_value=True, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bluetooth_radio_supported', full_name='cryptauth.GcmDeviceInfo.bluetooth_radio_supported', index=26,
      number=403, type=8, cpp_type=7, label=1,
      has_default_value=True, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bluetooth_radio_enabled', full_name='cryptauth.GcmDeviceInfo.bluetooth_radio_enabled', index=27,
      number=404, type=8, cpp_type=7, label=1,
      has_default_value=True, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='enrollment_session_id', full_name='cryptauth.GcmDeviceInfo.enrollment_session_id', index=28,
      number=1000, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='oauth_token', full_name='cryptauth.GcmDeviceInfo.oauth_token', index=29,
      number=1001, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=1203,
  serialized_end=2184,
)


_GCMMETADATA = _descriptor.Descriptor(
  name='GcmMetadata',
  full_name='cryptauth.GcmMetadata',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='cryptauth.GcmMetadata.type', index=0,
      number=1, type=14, cpp_type=8, label=2,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='version', full_name='cryptauth.GcmMetadata.version', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=2186,
  serialized_end=2257,
)


_GETMYDEVICESREQUEST = _descriptor.Descriptor(
  name='GetMyDevicesRequest',
  full_name='cryptauth.GetMyDevicesRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='approved_for_unlock_required', full_name='cryptauth.GetMyDevicesRequest.approved_for_unlock_required', index=0,
      number=2, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='allow_stale_read', full_name='cryptauth.GetMyDevicesRequest.allow_stale_read', index=1,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=True, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='invocation_reason', full_name='cryptauth.GetMyDevicesRequest.invocation_reason', index=2,
      number=4, type=5, cpp_type=1, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='retry_count', full_name='cryptauth.GetMyDevicesRequest.retry_count', index=3,
      number=5, type=5, cpp_type=1, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_classifier', full_name='cryptauth.GetMyDevicesRequest.device_classifier', index=4,
      number=6, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=2260,
  serialized_end=2462,
)


_GETMYDEVICESRESPONSE = _descriptor.Descriptor(
  name='GetMyDevicesResponse',
  full_name='cryptauth.GetMyDevicesResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='devices', full_name='cryptauth.GetMyDevicesResponse.devices', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=2464,
  serialized_end=2534,
)


_INELIGIBLEDEVICE = _descriptor.Descriptor(
  name='IneligibleDevice',
  full_name='cryptauth.IneligibleDevice',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='device', full_name='cryptauth.IneligibleDevice.device', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='reasons', full_name='cryptauth.IneligibleDevice.reasons', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=2536,
  serialized_end=2618,
)


_SENDDEVICESYNCTICKLEREQUEST = _descriptor.Descriptor(
  name='SendDeviceSyncTickleRequest',
  full_name='cryptauth.SendDeviceSyncTickleRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='tickle_type', full_name='cryptauth.SendDeviceSyncTickleRequest.tickle_type', index=0,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_classifier', full_name='cryptauth.SendDeviceSyncTickleRequest.device_classifier', index=1,
      number=4, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=2621,
  serialized_end=2762,
)


_SENDDEVICESYNCTICKLERESPONSE = _descriptor.Descriptor(
  name='SendDeviceSyncTickleResponse',
  full_name='cryptauth.SendDeviceSyncTickleResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=2764,
  serialized_end=2794,
)


_SETUPENROLLMENTINFO = _descriptor.Descriptor(
  name='SetupEnrollmentInfo',
  full_name='cryptauth.SetupEnrollmentInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='cryptauth.SetupEnrollmentInfo.type', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='enrollment_session_id', full_name='cryptauth.SetupEnrollmentInfo.enrollment_session_id', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='server_ephemeral_key', full_name='cryptauth.SetupEnrollmentInfo.server_ephemeral_key', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=2796,
  serialized_end=2892,
)


_SETUPENROLLMENTREQUEST = _descriptor.Descriptor(
  name='SetupEnrollmentRequest',
  full_name='cryptauth.SetupEnrollmentRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='origin', full_name='cryptauth.SetupEnrollmentRequest.origin', index=0,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='types', full_name='cryptauth.SetupEnrollmentRequest.types', index=1,
      number=3, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='use_legacy_crypto', full_name='cryptauth.SetupEnrollmentRequest.use_legacy_crypto', index=2,
      number=4, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='application_id', full_name='cryptauth.SetupEnrollmentRequest.application_id', index=3,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='invocation_reason', full_name='cryptauth.SetupEnrollmentRequest.invocation_reason', index=4,
      number=6, type=5, cpp_type=1, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='retry_count', full_name='cryptauth.SetupEnrollmentRequest.retry_count', index=5,
      number=7, type=5, cpp_type=1, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_classifier', full_name='cryptauth.SetupEnrollmentRequest.device_classifier', index=6,
      number=8, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=2895,
  serialized_end=3111,
)


_SETUPENROLLMENTRESPONSE = _descriptor.Descriptor(
  name='SetupEnrollmentResponse',
  full_name='cryptauth.SetupEnrollmentResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='status', full_name='cryptauth.SetupEnrollmentResponse.status', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='infos', full_name='cryptauth.SetupEnrollmentResponse.infos', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=3113,
  serialized_end=3201,
)


_TOGGLEEASYUNLOCKREQUEST = _descriptor.Descriptor(
  name='ToggleEasyUnlockRequest',
  full_name='cryptauth.ToggleEasyUnlockRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='enable', full_name='cryptauth.ToggleEasyUnlockRequest.enable', index=0,
      number=1, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='public_key', full_name='cryptauth.ToggleEasyUnlockRequest.public_key', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value="",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='apply_to_all', full_name='cryptauth.ToggleEasyUnlockRequest.apply_to_all', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='device_classifier', full_name='cryptauth.ToggleEasyUnlockRequest.device_classifier', index=3,
      number=4, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=3204,
  serialized_end=3343,
)


_TOGGLEEASYUNLOCKRESPONSE = _descriptor.Descriptor(
  name='ToggleEasyUnlockResponse',
  full_name='cryptauth.ToggleEasyUnlockResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=3345,
  serialized_end=3371,
)

_DEVICECLASSIFIER.fields_by_name['device_type'].enum_type = _DEVICETYPE
_FINDELIGIBLEFORPROMOTIONREQUEST.fields_by_name['device_classifier'].message_type = _DEVICECLASSIFIER
_FINDELIGIBLEUNLOCKDEVICESREQUEST.fields_by_name['device_classifier'].message_type = _DEVICECLASSIFIER
_FINDELIGIBLEUNLOCKDEVICESRESPONSE.fields_by_name['eligible_devices'].message_type = _EXTERNALDEVICEINFO
_FINDELIGIBLEUNLOCKDEVICESRESPONSE.fields_by_name['ineligible_devices'].message_type = _INELIGIBLEDEVICE
_FINISHENROLLMENTREQUEST.fields_by_name['device_classifier'].message_type = _DEVICECLASSIFIER
_GCMDEVICEINFO.fields_by_name['device_type'].enum_type = _DEVICETYPE
_GCMMETADATA.fields_by_name['type'].enum_type = _MESSAGETYPE
_GETMYDEVICESREQUEST.fields_by_name['device_classifier'].message_type = _DEVICECLASSIFIER
_GETMYDEVICESRESPONSE.fields_by_name['devices'].message_type = _EXTERNALDEVICEINFO
_INELIGIBLEDEVICE.fields_by_name['device'].message_type = _EXTERNALDEVICEINFO
_SENDDEVICESYNCTICKLEREQUEST.fields_by_name['tickle_type'].enum_type = _REGISTRATIONTICKLETYPE
_SENDDEVICESYNCTICKLEREQUEST.fields_by_name['device_classifier'].message_type = _DEVICECLASSIFIER
_SETUPENROLLMENTREQUEST.fields_by_name['device_classifier'].message_type = _DEVICECLASSIFIER
_SETUPENROLLMENTRESPONSE.fields_by_name['infos'].message_type = _SETUPENROLLMENTINFO
_TOGGLEEASYUNLOCKREQUEST.fields_by_name['device_classifier'].message_type = _DEVICECLASSIFIER
DESCRIPTOR.message_types_by_name['DeviceClassifier'] = _DEVICECLASSIFIER
DESCRIPTOR.message_types_by_name['ExternalDeviceInfo'] = _EXTERNALDEVICEINFO
DESCRIPTOR.message_types_by_name['FindEligibleForPromotionRequest'] = _FINDELIGIBLEFORPROMOTIONREQUEST
DESCRIPTOR.message_types_by_name['FindEligibleForPromotionResponse'] = _FINDELIGIBLEFORPROMOTIONRESPONSE
DESCRIPTOR.message_types_by_name['FindEligibleUnlockDevicesRequest'] = _FINDELIGIBLEUNLOCKDEVICESREQUEST
DESCRIPTOR.message_types_by_name['FindEligibleUnlockDevicesResponse'] = _FINDELIGIBLEUNLOCKDEVICESRESPONSE
DESCRIPTOR.message_types_by_name['FinishEnrollmentRequest'] = _FINISHENROLLMENTREQUEST
DESCRIPTOR.message_types_by_name['FinishEnrollmentResponse'] = _FINISHENROLLMENTRESPONSE
DESCRIPTOR.message_types_by_name['GcmDeviceInfo'] = _GCMDEVICEINFO
DESCRIPTOR.message_types_by_name['GcmMetadata'] = _GCMMETADATA
DESCRIPTOR.message_types_by_name['GetMyDevicesRequest'] = _GETMYDEVICESREQUEST
DESCRIPTOR.message_types_by_name['GetMyDevicesResponse'] = _GETMYDEVICESRESPONSE
DESCRIPTOR.message_types_by_name['IneligibleDevice'] = _INELIGIBLEDEVICE
DESCRIPTOR.message_types_by_name['SendDeviceSyncTickleRequest'] = _SENDDEVICESYNCTICKLEREQUEST
DESCRIPTOR.message_types_by_name['SendDeviceSyncTickleResponse'] = _SENDDEVICESYNCTICKLERESPONSE
DESCRIPTOR.message_types_by_name['SetupEnrollmentInfo'] = _SETUPENROLLMENTINFO
DESCRIPTOR.message_types_by_name['SetupEnrollmentRequest'] = _SETUPENROLLMENTREQUEST
DESCRIPTOR.message_types_by_name['SetupEnrollmentResponse'] = _SETUPENROLLMENTRESPONSE
DESCRIPTOR.message_types_by_name['ToggleEasyUnlockRequest'] = _TOGGLEEASYUNLOCKREQUEST
DESCRIPTOR.message_types_by_name['ToggleEasyUnlockResponse'] = _TOGGLEEASYUNLOCKRESPONSE

class DeviceClassifier(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _DEVICECLASSIFIER

  # @@protoc_insertion_point(class_scope:cryptauth.DeviceClassifier)

class ExternalDeviceInfo(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _EXTERNALDEVICEINFO

  # @@protoc_insertion_point(class_scope:cryptauth.ExternalDeviceInfo)

class FindEligibleForPromotionRequest(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _FINDELIGIBLEFORPROMOTIONREQUEST

  # @@protoc_insertion_point(class_scope:cryptauth.FindEligibleForPromotionRequest)

class FindEligibleForPromotionResponse(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _FINDELIGIBLEFORPROMOTIONRESPONSE

  # @@protoc_insertion_point(class_scope:cryptauth.FindEligibleForPromotionResponse)

class FindEligibleUnlockDevicesRequest(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _FINDELIGIBLEUNLOCKDEVICESREQUEST

  # @@protoc_insertion_point(class_scope:cryptauth.FindEligibleUnlockDevicesRequest)

class FindEligibleUnlockDevicesResponse(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _FINDELIGIBLEUNLOCKDEVICESRESPONSE

  # @@protoc_insertion_point(class_scope:cryptauth.FindEligibleUnlockDevicesResponse)

class FinishEnrollmentRequest(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _FINISHENROLLMENTREQUEST

  # @@protoc_insertion_point(class_scope:cryptauth.FinishEnrollmentRequest)

class FinishEnrollmentResponse(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _FINISHENROLLMENTRESPONSE

  # @@protoc_insertion_point(class_scope:cryptauth.FinishEnrollmentResponse)

class GcmDeviceInfo(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _GCMDEVICEINFO

  # @@protoc_insertion_point(class_scope:cryptauth.GcmDeviceInfo)

class GcmMetadata(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _GCMMETADATA

  # @@protoc_insertion_point(class_scope:cryptauth.GcmMetadata)

class GetMyDevicesRequest(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _GETMYDEVICESREQUEST

  # @@protoc_insertion_point(class_scope:cryptauth.GetMyDevicesRequest)

class GetMyDevicesResponse(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _GETMYDEVICESRESPONSE

  # @@protoc_insertion_point(class_scope:cryptauth.GetMyDevicesResponse)

class IneligibleDevice(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _INELIGIBLEDEVICE

  # @@protoc_insertion_point(class_scope:cryptauth.IneligibleDevice)

class SendDeviceSyncTickleRequest(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _SENDDEVICESYNCTICKLEREQUEST

  # @@protoc_insertion_point(class_scope:cryptauth.SendDeviceSyncTickleRequest)

class SendDeviceSyncTickleResponse(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _SENDDEVICESYNCTICKLERESPONSE

  # @@protoc_insertion_point(class_scope:cryptauth.SendDeviceSyncTickleResponse)

class SetupEnrollmentInfo(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _SETUPENROLLMENTINFO

  # @@protoc_insertion_point(class_scope:cryptauth.SetupEnrollmentInfo)

class SetupEnrollmentRequest(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _SETUPENROLLMENTREQUEST

  # @@protoc_insertion_point(class_scope:cryptauth.SetupEnrollmentRequest)

class SetupEnrollmentResponse(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _SETUPENROLLMENTRESPONSE

  # @@protoc_insertion_point(class_scope:cryptauth.SetupEnrollmentResponse)

class ToggleEasyUnlockRequest(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _TOGGLEEASYUNLOCKREQUEST

  # @@protoc_insertion_point(class_scope:cryptauth.ToggleEasyUnlockRequest)

class ToggleEasyUnlockResponse(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType
  DESCRIPTOR = _TOGGLEEASYUNLOCKRESPONSE

  # @@protoc_insertion_point(class_scope:cryptauth.ToggleEasyUnlockResponse)


DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), 'H\003')
# @@protoc_insertion_point(module_scope)
