# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/bigtable/v2/data.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
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
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()




DESCRIPTOR = _descriptor.FileDescriptor(
  name='google/bigtable/v2/data.proto',
  package='google.bigtable.v2',
  syntax='proto3',
  serialized_pb=_b('\n\x1dgoogle/bigtable/v2/data.proto\x12\x12google.bigtable.v2\"@\n\x03Row\x12\x0b\n\x03key\x18\x01 \x01(\x0c\x12,\n\x08\x66\x61milies\x18\x02 \x03(\x0b\x32\x1a.google.bigtable.v2.Family\"C\n\x06\x46\x61mily\x12\x0c\n\x04name\x18\x01 \x01(\t\x12+\n\x07\x63olumns\x18\x02 \x03(\x0b\x32\x1a.google.bigtable.v2.Column\"D\n\x06\x43olumn\x12\x11\n\tqualifier\x18\x01 \x01(\x0c\x12\'\n\x05\x63\x65lls\x18\x02 \x03(\x0b\x32\x18.google.bigtable.v2.Cell\"?\n\x04\x43\x65ll\x12\x18\n\x10timestamp_micros\x18\x01 \x01(\x03\x12\r\n\x05value\x18\x02 \x01(\x0c\x12\x0e\n\x06labels\x18\x03 \x03(\t\"\x8a\x01\n\x08RowRange\x12\x1a\n\x10start_key_closed\x18\x01 \x01(\x0cH\x00\x12\x18\n\x0estart_key_open\x18\x02 \x01(\x0cH\x00\x12\x16\n\x0c\x65nd_key_open\x18\x03 \x01(\x0cH\x01\x12\x18\n\x0e\x65nd_key_closed\x18\x04 \x01(\x0cH\x01\x42\x0b\n\tstart_keyB\t\n\x07\x65nd_key\"L\n\x06RowSet\x12\x10\n\x08row_keys\x18\x01 \x03(\x0c\x12\x30\n\nrow_ranges\x18\x02 \x03(\x0b\x32\x1c.google.bigtable.v2.RowRange\"\xc6\x01\n\x0b\x43olumnRange\x12\x13\n\x0b\x66\x61mily_name\x18\x01 \x01(\t\x12 \n\x16start_qualifier_closed\x18\x02 \x01(\x0cH\x00\x12\x1e\n\x14start_qualifier_open\x18\x03 \x01(\x0cH\x00\x12\x1e\n\x14\x65nd_qualifier_closed\x18\x04 \x01(\x0cH\x01\x12\x1c\n\x12\x65nd_qualifier_open\x18\x05 \x01(\x0cH\x01\x42\x11\n\x0fstart_qualifierB\x0f\n\rend_qualifier\"N\n\x0eTimestampRange\x12\x1e\n\x16start_timestamp_micros\x18\x01 \x01(\x03\x12\x1c\n\x14\x65nd_timestamp_micros\x18\x02 \x01(\x03\"\x98\x01\n\nValueRange\x12\x1c\n\x12start_value_closed\x18\x01 \x01(\x0cH\x00\x12\x1a\n\x10start_value_open\x18\x02 \x01(\x0cH\x00\x12\x1a\n\x10\x65nd_value_closed\x18\x03 \x01(\x0cH\x01\x12\x18\n\x0e\x65nd_value_open\x18\x04 \x01(\x0cH\x01\x42\r\n\x0bstart_valueB\x0b\n\tend_value\"\xdf\x08\n\tRowFilter\x12\x34\n\x05\x63hain\x18\x01 \x01(\x0b\x32#.google.bigtable.v2.RowFilter.ChainH\x00\x12>\n\ninterleave\x18\x02 \x01(\x0b\x32(.google.bigtable.v2.RowFilter.InterleaveH\x00\x12<\n\tcondition\x18\x03 \x01(\x0b\x32\'.google.bigtable.v2.RowFilter.ConditionH\x00\x12\x0e\n\x04sink\x18\x10 \x01(\x08H\x00\x12\x19\n\x0fpass_all_filter\x18\x11 \x01(\x08H\x00\x12\x1a\n\x10\x62lock_all_filter\x18\x12 \x01(\x08H\x00\x12\x1e\n\x14row_key_regex_filter\x18\x04 \x01(\x0cH\x00\x12\x1b\n\x11row_sample_filter\x18\x0e \x01(\x01H\x00\x12\"\n\x18\x66\x61mily_name_regex_filter\x18\x05 \x01(\tH\x00\x12\'\n\x1d\x63olumn_qualifier_regex_filter\x18\x06 \x01(\x0cH\x00\x12>\n\x13\x63olumn_range_filter\x18\x07 \x01(\x0b\x32\x1f.google.bigtable.v2.ColumnRangeH\x00\x12\x44\n\x16timestamp_range_filter\x18\x08 \x01(\x0b\x32\".google.bigtable.v2.TimestampRangeH\x00\x12\x1c\n\x12value_regex_filter\x18\t \x01(\x0cH\x00\x12<\n\x12value_range_filter\x18\x0f \x01(\x0b\x32\x1e.google.bigtable.v2.ValueRangeH\x00\x12%\n\x1b\x63\x65lls_per_row_offset_filter\x18\n \x01(\x05H\x00\x12$\n\x1a\x63\x65lls_per_row_limit_filter\x18\x0b \x01(\x05H\x00\x12\'\n\x1d\x63\x65lls_per_column_limit_filter\x18\x0c \x01(\x05H\x00\x12!\n\x17strip_value_transformer\x18\r \x01(\x08H\x00\x12!\n\x17\x61pply_label_transformer\x18\x13 \x01(\tH\x00\x1a\x37\n\x05\x43hain\x12.\n\x07\x66ilters\x18\x01 \x03(\x0b\x32\x1d.google.bigtable.v2.RowFilter\x1a<\n\nInterleave\x12.\n\x07\x66ilters\x18\x01 \x03(\x0b\x32\x1d.google.bigtable.v2.RowFilter\x1a\xad\x01\n\tCondition\x12\x37\n\x10predicate_filter\x18\x01 \x01(\x0b\x32\x1d.google.bigtable.v2.RowFilter\x12\x32\n\x0btrue_filter\x18\x02 \x01(\x0b\x32\x1d.google.bigtable.v2.RowFilter\x12\x33\n\x0c\x66\x61lse_filter\x18\x03 \x01(\x0b\x32\x1d.google.bigtable.v2.RowFilterB\x08\n\x06\x66ilter\"\xc9\x04\n\x08Mutation\x12\x38\n\x08set_cell\x18\x01 \x01(\x0b\x32$.google.bigtable.v2.Mutation.SetCellH\x00\x12K\n\x12\x64\x65lete_from_column\x18\x02 \x01(\x0b\x32-.google.bigtable.v2.Mutation.DeleteFromColumnH\x00\x12K\n\x12\x64\x65lete_from_family\x18\x03 \x01(\x0b\x32-.google.bigtable.v2.Mutation.DeleteFromFamilyH\x00\x12\x45\n\x0f\x64\x65lete_from_row\x18\x04 \x01(\x0b\x32*.google.bigtable.v2.Mutation.DeleteFromRowH\x00\x1a\x61\n\x07SetCell\x12\x13\n\x0b\x66\x61mily_name\x18\x01 \x01(\t\x12\x18\n\x10\x63olumn_qualifier\x18\x02 \x01(\x0c\x12\x18\n\x10timestamp_micros\x18\x03 \x01(\x03\x12\r\n\x05value\x18\x04 \x01(\x0c\x1ay\n\x10\x44\x65leteFromColumn\x12\x13\n\x0b\x66\x61mily_name\x18\x01 \x01(\t\x12\x18\n\x10\x63olumn_qualifier\x18\x02 \x01(\x0c\x12\x36\n\ntime_range\x18\x03 \x01(\x0b\x32\".google.bigtable.v2.TimestampRange\x1a\'\n\x10\x44\x65leteFromFamily\x12\x13\n\x0b\x66\x61mily_name\x18\x01 \x01(\t\x1a\x0f\n\rDeleteFromRowB\n\n\x08mutation\"\x80\x01\n\x13ReadModifyWriteRule\x12\x13\n\x0b\x66\x61mily_name\x18\x01 \x01(\t\x12\x18\n\x10\x63olumn_qualifier\x18\x02 \x01(\x0c\x12\x16\n\x0c\x61ppend_value\x18\x03 \x01(\x0cH\x00\x12\x1a\n\x10increment_amount\x18\x04 \x01(\x03H\x00\x42\x06\n\x04ruleB|\n\x16\x63om.google.bigtable.v2B\tDataProtoP\x01Z:google.golang.org/genproto/googleapis/bigtable/v2;bigtable\xaa\x02\x18Google.Cloud.Bigtable.V2b\x06proto3')
)




