diff --git a/api/api_proto/features_pb2.py b/api/api_proto/features_pb2.py
index bfb954f..9723230 100644
--- a/api/api_proto/features_pb2.py
+++ b/api/api_proto/features_pb2.py
@@ -2,9 +2,9 @@
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: api/api_proto/features.proto
 """Generated protocol buffer code."""
+from google.protobuf.internal import builder as _builder
 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_pool as _descriptor_pool
 from google.protobuf import symbol_database as _symbol_database
 # @@protoc_insertion_point(imports)
 
@@ -15,1481 +15,74 @@
 from api.api_proto import features_objects_pb2 as api_dot_api__proto_dot_features__objects__pb2
 
 
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='api/api_proto/features.proto',
-  package='monorail',
-  syntax='proto3',
-  serialized_options=b'Z\'infra/monorailv2/api/api_proto;monorail',
-  create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n\x1c\x61pi/api_proto/features.proto\x12\x08monorail\x1a\x1a\x61pi/api_proto/common.proto\x1a$api/api_proto/features_objects.proto\"<\n\x19ListHotlistsByUserRequest\x12\x1f\n\x04user\x18\x02 \x01(\x0b\x32\x11.monorail.UserRef\"A\n\x1aListHotlistsByUserResponse\x12#\n\x08hotlists\x18\x01 \x03(\x0b\x32\x11.monorail.Hotlist\"?\n\x1aListHotlistsByIssueRequest\x12!\n\x05issue\x18\x02 \x01(\x0b\x32\x12.monorail.IssueRef\"B\n\x1bListHotlistsByIssueResponse\x12#\n\x08hotlists\x18\x01 \x03(\x0b\x32\x11.monorail.Hotlist\"$\n\"ListRecentlyVisitedHotlistsRequest\"J\n#ListRecentlyVisitedHotlistsResponse\x12#\n\x08hotlists\x18\x01 \x03(\x0b\x32\x11.monorail.Hotlist\"\x1c\n\x1aListStarredHotlistsRequest\"B\n\x1bListStarredHotlistsResponse\x12#\n\x08hotlists\x18\x01 \x03(\x0b\x32\x11.monorail.Hotlist\"G\n\x1aGetHotlistStarCountRequest\x12)\n\x0bhotlist_ref\x18\x02 \x01(\x0b\x32\x14.monorail.HotlistRef\"1\n\x1bGetHotlistStarCountResponse\x12\x12\n\nstar_count\x18\x01 \x01(\r\"P\n\x12StarHotlistRequest\x12)\n\x0bhotlist_ref\x18\x02 \x01(\x0b\x32\x14.monorail.HotlistRef\x12\x0f\n\x07starred\x18\x03 \x01(\x08\")\n\x13StarHotlistResponse\x12\x12\n\nstar_count\x18\x01 \x01(\r\">\n\x11GetHotlistRequest\x12)\n\x0bhotlist_ref\x18\x01 \x01(\x0b\x32\x14.monorail.HotlistRef\"8\n\x12GetHotlistResponse\x12\"\n\x07hotlist\x18\x01 \x01(\x0b\x32\x11.monorail.Hotlist\"\xa5\x01\n\x17ListHotlistItemsRequest\x12)\n\x0bhotlist_ref\x18\x02 \x01(\x0b\x32\x14.monorail.HotlistRef\x12(\n\npagination\x18\x03 \x01(\x0b\x32\x14.monorail.Pagination\x12\x0b\n\x03\x63\x61n\x18\x04 \x01(\r\x12\x11\n\tsort_spec\x18\x05 \x01(\t\x12\x15\n\rgroup_by_spec\x18\x06 \x01(\t\"@\n\x18ListHotlistItemsResponse\x12$\n\x05items\x18\x01 \x03(\x0b\x32\x15.monorail.HotlistItem\"\xae\x01\n\x14\x43reateHotlistRequest\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07summary\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12&\n\x0b\x65\x64itor_refs\x18\x05 \x03(\x0b\x32\x11.monorail.UserRef\x12&\n\nissue_refs\x18\x06 \x03(\x0b\x32\x12.monorail.IssueRef\x12\x12\n\nis_private\x18\x07 \x01(\x08\"\x17\n\x15\x43reateHotlistResponse\"\'\n\x17\x43heckHotlistNameRequest\x12\x0c\n\x04name\x18\x02 \x01(\t\")\n\x18\x43heckHotlistNameResponse\x12\r\n\x05\x65rror\x18\x01 \x01(\t\"u\n\x1fRemoveIssuesFromHotlistsRequest\x12*\n\x0chotlist_refs\x18\x02 \x03(\x0b\x32\x14.monorail.HotlistRef\x12&\n\nissue_refs\x18\x03 \x03(\x0b\x32\x12.monorail.IssueRef\"\"\n RemoveIssuesFromHotlistsResponse\"~\n\x1a\x41\x64\x64IssuesToHotlistsRequest\x12*\n\x0chotlist_refs\x18\x02 \x03(\x0b\x32\x14.monorail.HotlistRef\x12&\n\nissue_refs\x18\x03 \x03(\x0b\x32\x12.monorail.IssueRef\x12\x0c\n\x04note\x18\x04 \x01(\t\"\x1d\n\x1b\x41\x64\x64IssuesToHotlistsResponse\"\xac\x01\n\x1aRerankHotlistIssuesRequest\x12)\n\x0bhotlist_ref\x18\x01 \x01(\x0b\x32\x14.monorail.HotlistRef\x12&\n\nmoved_refs\x18\x02 \x03(\x0b\x32\x12.monorail.IssueRef\x12&\n\ntarget_ref\x18\x03 \x01(\x0b\x32\x12.monorail.IssueRef\x12\x13\n\x0bsplit_above\x18\x04 \x01(\x08\"\x1d\n\x1bRerankHotlistIssuesResponse\"\x7f\n\x1dUpdateHotlistIssueNoteRequest\x12)\n\x0bhotlist_ref\x18\x02 \x01(\x0b\x32\x14.monorail.HotlistRef\x12%\n\tissue_ref\x18\x03 \x01(\x0b\x32\x12.monorail.IssueRef\x12\x0c\n\x04note\x18\x04 \x01(\t\" \n\x1eUpdateHotlistIssueNoteResponse\"A\n\x14\x44\x65leteHotlistRequest\x12)\n\x0bhotlist_ref\x18\x01 \x01(\x0b\x32\x14.monorail.HotlistRef\"\x17\n\x15\x44\x65leteHotlistResponse2\xc8\x0b\n\x08\x46\x65\x61tures\x12\x61\n\x12ListHotlistsByUser\x12#.monorail.ListHotlistsByUserRequest\x1a$.monorail.ListHotlistsByUserResponse\"\x00\x12\x64\n\x13ListHotlistsByIssue\x12$.monorail.ListHotlistsByIssueRequest\x1a%.monorail.ListHotlistsByIssueResponse\"\x00\x12|\n\x1bListRecentlyVisitedHotlists\x12,.monorail.ListRecentlyVisitedHotlistsRequest\x1a-.monorail.ListRecentlyVisitedHotlistsResponse\"\x00\x12\x64\n\x13ListStarredHotlists\x12$.monorail.ListStarredHotlistsRequest\x1a%.monorail.ListStarredHotlistsResponse\"\x00\x12\x64\n\x13GetHotlistStarCount\x12$.monorail.GetHotlistStarCountRequest\x1a%.monorail.GetHotlistStarCountResponse\"\x00\x12L\n\x0bStarHotlist\x12\x1c.monorail.StarHotlistRequest\x1a\x1d.monorail.StarHotlistResponse\"\x00\x12I\n\nGetHotlist\x12\x1b.monorail.GetHotlistRequest\x1a\x1c.monorail.GetHotlistResponse\"\x00\x12[\n\x10ListHotlistItems\x12!.monorail.ListHotlistItemsRequest\x1a\".monorail.ListHotlistItemsResponse\"\x00\x12R\n\rCreateHotlist\x12\x1e.monorail.CreateHotlistRequest\x1a\x1f.monorail.CreateHotlistResponse\"\x00\x12[\n\x10\x43heckHotlistName\x12!.monorail.CheckHotlistNameRequest\x1a\".monorail.CheckHotlistNameResponse\"\x00\x12s\n\x18RemoveIssuesFromHotlists\x12).monorail.RemoveIssuesFromHotlistsRequest\x1a*.monorail.RemoveIssuesFromHotlistsResponse\"\x00\x12\x64\n\x13\x41\x64\x64IssuesToHotlists\x12$.monorail.AddIssuesToHotlistsRequest\x1a%.monorail.AddIssuesToHotlistsResponse\"\x00\x12\x64\n\x13RerankHotlistIssues\x12$.monorail.RerankHotlistIssuesRequest\x1a%.monorail.RerankHotlistIssuesResponse\"\x00\x12m\n\x16UpdateHotlistIssueNote\x12\'.monorail.UpdateHotlistIssueNoteRequest\x1a(.monorail.UpdateHotlistIssueNoteResponse\"\x00\x12R\n\rDeleteHotlist\x12\x1e.monorail.DeleteHotlistRequest\x1a\x1f.monorail.DeleteHotlistResponse\"\x00\x42)Z\'infra/monorailv2/api/api_proto;monorailb\x06proto3'
-  ,
-  dependencies=[api_dot_api__proto_dot_common__pb2.DESCRIPTOR,api_dot_api__proto_dot_features__objects__pb2.DESCRIPTOR,])
+DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1c\x61pi/api_proto/features.proto\x12\x08monorail\x1a\x1a\x61pi/api_proto/common.proto\x1a$api/api_proto/features_objects.proto\"<\n\x19ListHotlistsByUserRequest\x12\x1f\n\x04user\x18\x02 \x01(\x0b\x32\x11.monorail.UserRef\"A\n\x1aListHotlistsByUserResponse\x12#\n\x08hotlists\x18\x01 \x03(\x0b\x32\x11.monorail.Hotlist\"?\n\x1aListHotlistsByIssueRequest\x12!\n\x05issue\x18\x02 \x01(\x0b\x32\x12.monorail.IssueRef\"B\n\x1bListHotlistsByIssueResponse\x12#\n\x08hotlists\x18\x01 \x03(\x0b\x32\x11.monorail.Hotlist\"$\n\"ListRecentlyVisitedHotlistsRequest\"J\n#ListRecentlyVisitedHotlistsResponse\x12#\n\x08hotlists\x18\x01 \x03(\x0b\x32\x11.monorail.Hotlist\"\x1c\n\x1aListStarredHotlistsRequest\"B\n\x1bListStarredHotlistsResponse\x12#\n\x08hotlists\x18\x01 \x03(\x0b\x32\x11.monorail.Hotlist\"G\n\x1aGetHotlistStarCountRequest\x12)\n\x0bhotlist_ref\x18\x02 \x01(\x0b\x32\x14.monorail.HotlistRef\"1\n\x1bGetHotlistStarCountResponse\x12\x12\n\nstar_count\x18\x01 \x01(\r\"P\n\x12StarHotlistRequest\x12)\n\x0bhotlist_ref\x18\x02 \x01(\x0b\x32\x14.monorail.HotlistRef\x12\x0f\n\x07starred\x18\x03 \x01(\x08\")\n\x13StarHotlistResponse\x12\x12\n\nstar_count\x18\x01 \x01(\r\">\n\x11GetHotlistRequest\x12)\n\x0bhotlist_ref\x18\x01 \x01(\x0b\x32\x14.monorail.HotlistRef\"8\n\x12GetHotlistResponse\x12\"\n\x07hotlist\x18\x01 \x01(\x0b\x32\x11.monorail.Hotlist\"\xa5\x01\n\x17ListHotlistItemsRequest\x12)\n\x0bhotlist_ref\x18\x02 \x01(\x0b\x32\x14.monorail.HotlistRef\x12(\n\npagination\x18\x03 \x01(\x0b\x32\x14.monorail.Pagination\x12\x0b\n\x03\x63\x61n\x18\x04 \x01(\r\x12\x11\n\tsort_spec\x18\x05 \x01(\t\x12\x15\n\rgroup_by_spec\x18\x06 \x01(\t\"@\n\x18ListHotlistItemsResponse\x12$\n\x05items\x18\x01 \x03(\x0b\x32\x15.monorail.HotlistItem\"\xae\x01\n\x14\x43reateHotlistRequest\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07summary\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12&\n\x0b\x65\x64itor_refs\x18\x05 \x03(\x0b\x32\x11.monorail.UserRef\x12&\n\nissue_refs\x18\x06 \x03(\x0b\x32\x12.monorail.IssueRef\x12\x12\n\nis_private\x18\x07 \x01(\x08\"\x17\n\x15\x43reateHotlistResponse\"\'\n\x17\x43heckHotlistNameRequest\x12\x0c\n\x04name\x18\x02 \x01(\t\")\n\x18\x43heckHotlistNameResponse\x12\r\n\x05\x65rror\x18\x01 \x01(\t\"u\n\x1fRemoveIssuesFromHotlistsRequest\x12*\n\x0chotlist_refs\x18\x02 \x03(\x0b\x32\x14.monorail.HotlistRef\x12&\n\nissue_refs\x18\x03 \x03(\x0b\x32\x12.monorail.IssueRef\"\"\n RemoveIssuesFromHotlistsResponse\"~\n\x1a\x41\x64\x64IssuesToHotlistsRequest\x12*\n\x0chotlist_refs\x18\x02 \x03(\x0b\x32\x14.monorail.HotlistRef\x12&\n\nissue_refs\x18\x03 \x03(\x0b\x32\x12.monorail.IssueRef\x12\x0c\n\x04note\x18\x04 \x01(\t\"\x1d\n\x1b\x41\x64\x64IssuesToHotlistsResponse\"\xac\x01\n\x1aRerankHotlistIssuesRequest\x12)\n\x0bhotlist_ref\x18\x01 \x01(\x0b\x32\x14.monorail.HotlistRef\x12&\n\nmoved_refs\x18\x02 \x03(\x0b\x32\x12.monorail.IssueRef\x12&\n\ntarget_ref\x18\x03 \x01(\x0b\x32\x12.monorail.IssueRef\x12\x13\n\x0bsplit_above\x18\x04 \x01(\x08\"\x1d\n\x1bRerankHotlistIssuesResponse\"\x7f\n\x1dUpdateHotlistIssueNoteRequest\x12)\n\x0bhotlist_ref\x18\x02 \x01(\x0b\x32\x14.monorail.HotlistRef\x12%\n\tissue_ref\x18\x03 \x01(\x0b\x32\x12.monorail.IssueRef\x12\x0c\n\x04note\x18\x04 \x01(\t\" \n\x1eUpdateHotlistIssueNoteResponse\"A\n\x14\x44\x65leteHotlistRequest\x12)\n\x0bhotlist_ref\x18\x01 \x01(\x0b\x32\x14.monorail.HotlistRef\"\x17\n\x15\x44\x65leteHotlistResponse2\xc8\x0b\n\x08\x46\x65\x61tures\x12\x61\n\x12ListHotlistsByUser\x12#.monorail.ListHotlistsByUserRequest\x1a$.monorail.ListHotlistsByUserResponse\"\x00\x12\x64\n\x13ListHotlistsByIssue\x12$.monorail.ListHotlistsByIssueRequest\x1a%.monorail.ListHotlistsByIssueResponse\"\x00\x12|\n\x1bListRecentlyVisitedHotlists\x12,.monorail.ListRecentlyVisitedHotlistsRequest\x1a-.monorail.ListRecentlyVisitedHotlistsResponse\"\x00\x12\x64\n\x13ListStarredHotlists\x12$.monorail.ListStarredHotlistsRequest\x1a%.monorail.ListStarredHotlistsResponse\"\x00\x12\x64\n\x13GetHotlistStarCount\x12$.monorail.GetHotlistStarCountRequest\x1a%.monorail.GetHotlistStarCountResponse\"\x00\x12L\n\x0bStarHotlist\x12\x1c.monorail.StarHotlistRequest\x1a\x1d.monorail.StarHotlistResponse\"\x00\x12I\n\nGetHotlist\x12\x1b.monorail.GetHotlistRequest\x1a\x1c.monorail.GetHotlistResponse\"\x00\x12[\n\x10ListHotlistItems\x12!.monorail.ListHotlistItemsRequest\x1a\".monorail.ListHotlistItemsResponse\"\x00\x12R\n\rCreateHotlist\x12\x1e.monorail.CreateHotlistRequest\x1a\x1f.monorail.CreateHotlistResponse\"\x00\x12[\n\x10\x43heckHotlistName\x12!.monorail.CheckHotlistNameRequest\x1a\".monorail.CheckHotlistNameResponse\"\x00\x12s\n\x18RemoveIssuesFromHotlists\x12).monorail.RemoveIssuesFromHotlistsRequest\x1a*.monorail.RemoveIssuesFromHotlistsResponse\"\x00\x12\x64\n\x13\x41\x64\x64IssuesToHotlists\x12$.monorail.AddIssuesToHotlistsRequest\x1a%.monorail.AddIssuesToHotlistsResponse\"\x00\x12\x64\n\x13RerankHotlistIssues\x12$.monorail.RerankHotlistIssuesRequest\x1a%.monorail.RerankHotlistIssuesResponse\"\x00\x12m\n\x16UpdateHotlistIssueNote\x12\'.monorail.UpdateHotlistIssueNoteRequest\x1a(.monorail.UpdateHotlistIssueNoteResponse\"\x00\x12R\n\rDeleteHotlist\x12\x1e.monorail.DeleteHotlistRequest\x1a\x1f.monorail.DeleteHotlistResponse\"\x00\x42)Z\'infra/monorailv2/api/api_proto;monorailb\x06proto3')
 