_ROW = _descriptor.Descriptor(
  name='Row',
  full_name='google.bigtable.v2.Row',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='google.bigtable.v2.Row.key', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='families', full_name='google.bigtable.v2.Row.families', 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,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=53,
  serialized_end=117,
)


_FAMILY = _descriptor.Descriptor(
  name='Family',
  full_name='google.bigtable.v2.Family',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='google.bigtable.v2.Family.name', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='columns', full_name='google.bigtable.v2.Family.columns', 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,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=119,
  serialized_end=186,
)


_COLUMN = _descriptor.Descriptor(
  name='Column',
  full_name='google.bigtable.v2.Column',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='qualifier', full_name='google.bigtable.v2.Column.qualifier', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='cells', full_name='google.bigtable.v2.Column.cells', 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,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=188,
  serialized_end=256,
)


_CELL = _descriptor.Descriptor(
  name='Cell',
  full_name='google.bigtable.v2.Cell',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='timestamp_micros', full_name='google.bigtable.v2.Cell.timestamp_micros', index=0,
      number=1, 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='value', full_name='google.bigtable.v2.Cell.value', index=1,
      number=2, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='labels', full_name='google.bigtable.v2.Cell.labels', index=2,
      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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=258,
  serialized_end=321,
)


_ROWRANGE = _descriptor.Descriptor(
  name='RowRange',
  full_name='google.bigtable.v2.RowRange',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='start_key_closed', full_name='google.bigtable.v2.RowRange.start_key_closed', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='start_key_open', full_name='google.bigtable.v2.RowRange.start_key_open', index=1,
      number=2, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='end_key_open', full_name='google.bigtable.v2.RowRange.end_key_open', index=2,
      number=3, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='end_key_closed', full_name='google.bigtable.v2.RowRange.end_key_closed', index=3,
      number=4, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='start_key', full_name='google.bigtable.v2.RowRange.start_key',
      index=0, containing_type=None, fields=[]),
    _descriptor.OneofDescriptor(
      name='end_key', full_name='google.bigtable.v2.RowRange.end_key',
      index=1, containing_type=None, fields=[]),
  ],
  serialized_start=324,
  serialized_end=462,
)


_ROWSET = _descriptor.Descriptor(
  name='RowSet',
  full_name='google.bigtable.v2.RowSet',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='row_keys', full_name='google.bigtable.v2.RowSet.row_keys', index=0,
      number=1, type=12, 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='row_ranges', full_name='google.bigtable.v2.RowSet.row_ranges', 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,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=464,
  serialized_end=540,
)


_COLUMNRANGE = _descriptor.Descriptor(
  name='ColumnRange',
  full_name='google.bigtable.v2.ColumnRange',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='family_name', full_name='google.bigtable.v2.ColumnRange.family_name', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='start_qualifier_closed', full_name='google.bigtable.v2.ColumnRange.start_qualifier_closed', index=1,
      number=2, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='start_qualifier_open', full_name='google.bigtable.v2.ColumnRange.start_qualifier_open', index=2,
      number=3, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='end_qualifier_closed', full_name='google.bigtable.v2.ColumnRange.end_qualifier_closed', index=3,
      number=4, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='end_qualifier_open', full_name='google.bigtable.v2.ColumnRange.end_qualifier_open', index=4,
      number=5, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='start_qualifier', full_name='google.bigtable.v2.ColumnRange.start_qualifier',
      index=0, containing_type=None, fields=[]),
    _descriptor.OneofDescriptor(
      name='end_qualifier', full_name='google.bigtable.v2.ColumnRange.end_qualifier',
      index=1, containing_type=None, fields=[]),
  ],
  serialized_start=543,
  serialized_end=741,
)


_TIMESTAMPRANGE = _descriptor.Descriptor(
  name='TimestampRange',
  full_name='google.bigtable.v2.TimestampRange',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='start_timestamp_micros', full_name='google.bigtable.v2.TimestampRange.start_timestamp_micros', index=0,
      number=1, 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='end_timestamp_micros', full_name='google.bigtable.v2.TimestampRange.end_timestamp_micros', index=1,
      number=2, 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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=743,
  serialized_end=821,
)


_VALUERANGE = _descriptor.Descriptor(
  name='ValueRange',
  full_name='google.bigtable.v2.ValueRange',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='start_value_closed', full_name='google.bigtable.v2.ValueRange.start_value_closed', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='start_value_open', full_name='google.bigtable.v2.ValueRange.start_value_open', index=1,
      number=2, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='end_value_closed', full_name='google.bigtable.v2.ValueRange.end_value_closed', index=2,
      number=3, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='end_value_open', full_name='google.bigtable.v2.ValueRange.end_value_open', index=3,
      number=4, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='start_value', full_name='google.bigtable.v2.ValueRange.start_value',
      index=0, containing_type=None, fields=[]),
    _descriptor.OneofDescriptor(
      name='end_value', full_name='google.bigtable.v2.ValueRange.end_value',
      index=1, containing_type=None, fields=[]),
  ],
  serialized_start=824,
  serialized_end=976,
)


_ROWFILTER_CHAIN = _descriptor.Descriptor(
  name='Chain',
  full_name='google.bigtable.v2.RowFilter.Chain',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='filters', full_name='google.bigtable.v2.RowFilter.Chain.filters', 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,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1795,
  serialized_end=1850,
)

_ROWFILTER_INTERLEAVE = _descriptor.Descriptor(
  name='Interleave',
  full_name='google.bigtable.v2.RowFilter.Interleave',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='filters', full_name='google.bigtable.v2.RowFilter.Interleave.filters', 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,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1852,
  serialized_end=1912,
)