+_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
+_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'api.api_proto.features_pb2', globals())
+if _descriptor._USE_C_DESCRIPTORS == False:
 
-
-
-_LISTHOTLISTSBYUSERREQUEST = _descriptor.Descriptor(
-  name='ListHotlistsByUserRequest',
-  full_name='monorail.ListHotlistsByUserRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='user', full_name='monorail.ListHotlistsByUserRequest.user', index=0,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=108,
-  serialized_end=168,
-)
-
-
-_LISTHOTLISTSBYUSERRESPONSE = _descriptor.Descriptor(
-  name='ListHotlistsByUserResponse',
-  full_name='monorail.ListHotlistsByUserResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlists', full_name='monorail.ListHotlistsByUserResponse.hotlists', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=170,
-  serialized_end=235,
-)
-
-
-_LISTHOTLISTSBYISSUEREQUEST = _descriptor.Descriptor(
-  name='ListHotlistsByIssueRequest',
-  full_name='monorail.ListHotlistsByIssueRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='issue', full_name='monorail.ListHotlistsByIssueRequest.issue', index=0,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=237,
-  serialized_end=300,
-)
-
-
-_LISTHOTLISTSBYISSUERESPONSE = _descriptor.Descriptor(
-  name='ListHotlistsByIssueResponse',
-  full_name='monorail.ListHotlistsByIssueResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlists', full_name='monorail.ListHotlistsByIssueResponse.hotlists', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=302,
-  serialized_end=368,
-)
-
-
-_LISTRECENTLYVISITEDHOTLISTSREQUEST = _descriptor.Descriptor(
-  name='ListRecentlyVisitedHotlistsRequest',
-  full_name='monorail.ListRecentlyVisitedHotlistsRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=370,
-  serialized_end=406,
-)
-
-
-_LISTRECENTLYVISITEDHOTLISTSRESPONSE = _descriptor.Descriptor(
-  name='ListRecentlyVisitedHotlistsResponse',
-  full_name='monorail.ListRecentlyVisitedHotlistsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlists', full_name='monorail.ListRecentlyVisitedHotlistsResponse.hotlists', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=408,
-  serialized_end=482,
-)
-
-
-_LISTSTARREDHOTLISTSREQUEST = _descriptor.Descriptor(
-  name='ListStarredHotlistsRequest',
-  full_name='monorail.ListStarredHotlistsRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=484,
-  serialized_end=512,
-)
-
-
-_LISTSTARREDHOTLISTSRESPONSE = _descriptor.Descriptor(
-  name='ListStarredHotlistsResponse',
-  full_name='monorail.ListStarredHotlistsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlists', full_name='monorail.ListStarredHotlistsResponse.hotlists', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=514,
-  serialized_end=580,
-)
-
-
-_GETHOTLISTSTARCOUNTREQUEST = _descriptor.Descriptor(
-  name='GetHotlistStarCountRequest',
-  full_name='monorail.GetHotlistStarCountRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist_ref', full_name='monorail.GetHotlistStarCountRequest.hotlist_ref', index=0,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=582,
-  serialized_end=653,
-)
-
-
-_GETHOTLISTSTARCOUNTRESPONSE = _descriptor.Descriptor(
-  name='GetHotlistStarCountResponse',
-  full_name='monorail.GetHotlistStarCountResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='star_count', full_name='monorail.GetHotlistStarCountResponse.star_count', index=0,
-      number=1, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=655,
-  serialized_end=704,
-)
-
-
-_STARHOTLISTREQUEST = _descriptor.Descriptor(
-  name='StarHotlistRequest',
-  full_name='monorail.StarHotlistRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist_ref', full_name='monorail.StarHotlistRequest.hotlist_ref', index=0,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='starred', full_name='monorail.StarHotlistRequest.starred', index=1,
-      number=3, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=706,
-  serialized_end=786,
-)
-
-
-_STARHOTLISTRESPONSE = _descriptor.Descriptor(
-  name='StarHotlistResponse',
-  full_name='monorail.StarHotlistResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='star_count', full_name='monorail.StarHotlistResponse.star_count', index=0,
-      number=1, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=788,
-  serialized_end=829,
-)
-
-
-_GETHOTLISTREQUEST = _descriptor.Descriptor(
-  name='GetHotlistRequest',
-  full_name='monorail.GetHotlistRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist_ref', full_name='monorail.GetHotlistRequest.hotlist_ref', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=831,
-  serialized_end=893,
-)
-
-
-_GETHOTLISTRESPONSE = _descriptor.Descriptor(
-  name='GetHotlistResponse',
-  full_name='monorail.GetHotlistResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist', full_name='monorail.GetHotlistResponse.hotlist', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=895,
-  serialized_end=951,
-)
-
-
-_LISTHOTLISTITEMSREQUEST = _descriptor.Descriptor(
-  name='ListHotlistItemsRequest',
-  full_name='monorail.ListHotlistItemsRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist_ref', full_name='monorail.ListHotlistItemsRequest.hotlist_ref', index=0,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='pagination', full_name='monorail.ListHotlistItemsRequest.pagination', 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,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='can', full_name='monorail.ListHotlistItemsRequest.can', index=2,
-      number=4, type=13, cpp_type=3, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='sort_spec', full_name='monorail.ListHotlistItemsRequest.sort_spec', index=3,
-      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,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='group_by_spec', full_name='monorail.ListHotlistItemsRequest.group_by_spec', index=4,
-      number=6, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=954,
-  serialized_end=1119,
-)
-
-
-_LISTHOTLISTITEMSRESPONSE = _descriptor.Descriptor(
-  name='ListHotlistItemsResponse',
-  full_name='monorail.ListHotlistItemsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='items', full_name='monorail.ListHotlistItemsResponse.items', index=0,
-      number=1, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1121,
-  serialized_end=1185,
-)
-
-
-_CREATEHOTLISTREQUEST = _descriptor.Descriptor(
-  name='CreateHotlistRequest',
-  full_name='monorail.CreateHotlistRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='name', full_name='monorail.CreateHotlistRequest.name', index=0,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='summary', full_name='monorail.CreateHotlistRequest.summary', index=1,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='description', full_name='monorail.CreateHotlistRequest.description', index=2,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='editor_refs', full_name='monorail.CreateHotlistRequest.editor_refs', index=3,
-      number=5, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='issue_refs', full_name='monorail.CreateHotlistRequest.issue_refs', index=4,
-      number=6, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='is_private', full_name='monorail.CreateHotlistRequest.is_private', index=5,
-      number=7, type=8, cpp_type=7, label=1,
-      has_default_value=False, default_value=False,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1188,
-  serialized_end=1362,
-)
-
-
-_CREATEHOTLISTRESPONSE = _descriptor.Descriptor(
-  name='CreateHotlistResponse',
-  full_name='monorail.CreateHotlistResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1364,
-  serialized_end=1387,
-)
-
-
-_CHECKHOTLISTNAMEREQUEST = _descriptor.Descriptor(
-  name='CheckHotlistNameRequest',
-  full_name='monorail.CheckHotlistNameRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='name', full_name='monorail.CheckHotlistNameRequest.name', index=0,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1389,
-  serialized_end=1428,
-)
-
-
-_CHECKHOTLISTNAMERESPONSE = _descriptor.Descriptor(
-  name='CheckHotlistNameResponse',
-  full_name='monorail.CheckHotlistNameResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='error', full_name='monorail.CheckHotlistNameResponse.error', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1430,
-  serialized_end=1471,
-)
-
-
-_REMOVEISSUESFROMHOTLISTSREQUEST = _descriptor.Descriptor(
-  name='RemoveIssuesFromHotlistsRequest',
-  full_name='monorail.RemoveIssuesFromHotlistsRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist_refs', full_name='monorail.RemoveIssuesFromHotlistsRequest.hotlist_refs', index=0,
-      number=2, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='issue_refs', full_name='monorail.RemoveIssuesFromHotlistsRequest.issue_refs', index=1,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1473,
-  serialized_end=1590,
-)
-
-
-_REMOVEISSUESFROMHOTLISTSRESPONSE = _descriptor.Descriptor(
-  name='RemoveIssuesFromHotlistsResponse',
-  full_name='monorail.RemoveIssuesFromHotlistsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1592,
-  serialized_end=1626,
-)
-
-
-_ADDISSUESTOHOTLISTSREQUEST = _descriptor.Descriptor(
-  name='AddIssuesToHotlistsRequest',
-  full_name='monorail.AddIssuesToHotlistsRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist_refs', full_name='monorail.AddIssuesToHotlistsRequest.hotlist_refs', index=0,
-      number=2, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='issue_refs', full_name='monorail.AddIssuesToHotlistsRequest.issue_refs', index=1,
-      number=3, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='note', full_name='monorail.AddIssuesToHotlistsRequest.note', index=2,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1628,
-  serialized_end=1754,
-)
-
-
-_ADDISSUESTOHOTLISTSRESPONSE = _descriptor.Descriptor(
-  name='AddIssuesToHotlistsResponse',
-  full_name='monorail.AddIssuesToHotlistsResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1756,
-  serialized_end=1785,
-)
-
-
-_RERANKHOTLISTISSUESREQUEST = _descriptor.Descriptor(
-  name='RerankHotlistIssuesRequest',
-  full_name='monorail.RerankHotlistIssuesRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist_ref', full_name='monorail.RerankHotlistIssuesRequest.hotlist_ref', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='moved_refs', full_name='monorail.RerankHotlistIssuesRequest.moved_refs', index=1,
-      number=2, type=11, cpp_type=10, label=3,
-      has_default_value=False, default_value=[],
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='target_ref', full_name='monorail.RerankHotlistIssuesRequest.target_ref', 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,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='split_above', full_name='monorail.RerankHotlistIssuesRequest.split_above', 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,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1788,
-  serialized_end=1960,
-)
-
-
-_RERANKHOTLISTISSUESRESPONSE = _descriptor.Descriptor(
-  name='RerankHotlistIssuesResponse',
-  full_name='monorail.RerankHotlistIssuesResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1962,
-  serialized_end=1991,
-)
-
-
-_UPDATEHOTLISTISSUENOTEREQUEST = _descriptor.Descriptor(
-  name='UpdateHotlistIssueNoteRequest',
-  full_name='monorail.UpdateHotlistIssueNoteRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist_ref', full_name='monorail.UpdateHotlistIssueNoteRequest.hotlist_ref', index=0,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='issue_ref', full_name='monorail.UpdateHotlistIssueNoteRequest.issue_ref', 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,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-    _descriptor.FieldDescriptor(
-      name='note', full_name='monorail.UpdateHotlistIssueNoteRequest.note', index=2,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=b"".decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=1993,
-  serialized_end=2120,
-)
-
-
-_UPDATEHOTLISTISSUENOTERESPONSE = _descriptor.Descriptor(
-  name='UpdateHotlistIssueNoteResponse',
-  full_name='monorail.UpdateHotlistIssueNoteResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2122,
-  serialized_end=2154,
-)
-
-
-_DELETEHOTLISTREQUEST = _descriptor.Descriptor(
-  name='DeleteHotlistRequest',
-  full_name='monorail.DeleteHotlistRequest',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='hotlist_ref', full_name='monorail.DeleteHotlistRequest.hotlist_ref', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2156,
-  serialized_end=2221,
-)
-
-
-_DELETEHOTLISTRESPONSE = _descriptor.Descriptor(
-  name='DeleteHotlistResponse',
-  full_name='monorail.DeleteHotlistResponse',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  create_key=_descriptor._internal_create_key,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=2223,
-  serialized_end=2246,
-)
-
-_LISTHOTLISTSBYUSERREQUEST.fields_by_name['user'].message_type = api_dot_api__proto_dot_common__pb2._USERREF
-_LISTHOTLISTSBYUSERRESPONSE.fields_by_name['hotlists'].message_type = api_dot_api__proto_dot_features__objects__pb2._HOTLIST
-_LISTHOTLISTSBYISSUEREQUEST.fields_by_name['issue'].message_type = api_dot_api__proto_dot_common__pb2._ISSUEREF
-_LISTHOTLISTSBYISSUERESPONSE.fields_by_name['hotlists'].message_type = api_dot_api__proto_dot_features__objects__pb2._HOTLIST
-_LISTRECENTLYVISITEDHOTLISTSRESPONSE.fields_by_name['hotlists'].message_type = api_dot_api__proto_dot_features__objects__pb2._HOTLIST
-_LISTSTARREDHOTLISTSRESPONSE.fields_by_name['hotlists'].message_type = api_dot_api__proto_dot_features__objects__pb2._HOTLIST
-_GETHOTLISTSTARCOUNTREQUEST.fields_by_name['hotlist_ref'].message_type = api_dot_api__proto_dot_common__pb2._HOTLISTREF
-_STARHOTLISTREQUEST.fields_by_name['hotlist_ref'].message_type = api_dot_api__proto_dot_common__pb2._HOTLISTREF
-_GETHOTLISTREQUEST.fields_by_name['hotlist_ref'].message_type = api_dot_api__proto_dot_common__pb2._HOTLISTREF
-_GETHOTLISTRESPONSE.fields_by_name['hotlist'].message_type = api_dot_api__proto_dot_features__objects__pb2._HOTLIST
-_LISTHOTLISTITEMSREQUEST.fields_by_name['hotlist_ref'].message_type = api_dot_api__proto_dot_common__pb2._HOTLISTREF
-_LISTHOTLISTITEMSREQUEST.fields_by_name['pagination'].message_type = api_dot_api__proto_dot_common__pb2._PAGINATION
-_LISTHOTLISTITEMSRESPONSE.fields_by_name['items'].message_type = api_dot_api__proto_dot_features__objects__pb2._HOTLISTITEM
-_CREATEHOTLISTREQUEST.fields_by_name['editor_refs'].message_type = api_dot_api__proto_dot_common__pb2._USERREF
-_CREATEHOTLISTREQUEST.fields_by_name['issue_refs'].message_type = api_dot_api__proto_dot_common__pb2._ISSUEREF
-_REMOVEISSUESFROMHOTLISTSREQUEST.fields_by_name['hotlist_refs'].message_type = api_dot_api__proto_dot_common__pb2._HOTLISTREF
-_REMOVEISSUESFROMHOTLISTSREQUEST.fields_by_name['issue_refs'].message_type = api_dot_api__proto_dot_common__pb2._ISSUEREF
-_ADDISSUESTOHOTLISTSREQUEST.fields_by_name['hotlist_refs'].message_type = api_dot_api__proto_dot_common__pb2._HOTLISTREF
-_ADDISSUESTOHOTLISTSREQUEST.fields_by_name['issue_refs'].message_type = api_dot_api__proto_dot_common__pb2._ISSUEREF
-_RERANKHOTLISTISSUESREQUEST.fields_by_name['hotlist_ref'].message_type = api_dot_api__proto_dot_common__pb2._HOTLISTREF
-_RERANKHOTLISTISSUESREQUEST.fields_by_name['moved_refs'].message_type = api_dot_api__proto_dot_common__pb2._ISSUEREF
-_RERANKHOTLISTISSUESREQUEST.fields_by_name['target_ref'].message_type = api_dot_api__proto_dot_common__pb2._ISSUEREF
-_UPDATEHOTLISTISSUENOTEREQUEST.fields_by_name['hotlist_ref'].message_type = api_dot_api__proto_dot_common__pb2._HOTLISTREF
-_UPDATEHOTLISTISSUENOTEREQUEST.fields_by_name['issue_ref'].message_type = api_dot_api__proto_dot_common__pb2._ISSUEREF
-_DELETEHOTLISTREQUEST.fields_by_name['hotlist_ref'].message_type = api_dot_api__proto_dot_common__pb2._HOTLISTREF
-DESCRIPTOR.message_types_by_name['ListHotlistsByUserRequest'] = _LISTHOTLISTSBYUSERREQUEST
-DESCRIPTOR.message_types_by_name['ListHotlistsByUserResponse'] = _LISTHOTLISTSBYUSERRESPONSE
-DESCRIPTOR.message_types_by_name['ListHotlistsByIssueRequest'] = _LISTHOTLISTSBYISSUEREQUEST
-DESCRIPTOR.message_types_by_name['ListHotlistsByIssueResponse'] = _LISTHOTLISTSBYISSUERESPONSE
-DESCRIPTOR.message_types_by_name['ListRecentlyVisitedHotlistsRequest'] = _LISTRECENTLYVISITEDHOTLISTSREQUEST
-DESCRIPTOR.message_types_by_name['ListRecentlyVisitedHotlistsResponse'] = _LISTRECENTLYVISITEDHOTLISTSRESPONSE
-DESCRIPTOR.message_types_by_name['ListStarredHotlistsRequest'] = _LISTSTARREDHOTLISTSREQUEST
-DESCRIPTOR.message_types_by_name['ListStarredHotlistsResponse'] = _LISTSTARREDHOTLISTSRESPONSE
-DESCRIPTOR.message_types_by_name['GetHotlistStarCountRequest'] = _GETHOTLISTSTARCOUNTREQUEST
-DESCRIPTOR.message_types_by_name['GetHotlistStarCountResponse'] = _GETHOTLISTSTARCOUNTRESPONSE
-DESCRIPTOR.message_types_by_name['StarHotlistRequest'] = _STARHOTLISTREQUEST
-DESCRIPTOR.message_types_by_name['StarHotlistResponse'] = _STARHOTLISTRESPONSE
-DESCRIPTOR.message_types_by_name['GetHotlistRequest'] = _GETHOTLISTREQUEST
-DESCRIPTOR.message_types_by_name['GetHotlistResponse'] = _GETHOTLISTRESPONSE
-DESCRIPTOR.message_types_by_name['ListHotlistItemsRequest'] = _LISTHOTLISTITEMSREQUEST
-DESCRIPTOR.message_types_by_name['ListHotlistItemsResponse'] = _LISTHOTLISTITEMSRESPONSE
-DESCRIPTOR.message_types_by_name['CreateHotlistRequest'] = _CREATEHOTLISTREQUEST
-DESCRIPTOR.message_types_by_name['CreateHotlistResponse'] = _CREATEHOTLISTRESPONSE
-DESCRIPTOR.message_types_by_name['CheckHotlistNameRequest'] = _CHECKHOTLISTNAMEREQUEST
-DESCRIPTOR.message_types_by_name['CheckHotlistNameResponse'] = _CHECKHOTLISTNAMERESPONSE
-DESCRIPTOR.message_types_by_name['RemoveIssuesFromHotlistsRequest'] = _REMOVEISSUESFROMHOTLISTSREQUEST
-DESCRIPTOR.message_types_by_name['RemoveIssuesFromHotlistsResponse'] = _REMOVEISSUESFROMHOTLISTSRESPONSE
-DESCRIPTOR.message_types_by_name['AddIssuesToHotlistsRequest'] = _ADDISSUESTOHOTLISTSREQUEST
-DESCRIPTOR.message_types_by_name['AddIssuesToHotlistsResponse'] = _ADDISSUESTOHOTLISTSRESPONSE
-DESCRIPTOR.message_types_by_name['RerankHotlistIssuesRequest'] = _RERANKHOTLISTISSUESREQUEST
-DESCRIPTOR.message_types_by_name['RerankHotlistIssuesResponse'] = _RERANKHOTLISTISSUESRESPONSE
-DESCRIPTOR.message_types_by_name['UpdateHotlistIssueNoteRequest'] = _UPDATEHOTLISTISSUENOTEREQUEST
-DESCRIPTOR.message_types_by_name['UpdateHotlistIssueNoteResponse'] = _UPDATEHOTLISTISSUENOTERESPONSE
-DESCRIPTOR.message_types_by_name['DeleteHotlistRequest'] = _DELETEHOTLISTREQUEST
-DESCRIPTOR.message_types_by_name['DeleteHotlistResponse'] = _DELETEHOTLISTRESPONSE
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-ListHotlistsByUserRequest = _reflection.GeneratedProtocolMessageType('ListHotlistsByUserRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTHOTLISTSBYUSERREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListHotlistsByUserRequest)
-  })
-_sym_db.RegisterMessage(ListHotlistsByUserRequest)
-
-ListHotlistsByUserResponse = _reflection.GeneratedProtocolMessageType('ListHotlistsByUserResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTHOTLISTSBYUSERRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListHotlistsByUserResponse)
-  })
-_sym_db.RegisterMessage(ListHotlistsByUserResponse)
-
-ListHotlistsByIssueRequest = _reflection.GeneratedProtocolMessageType('ListHotlistsByIssueRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTHOTLISTSBYISSUEREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListHotlistsByIssueRequest)
-  })
-_sym_db.RegisterMessage(ListHotlistsByIssueRequest)
-
-ListHotlistsByIssueResponse = _reflection.GeneratedProtocolMessageType('ListHotlistsByIssueResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTHOTLISTSBYISSUERESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListHotlistsByIssueResponse)
-  })
-_sym_db.RegisterMessage(ListHotlistsByIssueResponse)
-
-ListRecentlyVisitedHotlistsRequest = _reflection.GeneratedProtocolMessageType('ListRecentlyVisitedHotlistsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTRECENTLYVISITEDHOTLISTSREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListRecentlyVisitedHotlistsRequest)
-  })
-_sym_db.RegisterMessage(ListRecentlyVisitedHotlistsRequest)
-
-ListRecentlyVisitedHotlistsResponse = _reflection.GeneratedProtocolMessageType('ListRecentlyVisitedHotlistsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTRECENTLYVISITEDHOTLISTSRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListRecentlyVisitedHotlistsResponse)
-  })
-_sym_db.RegisterMessage(ListRecentlyVisitedHotlistsResponse)
-
-ListStarredHotlistsRequest = _reflection.GeneratedProtocolMessageType('ListStarredHotlistsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTSTARREDHOTLISTSREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListStarredHotlistsRequest)
-  })
-_sym_db.RegisterMessage(ListStarredHotlistsRequest)
-
-ListStarredHotlistsResponse = _reflection.GeneratedProtocolMessageType('ListStarredHotlistsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTSTARREDHOTLISTSRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListStarredHotlistsResponse)
-  })
-_sym_db.RegisterMessage(ListStarredHotlistsResponse)
-
-GetHotlistStarCountRequest = _reflection.GeneratedProtocolMessageType('GetHotlistStarCountRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETHOTLISTSTARCOUNTREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.GetHotlistStarCountRequest)
-  })
-_sym_db.RegisterMessage(GetHotlistStarCountRequest)
-
-GetHotlistStarCountResponse = _reflection.GeneratedProtocolMessageType('GetHotlistStarCountResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETHOTLISTSTARCOUNTRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.GetHotlistStarCountResponse)
-  })
-_sym_db.RegisterMessage(GetHotlistStarCountResponse)
-
-StarHotlistRequest = _reflection.GeneratedProtocolMessageType('StarHotlistRequest', (_message.Message,), {
-  'DESCRIPTOR' : _STARHOTLISTREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.StarHotlistRequest)
-  })
-_sym_db.RegisterMessage(StarHotlistRequest)
-
-StarHotlistResponse = _reflection.GeneratedProtocolMessageType('StarHotlistResponse', (_message.Message,), {
-  'DESCRIPTOR' : _STARHOTLISTRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.StarHotlistResponse)
-  })
-_sym_db.RegisterMessage(StarHotlistResponse)
-
-GetHotlistRequest = _reflection.GeneratedProtocolMessageType('GetHotlistRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETHOTLISTREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.GetHotlistRequest)
-  })
-_sym_db.RegisterMessage(GetHotlistRequest)
-
-GetHotlistResponse = _reflection.GeneratedProtocolMessageType('GetHotlistResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETHOTLISTRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.GetHotlistResponse)
-  })
-_sym_db.RegisterMessage(GetHotlistResponse)
-
-ListHotlistItemsRequest = _reflection.GeneratedProtocolMessageType('ListHotlistItemsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTHOTLISTITEMSREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListHotlistItemsRequest)
-  })
-_sym_db.RegisterMessage(ListHotlistItemsRequest)
-
-ListHotlistItemsResponse = _reflection.GeneratedProtocolMessageType('ListHotlistItemsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTHOTLISTITEMSRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.ListHotlistItemsResponse)
-  })
-_sym_db.RegisterMessage(ListHotlistItemsResponse)
-
-CreateHotlistRequest = _reflection.GeneratedProtocolMessageType('CreateHotlistRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATEHOTLISTREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.CreateHotlistRequest)
-  })
-_sym_db.RegisterMessage(CreateHotlistRequest)
-
-CreateHotlistResponse = _reflection.GeneratedProtocolMessageType('CreateHotlistResponse', (_message.Message,), {
-  'DESCRIPTOR' : _CREATEHOTLISTRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.CreateHotlistResponse)
-  })
-_sym_db.RegisterMessage(CreateHotlistResponse)
-
-CheckHotlistNameRequest = _reflection.GeneratedProtocolMessageType('CheckHotlistNameRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CHECKHOTLISTNAMEREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.CheckHotlistNameRequest)
-  })
-_sym_db.RegisterMessage(CheckHotlistNameRequest)
-
-CheckHotlistNameResponse = _reflection.GeneratedProtocolMessageType('CheckHotlistNameResponse', (_message.Message,), {
-  'DESCRIPTOR' : _CHECKHOTLISTNAMERESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.CheckHotlistNameResponse)
-  })
-_sym_db.RegisterMessage(CheckHotlistNameResponse)
-
-RemoveIssuesFromHotlistsRequest = _reflection.GeneratedProtocolMessageType('RemoveIssuesFromHotlistsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _REMOVEISSUESFROMHOTLISTSREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.RemoveIssuesFromHotlistsRequest)
-  })
-_sym_db.RegisterMessage(RemoveIssuesFromHotlistsRequest)
-
-RemoveIssuesFromHotlistsResponse = _reflection.GeneratedProtocolMessageType('RemoveIssuesFromHotlistsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _REMOVEISSUESFROMHOTLISTSRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.RemoveIssuesFromHotlistsResponse)
-  })
-_sym_db.RegisterMessage(RemoveIssuesFromHotlistsResponse)
-
-AddIssuesToHotlistsRequest = _reflection.GeneratedProtocolMessageType('AddIssuesToHotlistsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _ADDISSUESTOHOTLISTSREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.AddIssuesToHotlistsRequest)
-  })
-_sym_db.RegisterMessage(AddIssuesToHotlistsRequest)
-
-AddIssuesToHotlistsResponse = _reflection.GeneratedProtocolMessageType('AddIssuesToHotlistsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _ADDISSUESTOHOTLISTSRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.AddIssuesToHotlistsResponse)
-  })
-_sym_db.RegisterMessage(AddIssuesToHotlistsResponse)
-
-RerankHotlistIssuesRequest = _reflection.GeneratedProtocolMessageType('RerankHotlistIssuesRequest', (_message.Message,), {
-  'DESCRIPTOR' : _RERANKHOTLISTISSUESREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.RerankHotlistIssuesRequest)
-  })
-_sym_db.RegisterMessage(RerankHotlistIssuesRequest)
-
-RerankHotlistIssuesResponse = _reflection.GeneratedProtocolMessageType('RerankHotlistIssuesResponse', (_message.Message,), {
-  'DESCRIPTOR' : _RERANKHOTLISTISSUESRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.RerankHotlistIssuesResponse)
-  })
-_sym_db.RegisterMessage(RerankHotlistIssuesResponse)
-
-UpdateHotlistIssueNoteRequest = _reflection.GeneratedProtocolMessageType('UpdateHotlistIssueNoteRequest', (_message.Message,), {
-  'DESCRIPTOR' : _UPDATEHOTLISTISSUENOTEREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.UpdateHotlistIssueNoteRequest)
-  })
-_sym_db.RegisterMessage(UpdateHotlistIssueNoteRequest)
-
-UpdateHotlistIssueNoteResponse = _reflection.GeneratedProtocolMessageType('UpdateHotlistIssueNoteResponse', (_message.Message,), {
-  'DESCRIPTOR' : _UPDATEHOTLISTISSUENOTERESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.UpdateHotlistIssueNoteResponse)
-  })
-_sym_db.RegisterMessage(UpdateHotlistIssueNoteResponse)
-
-DeleteHotlistRequest = _reflection.GeneratedProtocolMessageType('DeleteHotlistRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETEHOTLISTREQUEST,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.DeleteHotlistRequest)
-  })
-_sym_db.RegisterMessage(DeleteHotlistRequest)
-
-DeleteHotlistResponse = _reflection.GeneratedProtocolMessageType('DeleteHotlistResponse', (_message.Message,), {
-  'DESCRIPTOR' : _DELETEHOTLISTRESPONSE,
-  '__module__' : 'api.api_proto.features_pb2'
-  # @@protoc_insertion_point(class_scope:monorail.DeleteHotlistResponse)
-  })
-_sym_db.RegisterMessage(DeleteHotlistResponse)
-
-
-DESCRIPTOR._options = None
-
-_FEATURES = _descriptor.ServiceDescriptor(
-  name='Features',
-  full_name='monorail.Features',
-  file=DESCRIPTOR,
-  index=0,
-  serialized_options=None,
-  create_key=_descriptor._internal_create_key,
-  serialized_start=2249,
-  serialized_end=3729,
-  methods=[
-  _descriptor.MethodDescriptor(
-    name='ListHotlistsByUser',
-    full_name='monorail.Features.ListHotlistsByUser',
-    index=0,
-    containing_service=None,
-    input_type=_LISTHOTLISTSBYUSERREQUEST,
-    output_type=_LISTHOTLISTSBYUSERRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='ListHotlistsByIssue',
-    full_name='monorail.Features.ListHotlistsByIssue',
-    index=1,
-    containing_service=None,
-    input_type=_LISTHOTLISTSBYISSUEREQUEST,
-    output_type=_LISTHOTLISTSBYISSUERESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='ListRecentlyVisitedHotlists',
-    full_name='monorail.Features.ListRecentlyVisitedHotlists',
-    index=2,
-    containing_service=None,
-    input_type=_LISTRECENTLYVISITEDHOTLISTSREQUEST,
-    output_type=_LISTRECENTLYVISITEDHOTLISTSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='ListStarredHotlists',
-    full_name='monorail.Features.ListStarredHotlists',
-    index=3,
-    containing_service=None,
-    input_type=_LISTSTARREDHOTLISTSREQUEST,
-    output_type=_LISTSTARREDHOTLISTSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='GetHotlistStarCount',
-    full_name='monorail.Features.GetHotlistStarCount',
-    index=4,
-    containing_service=None,
-    input_type=_GETHOTLISTSTARCOUNTREQUEST,
-    output_type=_GETHOTLISTSTARCOUNTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='StarHotlist',
-    full_name='monorail.Features.StarHotlist',
-    index=5,
-    containing_service=None,
-    input_type=_STARHOTLISTREQUEST,
-    output_type=_STARHOTLISTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='GetHotlist',
-    full_name='monorail.Features.GetHotlist',
-    index=6,
-    containing_service=None,
-    input_type=_GETHOTLISTREQUEST,
-    output_type=_GETHOTLISTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='ListHotlistItems',
-    full_name='monorail.Features.ListHotlistItems',
-    index=7,
-    containing_service=None,
-    input_type=_LISTHOTLISTITEMSREQUEST,
-    output_type=_LISTHOTLISTITEMSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='CreateHotlist',
-    full_name='monorail.Features.CreateHotlist',
-    index=8,
-    containing_service=None,
-    input_type=_CREATEHOTLISTREQUEST,
-    output_type=_CREATEHOTLISTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='CheckHotlistName',
-    full_name='monorail.Features.CheckHotlistName',
-    index=9,
-    containing_service=None,
-    input_type=_CHECKHOTLISTNAMEREQUEST,
-    output_type=_CHECKHOTLISTNAMERESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='RemoveIssuesFromHotlists',
-    full_name='monorail.Features.RemoveIssuesFromHotlists',
-    index=10,
-    containing_service=None,
-    input_type=_REMOVEISSUESFROMHOTLISTSREQUEST,
-    output_type=_REMOVEISSUESFROMHOTLISTSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='AddIssuesToHotlists',
-    full_name='monorail.Features.AddIssuesToHotlists',
-    index=11,
-    containing_service=None,
-    input_type=_ADDISSUESTOHOTLISTSREQUEST,
-    output_type=_ADDISSUESTOHOTLISTSRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='RerankHotlistIssues',
-    full_name='monorail.Features.RerankHotlistIssues',
-    index=12,
-    containing_service=None,
-    input_type=_RERANKHOTLISTISSUESREQUEST,
-    output_type=_RERANKHOTLISTISSUESRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='UpdateHotlistIssueNote',
-    full_name='monorail.Features.UpdateHotlistIssueNote',
-    index=13,
-    containing_service=None,
-    input_type=_UPDATEHOTLISTISSUENOTEREQUEST,
-    output_type=_UPDATEHOTLISTISSUENOTERESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-  _descriptor.MethodDescriptor(
-    name='DeleteHotlist',
-    full_name='monorail.Features.DeleteHotlist',
-    index=14,
-    containing_service=None,
-    input_type=_DELETEHOTLISTREQUEST,
-    output_type=_DELETEHOTLISTRESPONSE,
-    serialized_options=None,
-    create_key=_descriptor._internal_create_key,
-  ),
-])
-_sym_db.RegisterServiceDescriptor(_FEATURES)
-
-DESCRIPTOR.services_by_name['Features'] = _FEATURES
-
+  DESCRIPTOR._options = None
+  DESCRIPTOR._serialized_options = b'Z\'infra/monorailv2/api/api_proto;monorail'
+  _LISTHOTLISTSBYUSERREQUEST._serialized_start=108
+  _LISTHOTLISTSBYUSERREQUEST._serialized_end=168
+  _LISTHOTLISTSBYUSERRESPONSE._serialized_start=170
+  _LISTHOTLISTSBYUSERRESPONSE._serialized_end=235
+  _LISTHOTLISTSBYISSUEREQUEST._serialized_start=237
+  _LISTHOTLISTSBYISSUEREQUEST._serialized_end=300
+  _LISTHOTLISTSBYISSUERESPONSE._serialized_start=302
+  _LISTHOTLISTSBYISSUERESPONSE._serialized_end=368
+  _LISTRECENTLYVISITEDHOTLISTSREQUEST._serialized_start=370
+  _LISTRECENTLYVISITEDHOTLISTSREQUEST._serialized_end=406
+  _LISTRECENTLYVISITEDHOTLISTSRESPONSE._serialized_start=408
+  _LISTRECENTLYVISITEDHOTLISTSRESPONSE._serialized_end=482
+  _LISTSTARREDHOTLISTSREQUEST._serialized_start=484
+  _LISTSTARREDHOTLISTSREQUEST._serialized_end=512
+  _LISTSTARREDHOTLISTSRESPONSE._serialized_start=514
+  _LISTSTARREDHOTLISTSRESPONSE._serialized_end=580
+  _GETHOTLISTSTARCOUNTREQUEST._serialized_start=582
+  _GETHOTLISTSTARCOUNTREQUEST._serialized_end=653
+  _GETHOTLISTSTARCOUNTRESPONSE._serialized_start=655
+  _GETHOTLISTSTARCOUNTRESPONSE._serialized_end=704
+  _STARHOTLISTREQUEST._serialized_start=706
+  _STARHOTLISTREQUEST._serialized_end=786
+  _STARHOTLISTRESPONSE._serialized_start=788
+  _STARHOTLISTRESPONSE._serialized_end=829
+  _GETHOTLISTREQUEST._serialized_start=831
+  _GETHOTLISTREQUEST._serialized_end=893
+  _GETHOTLISTRESPONSE._serialized_start=895
+  _GETHOTLISTRESPONSE._serialized_end=951
+  _LISTHOTLISTITEMSREQUEST._serialized_start=954
+  _LISTHOTLISTITEMSREQUEST._serialized_end=1119
+  _LISTHOTLISTITEMSRESPONSE._serialized_start=1121
+  _LISTHOTLISTITEMSRESPONSE._serialized_end=1185
+  _CREATEHOTLISTREQUEST._serialized_start=1188
+  _CREATEHOTLISTREQUEST._serialized_end=1362
+  _CREATEHOTLISTRESPONSE._serialized_start=1364
+  _CREATEHOTLISTRESPONSE._serialized_end=1387
+  _CHECKHOTLISTNAMEREQUEST._serialized_start=1389
+  _CHECKHOTLISTNAMEREQUEST._serialized_end=1428
+  _CHECKHOTLISTNAMERESPONSE._serialized_start=1430
+  _CHECKHOTLISTNAMERESPONSE._serialized_end=1471
+  _REMOVEISSUESFROMHOTLISTSREQUEST._serialized_start=1473
+  _REMOVEISSUESFROMHOTLISTSREQUEST._serialized_end=1590
+  _REMOVEISSUESFROMHOTLISTSRESPONSE._serialized_start=1592
+  _REMOVEISSUESFROMHOTLISTSRESPONSE._serialized_end=1626
+  _ADDISSUESTOHOTLISTSREQUEST._serialized_start=1628
+  _ADDISSUESTOHOTLISTSREQUEST._serialized_end=1754
+  _ADDISSUESTOHOTLISTSRESPONSE._serialized_start=1756
+  _ADDISSUESTOHOTLISTSRESPONSE._serialized_end=1785
+  _RERANKHOTLISTISSUESREQUEST._serialized_start=1788
+  _RERANKHOTLISTISSUESREQUEST._serialized_end=1960
+  _RERANKHOTLISTISSUESRESPONSE._serialized_start=1962
+  _RERANKHOTLISTISSUESRESPONSE._serialized_end=1991
+  _UPDATEHOTLISTISSUENOTEREQUEST._serialized_start=1993
+  _UPDATEHOTLISTISSUENOTEREQUEST._serialized_end=2120
+  _UPDATEHOTLISTISSUENOTERESPONSE._serialized_start=2122
+  _UPDATEHOTLISTISSUENOTERESPONSE._serialized_end=2154
+  _DELETEHOTLISTREQUEST._serialized_start=2156
+  _DELETEHOTLISTREQUEST._serialized_end=2221
+  _DELETEHOTLISTRESPONSE._serialized_start=2223
+  _DELETEHOTLISTRESPONSE._serialized_end=2246
+  _FEATURES._serialized_start=2249
+  _FEATURES._serialized_end=3729
 # @@protoc_insertion_point(module_scope)