_ROWFILTER_CONDITION = _descriptor.Descriptor(
  name='Condition',
  full_name='google.bigtable.v2.RowFilter.Condition',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='predicate_filter', full_name='google.bigtable.v2.RowFilter.Condition.predicate_filter', 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='true_filter', full_name='google.bigtable.v2.RowFilter.Condition.true_filter', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='false_filter', full_name='google.bigtable.v2.RowFilter.Condition.false_filter', index=2,
      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,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1915,
  serialized_end=2088,
)

_ROWFILTER = _descriptor.Descriptor(
  name='RowFilter',
  full_name='google.bigtable.v2.RowFilter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='chain', full_name='google.bigtable.v2.RowFilter.chain', 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='interleave', full_name='google.bigtable.v2.RowFilter.interleave', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='condition', full_name='google.bigtable.v2.RowFilter.condition', index=2,
      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),
    _descriptor.FieldDescriptor(
      name='sink', full_name='google.bigtable.v2.RowFilter.sink', index=3,
      number=16, 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='pass_all_filter', full_name='google.bigtable.v2.RowFilter.pass_all_filter', index=4,
      number=17, 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='block_all_filter', full_name='google.bigtable.v2.RowFilter.block_all_filter', index=5,
      number=18, 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='row_key_regex_filter', full_name='google.bigtable.v2.RowFilter.row_key_regex_filter', index=6,
      number=4, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='row_sample_filter', full_name='google.bigtable.v2.RowFilter.row_sample_filter', index=7,
      number=14, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='family_name_regex_filter', full_name='google.bigtable.v2.RowFilter.family_name_regex_filter', index=8,
      number=5, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='column_qualifier_regex_filter', full_name='google.bigtable.v2.RowFilter.column_qualifier_regex_filter', index=9,
      number=6, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='column_range_filter', full_name='google.bigtable.v2.RowFilter.column_range_filter', index=10,
      number=7, 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='timestamp_range_filter', full_name='google.bigtable.v2.RowFilter.timestamp_range_filter', index=11,
      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),
    _descriptor.FieldDescriptor(
      name='value_regex_filter', full_name='google.bigtable.v2.RowFilter.value_regex_filter', index=12,
      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,
      options=None),
    _descriptor.FieldDescriptor(
      name='value_range_filter', full_name='google.bigtable.v2.RowFilter.value_range_filter', index=13,
      number=15, 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='cells_per_row_offset_filter', full_name='google.bigtable.v2.RowFilter.cells_per_row_offset_filter', index=14,
      number=10, 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='cells_per_row_limit_filter', full_name='google.bigtable.v2.RowFilter.cells_per_row_limit_filter', index=15,
      number=11, 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='cells_per_column_limit_filter', full_name='google.bigtable.v2.RowFilter.cells_per_column_limit_filter', index=16,
      number=12, 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='strip_value_transformer', full_name='google.bigtable.v2.RowFilter.strip_value_transformer', index=17,
      number=13, 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='apply_label_transformer', full_name='google.bigtable.v2.RowFilter.apply_label_transformer', index=18,
      number=19, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_ROWFILTER_CHAIN, _ROWFILTER_INTERLEAVE, _ROWFILTER_CONDITION, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='filter', full_name='google.bigtable.v2.RowFilter.filter',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=979,
  serialized_end=2098,
)


_MUTATION_SETCELL = _descriptor.Descriptor(
  name='SetCell',
  full_name='google.bigtable.v2.Mutation.SetCell',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='family_name', full_name='google.bigtable.v2.Mutation.SetCell.family_name', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='column_qualifier', full_name='google.bigtable.v2.Mutation.SetCell.column_qualifier', index=1,
      number=2, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='timestamp_micros', full_name='google.bigtable.v2.Mutation.SetCell.timestamp_micros', index=2,
      number=3, 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='value', full_name='google.bigtable.v2.Mutation.SetCell.value', index=3,
      number=4, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2396,
  serialized_end=2493,
)

_MUTATION_DELETEFROMCOLUMN = _descriptor.Descriptor(
  name='DeleteFromColumn',
  full_name='google.bigtable.v2.Mutation.DeleteFromColumn',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='family_name', full_name='google.bigtable.v2.Mutation.DeleteFromColumn.family_name', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='column_qualifier', full_name='google.bigtable.v2.Mutation.DeleteFromColumn.column_qualifier', index=1,
      number=2, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='time_range', full_name='google.bigtable.v2.Mutation.DeleteFromColumn.time_range', index=2,
      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,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2495,
  serialized_end=2616,
)

_MUTATION_DELETEFROMFAMILY = _descriptor.Descriptor(
  name='DeleteFromFamily',
  full_name='google.bigtable.v2.Mutation.DeleteFromFamily',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='family_name', full_name='google.bigtable.v2.Mutation.DeleteFromFamily.family_name', 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2618,
  serialized_end=2657,
)

_MUTATION_DELETEFROMROW = _descriptor.Descriptor(
  name='DeleteFromRow',
  full_name='google.bigtable.v2.Mutation.DeleteFromRow',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2659,
  serialized_end=2674,
)

_MUTATION = _descriptor.Descriptor(
  name='Mutation',
  full_name='google.bigtable.v2.Mutation',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='set_cell', full_name='google.bigtable.v2.Mutation.set_cell', 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='delete_from_column', full_name='google.bigtable.v2.Mutation.delete_from_column', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='delete_from_family', full_name='google.bigtable.v2.Mutation.delete_from_family', index=2,
      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),
    _descriptor.FieldDescriptor(
      name='delete_from_row', full_name='google.bigtable.v2.Mutation.delete_from_row', 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=[_MUTATION_SETCELL, _MUTATION_DELETEFROMCOLUMN, _MUTATION_DELETEFROMFAMILY, _MUTATION_DELETEFROMROW, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='mutation', full_name='google.bigtable.v2.Mutation.mutation',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=2101,
  serialized_end=2686,
)


_READMODIFYWRITERULE = _descriptor.Descriptor(
  name='ReadModifyWriteRule',
  full_name='google.bigtable.v2.ReadModifyWriteRule',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='family_name', full_name='google.bigtable.v2.ReadModifyWriteRule.family_name', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='column_qualifier', full_name='google.bigtable.v2.ReadModifyWriteRule.column_qualifier', index=1,
      number=2, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='append_value', full_name='google.bigtable.v2.ReadModifyWriteRule.append_value', index=2,
      number=3, 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='increment_amount', full_name='google.bigtable.v2.ReadModifyWriteRule.increment_amount', index=3,
      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),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='rule', full_name='google.bigtable.v2.ReadModifyWriteRule.rule',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=2689,
  serialized_end=2817,
)

_ROW.fields_by_name['families'].message_type = _FAMILY
_FAMILY.fields_by_name['columns'].message_type = _COLUMN
_COLUMN.fields_by_name['cells'].message_type = _CELL
_ROWRANGE.oneofs_by_name['start_key'].fields.append(
  _ROWRANGE.fields_by_name['start_key_closed'])
_ROWRANGE.fields_by_name['start_key_closed'].containing_oneof = _ROWRANGE.oneofs_by_name['start_key']
_ROWRANGE.oneofs_by_name['start_key'].fields.append(
  _ROWRANGE.fields_by_name['start_key_open'])
_ROWRANGE.fields_by_name['start_key_open'].containing_oneof = _ROWRANGE.oneofs_by_name['start_key']
_ROWRANGE.oneofs_by_name['end_key'].fields.append(
  _ROWRANGE.fields_by_name['end_key_open'])
_ROWRANGE.fields_by_name['end_key_open'].containing_oneof = _ROWRANGE.oneofs_by_name['end_key']
_ROWRANGE.oneofs_by_name['end_key'].fields.append(
  _ROWRANGE.fields_by_name['end_key_closed'])
_ROWRANGE.fields_by_name['end_key_closed'].containing_oneof = _ROWRANGE.oneofs_by_name['end_key']
_ROWSET.fields_by_name['row_ranges'].message_type = _ROWRANGE
_COLUMNRANGE.oneofs_by_name['start_qualifier'].fields.append(
  _COLUMNRANGE.fields_by_name['start_qualifier_closed'])
_COLUMNRANGE.fields_by_name['start_qualifier_closed'].containing_oneof = _COLUMNRANGE.oneofs_by_name['start_qualifier']
_COLUMNRANGE.oneofs_by_name['start_qualifier'].fields.append(
  _COLUMNRANGE.fields_by_name['start_qualifier_open'])
_COLUMNRANGE.fields_by_name['start_qualifier_open'].containing_oneof = _COLUMNRANGE.oneofs_by_name['start_qualifier']
_COLUMNRANGE.oneofs_by_name['end_qualifier'].fields.append(
  _COLUMNRANGE.fields_by_name['end_qualifier_closed'])
_COLUMNRANGE.fields_by_name['end_qualifier_closed'].containing_oneof = _COLUMNRANGE.oneofs_by_name['end_qualifier']
_COLUMNRANGE.oneofs_by_name['end_qualifier'].fields.append(
  _COLUMNRANGE.fields_by_name['end_qualifier_open'])
_COLUMNRANGE.fields_by_name['end_qualifier_open'].containing_oneof = _COLUMNRANGE.oneofs_by_name['end_qualifier']
_VALUERANGE.oneofs_by_name['start_value'].fields.append(
  _VALUERANGE.fields_by_name['start_value_closed'])
_VALUERANGE.fields_by_name['start_value_closed'].containing_oneof = _VALUERANGE.oneofs_by_name['start_value']
_VALUERANGE.oneofs_by_name['start_value'].fields.append(
  _VALUERANGE.fields_by_name['start_value_open'])
_VALUERANGE.fields_by_name['start_value_open'].containing_oneof = _VALUERANGE.oneofs_by_name['start_value']
_VALUERANGE.oneofs_by_name['end_value'].fields.append(
  _VALUERANGE.fields_by_name['end_value_closed'])
_VALUERANGE.fields_by_name['end_value_closed'].containing_oneof = _VALUERANGE.oneofs_by_name['end_value']
_VALUERANGE.oneofs_by_name['end_value'].fields.append(
  _VALUERANGE.fields_by_name['end_value_open'])
_VALUERANGE.fields_by_name['end_value_open'].containing_oneof = _VALUERANGE.oneofs_by_name['end_value']
_ROWFILTER_CHAIN.fields_by_name['filters'].message_type = _ROWFILTER
_ROWFILTER_CHAIN.containing_type = _ROWFILTER
_ROWFILTER_INTERLEAVE.fields_by_name['filters'].message_type = _ROWFILTER
_ROWFILTER_INTERLEAVE.containing_type = _ROWFILTER
_ROWFILTER_CONDITION.fields_by_name['predicate_filter'].message_type = _ROWFILTER
_ROWFILTER_CONDITION.fields_by_name['true_filter'].message_type = _ROWFILTER
_ROWFILTER_CONDITION.fields_by_name['false_filter'].message_type = _ROWFILTER
_ROWFILTER_CONDITION.containing_type = _ROWFILTER
_ROWFILTER.fields_by_name['chain'].message_type = _ROWFILTER_CHAIN
_ROWFILTER.fields_by_name['interleave'].message_type = _ROWFILTER_INTERLEAVE
_ROWFILTER.fields_by_name['condition'].message_type = _ROWFILTER_CONDITION
_ROWFILTER.fields_by_name['column_range_filter'].message_type = _COLUMNRANGE
_ROWFILTER.fields_by_name['timestamp_range_filter'].message_type = _TIMESTAMPRANGE
_ROWFILTER.fields_by_name['value_range_filter'].message_type = _VALUERANGE
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['chain'])
_ROWFILTER.fields_by_name['chain'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['interleave'])
_ROWFILTER.fields_by_name['interleave'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['condition'])
_ROWFILTER.fields_by_name['condition'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['sink'])
_ROWFILTER.fields_by_name['sink'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['pass_all_filter'])
_ROWFILTER.fields_by_name['pass_all_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['block_all_filter'])
_ROWFILTER.fields_by_name['block_all_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['row_key_regex_filter'])
_ROWFILTER.fields_by_name['row_key_regex_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['row_sample_filter'])
_ROWFILTER.fields_by_name['row_sample_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['family_name_regex_filter'])
_ROWFILTER.fields_by_name['family_name_regex_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['column_qualifier_regex_filter'])
_ROWFILTER.fields_by_name['column_qualifier_regex_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['column_range_filter'])
_ROWFILTER.fields_by_name['column_range_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['timestamp_range_filter'])
_ROWFILTER.fields_by_name['timestamp_range_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['value_regex_filter'])
_ROWFILTER.fields_by_name['value_regex_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['value_range_filter'])
_ROWFILTER.fields_by_name['value_range_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['cells_per_row_offset_filter'])
_ROWFILTER.fields_by_name['cells_per_row_offset_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['cells_per_row_limit_filter'])
_ROWFILTER.fields_by_name['cells_per_row_limit_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['cells_per_column_limit_filter'])
_ROWFILTER.fields_by_name['cells_per_column_limit_filter'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['strip_value_transformer'])
_ROWFILTER.fields_by_name['strip_value_transformer'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_ROWFILTER.oneofs_by_name['filter'].fields.append(
  _ROWFILTER.fields_by_name['apply_label_transformer'])
_ROWFILTER.fields_by_name['apply_label_transformer'].containing_oneof = _ROWFILTER.oneofs_by_name['filter']
_MUTATION_SETCELL.containing_type = _MUTATION
_MUTATION_DELETEFROMCOLUMN.fields_by_name['time_range'].message_type = _TIMESTAMPRANGE
_MUTATION_DELETEFROMCOLUMN.containing_type = _MUTATION
_MUTATION_DELETEFROMFAMILY.containing_type = _MUTATION
_MUTATION_DELETEFROMROW.containing_type = _MUTATION
_MUTATION.fields_by_name['set_cell'].message_type = _MUTATION_SETCELL
_MUTATION.fields_by_name['delete_from_column'].message_type = _MUTATION_DELETEFROMCOLUMN
_MUTATION.fields_by_name['delete_from_family'].message_type = _MUTATION_DELETEFROMFAMILY
_MUTATION.fields_by_name['delete_from_row'].message_type = _MUTATION_DELETEFROMROW
_MUTATION.oneofs_by_name['mutation'].fields.append(
  _MUTATION.fields_by_name['set_cell'])
_MUTATION.fields_by_name['set_cell'].containing_oneof = _MUTATION.oneofs_by_name['mutation']
_MUTATION.oneofs_by_name['mutation'].fields.append(
  _MUTATION.fields_by_name['delete_from_column'])
_MUTATION.fields_by_name['delete_from_column'].containing_oneof = _MUTATION.oneofs_by_name['mutation']
_MUTATION.oneofs_by_name['mutation'].fields.append(
  _MUTATION.fields_by_name['delete_from_family'])
_MUTATION.fields_by_name['delete_from_family'].containing_oneof = _MUTATION.oneofs_by_name['mutation']
_MUTATION.oneofs_by_name['mutation'].fields.append(
  _MUTATION.fields_by_name['delete_from_row'])
_MUTATION.fields_by_name['delete_from_row'].containing_oneof = _MUTATION.oneofs_by_name['mutation']
_READMODIFYWRITERULE.oneofs_by_name['rule'].fields.append(
  _READMODIFYWRITERULE.fields_by_name['append_value'])
_READMODIFYWRITERULE.fields_by_name['append_value'].containing_oneof = _READMODIFYWRITERULE.oneofs_by_name['rule']
_READMODIFYWRITERULE.oneofs_by_name['rule'].fields.append(
  _READMODIFYWRITERULE.fields_by_name['increment_amount'])
_READMODIFYWRITERULE.fields_by_name['increment_amount'].containing_oneof = _READMODIFYWRITERULE.oneofs_by_name['rule']
DESCRIPTOR.message_types_by_name['Row'] = _ROW
DESCRIPTOR.message_types_by_name['Family'] = _FAMILY
DESCRIPTOR.message_types_by_name['Column'] = _COLUMN
DESCRIPTOR.message_types_by_name['Cell'] = _CELL
DESCRIPTOR.message_types_by_name['RowRange'] = _ROWRANGE
DESCRIPTOR.message_types_by_name['RowSet'] = _ROWSET
DESCRIPTOR.message_types_by_name['ColumnRange'] = _COLUMNRANGE
DESCRIPTOR.message_types_by_name['TimestampRange'] = _TIMESTAMPRANGE
DESCRIPTOR.message_types_by_name['ValueRange'] = _VALUERANGE
DESCRIPTOR.message_types_by_name['RowFilter'] = _ROWFILTER
DESCRIPTOR.message_types_by_name['Mutation'] = _MUTATION
DESCRIPTOR.message_types_by_name['ReadModifyWriteRule'] = _READMODIFYWRITERULE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Row = _reflection.GeneratedProtocolMessageType('Row', (_message.Message,), dict(
  DESCRIPTOR = _ROW,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.Row)
  ))
_sym_db.RegisterMessage(Row)

Family = _reflection.GeneratedProtocolMessageType('Family', (_message.Message,), dict(
  DESCRIPTOR = _FAMILY,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.Family)
  ))
_sym_db.RegisterMessage(Family)

Column = _reflection.GeneratedProtocolMessageType('Column', (_message.Message,), dict(
  DESCRIPTOR = _COLUMN,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.Column)
  ))
_sym_db.RegisterMessage(Column)

Cell = _reflection.GeneratedProtocolMessageType('Cell', (_message.Message,), dict(
  DESCRIPTOR = _CELL,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.Cell)
  ))
_sym_db.RegisterMessage(Cell)

RowRange = _reflection.GeneratedProtocolMessageType('RowRange', (_message.Message,), dict(
  DESCRIPTOR = _ROWRANGE,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.RowRange)
  ))
_sym_db.RegisterMessage(RowRange)

RowSet = _reflection.GeneratedProtocolMessageType('RowSet', (_message.Message,), dict(
  DESCRIPTOR = _ROWSET,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.RowSet)
  ))
_sym_db.RegisterMessage(RowSet)

ColumnRange = _reflection.GeneratedProtocolMessageType('ColumnRange', (_message.Message,), dict(
  DESCRIPTOR = _COLUMNRANGE,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.ColumnRange)
  ))
_sym_db.RegisterMessage(ColumnRange)

TimestampRange = _reflection.GeneratedProtocolMessageType('TimestampRange', (_message.Message,), dict(
  DESCRIPTOR = _TIMESTAMPRANGE,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.TimestampRange)
  ))
_sym_db.RegisterMessage(TimestampRange)

ValueRange = _reflection.GeneratedProtocolMessageType('ValueRange', (_message.Message,), dict(
  DESCRIPTOR = _VALUERANGE,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.ValueRange)
  ))
_sym_db.RegisterMessage(ValueRange)

RowFilter = _reflection.GeneratedProtocolMessageType('RowFilter', (_message.Message,), dict(

  Chain = _reflection.GeneratedProtocolMessageType('Chain', (_message.Message,), dict(
    DESCRIPTOR = _ROWFILTER_CHAIN,
    __module__ = 'google.bigtable.v2.data_pb2'
    # @@protoc_insertion_point(class_scope:google.bigtable.v2.RowFilter.Chain)
    ))
  ,

  Interleave = _reflection.GeneratedProtocolMessageType('Interleave', (_message.Message,), dict(
    DESCRIPTOR = _ROWFILTER_INTERLEAVE,
    __module__ = 'google.bigtable.v2.data_pb2'
    # @@protoc_insertion_point(class_scope:google.bigtable.v2.RowFilter.Interleave)
    ))
  ,

  Condition = _reflection.GeneratedProtocolMessageType('Condition', (_message.Message,), dict(
    DESCRIPTOR = _ROWFILTER_CONDITION,
    __module__ = 'google.bigtable.v2.data_pb2'
    # @@protoc_insertion_point(class_scope:google.bigtable.v2.RowFilter.Condition)
    ))
  ,
  DESCRIPTOR = _ROWFILTER,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.RowFilter)
  ))
_sym_db.RegisterMessage(RowFilter)
_sym_db.RegisterMessage(RowFilter.Chain)
_sym_db.RegisterMessage(RowFilter.Interleave)
_sym_db.RegisterMessage(RowFilter.Condition)

Mutation = _reflection.GeneratedProtocolMessageType('Mutation', (_message.Message,), dict(

  SetCell = _reflection.GeneratedProtocolMessageType('SetCell', (_message.Message,), dict(
    DESCRIPTOR = _MUTATION_SETCELL,
    __module__ = 'google.bigtable.v2.data_pb2'
    # @@protoc_insertion_point(class_scope:google.bigtable.v2.Mutation.SetCell)
    ))
  ,

  DeleteFromColumn = _reflection.GeneratedProtocolMessageType('DeleteFromColumn', (_message.Message,), dict(
    DESCRIPTOR = _MUTATION_DELETEFROMCOLUMN,
    __module__ = 'google.bigtable.v2.data_pb2'
    # @@protoc_insertion_point(class_scope:google.bigtable.v2.Mutation.DeleteFromColumn)
    ))
  ,

  DeleteFromFamily = _reflection.GeneratedProtocolMessageType('DeleteFromFamily', (_message.Message,), dict(
    DESCRIPTOR = _MUTATION_DELETEFROMFAMILY,
    __module__ = 'google.bigtable.v2.data_pb2'
    # @@protoc_insertion_point(class_scope:google.bigtable.v2.Mutation.DeleteFromFamily)
    ))
  ,

  DeleteFromRow = _reflection.GeneratedProtocolMessageType('DeleteFromRow', (_message.Message,), dict(
    DESCRIPTOR = _MUTATION_DELETEFROMROW,
    __module__ = 'google.bigtable.v2.data_pb2'
    # @@protoc_insertion_point(class_scope:google.bigtable.v2.Mutation.DeleteFromRow)
    ))
  ,
  DESCRIPTOR = _MUTATION,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.Mutation)
  ))
_sym_db.RegisterMessage(Mutation)
_sym_db.RegisterMessage(Mutation.SetCell)
_sym_db.RegisterMessage(Mutation.DeleteFromColumn)
_sym_db.RegisterMessage(Mutation.DeleteFromFamily)
_sym_db.RegisterMessage(Mutation.DeleteFromRow)

ReadModifyWriteRule = _reflection.GeneratedProtocolMessageType('ReadModifyWriteRule', (_message.Message,), dict(
  DESCRIPTOR = _READMODIFYWRITERULE,
  __module__ = 'google.bigtable.v2.data_pb2'
  # @@protoc_insertion_point(class_scope:google.bigtable.v2.ReadModifyWriteRule)
  ))
_sym_db.RegisterMessage(ReadModifyWriteRule)


DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\026com.google.bigtable.v2B\tDataProtoP\001Z:google.golang.org/genproto/googleapis/bigtable/v2;bigtable\252\002\030Google.Cloud.Bigtable.V2'))
try:
  # THESE ELEMENTS WILL BE DEPRECATED.
  # Please use the generated *_pb2_grpc.py files instead.
  import grpc
  from grpc.beta import implementations as beta_implementations
  from grpc.beta import interfaces as beta_interfaces
  from grpc.framework.common import cardinality
  from grpc.framework.interfaces.face import utilities as face_utilities
except ImportError:
  pass
# @@protoc_insertion_point(module_scope)
