From 4ad93046ba0998ae475d7027bc154e8ba0583264 Mon Sep 17 00:00:00 2001 From: Bryan Bishop Date: Sun, 25 Nov 2012 23:26:13 -0600 Subject: [PATCH 1/7] turn this into a basic python egg --- .gitignore | 3 +++ googleplayapi/__init__.py | 0 apishell.py => googleplayapi/apishell.py | 0 categories.py => googleplayapi/categories.py | 0 config.py => googleplayapi/config.py | 0 download.py => googleplayapi/download.py | 0 googleplay.proto => googleplayapi/googleplay.proto | 0 googleplay.py => googleplayapi/googleplay.py | 0 googleplay_pb2.py => googleplayapi/googleplay_pb2.py | 0 helpers.py => googleplayapi/helpers.py | 0 list.py => googleplayapi/list.py | 0 permissions.py => googleplayapi/permissions.py | 0 search.py => googleplayapi/search.py | 0 setup.py | 12 ++++++++++++ 14 files changed, 15 insertions(+) create mode 100644 googleplayapi/__init__.py rename apishell.py => googleplayapi/apishell.py (100%) rename categories.py => googleplayapi/categories.py (100%) rename config.py => googleplayapi/config.py (100%) rename download.py => googleplayapi/download.py (100%) rename googleplay.proto => googleplayapi/googleplay.proto (100%) rename googleplay.py => googleplayapi/googleplay.py (100%) rename googleplay_pb2.py => googleplayapi/googleplay_pb2.py (100%) rename helpers.py => googleplayapi/helpers.py (100%) rename list.py => googleplayapi/list.py (100%) rename permissions.py => googleplayapi/permissions.py (100%) rename search.py => googleplayapi/search.py (100%) create mode 100644 setup.py diff --git a/.gitignore b/.gitignore index 19767b9..00041d0 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,6 @@ # ignore downloaded apps *.apk + +# ignore egg build leftovers +build/ diff --git a/googleplayapi/__init__.py b/googleplayapi/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/apishell.py b/googleplayapi/apishell.py similarity index 100% rename from apishell.py rename to googleplayapi/apishell.py diff --git a/categories.py b/googleplayapi/categories.py similarity index 100% rename from categories.py rename to googleplayapi/categories.py diff --git a/config.py b/googleplayapi/config.py similarity index 100% rename from config.py rename to googleplayapi/config.py diff --git a/download.py b/googleplayapi/download.py similarity index 100% rename from download.py rename to googleplayapi/download.py diff --git a/googleplay.proto b/googleplayapi/googleplay.proto similarity index 100% rename from googleplay.proto rename to googleplayapi/googleplay.proto diff --git a/googleplay.py b/googleplayapi/googleplay.py similarity index 100% rename from googleplay.py rename to googleplayapi/googleplay.py diff --git a/googleplay_pb2.py b/googleplayapi/googleplay_pb2.py similarity index 100% rename from googleplay_pb2.py rename to googleplayapi/googleplay_pb2.py diff --git a/helpers.py b/googleplayapi/helpers.py similarity index 100% rename from helpers.py rename to googleplayapi/helpers.py diff --git a/list.py b/googleplayapi/list.py similarity index 100% rename from list.py rename to googleplayapi/list.py diff --git a/permissions.py b/googleplayapi/permissions.py similarity index 100% rename from permissions.py rename to googleplayapi/permissions.py diff --git a/search.py b/googleplayapi/search.py similarity index 100% rename from search.py rename to googleplayapi/search.py diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..eb538c2 --- /dev/null +++ b/setup.py @@ -0,0 +1,12 @@ +from setuptools import setup, find_packages + +version = "1.0.0" + +setup(name="googleplayapi", + version=version, + author="Emilien Girault", + author_email="emilien.girault@gmail.com", + license="BSD", + description="Google Play API for Android", + url="https://github.com/kanzure/googleplay-api", + packages=find_packages()) From bfa35f0212a50a4a5ffd9a6c4ddf22b22d3abbd7 Mon Sep 17 00:00:00 2001 From: Bryan Bishop Date: Sun, 25 Nov 2012 23:27:13 -0600 Subject: [PATCH 2/7] use absolute imports to refer to package --- googleplayapi/apishell.py | 4 ++-- googleplayapi/categories.py | 4 ++-- googleplayapi/download.py | 6 +++--- googleplayapi/googleplay.py | 4 ++-- googleplayapi/helpers.py | 2 +- googleplayapi/list.py | 6 +++--- googleplayapi/permissions.py | 4 ++-- googleplayapi/search.py | 6 +++--- 8 files changed, 18 insertions(+), 18 deletions(-) diff --git a/googleplayapi/apishell.py b/googleplayapi/apishell.py index ad0db2e..7120508 100755 --- a/googleplayapi/apishell.py +++ b/googleplayapi/apishell.py @@ -15,8 +15,8 @@ from pprint import pprint from google.protobuf import text_format -from config import * -from googleplay import GooglePlayAPI +from googleplayapi.config import * +from googleplayapi.googleplay import GooglePlayAPI api = GooglePlayAPI(ANDROID_ID) api.login(GOOGLE_LOGIN, GOOGLE_PASSWORD, AUTH_TOKEN) diff --git a/googleplayapi/categories.py b/googleplayapi/categories.py index e946215..ec65a13 100755 --- a/googleplayapi/categories.py +++ b/googleplayapi/categories.py @@ -8,8 +8,8 @@ from pprint import pprint from google.protobuf import text_format -from config import * -from googleplay import GooglePlayAPI +from googleplayapi.config import * +from googleplayapi.googleplay import GooglePlayAPI api = GooglePlayAPI(ANDROID_ID) api.login(GOOGLE_LOGIN, GOOGLE_PASSWORD, AUTH_TOKEN) diff --git a/googleplayapi/download.py b/googleplayapi/download.py index 7a6ba42..70aec54 100755 --- a/googleplayapi/download.py +++ b/googleplayapi/download.py @@ -6,9 +6,9 @@ import sys from pprint import pprint -from config import * -from googleplay import GooglePlayAPI -from helpers import sizeof_fmt +from googleplayapi.config import * +from googleplayapi.googleplay import GooglePlayAPI +from googleplayapi.helpers import sizeof_fmt if (len(sys.argv) < 2): print "Usage: %s packagename [filename]" diff --git a/googleplayapi/googleplay.py b/googleplayapi/googleplay.py index a17f7f9..fb71ff5 100644 --- a/googleplayapi/googleplay.py +++ b/googleplayapi/googleplay.py @@ -11,8 +11,8 @@ from google.protobuf import text_format from google.protobuf.message import Message, DecodeError -import googleplay_pb2 -import config +import googleplayapi.googleplay_pb2 as googleplay_pb2 +import googleplayapi.config as config class LoginError(Exception): def __init__(self, value): diff --git a/googleplayapi/helpers.py b/googleplayapi/helpers.py index 2c1fa9c..a745dfa 100644 --- a/googleplayapi/helpers.py +++ b/googleplayapi/helpers.py @@ -1,4 +1,4 @@ -from config import SEPARATOR +from googleplayapi.config import SEPARATOR def sizeof_fmt(num): for x in ['bytes','KB','MB','GB','TB']: diff --git a/googleplayapi/list.py b/googleplayapi/list.py index 97bccc3..fb7f4ec 100755 --- a/googleplayapi/list.py +++ b/googleplayapi/list.py @@ -6,9 +6,9 @@ import sys from pprint import pprint -from config import * -from googleplay import GooglePlayAPI -from helpers import sizeof_fmt, print_header_line, print_result_line +from googleplayapi.config import * +from googleplayapi.googleplay import GooglePlayAPI +from googleplayapi.helpers import sizeof_fmt, print_header_line, print_result_line if (len(sys.argv) < 2): print "Usage: %s category [subcategory] [nb_results] [offset]" % sys.argv[0] diff --git a/googleplayapi/permissions.py b/googleplayapi/permissions.py index 5843458..6f841e3 100755 --- a/googleplayapi/permissions.py +++ b/googleplayapi/permissions.py @@ -8,8 +8,8 @@ from pprint import pprint from google.protobuf import text_format -from config import * -from googleplay import GooglePlayAPI +from googleplayapi.config import * +from googleplayapi.googleplay import GooglePlayAPI if (len(sys.argv) < 2): print "Usage: %s packagename1 [packagename2 [...]]" % sys.argv[0] diff --git a/googleplayapi/search.py b/googleplayapi/search.py index abfa8e9..7defcba 100755 --- a/googleplayapi/search.py +++ b/googleplayapi/search.py @@ -6,9 +6,9 @@ import sys from pprint import pprint -from config import * -from googleplay import GooglePlayAPI -from helpers import sizeof_fmt, print_header_line, print_result_line +from googleplayapi.config import * +from googleplayapi.googleplay import GooglePlayAPI +from googleplayapi.helpers import sizeof_fmt, print_header_line, print_result_line if (len(sys.argv) < 2): print "Usage: %s request [nb_results] [offset]" % sys.argv[0] From a391289c1a960397df282d5e88fda78d294c636b Mon Sep 17 00:00:00 2001 From: Bryan Bishop Date: Sun, 25 Nov 2012 23:41:27 -0600 Subject: [PATCH 3/7] somewhat deprecate config.py This makes GooglePlayAPI in googleplay.py somewhat more self-reliant by allowing username and password to be given directly to the constructor. The config file is no longer a strict requirement, and multiple projects can rely on the same physical egg or package. --- googleplayapi/download.py | 8 ++++++-- googleplayapi/googleplay.py | 35 +++++++++++++++++++++++++++++++---- 2 files changed, 37 insertions(+), 6 deletions(-) diff --git a/googleplayapi/download.py b/googleplayapi/download.py index 70aec54..90e6ba0 100755 --- a/googleplayapi/download.py +++ b/googleplayapi/download.py @@ -24,8 +24,12 @@ filename = packagename + ".apk" # Connect -api = GooglePlayAPI(ANDROID_ID) -api.login(GOOGLE_LOGIN, GOOGLE_PASSWORD, AUTH_TOKEN) +api = GooglePlayAPI(androidId=ANDROID_ID, email=GOOGLE_LOGIN, password=GOOGLE_PASSWORD, authSubToken=AUTH_TOKEN) + +# login if necessary +if not AUTH_TOKEN: + # api.login(GOOGLE_LOGIN, GOOGLE_PASSWORD, AUTH_TOKEN) + api.login() # Get the version code and the offer type from the app details m = api.details(packagename) diff --git a/googleplayapi/googleplay.py b/googleplayapi/googleplay.py index fb71ff5..dadf71a 100644 --- a/googleplayapi/googleplay.py +++ b/googleplayapi/googleplay.py @@ -46,12 +46,33 @@ class GooglePlayAPI(object): authSubToken = None context = None - def __init__(self, androidId=None, debug=False): # you must use a device-associated androidId value + def __init__(self, androidId=None, authSubToken=None, email=None, password=None, debug=False): + """Google Play API + + authSubToken - pass in this value instead of calling login() multiple times + + email - Google Play username + + password - Google Play Password + + androidId - device id associated with the same Google Play account + + debug - increase verbosity and clutter up the screen + """ self.preFetch = {} + + self.debug = debug + + # store immediately to avoid more params to login() later + self.email = email + self.password = password + self.authSubToken = authSubToken + + # try to grab androidId from config as a last resort if androidId == None: + import googleplayapi.config as config androidId = config.ANDROID_ID self.androidId = androidId - self.debug = debug def toDict(self, protoObj): """Converts the (protobuf) result from an API call into a dict, for @@ -92,14 +113,20 @@ def _try_register_preFetch(self, protoObj): def setAuthSubToken(self, authSubToken): self.authSubToken = authSubToken - # put your auth token in config.py to avoid multiple login requests if self.debug: print "authSubToken: " + authSubToken def login(self, email=None, password=None, authSubToken=None): - """Login to your Google Account. You must provide either: + """Login to your Google account. You must provide either: - an email and password - a valid Google authSubToken""" + if email == None: + email = self.email + if password == None: + password = self.password + # Don't load authSubToken from self because maybe we're logging in + # again. + if (authSubToken is not None): self.setAuthSubToken(authSubToken) else: From 820ce515d30b4ed389b15b759d4ceb2de7187ab4 Mon Sep 17 00:00:00 2001 From: Bryan Bishop Date: Sun, 25 Nov 2012 23:44:42 -0600 Subject: [PATCH 4/7] remove "DO NOT REMOVE" lines --- googleplayapi/apishell.py | 3 --- googleplayapi/categories.py | 3 --- googleplayapi/download.py | 3 --- googleplayapi/list.py | 3 --- googleplayapi/permissions.py | 3 --- googleplayapi/search.py | 3 --- 6 files changed, 18 deletions(-) diff --git a/googleplayapi/apishell.py b/googleplayapi/apishell.py index 7120508..8688cb1 100755 --- a/googleplayapi/apishell.py +++ b/googleplayapi/apishell.py @@ -1,8 +1,5 @@ #!/usr/bin/python -# Do not remove -GOOGLE_LOGIN = GOOGLE_PASSWORD = AUTH_TOKEN = None - BANNER = """ Google Play Unofficial API Interactive Shell Successfully logged in using your Google account. The variable 'api' holds the API object. diff --git a/googleplayapi/categories.py b/googleplayapi/categories.py index ec65a13..591e349 100755 --- a/googleplayapi/categories.py +++ b/googleplayapi/categories.py @@ -1,8 +1,5 @@ #!/usr/bin/python -# Do not remove -GOOGLE_LOGIN = GOOGLE_PASSWORD = AUTH_TOKEN = None - import sys import urlparse from pprint import pprint diff --git a/googleplayapi/download.py b/googleplayapi/download.py index 90e6ba0..1f727d8 100755 --- a/googleplayapi/download.py +++ b/googleplayapi/download.py @@ -1,8 +1,5 @@ #!/usr/bin/python -# Do not remove -GOOGLE_LOGIN = GOOGLE_PASSWORD = AUTH_TOKEN = None - import sys from pprint import pprint diff --git a/googleplayapi/list.py b/googleplayapi/list.py index fb7f4ec..bc2b978 100755 --- a/googleplayapi/list.py +++ b/googleplayapi/list.py @@ -1,8 +1,5 @@ #!/usr/bin/python -# Do not remove -GOOGLE_LOGIN = GOOGLE_PASSWORD = AUTH_TOKEN = None - import sys from pprint import pprint diff --git a/googleplayapi/permissions.py b/googleplayapi/permissions.py index 6f841e3..0f0a583 100755 --- a/googleplayapi/permissions.py +++ b/googleplayapi/permissions.py @@ -1,8 +1,5 @@ #!/usr/bin/python -# Do not remove -GOOGLE_LOGIN = GOOGLE_PASSWORD = AUTH_TOKEN = None - import sys import urlparse from pprint import pprint diff --git a/googleplayapi/search.py b/googleplayapi/search.py index 7defcba..0450541 100755 --- a/googleplayapi/search.py +++ b/googleplayapi/search.py @@ -1,8 +1,5 @@ #!/usr/bin/python -# Do not remove -GOOGLE_LOGIN = GOOGLE_PASSWORD = AUTH_TOKEN = None - import sys from pprint import pprint From f8af4de21ea1d266f9ca7610f1f324a070e201de Mon Sep 17 00:00:00 2001 From: Bryan Bishop Date: Sun, 25 Nov 2012 23:46:41 -0600 Subject: [PATCH 5/7] switch from FR to US --- googleplayapi/googleplay.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/googleplayapi/googleplay.py b/googleplayapi/googleplay.py index dadf71a..ac16bdc 100644 --- a/googleplayapi/googleplay.py +++ b/googleplayapi/googleplay.py @@ -141,9 +141,9 @@ def login(self, email=None, password=None, authSubToken=None): "androidId": self.androidId, "app": "com.android.vending", #"client_sig": self.client_sig, - "device_country": "fr", - "operatorCountry": "fr", - "lang": "fr", + "device_country": "us", + "operatorCountry": "us", + "lang": "en", "sdk_version": "16"} headers = { "Accept-Encoding": "", From f0f0adc4a6370e538d50990b6100930a40fbb9e3 Mon Sep 17 00:00:00 2001 From: Bryan Bishop Date: Mon, 26 Nov 2012 21:29:36 -0600 Subject: [PATCH 6/7] add checkin proto definitions These are pulled from the android-checkin project: https://github.com/nviennot/android-checkin Original-author: Nicolas Viennot --- googleplayapi/googleplay.proto | 86 ++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) diff --git a/googleplayapi/googleplay.proto b/googleplayapi/googleplay.proto index a941c29..16aabae 100644 --- a/googleplayapi/googleplay.proto +++ b/googleplayapi/googleplay.proto @@ -1830,3 +1830,89 @@ message UninstallReasonRequestProto { } message UninstallReasonResponseProto { } +message AndroidCheckinProto { + optional AndroidBuildProto build = 1; + optional int64 lastCheckinMsec = 2; + repeated AndroidEventProto event = 3; + repeated AndroidStatisticProto stat = 4; + repeated string requestedGroup = 5; + optional string cellOperator = 6; + optional string simOperator = 7; + optional string roaming = 8; + optional int32 userNumber = 9; +} +message AndroidBuildProto { + optional string id = 1; + optional string product = 2; + optional string carrier = 3; + optional string radio = 4; + optional string bootloader = 5; + optional string client = 6; + optional int64 timestamp = 7; + optional int32 googleServices = 8; + optional string device = 9; + optional int32 sdkVersion = 10; + optional string model = 11; + optional string manufacturer = 12; + optional string buildProduct = 13; + optional bool otaInstalled = 14; +} +message AndroidEventProto { + optional string tag = 1; + optional string value = 2; + optional int64 timeMsec = 3; +} +message AndroidStatisticProto { + optional string tag = 1; + optional int32 count = 2; + optional float sum = 3; +} +message AndroidIntentProto { + optional string action = 1; + optional string dataUri = 2; + optional string mimeType = 3; + optional string javaClass = 4; + repeated group Extra = 5 { + optional string name = 6; + optional string value = 7; + } +} +message AndroidCheckinRequest { + optional string imei = 1; + optional int64 id = 2; + optional string digest = 3; + optional AndroidCheckinProto checkin = 4; + optional string desiredBuild = 5; + optional string locale = 6; + optional int64 loggingId = 7; + optional string marketCheckin = 8; + repeated string macAddr = 9; + optional string meid = 10; + repeated string accountCookie = 11; + optional string timeZone = 12; + optional fixed64 securityToken = 13; + optional int32 version = 14; + repeated string otaCert = 15; + optional string serialNumber = 16; + optional string esn = 17; + optional DeviceConfigurationProto deviceConfiguration = 18; + repeated string macAddrType = 19; + optional int32 fragment = 20; + optional string userName = 21; +} +message AndroidCheckinResponse { + optional bool statsOk = 1; + repeated AndroidIntentProto intent = 2; + optional int64 timeMsec = 3; + optional string digest = 4; + repeated GservicesSetting setting = 5; + optional bool marketOk = 6; + optional fixed64 androidId = 7; + optional fixed64 securityToken = 8; + optional bool settingsDiff = 9; + repeated string deleteSetting = 10; +} +message GservicesSetting { + optional bytes name = 1; + optional bytes value = 2; +} From bac14b38df9f616faa12651f41f9af2c66083675 Mon Sep 17 00:00:00 2001 From: Bryan Bishop Date: Mon, 26 Nov 2012 21:48:56 -0600 Subject: [PATCH 7/7] update protobuf compiler output --- googleplayapi/googleplay_pb2.py | 1494 +++++++++++++++++++++++++------ 1 file changed, 1238 insertions(+), 256 deletions(-) diff --git a/googleplayapi/googleplay_pb2.py b/googleplayapi/googleplay_pb2.py index 9f8f4c4..9253abb 100644 --- a/googleplayapi/googleplay_pb2.py +++ b/googleplayapi/googleplay_pb2.py @@ -7,10 +7,11 @@ # @@protoc_insertion_point(imports) + DESCRIPTOR = descriptor.FileDescriptor( name='googleplay.proto', package='', - serialized_pb='\n\x10googleplay.proto\"\x19\n\x17\x41\x63kNotificationResponse\"\x8b\x03\n\x16\x41ndroidAppDeliveryData\x12\x14\n\x0c\x64ownloadSize\x18\x01 \x01(\x03\x12\x11\n\tsignature\x18\x02 \x01(\t\x12\x13\n\x0b\x64ownloadUrl\x18\x03 \x01(\t\x12(\n\x0e\x61\x64\x64itionalFile\x18\x04 \x03(\x0b\x32\x10.AppFileMetadata\x12\'\n\x12\x64ownloadAuthCookie\x18\x05 \x03(\x0b\x32\x0b.HttpCookie\x12\x15\n\rforwardLocked\x18\x06 \x01(\x08\x12\x15\n\rrefundTimeout\x18\x07 \x01(\x03\x12\x17\n\x0fserverInitiated\x18\x08 \x01(\x08\x12%\n\x1dpostInstallRefundWindowMillis\x18\t \x01(\x03\x12\x1c\n\x14immediateStartNeeded\x18\n \x01(\x08\x12\'\n\tpatchData\x18\x0b \x01(\x0b\x32\x14.AndroidAppPatchData\x12+\n\x10\x65ncryptionParams\x18\x0c \x01(\x0b\x32\x11.EncryptionParams\"\x85\x01\n\x13\x41ndroidAppPatchData\x12\x17\n\x0f\x62\x61seVersionCode\x18\x01 \x01(\x05\x12\x15\n\rbaseSignature\x18\x02 \x01(\t\x12\x13\n\x0b\x64ownloadUrl\x18\x03 \x01(\t\x12\x13\n\x0bpatchFormat\x18\x04 \x01(\x05\x12\x14\n\x0cmaxPatchSize\x18\x05 \x01(\x03\"[\n\x0f\x41ppFileMetadata\x12\x10\n\x08\x66ileType\x18\x01 \x01(\x05\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0c\n\x04size\x18\x03 \x01(\x03\x12\x13\n\x0b\x64ownloadUrl\x18\x04 \x01(\t\"K\n\x10\x45ncryptionParams\x12\x0f\n\x07version\x18\x01 \x01(\x05\x12\x15\n\rencryptionKey\x18\x02 \x01(\t\x12\x0f\n\x07hmacKey\x18\x03 \x01(\t\")\n\nHttpCookie\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xad\x02\n\x07\x41\x64\x64ress\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x61\x64\x64ressLine1\x18\x02 \x01(\t\x12\x14\n\x0c\x61\x64\x64ressLine2\x18\x03 \x01(\t\x12\x0c\n\x04\x63ity\x18\x04 \x01(\t\x12\r\n\x05state\x18\x05 \x01(\t\x12\x12\n\npostalCode\x18\x06 \x01(\t\x12\x15\n\rpostalCountry\x18\x07 \x01(\t\x12\x19\n\x11\x64\x65pendentLocality\x18\x08 \x01(\t\x12\x13\n\x0bsortingCode\x18\t \x01(\t\x12\x14\n\x0clanguageCode\x18\n \x01(\t\x12\x13\n\x0bphoneNumber\x18\x0b \x01(\t\x12\x11\n\tisReduced\x18\x0c \x01(\x08\x12\x11\n\tfirstName\x18\r \x01(\t\x12\x10\n\x08lastName\x18\x0e \x01(\t\x12\r\n\x05\x65mail\x18\x0f \x01(\t\"J\n\nBookAuthor\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x17\n\x0f\x64\x65precatedQuery\x18\x02 \x01(\t\x12\x15\n\x05\x64ocid\x18\x03 \x01(\x0b\x32\x06.Docid\"\xc3\x03\n\x0b\x42ookDetails\x12\x1d\n\x07subject\x18\x03 \x03(\x0b\x32\x0c.BookSubject\x12\x11\n\tpublisher\x18\x04 \x01(\t\x12\x17\n\x0fpublicationDate\x18\x05 \x01(\t\x12\x0c\n\x04isbn\x18\x06 \x01(\t\x12\x15\n\rnumberOfPages\x18\x07 \x01(\x05\x12\x10\n\x08subtitle\x18\x08 \x01(\t\x12\x1b\n\x06\x61uthor\x18\t \x03(\x0b\x32\x0b.BookAuthor\x12\x11\n\treaderUrl\x18\n \x01(\t\x12\x17\n\x0f\x64ownloadEpubUrl\x18\x0b \x01(\t\x12\x16\n\x0e\x64ownloadPdfUrl\x18\x0c \x01(\t\x12\x17\n\x0f\x61\x63sEpubTokenUrl\x18\r \x01(\t\x12\x16\n\x0e\x61\x63sPdfTokenUrl\x18\x0e \x01(\t\x12\x15\n\repubAvailable\x18\x0f \x01(\x08\x12\x14\n\x0cpdfAvailable\x18\x10 \x01(\x08\x12\x16\n\x0e\x61\x62outTheAuthor\x18\x11 \x01(\t\x12+\n\nidentifier\x18\x12 \x03(\n2\x17.BookDetails.Identifier\x1a.\n\nIdentifier\x12\x0c\n\x04type\x18\x13 \x01(\x05\x12\x12\n\nidentifier\x18\x14 \x01(\t\"=\n\x0b\x42ookSubject\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x11\n\tsubjectId\x18\x03 \x01(\t\"+\n\nBrowseLink\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07\x64\x61taUrl\x18\x03 \x01(\t\"w\n\x0e\x42rowseResponse\x12\x13\n\x0b\x63ontentsUrl\x18\x01 \x01(\t\x12\x10\n\x08promoUrl\x18\x02 \x01(\t\x12\x1d\n\x08\x63\x61tegory\x18\x03 \x03(\x0b\x32\x0b.BrowseLink\x12\x1f\n\nbreadcrumb\x18\x04 \x03(\x0b\x32\x0b.BrowseLink\"\x8f\x02\n\x10\x41\x64\x64ressChallenge\x12\x1c\n\x14responseAddressParam\x18\x01 \x01(\t\x12\x1f\n\x17responseCheckboxesParam\x18\x02 \x01(\t\x12\r\n\x05title\x18\x03 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x04 \x01(\t\x12\x1f\n\x08\x63heckbox\x18\x05 \x03(\x0b\x32\r.FormCheckbox\x12\x19\n\x07\x61\x64\x64ress\x18\x06 \x01(\x0b\x32\x08.Address\x12.\n\x0f\x65rrorInputField\x18\x07 \x03(\x0b\x32\x15.InputValidationError\x12\x11\n\terrorHtml\x18\x08 \x01(\t\x12\x15\n\rrequiredField\x18\t \x03(\x05\"\xef\x01\n\x17\x41uthenticationChallenge\x12\x1a\n\x12\x61uthenticationType\x18\x01 \x01(\x05\x12\'\n\x1fresponseAuthenticationTypeParam\x18\x02 \x01(\t\x12\x1f\n\x17responseRetryCountParam\x18\x03 \x01(\t\x12\x15\n\rpinHeaderText\x18\x04 \x01(\t\x12\x1e\n\x16pinDescriptionTextHtml\x18\x05 \x01(\t\x12\x16\n\x0egaiaHeaderText\x18\x06 \x01(\t\x12\x1f\n\x17gaiaDescriptionTextHtml\x18\x07 \x01(\t\"\x81\t\n\x0b\x42uyResponse\x12\x37\n\x10purchaseResponse\x18\x01 \x01(\x0b\x32\x1d.PurchaseNotificationResponse\x12/\n\x0c\x63heckoutinfo\x18\x02 \x01(\n2\x19.BuyResponse.CheckoutInfo\x12\x16\n\x0e\x63ontinueViaUrl\x18\x08 \x01(\t\x12\x19\n\x11purchaseStatusUrl\x18\t \x01(\t\x12\x19\n\x11\x63heckoutServiceId\x18\x0c \x01(\t\x12\x1d\n\x15\x63heckoutTokenRequired\x18\r \x01(\x08\x12\x17\n\x0f\x62\x61seCheckoutUrl\x18\x0e \x01(\t\x12\x17\n\x0ftosCheckboxHtml\x18% \x03(\t\x12\x1a\n\x12iabPermissionError\x18& \x01(\x05\x12\x37\n\x16purchaseStatusResponse\x18\' \x01(\x0b\x32\x17.PurchaseStatusResponse\x12\x16\n\x0epurchaseCookie\x18. \x01(\t\x12\x1d\n\tchallenge\x18\x31 \x01(\x0b\x32\n.Challenge\x1a\xdc\x05\n\x0c\x43heckoutInfo\x12\x17\n\x04item\x18\x03 \x01(\x0b\x32\t.LineItem\x12\x1a\n\x07subItem\x18\x04 \x03(\x0b\x32\t.LineItem\x12@\n\x0e\x63heckoutoption\x18\x05 \x03(\n2(.BuyResponse.CheckoutInfo.CheckoutOption\x12\x1d\n\x15\x64\x65precatedCheckoutUrl\x18\n \x01(\t\x12\x18\n\x10\x61\x64\x64InstrumentUrl\x18\x0b \x01(\t\x12\x12\n\nfooterHtml\x18\x14 \x03(\t\x12 \n\x18\x65ligibleInstrumentFamily\x18\x1f \x03(\x05\x12\x14\n\x0c\x66ootnoteHtml\x18$ \x03(\t\x12\'\n\x12\x65ligibleInstrument\x18, \x03(\x0b\x32\x0b.Instrument\x1a\xa6\x03\n\x0e\x43heckoutOption\x12\x15\n\rformOfPayment\x18\x06 \x01(\t\x12\x1b\n\x13\x65ncodedAdjustedCart\x18\x07 \x01(\t\x12\x14\n\x0cinstrumentId\x18\x0f \x01(\t\x12\x17\n\x04item\x18\x10 \x03(\x0b\x32\t.LineItem\x12\x1a\n\x07subItem\x18\x11 \x03(\x0b\x32\t.LineItem\x12\x18\n\x05total\x18\x12 \x01(\x0b\x32\t.LineItem\x12\x12\n\nfooterHtml\x18\x13 \x03(\t\x12\x18\n\x10instrumentFamily\x18\x1d \x01(\x05\x12.\n&deprecatedInstrumentInapplicableReason\x18\x1e \x03(\x05\x12\x1a\n\x12selectedInstrument\x18 \x01(\x08\x12\x1a\n\x07summary\x18! \x01(\x0b\x32\t.LineItem\x12\x14\n\x0c\x66ootnoteHtml\x18# \x03(\t\x12\x1f\n\ninstrument\x18+ \x01(\x0b\x32\x0b.Instrument\x12\x16\n\x0epurchaseCookie\x18- \x01(\t\x12\x16\n\x0e\x64isabledReason\x18\x30 \x03(\t\"s\n\tChallenge\x12+\n\x10\x61\x64\x64ressChallenge\x18\x01 \x01(\x0b\x32\x11.AddressChallenge\x12\x39\n\x17\x61uthenticationChallenge\x18\x02 \x01(\x0b\x32\x18.AuthenticationChallenge\"F\n\x0c\x46ormCheckbox\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\x12\x0f\n\x07\x63hecked\x18\x02 \x01(\x08\x12\x10\n\x08required\x18\x03 \x01(\x08\"\\\n\x08LineItem\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x15\n\x05offer\x18\x03 \x01(\x0b\x32\x06.Offer\x12\x16\n\x06\x61mount\x18\x04 \x01(\x0b\x32\x06.Money\"F\n\x05Money\x12\x0e\n\x06micros\x18\x01 \x01(\x03\x12\x14\n\x0c\x63urrencyCode\x18\x02 \x01(\t\x12\x17\n\x0f\x66ormattedAmount\x18\x03 \x01(\t\"\x80\x01\n\x1cPurchaseNotificationResponse\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x1d\n\tdebugInfo\x18\x02 \x01(\x0b\x32\n.DebugInfo\x12\x1d\n\x15localizedErrorMessage\x18\x03 \x01(\t\x12\x12\n\npurchaseId\x18\x04 \x01(\t\"\xf9\x01\n\x16PurchaseStatusResponse\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x11\n\tstatusMsg\x18\x02 \x01(\t\x12\x13\n\x0bstatusTitle\x18\x03 \x01(\t\x12\x14\n\x0c\x62riefMessage\x18\x04 \x01(\t\x12\x0f\n\x07infoUrl\x18\x05 \x01(\t\x12%\n\rlibraryUpdate\x18\x06 \x01(\x0b\x32\x0e.LibraryUpdate\x12\'\n\x12rejectedInstrument\x18\x07 \x01(\x0b\x32\x0b.Instrument\x12\x30\n\x0f\x61ppDeliveryData\x18\x08 \x01(\x0b\x32\x17.AndroidAppDeliveryData\"\xa2\x01\n\x17\x43heckInstrumentResponse\x12\x1e\n\x16userHasValidInstrument\x18\x01 \x01(\x08\x12\x1d\n\x15\x63heckoutTokenRequired\x18\x02 \x01(\x08\x12\x1f\n\ninstrument\x18\x04 \x03(\x0b\x32\x0b.Instrument\x12\'\n\x12\x65ligibleInstrument\x18\x05 \x03(\x0b\x32\x0b.Instrument\"Q\n\x17UpdateInstrumentRequest\x12\x1f\n\ninstrument\x18\x01 \x01(\x0b\x32\x0b.Instrument\x12\x15\n\rcheckoutToken\x18\x02 \x01(\t\"\xd4\x01\n\x18UpdateInstrumentResponse\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x14\n\x0cinstrumentId\x18\x02 \x01(\t\x12\x17\n\x0fuserMessageHtml\x18\x03 \x01(\t\x12.\n\x0f\x65rrorInputField\x18\x04 \x03(\x0b\x32\x15.InputValidationError\x12\x1d\n\x15\x63heckoutTokenRequired\x18\x05 \x01(\x08\x12*\n\rredeemedOffer\x18\x06 \x01(\x0b\x32\x13.RedeemedPromoOffer\"0\n\x1bInitiateAssociationResponse\x12\x11\n\tuserToken\x18\x01 \x01(\t\"n\n\x19VerifyAssociationResponse\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12 \n\x0e\x62illingAddress\x18\x02 \x01(\x0b\x32\x08.Address\x12\x1f\n\ncarrierTos\x18\x03 \x01(\x0b\x32\x0b.CarrierTos\"\xcc\x01\n\x17\x41\x64\x64\x43reditCardPromoOffer\x12\x12\n\nheaderText\x18\x01 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x02 \x01(\t\x12\x15\n\x05image\x18\x03 \x01(\x0b\x32\x06.Image\x12\x1c\n\x14introductoryTextHtml\x18\x04 \x01(\t\x12\x12\n\nofferTitle\x18\x05 \x01(\t\x12\x1b\n\x13noActionDescription\x18\x06 \x01(\t\x12\x1e\n\x16termsAndConditionsHtml\x18\x07 \x01(\t\"K\n\x13\x41vailablePromoOffer\x12\x34\n\x12\x61\x64\x64\x43reditCardOffer\x18\x01 \x01(\x0b\x32\x18.AddCreditCardPromoOffer\"\x92\x01\n\x17\x43heckPromoOfferResponse\x12,\n\x0e\x61vailableOffer\x18\x01 \x03(\x0b\x32\x14.AvailablePromoOffer\x12*\n\rredeemedOffer\x18\x02 \x01(\x0b\x32\x13.RedeemedPromoOffer\x12\x1d\n\x15\x63heckoutTokenRequired\x18\x03 \x01(\x08\"X\n\x12RedeemedPromoOffer\x12\x12\n\nheaderText\x18\x01 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x02 \x01(\t\x12\x15\n\x05image\x18\x03 \x01(\x0b\x32\x06.Image\"<\n\x05\x44ocid\x12\x14\n\x0c\x62\x61\x63kendDocid\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\x05\x12\x0f\n\x07\x62\x61\x63kend\x18\x03 \x01(\x05\">\n\x07Install\x12\x11\n\tandroidId\x18\x01 \x01(\x06\x12\x0f\n\x07version\x18\x02 \x01(\x05\x12\x0f\n\x07\x62undled\x18\x03 \x01(\x08\"\x80\x03\n\x05Offer\x12\x0e\n\x06micros\x18\x01 \x01(\x03\x12\x14\n\x0c\x63urrencyCode\x18\x02 \x01(\t\x12\x17\n\x0f\x66ormattedAmount\x18\x03 \x01(\t\x12\x1e\n\x0e\x63onvertedPrice\x18\x04 \x03(\x0b\x32\x06.Offer\x12\x1c\n\x14\x63heckoutFlowRequired\x18\x05 \x01(\x08\x12\x17\n\x0f\x66ullPriceMicros\x18\x06 \x01(\x03\x12\x1b\n\x13\x66ormattedFullAmount\x18\x07 \x01(\t\x12\x11\n\tofferType\x18\x08 \x01(\x05\x12!\n\x0brentalTerms\x18\t \x01(\x0b\x32\x0c.RentalTerms\x12\x12\n\nonSaleDate\x18\n \x01(\x03\x12\x16\n\x0epromotionLabel\x18\x0b \x03(\t\x12-\n\x11subscriptionTerms\x18\x0c \x01(\x0b\x32\x12.SubscriptionTerms\x12\x15\n\rformattedName\x18\r \x01(\t\x12\x1c\n\x14\x66ormattedDescription\x18\x0e \x01(\t\"\xb1\x01\n\rOwnershipInfo\x12\x1f\n\x17initiationTimestampMsec\x18\x01 \x01(\x03\x12\x1f\n\x17validUntilTimestampMsec\x18\x02 \x01(\x03\x12\x14\n\x0c\x61utoRenewing\x18\x03 \x01(\x08\x12\"\n\x1arefundTimeoutTimestampMsec\x18\x04 \x01(\x03\x12$\n\x1cpostDeliveryRefundWindowMsec\x18\x05 \x01(\x03\"H\n\x0bRentalTerms\x12\x1a\n\x12grantPeriodSeconds\x18\x01 \x01(\x05\x12\x1d\n\x15\x61\x63tivatePeriodSeconds\x18\x02 \x01(\x05\"[\n\x11SubscriptionTerms\x12$\n\x0frecurringPeriod\x18\x01 \x01(\x0b\x32\x0b.TimePeriod\x12 \n\x0btrialPeriod\x18\x02 \x01(\x0b\x32\x0b.TimePeriod\")\n\nTimePeriod\x12\x0c\n\x04unit\x18\x01 \x01(\x05\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\"G\n\x12\x42illingAddressSpec\x12\x1a\n\x12\x62illingAddressType\x18\x01 \x01(\x05\x12\x15\n\rrequiredField\x18\x02 \x03(\x05\">\n\x19\x43\x61rrierBillingCredentials\x12\r\n\x05value\x18\x01 \x01(\t\x12\x12\n\nexpiration\x18\x02 \x01(\x03\"\xa9\x02\n\x18\x43\x61rrierBillingInstrument\x12\x15\n\rinstrumentKey\x18\x01 \x01(\t\x12\x13\n\x0b\x61\x63\x63ountType\x18\x02 \x01(\t\x12\x14\n\x0c\x63urrencyCode\x18\x03 \x01(\t\x12\x18\n\x10transactionLimit\x18\x04 \x01(\x03\x12\x1c\n\x14subscriberIdentifier\x18\x05 \x01(\t\x12\x39\n\x17\x65ncryptedSubscriberInfo\x18\x06 \x01(\x0b\x32\x18.EncryptedSubscriberInfo\x12/\n\x0b\x63redentials\x18\x07 \x01(\x0b\x32\x1a.CarrierBillingCredentials\x12\'\n\x12\x61\x63\x63\x65ptedCarrierTos\x18\x08 \x01(\x0b\x32\x0b.CarrierTos\"\xca\x01\n\x1e\x43\x61rrierBillingInstrumentStatus\x12\x1f\n\ncarrierTos\x18\x01 \x01(\x0b\x32\x0b.CarrierTos\x12\x1b\n\x13\x61ssociationRequired\x18\x02 \x01(\x08\x12\x18\n\x10passwordRequired\x18\x03 \x01(\x08\x12.\n\x15\x63\x61rrierPasswordPrompt\x18\x04 \x01(\x0b\x32\x0f.PasswordPrompt\x12\x12\n\napiVersion\x18\x05 \x01(\x05\x12\x0c\n\x04name\x18\x06 \x01(\t\"\x8e\x01\n\nCarrierTos\x12 \n\x06\x64\x63\x62Tos\x18\x01 \x01(\x0b\x32\x10.CarrierTosEntry\x12 \n\x06piiTos\x18\x02 \x01(\x0b\x32\x10.CarrierTosEntry\x12\x1d\n\x15needsDcbTosAcceptance\x18\x03 \x01(\x08\x12\x1d\n\x15needsPiiTosAcceptance\x18\x04 \x01(\x08\"/\n\x0f\x43\x61rrierTosEntry\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\"\xa2\x01\n\x14\x43reditCardInstrument\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x14\n\x0c\x65scrowHandle\x18\x02 \x01(\t\x12\x12\n\nlastDigits\x18\x03 \x01(\t\x12\x17\n\x0f\x65xpirationMonth\x18\x04 \x01(\x05\x12\x16\n\x0e\x65xpirationYear\x18\x05 \x01(\x05\x12!\n\x0e\x65scrowEfeParam\x18\x06 \x03(\x0b\x32\t.EfeParam\"&\n\x08\x45\x66\x65Param\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\t\"@\n\x14InputValidationError\x12\x12\n\ninputField\x18\x01 \x01(\x05\x12\x14\n\x0c\x65rrorMessage\x18\x02 \x01(\t\"\xc2\x02\n\nInstrument\x12\x14\n\x0cinstrumentId\x18\x01 \x01(\t\x12 \n\x0e\x62illingAddress\x18\x02 \x01(\x0b\x32\x08.Address\x12)\n\ncreditCard\x18\x03 \x01(\x0b\x32\x15.CreditCardInstrument\x12\x31\n\x0e\x63\x61rrierBilling\x18\x04 \x01(\x0b\x32\x19.CarrierBillingInstrument\x12/\n\x12\x62illingAddressSpec\x18\x05 \x01(\x0b\x32\x13.BillingAddressSpec\x12\x18\n\x10instrumentFamily\x18\x06 \x01(\x05\x12=\n\x14\x63\x61rrierBillingStatus\x18\x07 \x01(\x0b\x32\x1f.CarrierBillingInstrumentStatus\x12\x14\n\x0c\x64isplayTitle\x18\x08 \x01(\t\";\n\x0ePasswordPrompt\x12\x0e\n\x06prompt\x18\x01 \x01(\t\x12\x19\n\x11\x66orgotPasswordUrl\x18\x02 \x01(\t\"\x92\x01\n\x11\x43ontainerMetadata\x12\x11\n\tbrowseUrl\x18\x01 \x01(\t\x12\x13\n\x0bnextPageUrl\x18\x02 \x01(\t\x12\x11\n\trelevance\x18\x03 \x01(\x01\x12\x18\n\x10\x65stimatedResults\x18\x04 \x01(\x03\x12\x17\n\x0f\x61nalyticsCookie\x18\x05 \x01(\t\x12\x0f\n\x07ordered\x18\x06 \x01(\x08\"\x15\n\x13\x46lagContentResponse\"i\n\tDebugInfo\x12\x0f\n\x07message\x18\x01 \x03(\t\x12!\n\x06timing\x18\x02 \x03(\n2\x11.DebugInfo.Timing\x1a(\n\x06Timing\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x10\n\x08timeInMs\x18\x04 \x01(\x01\"T\n\x10\x44\x65liveryResponse\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x30\n\x0f\x61ppDeliveryData\x18\x02 \x01(\x0b\x32\x17.AndroidAppDeliveryData\"\'\n\x10\x42ulkDetailsEntry\x12\x13\n\x03\x64oc\x18\x01 \x01(\x0b\x32\x06.DocV2\"=\n\x12\x42ulkDetailsRequest\x12\r\n\x05\x64ocid\x18\x01 \x03(\t\x12\x18\n\x10includeChildDocs\x18\x02 \x01(\x08\"7\n\x13\x42ulkDetailsResponse\x12 \n\x05\x65ntry\x18\x01 \x03(\x0b\x32\x11.BulkDetailsEntry\"\x89\x01\n\x0f\x44\x65tailsResponse\x12\x15\n\x05\x64ocV1\x18\x01 \x01(\x0b\x32\x06.DocV1\x12\x17\n\x0f\x61nalyticsCookie\x18\x02 \x01(\t\x12\x1b\n\nuserReview\x18\x03 \x01(\x0b\x32\x07.Review\x12\x15\n\x05\x64ocV2\x18\x04 \x01(\x0b\x32\x06.DocV2\x12\x12\n\nfooterHtml\x18\x05 \x01(\t\"\xb5\x03\n\x18\x44\x65viceConfigurationProto\x12\x13\n\x0btouchScreen\x18\x01 \x01(\x05\x12\x10\n\x08keyboard\x18\x02 \x01(\x05\x12\x12\n\nnavigation\x18\x03 \x01(\x05\x12\x14\n\x0cscreenLayout\x18\x04 \x01(\x05\x12\x17\n\x0fhasHardKeyboard\x18\x05 \x01(\x08\x12\x1c\n\x14hasFiveWayNavigation\x18\x06 \x01(\x08\x12\x15\n\rscreenDensity\x18\x07 \x01(\x05\x12\x13\n\x0bglEsVersion\x18\x08 \x01(\x05\x12\x1b\n\x13systemSharedLibrary\x18\t \x03(\t\x12\x1e\n\x16systemAvailableFeature\x18\n \x03(\t\x12\x16\n\x0enativePlatform\x18\x0b \x03(\t\x12\x13\n\x0bscreenWidth\x18\x0c \x01(\x05\x12\x14\n\x0cscreenHeight\x18\r \x01(\x05\x12\x1d\n\x15systemSupportedLocale\x18\x0e \x03(\t\x12\x13\n\x0bglExtension\x18\x0f \x03(\t\x12\x13\n\x0b\x64\x65viceClass\x18\x10 \x01(\x05\x12\x1c\n\x14maxApkDownloadSizeMb\x18\x11 \x01(\x05\"\xff\x03\n\x08\x44ocument\x12\x15\n\x05\x64ocid\x18\x01 \x01(\x0b\x32\x06.Docid\x12\x1a\n\nfetchDocid\x18\x02 \x01(\x0b\x32\x06.Docid\x12\x1b\n\x0bsampleDocid\x18\x03 \x01(\x0b\x32\x06.Docid\x12\r\n\x05title\x18\x04 \x01(\t\x12\x0b\n\x03url\x18\x05 \x01(\t\x12\x0f\n\x07snippet\x18\x06 \x03(\t\x12\x1f\n\x0fpriceDeprecated\x18\x07 \x01(\x0b\x32\x06.Offer\x12#\n\x0c\x61vailability\x18\t \x01(\x0b\x32\r.Availability\x12\x15\n\x05image\x18\n \x03(\x0b\x32\x06.Image\x12\x18\n\x05\x63hild\x18\x0b \x03(\x0b\x32\t.Document\x12)\n\x0f\x61ggregateRating\x18\r \x01(\x0b\x32\x10.AggregateRating\x12\x15\n\x05offer\x18\x0e \x03(\x0b\x32\x06.Offer\x12*\n\x11translatedSnippet\x18\x0f \x03(\x0b\x32\x0f.TranslatedText\x12)\n\x0f\x64ocumentVariant\x18\x10 \x03(\x0b\x32\x10.DocumentVariant\x12\x12\n\ncategoryId\x18\x11 \x03(\t\x12\x1d\n\ndecoration\x18\x12 \x03(\x0b\x32\t.Document\x12\x19\n\x06parent\x18\x13 \x03(\x0b\x32\t.Document\x12\x18\n\x10privacyPolicyUrl\x18\x14 \x01(\t\"\x81\x02\n\x0f\x44ocumentVariant\x12\x15\n\rvariationType\x18\x01 \x01(\x05\x12\x13\n\x04rule\x18\x02 \x01(\x0b\x32\x05.Rule\x12\r\n\x05title\x18\x03 \x01(\t\x12\x0f\n\x07snippet\x18\x04 \x03(\t\x12\x15\n\rrecentChanges\x18\x05 \x01(\t\x12(\n\x0f\x61utoTranslation\x18\x06 \x03(\x0b\x32\x0f.TranslatedText\x12\x15\n\x05offer\x18\x07 \x03(\x0b\x32\x06.Offer\x12\x11\n\tchannelId\x18\t \x01(\x03\x12\x18\n\x05\x63hild\x18\n \x03(\x0b\x32\t.Document\x12\x1d\n\ndecoration\x18\x0b \x03(\x0b\x32\t.Document\"\xba\x02\n\x05Image\x12\x11\n\timageType\x18\x01 \x01(\x05\x12#\n\tdimension\x18\x02 \x01(\n2\x10.Image.Dimension\x12\x10\n\x08imageUrl\x18\x05 \x01(\t\x12\x18\n\x10\x61ltTextLocalized\x18\x06 \x01(\t\x12\x11\n\tsecureUrl\x18\x07 \x01(\t\x12\x1a\n\x12positionInSequence\x18\x08 \x01(\x05\x12\x1e\n\x16supportsFifeUrlOptions\x18\t \x01(\x08\x12!\n\x08\x63itation\x18\n \x01(\n2\x0f.Image.Citation\x1a*\n\tDimension\x12\r\n\x05width\x18\x03 \x01(\x05\x12\x0e\n\x06height\x18\x04 \x01(\x05\x1a/\n\x08\x43itation\x12\x16\n\x0etitleLocalized\x18\x0b \x01(\t\x12\x0b\n\x03url\x18\x0c \x01(\t\"J\n\x0eTranslatedText\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x14\n\x0csourceLocale\x18\x02 \x01(\t\x12\x14\n\x0ctargetLocale\x18\x03 \x01(\t\"@\n\x05\x42\x61\x64ge\x12\r\n\x05title\x18\x01 \x01(\t\x12\x15\n\x05image\x18\x02 \x03(\x0b\x32\x06.Image\x12\x11\n\tbrowseUrl\x18\x03 \x01(\t\"-\n\x13\x43ontainerWithBanner\x12\x16\n\x0e\x63olorThemeArgb\x18\x01 \x01(\t\">\n\x0c\x44\x65\x61lOfTheDay\x12\x16\n\x0e\x66\x65\x61turedHeader\x18\x01 \x01(\t\x12\x16\n\x0e\x63olorThemeArgb\x18\x02 \x01(\t\"\x8e\x01\n\x18\x45\x64itorialSeriesContainer\x12\x13\n\x0bseriesTitle\x18\x01 \x01(\t\x12\x16\n\x0eseriesSubtitle\x18\x02 \x01(\t\x12\x14\n\x0c\x65pisodeTitle\x18\x03 \x01(\t\x12\x17\n\x0f\x65pisodeSubtitle\x18\x04 \x01(\t\x12\x16\n\x0e\x63olorThemeArgb\x18\x05 \x01(\t\"\x13\n\x04Link\x12\x0b\n\x03uri\x18\x01 \x01(\t\"i\n\x0bPlusOneData\x12\x11\n\tsetByUser\x18\x01 \x01(\x08\x12\r\n\x05total\x18\x02 \x01(\x03\x12\x14\n\x0c\x63irclesTotal\x18\x03 \x01(\x03\x12\"\n\rcirclesPeople\x18\x04 \x03(\x0b\x32\x0b.PlusPerson\":\n\nPlusPerson\x12\x13\n\x0b\x64isplayName\x18\x02 \x01(\t\x12\x17\n\x0fprofileImageUrl\x18\x04 \x01(\t\"r\n\x0bPromotedDoc\x12\r\n\x05title\x18\x01 \x01(\t\x12\x10\n\x08subtitle\x18\x02 \x01(\t\x12\x15\n\x05image\x18\x03 \x03(\x0b\x32\x06.Image\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x04 \x01(\t\x12\x12\n\ndetailsUrl\x18\x05 \x01(\t\"G\n\x06Reason\x12\x13\n\x0b\x62riefReason\x18\x01 \x01(\t\x12\x16\n\x0e\x64\x65tailedReason\x18\x02 \x01(\t\x12\x10\n\x08uniqueId\x18\x03 \x01(\t\"^\n\x0fSectionMetadata\x12\x0e\n\x06header\x18\x01 \x01(\t\x12\x0f\n\x07listUrl\x18\x02 \x01(\t\x12\x11\n\tbrowseUrl\x18\x03 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x04 \x01(\t\"\xd5\x01\n\rSeriesAntenna\x12\x13\n\x0bseriesTitle\x18\x01 \x01(\t\x12\x16\n\x0eseriesSubtitle\x18\x02 \x01(\t\x12\x14\n\x0c\x65pisodeTitle\x18\x03 \x01(\t\x12\x17\n\x0f\x65pisodeSubtitle\x18\x04 \x01(\t\x12\x16\n\x0e\x63olorThemeArgb\x18\x05 \x01(\t\x12\'\n\rsectionTracks\x18\x06 \x01(\x0b\x32\x10.SectionMetadata\x12\'\n\rsectionAlbums\x18\x07 \x01(\x0b\x32\x10.SectionMetadata\"\x8f\x04\n\x08Template\x12%\n\rseriesAntenna\x18\x01 \x01(\x0b\x32\x0e.SeriesAntenna\x12%\n\x0etileGraphic2X1\x18\x02 \x01(\x0b\x32\r.TileTemplate\x12%\n\x0etileGraphic4X2\x18\x03 \x01(\x0b\x32\r.TileTemplate\x12\x31\n\x1atileGraphicColoredTitle2X1\x18\x04 \x01(\x0b\x32\r.TileTemplate\x12\x33\n\x1ctileGraphicUpperLeftTitle2X1\x18\x05 \x01(\x0b\x32\r.TileTemplate\x12\x35\n\x1etileDetailsReflectedGraphic2X2\x18\x06 \x01(\x0b\x32\r.TileTemplate\x12\'\n\x10tileFourBlock4X2\x18\x07 \x01(\x0b\x32\r.TileTemplate\x12\x31\n\x13\x63ontainerWithBanner\x18\x08 \x01(\x0b\x32\x14.ContainerWithBanner\x12#\n\x0c\x64\x65\x61lOfTheDay\x18\t \x01(\x0b\x32\r.DealOfTheDay\x12\x31\n\x1atileGraphicColoredTitle4X2\x18\n \x01(\x0b\x32\r.TileTemplate\x12;\n\x18\x65\x64itorialSeriesContainer\x18\x0b \x01(\x0b\x32\x19.EditorialSeriesContainer\"=\n\x0cTileTemplate\x12\x16\n\x0e\x63olorThemeArgb\x18\x01 \x01(\t\x12\x15\n\rcolorTextArgb\x18\x02 \x01(\t\"#\n\x07Warning\x12\x18\n\x10localizedMessage\x18\x01 \x01(\t\"c\n\x0c\x41lbumDetails\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1e\n\x07\x64\x65tails\x18\x02 \x01(\x0b\x32\r.MusicDetails\x12%\n\rdisplayArtist\x18\x03 \x01(\x0b\x32\x0e.ArtistDetails\"\x8e\x03\n\nAppDetails\x12\x15\n\rdeveloperName\x18\x01 \x01(\t\x12\x1a\n\x12majorVersionNumber\x18\x02 \x01(\x05\x12\x13\n\x0bversionCode\x18\x03 \x01(\x05\x12\x15\n\rversionString\x18\x04 \x01(\t\x12\r\n\x05title\x18\x05 \x01(\t\x12\x13\n\x0b\x61ppCategory\x18\x07 \x03(\t\x12\x15\n\rcontentRating\x18\x08 \x01(\x05\x12\x18\n\x10installationSize\x18\t \x01(\x03\x12\x12\n\npermission\x18\n \x03(\t\x12\x16\n\x0e\x64\x65veloperEmail\x18\x0b \x01(\t\x12\x18\n\x10\x64\x65veloperWebsite\x18\x0c \x01(\t\x12\x14\n\x0cnumDownloads\x18\r \x01(\t\x12\x13\n\x0bpackageName\x18\x0e \x01(\t\x12\x19\n\x11recentChangesHtml\x18\x0f \x01(\t\x12\x12\n\nuploadDate\x18\x10 \x01(\t\x12\x1b\n\x04\x66ile\x18\x11 \x03(\x0b\x32\r.FileMetadata\x12\x0f\n\x07\x61ppType\x18\x12 \x01(\t\"^\n\rArtistDetails\x12\x12\n\ndetailsUrl\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\rexternalLinks\x18\x03 \x01(\x0b\x32\x14.ArtistExternalLinks\"b\n\x13\x41rtistExternalLinks\x12\x12\n\nwebsiteUrl\x18\x01 \x03(\t\x12\x1c\n\x14googlePlusProfileUrl\x18\x02 \x01(\t\x12\x19\n\x11youtubeChannelUrl\x18\x03 \x01(\t\"\xc6\x03\n\x0f\x44ocumentDetails\x12\x1f\n\nappDetails\x18\x01 \x01(\x0b\x32\x0b.AppDetails\x12#\n\x0c\x61lbumDetails\x18\x02 \x01(\x0b\x32\r.AlbumDetails\x12%\n\rartistDetails\x18\x03 \x01(\x0b\x32\x0e.ArtistDetails\x12!\n\x0bsongDetails\x18\x04 \x01(\x0b\x32\x0c.SongDetails\x12!\n\x0b\x62ookDetails\x18\x05 \x01(\x0b\x32\x0c.BookDetails\x12#\n\x0cvideoDetails\x18\x06 \x01(\x0b\x32\r.VideoDetails\x12\x31\n\x13subscriptionDetails\x18\x07 \x01(\x0b\x32\x14.SubscriptionDetails\x12)\n\x0fmagazineDetails\x18\x08 \x01(\x0b\x32\x10.MagazineDetails\x12%\n\rtvShowDetails\x18\t \x01(\x0b\x32\x0e.TvShowDetails\x12)\n\x0ftvSeasonDetails\x18\n \x01(\x0b\x32\x10.TvSeasonDetails\x12+\n\x10tvEpisodeDetails\x18\x0b \x01(\x0b\x32\x11.TvEpisodeDetails\"C\n\x0c\x46ileMetadata\x12\x10\n\x08\x66ileType\x18\x01 \x01(\x05\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0c\n\x04size\x18\x03 \x01(\x03\"\x94\x01\n\x0fMagazineDetails\x12\x18\n\x10parentDetailsUrl\x18\x01 \x01(\t\x12)\n!deviceAvailabilityDescriptionHtml\x18\x02 \x01(\t\x12\x16\n\x0epsvDescription\x18\x03 \x01(\t\x12$\n\x1c\x64\x65liveryFrequencyDescription\x18\x04 \x01(\t\"\xbb\x01\n\x0cMusicDetails\x12\x11\n\tcensoring\x18\x01 \x01(\x05\x12\x13\n\x0b\x64urationSec\x18\x02 \x01(\x05\x12\x1b\n\x13originalReleaseDate\x18\x03 \x01(\t\x12\r\n\x05label\x18\x04 \x01(\t\x12\x1e\n\x06\x61rtist\x18\x05 \x03(\x0b\x32\x0e.ArtistDetails\x12\r\n\x05genre\x18\x06 \x03(\t\x12\x13\n\x0breleaseDate\x18\x07 \x01(\t\x12\x13\n\x0breleaseType\x18\x08 \x03(\x05\"\x9e\x01\n\x0bSongDetails\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1e\n\x07\x64\x65tails\x18\x02 \x01(\x0b\x32\r.MusicDetails\x12\x11\n\talbumName\x18\x03 \x01(\t\x12\x13\n\x0btrackNumber\x18\x04 \x01(\x05\x12\x12\n\npreviewUrl\x18\x05 \x01(\t\x12%\n\rdisplayArtist\x18\x06 \x01(\x0b\x32\x0e.ArtistDetails\"1\n\x13SubscriptionDetails\x12\x1a\n\x12subscriptionPeriod\x18\x01 \x01(\x05\"e\n\x07Trailer\x12\x11\n\ttrailerId\x18\x01 \x01(\t\x12\r\n\x05title\x18\x02 \x01(\t\x12\x14\n\x0cthumbnailUrl\x18\x03 \x01(\t\x12\x10\n\x08watchUrl\x18\x04 \x01(\t\x12\x10\n\x08\x64uration\x18\x05 \x01(\t\"W\n\x10TvEpisodeDetails\x12\x18\n\x10parentDetailsUrl\x18\x01 \x01(\t\x12\x14\n\x0c\x65pisodeIndex\x18\x02 \x01(\x05\x12\x13\n\x0breleaseDate\x18\x03 \x01(\t\"j\n\x0fTvSeasonDetails\x12\x18\n\x10parentDetailsUrl\x18\x01 \x01(\t\x12\x13\n\x0bseasonIndex\x18\x02 \x01(\x05\x12\x13\n\x0breleaseDate\x18\x03 \x01(\t\x12\x13\n\x0b\x62roadcaster\x18\x04 \x01(\t\"]\n\rTvShowDetails\x12\x13\n\x0bseasonCount\x18\x01 \x01(\x05\x12\x11\n\tstartYear\x18\x02 \x01(\x05\x12\x0f\n\x07\x65ndYear\x18\x03 \x01(\x05\x12\x13\n\x0b\x62roadcaster\x18\x04 \x01(\t\"?\n\x0bVideoCredit\x12\x12\n\ncreditType\x18\x01 \x01(\x05\x12\x0e\n\x06\x63redit\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x03(\t\"\xdb\x01\n\x0cVideoDetails\x12\x1c\n\x06\x63redit\x18\x01 \x03(\x0b\x32\x0c.VideoCredit\x12\x10\n\x08\x64uration\x18\x02 \x01(\t\x12\x13\n\x0breleaseDate\x18\x03 \x01(\t\x12\x15\n\rcontentRating\x18\x04 \x01(\t\x12\r\n\x05likes\x18\x05 \x01(\x03\x12\x10\n\x08\x64islikes\x18\x06 \x01(\x03\x12\r\n\x05genre\x18\x07 \x03(\t\x12\x19\n\x07trailer\x18\x08 \x03(\x0b\x32\x08.Trailer\x12$\n\nrentalTerm\x18\t \x03(\x0b\x32\x10.VideoRentalTerm\"\xa0\x01\n\x0fVideoRentalTerm\x12\x11\n\tofferType\x18\x01 \x01(\x05\x12\x19\n\x11offerAbbreviation\x18\x02 \x01(\t\x12\x14\n\x0crentalHeader\x18\x03 \x01(\t\x12#\n\x04term\x18\x04 \x03(\n2\x15.VideoRentalTerm.Term\x1a$\n\x04Term\x12\x0e\n\x06header\x18\x05 \x01(\t\x12\x0c\n\x04\x62ody\x18\x06 \x01(\t\"\xf9\x01\n\x06\x42ucket\x12\x18\n\x08\x64ocument\x18\x01 \x03(\x0b\x32\x06.DocV1\x12\x13\n\x0bmultiCorpus\x18\x02 \x01(\x08\x12\r\n\x05title\x18\x03 \x01(\t\x12\x0f\n\x07iconUrl\x18\x04 \x01(\t\x12\x17\n\x0f\x66ullContentsUrl\x18\x05 \x01(\t\x12\x11\n\trelevance\x18\x06 \x01(\x01\x12\x18\n\x10\x65stimatedResults\x18\x07 \x01(\x03\x12\x17\n\x0f\x61nalyticsCookie\x18\x08 \x01(\t\x12\x1b\n\x13\x66ullContentsListUrl\x18\t \x01(\t\x12\x13\n\x0bnextPageUrl\x18\n \x01(\t\x12\x0f\n\x07ordered\x18\x0b \x01(\x08\"<\n\x0cListResponse\x12\x17\n\x06\x62ucket\x18\x01 \x03(\x0b\x32\x07.Bucket\x12\x13\n\x03\x64oc\x18\x02 \x03(\x0b\x32\x06.DocV2\"\x94\x03\n\x05\x44ocV1\x12\x1c\n\tfinskyDoc\x18\x01 \x01(\x0b\x32\t.Document\x12\r\n\x05\x64ocid\x18\x02 \x01(\t\x12\x12\n\ndetailsUrl\x18\x03 \x01(\t\x12\x12\n\nreviewsUrl\x18\x04 \x01(\t\x12\x16\n\x0erelatedListUrl\x18\x05 \x01(\t\x12\x15\n\rmoreByListUrl\x18\x06 \x01(\t\x12\x10\n\x08shareUrl\x18\x07 \x01(\t\x12\x0f\n\x07\x63reator\x18\x08 \x01(\t\x12!\n\x07\x64\x65tails\x18\t \x01(\x0b\x32\x10.DocumentDetails\x12\x17\n\x0f\x64\x65scriptionHtml\x18\n \x01(\t\x12\x18\n\x10relatedBrowseUrl\x18\x0b \x01(\t\x12\x17\n\x0fmoreByBrowseUrl\x18\x0c \x01(\t\x12\x15\n\rrelatedHeader\x18\r \x01(\t\x12\x14\n\x0cmoreByHeader\x18\x0e \x01(\t\x12\r\n\x05title\x18\x0f \x01(\t\x12!\n\x0bplusOneData\x18\x10 \x01(\x0b\x32\x0c.PlusOneData\x12\x16\n\x0ewarningMessage\x18\x11 \x01(\t\"\xcd\x04\n\x0b\x41nnotations\x12(\n\x0esectionRelated\x18\x01 \x01(\x0b\x32\x10.SectionMetadata\x12\'\n\rsectionMoreBy\x18\x02 \x01(\x0b\x32\x10.SectionMetadata\x12!\n\x0bplusOneData\x18\x03 \x01(\x0b\x32\x0c.PlusOneData\x12\x19\n\x07warning\x18\x04 \x03(\x0b\x32\x08.Warning\x12+\n\x11sectionBodyOfWork\x18\x05 \x01(\x0b\x32\x10.SectionMetadata\x12,\n\x12sectionCoreContent\x18\x06 \x01(\x0b\x32\x10.SectionMetadata\x12\x1b\n\x08template\x18\x07 \x01(\x0b\x32\t.Template\x12\x1f\n\x0f\x62\x61\x64geForCreator\x18\x08 \x03(\x0b\x32\x06.Badge\x12\x1b\n\x0b\x62\x61\x64geForDoc\x18\t \x03(\x0b\x32\x06.Badge\x12\x13\n\x04link\x18\n \x01(\x0b\x32\x05.Link\x12*\n\x10sectionCrossSell\x18\x0b \x01(\x0b\x32\x10.SectionMetadata\x12/\n\x15sectionRelatedDocType\x18\x0c \x01(\x0b\x32\x10.SectionMetadata\x12!\n\x0bpromotedDoc\x18\r \x03(\x0b\x32\x0c.PromotedDoc\x12\x11\n\tofferNote\x18\x0e \x01(\t\x12\x1c\n\x0csubscription\x18\x10 \x03(\x0b\x32\x06.DocV2\x12\x17\n\x06reason\x18\x11 \x01(\x0b\x32\x07.Reason\x12\x18\n\x10privacyPolicyUrl\x18\x12 \x01(\t\"\xa8\x04\n\x05\x44ocV2\x12\r\n\x05\x64ocid\x18\x01 \x01(\t\x12\x14\n\x0c\x62\x61\x63kendDocid\x18\x02 \x01(\t\x12\x0f\n\x07\x64ocType\x18\x03 \x01(\x05\x12\x11\n\tbackendId\x18\x04 \x01(\x05\x12\r\n\x05title\x18\x05 \x01(\t\x12\x0f\n\x07\x63reator\x18\x06 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x07 \x01(\t\x12\x15\n\x05offer\x18\x08 \x03(\x0b\x32\x06.Offer\x12#\n\x0c\x61vailability\x18\t \x01(\x0b\x32\r.Availability\x12\x15\n\x05image\x18\n \x03(\x0b\x32\x06.Image\x12\x15\n\x05\x63hild\x18\x0b \x03(\x0b\x32\x06.DocV2\x12-\n\x11\x63ontainerMetadata\x18\x0c \x01(\x0b\x32\x12.ContainerMetadata\x12!\n\x07\x64\x65tails\x18\r \x01(\x0b\x32\x10.DocumentDetails\x12)\n\x0f\x61ggregateRating\x18\x0e \x01(\x0b\x32\x10.AggregateRating\x12!\n\x0b\x61nnotations\x18\x0f \x01(\x0b\x32\x0c.Annotations\x12\x12\n\ndetailsUrl\x18\x10 \x01(\t\x12\x10\n\x08shareUrl\x18\x11 \x01(\t\x12\x12\n\nreviewsUrl\x18\x12 \x01(\t\x12\x12\n\nbackendUrl\x18\x13 \x01(\t\x12\x1a\n\x12purchaseDetailsUrl\x18\x14 \x01(\t\x12\x17\n\x0f\x64\x65tailsReusable\x18\x15 \x01(\x08\x12\x10\n\x08subtitle\x18\x16 \x01(\t\"\x99\x01\n\x17\x45ncryptedSubscriberInfo\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\t\x12\x14\n\x0c\x65ncryptedKey\x18\x02 \x01(\t\x12\x11\n\tsignature\x18\x03 \x01(\t\x12\x12\n\ninitVector\x18\x04 \x01(\t\x12\x18\n\x10googleKeyVersion\x18\x05 \x01(\x05\x12\x19\n\x11\x63\x61rrierKeyVersion\x18\x06 \x01(\x05\"\xbd\x03\n\x0c\x41vailability\x12\x13\n\x0brestriction\x18\x05 \x01(\x05\x12\x11\n\tofferType\x18\x06 \x01(\x05\x12\x13\n\x04rule\x18\x07 \x01(\x0b\x32\x05.Rule\x12X\n perdeviceavailabilityrestriction\x18\t \x03(\n2..Availability.PerDeviceAvailabilityRestriction\x12\x18\n\x10\x61vailableIfOwned\x18\r \x01(\x08\x12\x19\n\x07install\x18\x0e \x03(\x0b\x32\x08.Install\x12)\n\nfilterInfo\x18\x10 \x01(\x0b\x32\x15.FilterEvaluationInfo\x12%\n\rownershipInfo\x18\x11 \x01(\x0b\x32\x0e.OwnershipInfo\x1a\x8e\x01\n PerDeviceAvailabilityRestriction\x12\x11\n\tandroidId\x18\n \x01(\x06\x12\x19\n\x11\x64\x65viceRestriction\x18\x0b \x01(\x05\x12\x11\n\tchannelId\x18\x0c \x01(\x03\x12)\n\nfilterInfo\x18\x0f \x01(\x0b\x32\x15.FilterEvaluationInfo\"?\n\x14\x46ilterEvaluationInfo\x12\'\n\x0eruleEvaluation\x18\x01 \x03(\x0b\x32\x0f.RuleEvaluation\"\xd4\x01\n\x04Rule\x12\x0e\n\x06negate\x18\x01 \x01(\x08\x12\x10\n\x08operator\x18\x02 \x01(\x05\x12\x0b\n\x03key\x18\x03 \x01(\x05\x12\x11\n\tstringArg\x18\x04 \x03(\t\x12\x0f\n\x07longArg\x18\x05 \x03(\x03\x12\x11\n\tdoubleArg\x18\x06 \x03(\x01\x12\x16\n\x07subrule\x18\x07 \x03(\x0b\x32\x05.Rule\x12\x14\n\x0cresponseCode\x18\x08 \x01(\x05\x12\x0f\n\x07\x63omment\x18\t \x01(\t\x12\x15\n\rstringArgHash\x18\n \x03(\x06\x12\x10\n\x08\x63onstArg\x18\x0b \x03(\x05\"\x8d\x01\n\x0eRuleEvaluation\x12\x13\n\x04rule\x18\x01 \x01(\x0b\x32\x05.Rule\x12\x19\n\x11\x61\x63tualStringValue\x18\x02 \x03(\t\x12\x17\n\x0f\x61\x63tualLongValue\x18\x03 \x03(\x03\x12\x17\n\x0f\x61\x63tualBoolValue\x18\x04 \x03(\x08\x12\x19\n\x11\x61\x63tualDoubleValue\x18\x05 \x03(\x01\"v\n\x11LibraryAppDetails\x12\x17\n\x0f\x63\x65rtificateHash\x18\x02 \x01(\t\x12\"\n\x1arefundTimeoutTimestampMsec\x18\x03 \x01(\x03\x12$\n\x1cpostDeliveryRefundWindowMsec\x18\x04 \x01(\x03\"\xc4\x01\n\x0fLibraryMutation\x12\x15\n\x05\x64ocid\x18\x01 \x01(\x0b\x32\x06.Docid\x12\x11\n\tofferType\x18\x02 \x01(\x05\x12\x14\n\x0c\x64ocumentHash\x18\x03 \x01(\x03\x12\x0f\n\x07\x64\x65leted\x18\x04 \x01(\x08\x12&\n\nappDetails\x18\x05 \x01(\x0b\x32\x12.LibraryAppDetails\x12\x38\n\x13subscriptionDetails\x18\x06 \x01(\x0b\x32\x1b.LibrarySubscriptionDetails\"\x95\x01\n\x1aLibrarySubscriptionDetails\x12\x1f\n\x17initiationTimestampMsec\x18\x01 \x01(\x03\x12\x1f\n\x17validUntilTimestampMsec\x18\x02 \x01(\x03\x12\x14\n\x0c\x61utoRenewing\x18\x03 \x01(\x08\x12\x1f\n\x17trialUntilTimestampMsec\x18\x04 \x01(\x03\"\x8c\x01\n\rLibraryUpdate\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x0e\n\x06\x63orpus\x18\x02 \x01(\x05\x12\x13\n\x0bserverToken\x18\x03 \x01(\x0c\x12\"\n\x08mutation\x18\x04 \x03(\x0b\x32\x10.LibraryMutation\x12\x0f\n\x07hasMore\x18\x05 \x01(\x08\x12\x11\n\tlibraryId\x18\x06 \x01(\t\"c\n\x12\x43lientLibraryState\x12\x0e\n\x06\x63orpus\x18\x01 \x01(\x05\x12\x13\n\x0bserverToken\x18\x02 \x01(\x0c\x12\x13\n\x0bhashCodeSum\x18\x03 \x01(\x03\x12\x13\n\x0blibrarySize\x18\x04 \x01(\x05\"F\n\x19LibraryReplicationRequest\x12)\n\x0clibraryState\x18\x01 \x03(\x0b\x32\x13.ClientLibraryState\"<\n\x1aLibraryReplicationResponse\x12\x1e\n\x06update\x18\x01 \x03(\x0b\x32\x0e.LibraryUpdate\"l\n\rClickLogEvent\x12\x11\n\teventTime\x18\x01 \x01(\x03\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06listId\x18\x03 \x01(\t\x12\x13\n\x0breferrerUrl\x18\x04 \x01(\t\x12\x16\n\x0ereferrerListId\x18\x05 \x01(\t\"0\n\nLogRequest\x12\"\n\nclickEvent\x18\x01 \x03(\x0b\x32\x0e.ClickLogEvent\"\r\n\x0bLogResponse\"B\n\x1a\x41ndroidAppNotificationData\x12\x13\n\x0bversionCode\x18\x01 \x01(\x05\x12\x0f\n\x07\x61ssetId\x18\x02 \x01(\t\"M\n\x15InAppNotificationData\x12\x17\n\x0f\x63heckoutOrderId\x18\x01 \x01(\t\x12\x1b\n\x13inAppNotificationId\x18\x02 \x01(\t\"#\n\x10LibraryDirtyData\x12\x0f\n\x07\x62\x61\x63kend\x18\x01 \x01(\x05\"\x97\x04\n\x0cNotification\x12\x18\n\x10notificationType\x18\x01 \x01(\x05\x12\x11\n\ttimestamp\x18\x03 \x01(\x03\x12\x15\n\x05\x64ocid\x18\x04 \x01(\x0b\x32\x06.Docid\x12\x10\n\x08\x64ocTitle\x18\x05 \x01(\t\x12\x11\n\tuserEmail\x18\x06 \x01(\t\x12,\n\x07\x61ppData\x18\x07 \x01(\x0b\x32\x1b.AndroidAppNotificationData\x12\x30\n\x0f\x61ppDeliveryData\x18\x08 \x01(\x0b\x32\x17.AndroidAppDeliveryData\x12\x31\n\x13purchaseRemovalData\x18\t \x01(\x0b\x32\x14.PurchaseRemovalData\x12\x33\n\x14userNotificationData\x18\n \x01(\x0b\x32\x15.UserNotificationData\x12\x35\n\x15inAppNotificationData\x18\x0b \x01(\x0b\x32\x16.InAppNotificationData\x12\x33\n\x14purchaseDeclinedData\x18\x0c \x01(\x0b\x32\x15.PurchaseDeclinedData\x12\x16\n\x0enotificationId\x18\r \x01(\t\x12%\n\rlibraryUpdate\x18\x0e \x01(\x0b\x32\x0e.LibraryUpdate\x12+\n\x10libraryDirtyData\x18\x0f \x01(\x0b\x32\x11.LibraryDirtyData\"@\n\x14PurchaseDeclinedData\x12\x0e\n\x06reason\x18\x01 \x01(\x05\x12\x18\n\x10showNotification\x18\x02 \x01(\x08\"(\n\x13PurchaseRemovalData\x12\x11\n\tmalicious\x18\x01 \x01(\x08\"\x88\x01\n\x14UserNotificationData\x12\x19\n\x11notificationTitle\x18\x01 \x01(\t\x12\x18\n\x10notificationText\x18\x02 \x01(\t\x12\x12\n\ntickerText\x18\x03 \x01(\t\x12\x13\n\x0b\x64ialogTitle\x18\x04 \x01(\t\x12\x12\n\ndialogText\x18\x05 \x01(\t\"\x11\n\x0fPlusOneResponse\"\x1e\n\x1cRateSuggestedContentResponse\"\xa7\x02\n\x0f\x41ggregateRating\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x12\n\nstarRating\x18\x02 \x01(\x02\x12\x14\n\x0cratingsCount\x18\x03 \x01(\x04\x12\x16\n\x0eoneStarRatings\x18\x04 \x01(\x04\x12\x16\n\x0etwoStarRatings\x18\x05 \x01(\x04\x12\x18\n\x10threeStarRatings\x18\x06 \x01(\x04\x12\x17\n\x0f\x66ourStarRatings\x18\x07 \x01(\x04\x12\x17\n\x0f\x66iveStarRatings\x18\x08 \x01(\x04\x12\x15\n\rthumbsUpCount\x18\t \x01(\x04\x12\x17\n\x0fthumbsDownCount\x18\n \x01(\x04\x12\x14\n\x0c\x63ommentCount\x18\x0b \x01(\x04\x12\x1a\n\x12\x62\x61yesianMeanRating\x18\x0c \x01(\x01\"c\n\x0e\x44irectPurchase\x12\x12\n\ndetailsUrl\x18\x01 \x01(\t\x12\x15\n\rpurchaseDocid\x18\x02 \x01(\t\x12\x13\n\x0bparentDocid\x18\x03 \x01(\t\x12\x11\n\tofferType\x18\x04 \x01(\x05\"\x89\x01\n\x13ResolveLinkResponse\x12\x12\n\ndetailsUrl\x18\x01 \x01(\t\x12\x11\n\tbrowseUrl\x18\x02 \x01(\t\x12\x11\n\tsearchUrl\x18\x03 \x01(\t\x12\'\n\x0e\x64irectPurchase\x18\x04 \x01(\x0b\x32\x0f.DirectPurchase\x12\x0f\n\x07homeUrl\x18\x05 \x01(\t\"\xb5\t\n\x07Payload\x12#\n\x0clistResponse\x18\x01 \x01(\x0b\x32\r.ListResponse\x12)\n\x0f\x64\x65tailsResponse\x18\x02 \x01(\x0b\x32\x10.DetailsResponse\x12\'\n\x0ereviewResponse\x18\x03 \x01(\x0b\x32\x0f.ReviewResponse\x12!\n\x0b\x62uyResponse\x18\x04 \x01(\x0b\x32\x0c.BuyResponse\x12\'\n\x0esearchResponse\x18\x05 \x01(\x0b\x32\x0f.SearchResponse\x12!\n\x0btocResponse\x18\x06 \x01(\x0b\x32\x0c.TocResponse\x12\'\n\x0e\x62rowseResponse\x18\x07 \x01(\x0b\x32\x0f.BrowseResponse\x12\x37\n\x16purchaseStatusResponse\x18\x08 \x01(\x0b\x32\x17.PurchaseStatusResponse\x12;\n\x18updateInstrumentResponse\x18\t \x01(\x0b\x32\x19.UpdateInstrumentResponse\x12!\n\x0blogResponse\x18\n \x01(\x0b\x32\x0c.LogResponse\x12\x39\n\x17\x63heckInstrumentResponse\x18\x0b \x01(\x0b\x32\x18.CheckInstrumentResponse\x12)\n\x0fplusOneResponse\x18\x0c \x01(\x0b\x32\x10.PlusOneResponse\x12\x31\n\x13\x66lagContentResponse\x18\r \x01(\x0b\x32\x14.FlagContentResponse\x12\x39\n\x17\x61\x63kNotificationResponse\x18\x0e \x01(\x0b\x32\x18.AckNotificationResponse\x12\x41\n\x1binitiateAssociationResponse\x18\x0f \x01(\x0b\x32\x1c.InitiateAssociationResponse\x12=\n\x19verifyAssociationResponse\x18\x10 \x01(\x0b\x32\x1a.VerifyAssociationResponse\x12?\n\x1alibraryReplicationResponse\x18\x11 \x01(\x0b\x32\x1b.LibraryReplicationResponse\x12\'\n\x0erevokeResponse\x18\x12 \x01(\x0b\x32\x0f.RevokeResponse\x12\x31\n\x13\x62ulkDetailsResponse\x18\x13 \x01(\x0b\x32\x14.BulkDetailsResponse\x12\x31\n\x13resolveLinkResponse\x18\x14 \x01(\x0b\x32\x14.ResolveLinkResponse\x12+\n\x10\x64\x65liveryResponse\x18\x15 \x01(\x0b\x32\x11.DeliveryResponse\x12-\n\x11\x61\x63\x63\x65ptTosResponse\x18\x16 \x01(\x0b\x32\x12.AcceptTosResponse\x12\x43\n\x1crateSuggestedContentResponse\x18\x17 \x01(\x0b\x32\x1d.RateSuggestedContentResponse\x12\x39\n\x17\x63heckPromoOfferResponse\x18\x18 \x01(\x0b\x32\x18.CheckPromoOfferResponse\"U\n\x08PreFetch\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x10\n\x08response\x18\x02 \x01(\x0c\x12\x0c\n\x04\x65tag\x18\x03 \x01(\t\x12\x0b\n\x03ttl\x18\x04 \x01(\x03\x12\x0f\n\x07softTtl\x18\x05 \x01(\x03\"\x91\x01\n\x0fResponseWrapper\x12\x19\n\x07payload\x18\x01 \x01(\x0b\x32\x08.Payload\x12!\n\x08\x63ommands\x18\x02 \x01(\x0b\x32\x0f.ServerCommands\x12\x1b\n\x08preFetch\x18\x03 \x03(\x0b\x32\t.PreFetch\x12#\n\x0cnotification\x18\x04 \x03(\x0b\x32\r.Notification\"]\n\x0eServerCommands\x12\x12\n\nclearCache\x18\x01 \x01(\x08\x12\x1b\n\x13\x64isplayErrorMessage\x18\x02 \x01(\t\x12\x1a\n\x12logErrorStacktrace\x18\x03 \x01(\t\"D\n\x12GetReviewsResponse\x12\x17\n\x06review\x18\x01 \x03(\x0b\x32\x07.Review\x12\x15\n\rmatchingCount\x18\x02 \x01(\x03\"\xf3\x01\n\x06Review\x12\x12\n\nauthorName\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06source\x18\x03 \x01(\t\x12\x17\n\x0f\x64ocumentVersion\x18\x04 \x01(\t\x12\x15\n\rtimestampMsec\x18\x05 \x01(\x03\x12\x12\n\nstarRating\x18\x06 \x01(\x05\x12\r\n\x05title\x18\x07 \x01(\t\x12\x0f\n\x07\x63omment\x18\x08 \x01(\t\x12\x11\n\tcommentId\x18\t \x01(\t\x12\x12\n\ndeviceName\x18\x13 \x01(\t\x12\x11\n\treplyText\x18\x1d \x01(\t\x12\x1a\n\x12replyTimestampMsec\x18\x1e \x01(\x03\"O\n\x0eReviewResponse\x12(\n\x0bgetResponse\x18\x01 \x01(\x0b\x32\x13.GetReviewsResponse\x12\x13\n\x0bnextPageUrl\x18\x02 \x01(\t\"7\n\x0eRevokeResponse\x12%\n\rlibraryUpdate\x18\x01 \x01(\x0b\x32\x0e.LibraryUpdate\"g\n\rRelatedSearch\x12\x11\n\tsearchUrl\x18\x01 \x01(\t\x12\x0e\n\x06header\x18\x02 \x01(\t\x12\x11\n\tbackendId\x18\x03 \x01(\x05\x12\x0f\n\x07\x64ocType\x18\x04 \x01(\x05\x12\x0f\n\x07\x63urrent\x18\x05 \x01(\x08\"\xac\x01\n\x0eSearchResponse\x12\x15\n\roriginalQuery\x18\x01 \x01(\t\x12\x16\n\x0esuggestedQuery\x18\x02 \x01(\t\x12\x16\n\x0e\x61ggregateQuery\x18\x03 \x01(\x08\x12\x17\n\x06\x62ucket\x18\x04 \x03(\x0b\x32\x07.Bucket\x12\x13\n\x03\x64oc\x18\x05 \x03(\x0b\x32\x06.DocV2\x12%\n\rrelatedSearch\x18\x06 \x03(\x0b\x32\x0e.RelatedSearch\"X\n\x0e\x43orpusMetadata\x12\x0f\n\x07\x62\x61\x63kend\x18\x01 \x01(\x05\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nlandingUrl\x18\x03 \x01(\t\x12\x13\n\x0blibraryName\x18\x04 \x01(\t\"#\n\x0b\x45xperiments\x12\x14\n\x0c\x65xperimentId\x18\x01 \x03(\t\"\x8c\x02\n\x0bTocResponse\x12\x1f\n\x06\x63orpus\x18\x01 \x03(\x0b\x32\x0f.CorpusMetadata\x12\x1c\n\x14tosVersionDeprecated\x18\x02 \x01(\x05\x12\x12\n\ntosContent\x18\x03 \x01(\t\x12\x0f\n\x07homeUrl\x18\x04 \x01(\t\x12!\n\x0b\x65xperiments\x18\x05 \x01(\x0b\x32\x0c.Experiments\x12&\n\x1etosCheckboxTextMarketingEmails\x18\x06 \x01(\t\x12\x10\n\x08tosToken\x18\x07 \x01(\t\x12#\n\x0cuserSettings\x18\x08 \x01(\x0b\x32\r.UserSettings\x12\x17\n\x0ficonOverrideUrl\x18\t \x01(\t\"9\n\x0cUserSettings\x12)\n!tosCheckboxMarketingEmailsOptedIn\x18\x01 \x01(\x08\"\x13\n\x11\x41\x63\x63\x65ptTosResponse\"~\n\x1c\x41\x63kNotificationsRequestProto\x12\x16\n\x0enotificationId\x18\x01 \x03(\t\x12*\n\rsignatureHash\x18\x02 \x01(\x0b\x32\x13.SignatureHashProto\x12\x1a\n\x12nackNotificationId\x18\x03 \x03(\t\"\x1f\n\x1d\x41\x63kNotificationsResponseProto\"\x9f\x01\n\x0c\x41\x64\x64ressProto\x12\x10\n\x08\x61\x64\x64ress1\x18\x01 \x01(\t\x12\x10\n\x08\x61\x64\x64ress2\x18\x02 \x01(\t\x12\x0c\n\x04\x63ity\x18\x03 \x01(\t\x12\r\n\x05state\x18\x04 \x01(\t\x12\x12\n\npostalCode\x18\x05 \x01(\t\x12\x0f\n\x07\x63ountry\x18\x06 \x01(\t\x12\x0c\n\x04name\x18\x07 \x01(\t\x12\x0c\n\x04type\x18\x08 \x01(\t\x12\r\n\x05phone\x18\t \x01(\t\"*\n\x0c\x41ppDataProto\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"<\n\x12\x41ppSuggestionProto\x12&\n\tassetInfo\x18\x01 \x01(\x0b\x32\x13.ExternalAssetProto\"Q\n\x14\x41ssetIdentifierProto\x12\x13\n\x0bpackageName\x18\x01 \x01(\t\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0f\n\x07\x61ssetId\x18\x03 \x01(\t\"\x8c\x03\n\x12\x41ssetsRequestProto\x12\x11\n\tassetType\x18\x01 \x01(\x05\x12\r\n\x05query\x18\x02 \x01(\t\x12\x12\n\ncategoryId\x18\x03 \x01(\t\x12\x0f\n\x07\x61ssetId\x18\x04 \x03(\t\x12\x1e\n\x16retrieveVendingHistory\x18\x05 \x01(\x08\x12\x1c\n\x14retrieveExtendedInfo\x18\x06 \x01(\x08\x12\x11\n\tsortOrder\x18\x07 \x01(\x05\x12\x12\n\nstartIndex\x18\x08 \x01(\x03\x12\x12\n\nnumEntries\x18\t \x01(\x03\x12\x12\n\nviewFilter\x18\n \x01(\x05\x12\x13\n\x0brankingType\x18\x0b \x01(\t\x12\x1e\n\x16retrieveCarrierChannel\x18\x0c \x01(\x08\x12\x1e\n\x16pendingDownloadAssetId\x18\r \x03(\t\x12!\n\x19reconstructVendingHistory\x18\x0e \x01(\x08\x12\x19\n\x11unfilteredResults\x18\x0f \x01(\x08\x12\x0f\n\x07\x62\x61\x64geId\x18\x10 \x03(\t\"\xd0\x01\n\x13\x41ssetsResponseProto\x12\"\n\x05\x61sset\x18\x01 \x03(\x0b\x32\x13.ExternalAssetProto\x12\x17\n\x0fnumTotalEntries\x18\x02 \x01(\x03\x12\x16\n\x0e\x63orrectedQuery\x18\x03 \x01(\t\x12%\n\x08\x61ltAsset\x18\x04 \x03(\x0b\x32\x13.ExternalAssetProto\x12\x1b\n\x13numCorrectedEntries\x18\x05 \x01(\x03\x12\x0e\n\x06header\x18\x06 \x01(\t\x12\x10\n\x08listType\x18\x07 \x01(\x05\"\xbb\x01\n\x18\x42illingEventRequestProto\x12\x11\n\teventType\x18\x01 \x01(\x05\x12\x1b\n\x13\x62illingParametersId\x18\x02 \x01(\t\x12\x15\n\rresultSuccess\x18\x03 \x01(\x08\x12\x15\n\rclientMessage\x18\x04 \x01(\t\x12\x41\n\x11\x63\x61rrierInstrument\x18\x05 \x01(\x0b\x32&.ExternalCarrierBillingInstrumentProto\"\x1b\n\x19\x42illingEventResponseProto\"\xbc\x03\n\x15\x42illingParameterProto\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06mncMcc\x18\x03 \x03(\t\x12\x12\n\nbackendUrl\x18\x04 \x03(\t\x12\x0e\n\x06iconId\x18\x05 \x01(\t\x12\x1d\n\x15\x62illingInstrumentType\x18\x06 \x01(\x05\x12\x15\n\rapplicationId\x18\x07 \x01(\t\x12\x0e\n\x06tosUrl\x18\x08 \x01(\t\x12\x1d\n\x15instrumentTosRequired\x18\t \x01(\x08\x12\x12\n\napiVersion\x18\n \x01(\x05\x12)\n!perTransactionCredentialsRequired\x18\x0b \x01(\x08\x12\x32\n*sendSubscriberIdWithCarrierBillingRequests\x18\x0c \x01(\x08\x12\x1f\n\x17\x64\x65viceAssociationMethod\x18\r \x01(\x05\x12\x1f\n\x17userTokenRequestMessage\x18\x0e \x01(\t\x12\x1f\n\x17userTokenRequestAddress\x18\x0f \x01(\t\x12\x1a\n\x12passphraseRequired\x18\x10 \x01(\x08\"Q\n\x1e\x43\x61rrierBillingCredentialsProto\x12\x13\n\x0b\x63redentials\x18\x01 \x01(\t\x12\x1a\n\x12\x63redentialsTimeout\x18\x02 \x01(\x03\"\xff\x01\n\rCategoryProto\x12\x11\n\tassetType\x18\x02 \x01(\x05\x12\x12\n\ncategoryId\x18\x03 \x01(\t\x12\x17\n\x0f\x63\x61tegoryDisplay\x18\x04 \x01(\t\x12\x18\n\x10\x63\x61tegorySubtitle\x18\x05 \x01(\t\x12\x19\n\x11promotedAssetsNew\x18\x06 \x03(\t\x12\x1a\n\x12promotedAssetsHome\x18\x07 \x03(\t\x12%\n\rsubCategories\x18\x08 \x03(\x0b\x32\x0e.CategoryProto\x12\x1a\n\x12promotedAssetsPaid\x18\t \x03(\t\x12\x1a\n\x12promotedAssetsFree\x18\n \x03(\t\":\n!CheckForNotificationsRequestProto\x12\x15\n\ralarmDuration\x18\x01 \x01(\x03\"$\n\"CheckForNotificationsResponseProto\"S\n\x18\x43heckLicenseRequestProto\x12\x13\n\x0bpackageName\x18\x01 \x01(\t\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\r\n\x05nonce\x18\x03 \x01(\x03\"X\n\x19\x43heckLicenseResponseProto\x12\x14\n\x0cresponseCode\x18\x01 \x01(\x05\x12\x12\n\nsignedData\x18\x02 \x01(\t\x12\x11\n\tsignature\x18\x03 \x01(\t\"\x87\x01\n\x14\x43ommentsRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x12\n\nstartIndex\x18\x02 \x01(\x03\x12\x12\n\nnumEntries\x18\x03 \x01(\x03\x12\x1f\n\x17shouldReturnSelfComment\x18\x04 \x01(\x08\x12\x15\n\rassetReferrer\x18\x05 \x01(\t\"\x84\x01\n\x15\x43ommentsResponseProto\x12&\n\x07\x63omment\x18\x01 \x03(\x0b\x32\x15.ExternalCommentProto\x12\x17\n\x0fnumTotalEntries\x18\x02 \x01(\x03\x12*\n\x0bselfComment\x18\x03 \x01(\x0b\x32\x15.ExternalCommentProto\"\xc0\x03\n\x17\x43ontentSyncRequestProto\x12\x13\n\x0bincremental\x18\x01 \x01(\x08\x12\x45\n\x11\x61ssetinstallstate\x18\x02 \x03(\n2*.ContentSyncRequestProto.AssetInstallState\x12\x35\n\tsystemapp\x18\n \x03(\n2\".ContentSyncRequestProto.SystemApp\x12\x1a\n\x12sideloadedAppCount\x18\x0e \x01(\x05\x1a\xa5\x01\n\x11\x41ssetInstallState\x12\x0f\n\x07\x61ssetId\x18\x03 \x01(\t\x12\x12\n\nassetState\x18\x04 \x01(\x05\x12\x13\n\x0binstallTime\x18\x05 \x01(\x03\x12\x15\n\runinstallTime\x18\x06 \x01(\x03\x12\x13\n\x0bpackageName\x18\x07 \x01(\t\x12\x13\n\x0bversionCode\x18\x08 \x01(\x05\x12\x15\n\rassetReferrer\x18\t \x01(\t\x1aN\n\tSystemApp\x12\x13\n\x0bpackageName\x18\x0b \x01(\t\x12\x13\n\x0bversionCode\x18\x0c \x01(\x05\x12\x17\n\x0f\x63\x65rtificateHash\x18\r \x03(\t\"7\n\x18\x43ontentSyncResponseProto\x12\x1b\n\x13numUpdatesAvailable\x18\x01 \x01(\x05\"D\n\x10\x44\x61taMessageProto\x12\x10\n\x08\x63\x61tegory\x18\x01 \x01(\t\x12\x1e\n\x07\x61ppData\x18\x03 \x03(\x0b\x32\r.AppDataProto\"P\n\x11\x44ownloadInfoProto\x12\x0f\n\x07\x61pkSize\x18\x01 \x01(\x03\x12*\n\x0e\x61\x64\x64itionalFile\x18\x02 \x03(\x0b\x32\x12.FileMetadataProto\"\xe6\n\n\x12\x45xternalAssetProto\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05title\x18\x02 \x01(\t\x12\x11\n\tassetType\x18\x03 \x01(\x05\x12\r\n\x05owner\x18\x04 \x01(\t\x12\x0f\n\x07version\x18\x05 \x01(\t\x12\r\n\x05price\x18\x06 \x01(\t\x12\x15\n\raverageRating\x18\x07 \x01(\t\x12\x12\n\nnumRatings\x18\x08 \x01(\x03\x12\x44\n\x13purchaseinformation\x18\t \x01(\n2\'.ExternalAssetProto.PurchaseInformation\x12\x36\n\x0c\x65xtendedinfo\x18\x0c \x01(\n2 .ExternalAssetProto.ExtendedInfo\x12\x0f\n\x07ownerId\x18\x16 \x01(\t\x12\x13\n\x0bpackageName\x18\x18 \x01(\t\x12\x13\n\x0bversionCode\x18\x19 \x01(\x05\x12\x14\n\x0c\x62undledAsset\x18\x1d \x01(\x08\x12\x15\n\rpriceCurrency\x18 \x01(\t\x12\x13\n\x0bpriceMicros\x18! \x01(\x03\x12\x14\n\x0c\x66ilterReason\x18# \x01(\t\x12\x19\n\x11\x61\x63tualSellerPrice\x18( \x01(\t\x12%\n\x08\x61ppBadge\x18/ \x03(\x0b\x32\x13.ExternalBadgeProto\x12\'\n\nownerBadge\x18\x30 \x03(\x0b\x32\x13.ExternalBadgeProto\x1a\x7f\n\x13PurchaseInformation\x12\x14\n\x0cpurchaseTime\x18\n \x01(\x03\x12\x19\n\x11refundTimeoutTime\x18\x0b \x01(\x03\x12\x19\n\x11refundStartPolicy\x18- \x01(\x05\x12\x1c\n\x14refundWindowDuration\x18. \x01(\x03\x1a\xca\x05\n\x0c\x45xtendedInfo\x12\x13\n\x0b\x64\x65scription\x18\r \x01(\t\x12\x15\n\rdownloadCount\x18\x0e \x01(\x03\x12\x1f\n\x17\x61pplicationPermissionId\x18\x0f \x03(\t\x12 \n\x18requiredInstallationSize\x18\x10 \x01(\x03\x12\x13\n\x0bpackageName\x18\x11 \x01(\t\x12\x10\n\x08\x63\x61tegory\x18\x12 \x01(\t\x12\x15\n\rforwardLocked\x18\x13 \x01(\x08\x12\x14\n\x0c\x63ontactEmail\x18\x14 \x01(\t\x12\x1b\n\x13\x65verInstalledByUser\x18\x15 \x01(\x08\x12\x1b\n\x13\x64ownloadCountString\x18\x17 \x01(\t\x12\x14\n\x0c\x63ontactPhone\x18\x1a \x01(\t\x12\x16\n\x0e\x63ontactWebsite\x18\x1b \x01(\t\x12\x1e\n\x16nextPurchaseRefundable\x18\x1c \x01(\x08\x12\x16\n\x0enumScreenshots\x18\x1e \x01(\x05\x12\x1e\n\x16promotionalDescription\x18\x1f \x01(\t\x12\x18\n\x10serverAssetState\x18\" \x01(\x05\x12\x1a\n\x12\x63ontentRatingLevel\x18$ \x01(\x05\x12\x1b\n\x13\x63ontentRatingString\x18% \x01(\t\x12\x15\n\rrecentChanges\x18& \x01(\t\x12M\n\x11packagedependency\x18\' \x03(\n22.ExternalAssetProto.ExtendedInfo.PackageDependency\x12\x11\n\tvideoLink\x18+ \x01(\t\x12(\n\x0c\x64ownloadInfo\x18\x31 \x01(\x0b\x32\x12.DownloadInfoProto\x1a\x41\n\x11PackageDependency\x12\x13\n\x0bpackageName\x18) \x01(\t\x12\x17\n\x0fskipPermissions\x18* \x01(\x08\"5\n\x17\x45xternalBadgeImageProto\x12\r\n\x05usage\x18\x01 \x01(\x05\x12\x0b\n\x03url\x18\x02 \x01(\t\"\x8a\x01\n\x12\x45xternalBadgeProto\x12\x16\n\x0elocalizedTitle\x18\x01 \x01(\t\x12\x1c\n\x14localizedDescription\x18\x02 \x01(\t\x12,\n\nbadgeImage\x18\x03 \x03(\x0b\x32\x18.ExternalBadgeImageProto\x12\x10\n\x08searchId\x18\x04 \x01(\t\"\xe0\x02\n%ExternalCarrierBillingInstrumentProto\x12\x15\n\rinstrumentKey\x18\x01 \x01(\t\x12\x1c\n\x14subscriberIdentifier\x18\x02 \x01(\t\x12\x13\n\x0b\x61\x63\x63ountType\x18\x03 \x01(\t\x12\x1a\n\x12subscriberCurrency\x18\x04 \x01(\t\x12\x18\n\x10transactionLimit\x18\x05 \x01(\x04\x12\x16\n\x0esubscriberName\x18\x06 \x01(\t\x12\x10\n\x08\x61\x64\x64ress1\x18\x07 \x01(\t\x12\x10\n\x08\x61\x64\x64ress2\x18\x08 \x01(\t\x12\x0c\n\x04\x63ity\x18\t \x01(\t\x12\r\n\x05state\x18\n \x01(\t\x12\x12\n\npostalCode\x18\x0b \x01(\t\x12\x0f\n\x07\x63ountry\x18\x0c \x01(\t\x12\x39\n\x17\x65ncryptedSubscriberInfo\x18\r \x01(\x0b\x32\x18.EncryptedSubscriberInfo\"r\n\x14\x45xternalCommentProto\x12\x0c\n\x04\x62ody\x18\x01 \x01(\t\x12\x0e\n\x06rating\x18\x02 \x01(\x05\x12\x13\n\x0b\x63reatorName\x18\x03 \x01(\t\x12\x14\n\x0c\x63reationTime\x18\x04 \x01(\x03\x12\x11\n\tcreatorId\x18\x05 \x01(\t\"\xfb\x01\n\x12\x45xternalCreditCard\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x12\n\nlastDigits\x18\x02 \x01(\t\x12\x0f\n\x07\x65xpYear\x18\x03 \x01(\x05\x12\x10\n\x08\x65xpMonth\x18\x04 \x01(\x05\x12\x12\n\npersonName\x18\x05 \x01(\t\x12\x13\n\x0b\x63ountryCode\x18\x06 \x01(\t\x12\x12\n\npostalCode\x18\x07 \x01(\t\x12\x13\n\x0bmakeDefault\x18\x08 \x01(\x08\x12\x10\n\x08\x61\x64\x64ress1\x18\t \x01(\t\x12\x10\n\x08\x61\x64\x64ress2\x18\n \x01(\t\x12\x0c\n\x04\x63ity\x18\x0b \x01(\t\x12\r\n\x05state\x18\x0c \x01(\t\x12\r\n\x05phone\x18\r \x01(\t\"\xb5\x01\n\x1d\x45xternalPaypalInstrumentProto\x12\x15\n\rinstrumentKey\x18\x01 \x01(\t\x12\x16\n\x0epreapprovalKey\x18\x02 \x01(\t\x12\x13\n\x0bpaypalEmail\x18\x03 \x01(\t\x12$\n\rpaypalAddress\x18\x04 \x01(\x0b\x32\r.AddressProto\x12*\n\"multiplePaypalInstrumentsSupported\x18\x05 \x01(\x08\"]\n\x11\x46ileMetadataProto\x12\x10\n\x08\x66ileType\x18\x01 \x01(\x05\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0c\n\x04size\x18\x03 \x01(\x03\x12\x13\n\x0b\x64ownloadUrl\x18\x04 \x01(\t\"Z\n\x1dGetAddressSnippetRequestProto\x12\x39\n\x17\x65ncryptedSubscriberInfo\x18\x01 \x01(\x0b\x32\x18.EncryptedSubscriberInfo\"8\n\x1eGetAddressSnippetResponseProto\x12\x16\n\x0e\x61\x64\x64ressSnippet\x18\x01 \x01(\t\"B\n\x14GetAssetRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x19\n\x11\x64irectDownloadKey\x18\x02 \x01(\t\"\xda\x03\n\x15GetAssetResponseProto\x12\x39\n\x0cinstallasset\x18\x01 \x01(\n2#.GetAssetResponseProto.InstallAsset\x12*\n\x0e\x61\x64\x64itionalFile\x18\x0f \x03(\x0b\x32\x12.FileMetadataProto\x1a\xd9\x02\n\x0cInstallAsset\x12\x0f\n\x07\x61ssetId\x18\x02 \x01(\t\x12\x11\n\tassetName\x18\x03 \x01(\t\x12\x11\n\tassetType\x18\x04 \x01(\t\x12\x14\n\x0c\x61ssetPackage\x18\x05 \x01(\t\x12\x0f\n\x07\x62lobUrl\x18\x06 \x01(\t\x12\x16\n\x0e\x61ssetSignature\x18\x07 \x01(\t\x12\x11\n\tassetSize\x18\x08 \x01(\x03\x12\x1b\n\x13refundTimeoutMillis\x18\t \x01(\x03\x12\x15\n\rforwardLocked\x18\n \x01(\x08\x12\x0f\n\x07secured\x18\x0b \x01(\x08\x12\x13\n\x0bversionCode\x18\x0c \x01(\x05\x12\x1e\n\x16\x64ownloadAuthCookieName\x18\r \x01(\t\x12\x1f\n\x17\x64ownloadAuthCookieValue\x18\x0e \x01(\t\x12%\n\x1dpostInstallRefundWindowMillis\x18\x10 \x01(\x03\"\x1c\n\x1aGetCarrierInfoRequestProto\"\xb8\x01\n\x1bGetCarrierInfoResponseProto\x12\x1d\n\x15\x63\x61rrierChannelEnabled\x18\x01 \x01(\x08\x12\x17\n\x0f\x63\x61rrierLogoIcon\x18\x02 \x01(\x0c\x12\x15\n\rcarrierBanner\x18\x03 \x01(\x0c\x12\x17\n\x0f\x63\x61rrierSubtitle\x18\x04 \x01(\t\x12\x14\n\x0c\x63\x61rrierTitle\x18\x05 \x01(\t\x12\x1b\n\x13\x63\x61rrierImageDensity\x18\x06 \x01(\x05\"6\n\x19GetCategoriesRequestProto\x12\x19\n\x11prefetchPromoData\x18\x01 \x01(\x08\"@\n\x1aGetCategoriesResponseProto\x12\"\n\ncategories\x18\x01 \x03(\x0b\x32\x0e.CategoryProto\"\xbb\x01\n\x14GetImageRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x12\n\nimageUsage\x18\x03 \x01(\x05\x12\x0f\n\x07imageId\x18\x04 \x01(\t\x12\x1b\n\x13screenPropertyWidth\x18\x05 \x01(\x05\x12\x1c\n\x14screenPropertyHeight\x18\x06 \x01(\x05\x12\x1d\n\x15screenPropertyDensity\x18\x07 \x01(\x05\x12\x13\n\x0bproductType\x18\x08 \x01(\x05\"@\n\x15GetImageResponseProto\x12\x11\n\timageData\x18\x01 \x01(\x0c\x12\x14\n\x0cimageDensity\x18\x02 \x01(\x05\"\xf4\x01\n\x1dGetMarketMetadataRequestProto\x12\x17\n\x0flastRequestTime\x18\x01 \x01(\x03\x12\x36\n\x13\x64\x65viceConfiguration\x18\x02 \x01(\x0b\x32\x19.DeviceConfigurationProto\x12\x15\n\rdeviceRoaming\x18\x03 \x01(\x08\x12\x1b\n\x13marketSignatureHash\x18\x04 \x03(\t\x12\x15\n\rcontentRating\x18\x05 \x01(\x05\x12\x17\n\x0f\x64\x65viceModelName\x18\x06 \x01(\t\x12\x1e\n\x16\x64\x65viceManufacturerName\x18\x07 \x01(\t\"\xb7\x02\n\x1eGetMarketMetadataResponseProto\x12\x1f\n\x17latestClientVersionCode\x18\x01 \x01(\x05\x12\x17\n\x0flatestClientUrl\x18\x02 \x01(\t\x12\x17\n\x0fpaidAppsEnabled\x18\x03 \x01(\x08\x12\x30\n\x10\x62illingParameter\x18\x04 \x03(\x0b\x32\x16.BillingParameterProto\x12\x1a\n\x12\x63ommentPostEnabled\x18\x05 \x01(\x08\x12\x1c\n\x14\x62illingEventsEnabled\x18\x06 \x01(\x08\x12\x16\n\x0ewarningMessage\x18\x07 \x01(\t\x12\x1b\n\x13inAppBillingEnabled\x18\x08 \x01(\x08\x12!\n\x19inAppBillingMaxApiVersion\x18\t \x01(\x05\"1\n\x1cGetSubCategoriesRequestProto\x12\x11\n\tassetType\x18\x01 \x01(\x05\"\xa2\x01\n\x1dGetSubCategoriesResponseProto\x12?\n\x0bsubcategory\x18\x01 \x03(\n2*.GetSubCategoriesResponseProto.SubCategory\x1a@\n\x0bSubCategory\x12\x1a\n\x12subCategoryDisplay\x18\x02 \x01(\t\x12\x15\n\rsubCategoryId\x18\x03 \x01(\t\"\xb0\x01\n$InAppPurchaseInformationRequestProto\x12*\n\rsignatureHash\x18\x01 \x01(\x0b\x32\x13.SignatureHashProto\x12\r\n\x05nonce\x18\x02 \x01(\x03\x12\x16\n\x0enotificationId\x18\x03 \x03(\t\x12\x1a\n\x12signatureAlgorithm\x18\x04 \x01(\t\x12\x19\n\x11\x62illingApiVersion\x18\x05 \x01(\x05\"\xbb\x01\n%InAppPurchaseInformationResponseProto\x12(\n\x0esignedResponse\x18\x01 \x01(\x0b\x32\x10.SignedDataProto\x12:\n\x15statusBarNotification\x18\x02 \x03(\x0b\x32\x1b.StatusBarNotificationProto\x12,\n\x0epurchaseResult\x18\x03 \x01(\x0b\x32\x14.PurchaseResultProto\"\x98\x01\n$InAppRestoreTransactionsRequestProto\x12*\n\rsignatureHash\x18\x01 \x01(\x0b\x32\x13.SignatureHashProto\x12\r\n\x05nonce\x18\x02 \x01(\x03\x12\x1a\n\x12signatureAlgorithm\x18\x03 \x01(\t\x12\x19\n\x11\x62illingApiVersion\x18\x04 \x01(\x05\"\x7f\n%InAppRestoreTransactionsResponseProto\x12(\n\x0esignedResponse\x18\x01 \x01(\x0b\x32\x10.SignedDataProto\x12,\n\x0epurchaseResult\x18\x02 \x01(\x0b\x32\x14.PurchaseResultProto\"\xba\x01\n\x19ModifyCommentRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12&\n\x07\x63omment\x18\x02 \x01(\x0b\x32\x15.ExternalCommentProto\x12\x15\n\rdeleteComment\x18\x03 \x01(\x08\x12\x11\n\tflagAsset\x18\x04 \x01(\x08\x12\x10\n\x08\x66lagType\x18\x05 \x01(\x05\x12\x13\n\x0b\x66lagMessage\x18\x06 \x01(\t\x12\x13\n\x0bnonFlagFlow\x18\x07 \x01(\x08\"\x1c\n\x1aModifyCommentResponseProto\"v\n\x16PaypalCountryInfoProto\x12\x19\n\x11\x62irthDateRequired\x18\x01 \x01(\x08\x12\x0f\n\x07tosText\x18\x02 \x01(\t\x12\x1c\n\x14\x62illingAgreementText\x18\x03 \x01(\t\x12\x12\n\npreTosText\x18\x04 \x01(\t\"y\n\x1fPaypalCreateAccountRequestProto\x12\x11\n\tfirstName\x18\x01 \x01(\t\x12\x10\n\x08lastName\x18\x02 \x01(\t\x12\x1e\n\x07\x61\x64\x64ress\x18\x03 \x01(\x0b\x32\r.AddressProto\x12\x11\n\tbirthDate\x18\x04 \x01(\t\"<\n PaypalCreateAccountResponseProto\x12\x18\n\x10\x63reateAccountKey\x18\x01 \x01(\t\"E\n\x16PaypalCredentialsProto\x12\x16\n\x0epreapprovalKey\x18\x01 \x01(\t\x12\x13\n\x0bpaypalEmail\x18\x02 \x01(\t\"B\n PaypalMassageAddressRequestProto\x12\x1e\n\x07\x61\x64\x64ress\x18\x01 \x01(\x0b\x32\r.AddressProto\"C\n!PaypalMassageAddressResponseProto\x12\x1e\n\x07\x61\x64\x64ress\x18\x01 \x01(\x0b\x32\r.AddressProto\"^\n(PaypalPreapprovalCredentialsRequestProto\x12\x15\n\rgaiaAuthToken\x18\x01 \x01(\t\x12\x1b\n\x13\x62illingInstrumentId\x18\x02 \x01(\t\"n\n)PaypalPreapprovalCredentialsResponseProto\x12\x12\n\nresultCode\x18\x01 \x01(\x05\x12\x18\n\x10paypalAccountKey\x18\x02 \x01(\t\x12\x13\n\x0bpaypalEmail\x18\x03 \x01(\t\"R\n$PaypalPreapprovalDetailsRequestProto\x12\x12\n\ngetAddress\x18\x01 \x01(\x08\x12\x16\n\x0epreapprovalKey\x18\x02 \x01(\t\"\\\n%PaypalPreapprovalDetailsResponseProto\x12\x13\n\x0bpaypalEmail\x18\x01 \x01(\t\x12\x1e\n\x07\x61\x64\x64ress\x18\x02 \x01(\x0b\x32\r.AddressProto\"\x1f\n\x1dPaypalPreapprovalRequestProto\"8\n\x1ePaypalPreapprovalResponseProto\x12\x16\n\x0epreapprovalKey\x18\x01 \x01(\t\"]\n\x19PendingNotificationsProto\x12\'\n\x0cnotification\x18\x01 \x03(\x0b\x32\x11.DataMessageProto\x12\x17\n\x0fnextCheckMillis\x18\x02 \x01(\x03\"e\n\x15PrefetchedBundleProto\x12$\n\x07request\x18\x01 \x01(\x0b\x32\x13.SingleRequestProto\x12&\n\x08response\x18\x02 \x01(\x0b\x32\x14.SingleResponseProto\"\xbc\x01\n\x15PurchaseCartInfoProto\x12\x11\n\titemPrice\x18\x01 \x01(\t\x12\x14\n\x0ctaxInclusive\x18\x02 \x01(\t\x12\x14\n\x0ctaxExclusive\x18\x03 \x01(\t\x12\r\n\x05total\x18\x04 \x01(\t\x12\x12\n\ntaxMessage\x18\x05 \x01(\t\x12\x15\n\rfooterMessage\x18\x06 \x01(\t\x12\x15\n\rpriceCurrency\x18\x07 \x01(\t\x12\x13\n\x0bpriceMicros\x18\x08 \x01(\x03\"\x93\x04\n\x11PurchaseInfoProto\x12\x15\n\rtransactionId\x18\x01 \x01(\t\x12(\n\x08\x63\x61rtInfo\x18\x02 \x01(\x0b\x32\x16.PurchaseCartInfoProto\x12\x41\n\x12\x62illinginstruments\x18\x03 \x01(\n2%.PurchaseInfoProto.BillingInstruments\x12\x18\n\x10\x65rrorInputFields\x18\t \x03(\x05\x12\x14\n\x0crefundPolicy\x18\n \x01(\t\x12\x15\n\ruserCanAddGdd\x18\x0c \x01(\x08\x12\x1f\n\x17\x65ligibleInstrumentTypes\x18\r \x03(\x05\x12\x0f\n\x07orderId\x18\x0f \x01(\t\x1a\x80\x02\n\x12\x42illingInstruments\x12R\n\x11\x62illinginstrument\x18\x04 \x03(\n27.PurchaseInfoProto.BillingInstruments.BillingInstrument\x12\"\n\x1a\x64\x65\x66\x61ultBillingInstrumentId\x18\x08 \x01(\t\x1ar\n\x11\x42illingInstrument\x12\n\n\x02id\x18\x05 \x01(\t\x12\x0c\n\x04name\x18\x06 \x01(\t\x12\x11\n\tisInvalid\x18\x07 \x01(\x08\x12\x16\n\x0einstrumentType\x18\x0b \x01(\x05\x12\x18\n\x10instrumentStatus\x18\x0e \x01(\x05\"i\n\x1cPurchaseMetadataRequestProto\x12*\n\"deprecatedRetrieveBillingCountries\x18\x01 \x01(\x08\x12\x1d\n\x15\x62illingInstrumentType\x18\x02 \x01(\x05\"\x87\x04\n\x1dPurchaseMetadataResponseProto\x12;\n\tcountries\x18\x01 \x01(\n2(.PurchaseMetadataResponseProto.Countries\x1a\xa8\x03\n\tCountries\x12\x41\n\x07\x63ountry\x18\x02 \x03(\n20.PurchaseMetadataResponseProto.Countries.Country\x1a\xd7\x02\n\x07\x43ountry\x12\x13\n\x0b\x63ountryCode\x18\x03 \x01(\t\x12\x13\n\x0b\x63ountryName\x18\x04 \x01(\t\x12\x32\n\x11paypalCountryInfo\x18\x05 \x01(\x0b\x32\x17.PaypalCountryInfoProto\x12#\n\x1b\x61llowsReducedBillingAddress\x18\x06 \x01(\x08\x12\x65\n\x15instrumentaddressspec\x18\x07 \x03(\n2F.PurchaseMetadataResponseProto.Countries.Country.InstrumentAddressSpec\x1a\x62\n\x15InstrumentAddressSpec\x12\x18\n\x10instrumentFamily\x18\x08 \x01(\x05\x12/\n\x12\x62illingAddressSpec\x18\t \x01(\x0b\x32\x13.BillingAddressSpec\"\xe2\x03\n\x19PurchaseOrderRequestProto\x12\x15\n\rgaiaAuthToken\x18\x01 \x01(\t\x12\x0f\n\x07\x61ssetId\x18\x02 \x01(\t\x12\x15\n\rtransactionId\x18\x03 \x01(\t\x12\x1b\n\x13\x62illingInstrumentId\x18\x04 \x01(\t\x12\x13\n\x0btosAccepted\x18\x05 \x01(\x08\x12\x42\n\x19\x63\x61rrierBillingCredentials\x18\x06 \x01(\x0b\x32\x1f.CarrierBillingCredentialsProto\x12\x17\n\x0f\x65xistingOrderId\x18\x07 \x01(\t\x12\x1d\n\x15\x62illingInstrumentType\x18\x08 \x01(\x05\x12\x1b\n\x13\x62illingParametersId\x18\t \x01(\t\x12\x32\n\x11paypalCredentials\x18\n \x01(\x0b\x32\x17.PaypalCredentialsProto\x12,\n\x0eriskHeaderInfo\x18\x0b \x01(\x0b\x32\x14.RiskHeaderInfoProto\x12\x13\n\x0bproductType\x18\x0c \x01(\x05\x12*\n\rsignatureHash\x18\r \x01(\x0b\x32\x13.SignatureHashProto\x12\x18\n\x10\x64\x65veloperPayload\x18\x0e \x01(\t\"\xb6\x01\n\x1aPurchaseOrderResponseProto\x12\x1c\n\x14\x64\x65precatedResultCode\x18\x01 \x01(\x05\x12(\n\x0cpurchaseInfo\x18\x02 \x01(\x0b\x32\x12.PurchaseInfoProto\x12\"\n\x05\x61sset\x18\x03 \x01(\x0b\x32\x13.ExternalAssetProto\x12,\n\x0epurchaseResult\x18\x04 \x01(\x0b\x32\x14.PurchaseResultProto\"\x92\x04\n\x18PurchasePostRequestProto\x12\x15\n\rgaiaAuthToken\x18\x01 \x01(\t\x12\x0f\n\x07\x61ssetId\x18\x02 \x01(\t\x12\x15\n\rtransactionId\x18\x03 \x01(\t\x12N\n\x15\x62illinginstrumentinfo\x18\x04 \x01(\n2/.PurchasePostRequestProto.BillingInstrumentInfo\x12\x13\n\x0btosAccepted\x18\x07 \x01(\x08\x12\x17\n\x0f\x63\x62InstrumentKey\x18\x08 \x01(\t\x12\x1b\n\x13paypalAuthConfirmed\x18\x0b \x01(\x08\x12\x13\n\x0bproductType\x18\x0c \x01(\x05\x12*\n\rsignatureHash\x18\r \x01(\x0b\x32\x13.SignatureHashProto\x1a\xda\x01\n\x15\x42illingInstrumentInfo\x12\x1b\n\x13\x62illingInstrumentId\x18\x05 \x01(\t\x12\'\n\ncreditCard\x18\x06 \x01(\x0b\x32\x13.ExternalCreditCard\x12\x41\n\x11\x63\x61rrierInstrument\x18\t \x01(\x0b\x32&.ExternalCarrierBillingInstrumentProto\x12\x38\n\x10paypalInstrument\x18\n \x01(\x0b\x32\x1e.ExternalPaypalInstrumentProto\"\xaa\x02\n\x19PurchasePostResponseProto\x12\x1c\n\x14\x64\x65precatedResultCode\x18\x01 \x01(\x05\x12(\n\x0cpurchaseInfo\x18\x02 \x01(\x0b\x32\x12.PurchaseInfoProto\x12\x19\n\x11termsOfServiceUrl\x18\x03 \x01(\t\x12\x1a\n\x12termsOfServiceText\x18\x04 \x01(\t\x12\x1a\n\x12termsOfServiceName\x18\x05 \x01(\t\x12\"\n\x1atermsOfServiceCheckboxText\x18\x06 \x01(\t\x12 \n\x18termsOfServiceHeaderText\x18\x07 \x01(\t\x12,\n\x0epurchaseResult\x18\x08 \x01(\x0b\x32\x14.PurchaseResultProto\"q\n\x1bPurchaseProductRequestProto\x12\x13\n\x0bproductType\x18\x01 \x01(\x05\x12\x11\n\tproductId\x18\x02 \x01(\t\x12*\n\rsignatureHash\x18\x03 \x01(\x0b\x32\x13.SignatureHashProto\"p\n\x1cPurchaseProductResponseProto\x12\r\n\x05title\x18\x01 \x01(\t\x12\x11\n\titemTitle\x18\x02 \x01(\t\x12\x17\n\x0fitemDescription\x18\x03 \x01(\t\x12\x15\n\rmerchantField\x18\x04 \x01(\t\"D\n\x13PurchaseResultProto\x12\x12\n\nresultCode\x18\x01 \x01(\x05\x12\x19\n\x11resultCodeMessage\x18\x02 \x01(\t\"W\n\x14QuerySuggestionProto\x12\r\n\x05query\x18\x01 \x01(\t\x12\x1b\n\x13\x65stimatedNumResults\x18\x02 \x01(\x05\x12\x13\n\x0bqueryWeight\x18\x03 \x01(\x05\"A\n\x1bQuerySuggestionRequestProto\x12\r\n\x05query\x18\x01 \x01(\t\x12\x13\n\x0brequestType\x18\x02 \x01(\x05\"\x90\x02\n\x1cQuerySuggestionResponseProto\x12<\n\nsuggestion\x18\x01 \x03(\n2(.QuerySuggestionResponseProto.Suggestion\x12\"\n\x1a\x65stimatedNumAppSuggestions\x18\x04 \x01(\x05\x12$\n\x1c\x65stimatedNumQuerySuggestions\x18\x05 \x01(\x05\x1ah\n\nSuggestion\x12*\n\rappSuggestion\x18\x02 \x01(\x0b\x32\x13.AppSuggestionProto\x12.\n\x0fquerySuggestion\x18\x03 \x01(\x0b\x32\x15.QuerySuggestionProto\"T\n\x17RateCommentRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x11\n\tcreatorId\x18\x02 \x01(\t\x12\x15\n\rcommentRating\x18\x03 \x01(\x05\"\x1a\n\x18RateCommentResponseProto\">\n\x1fReconstructDatabaseRequestProto\x12\x1b\n\x13retrieveFullHistory\x18\x01 \x01(\x08\"H\n ReconstructDatabaseResponseProto\x12$\n\x05\x61sset\x18\x01 \x03(\x0b\x32\x15.AssetIdentifierProto\"%\n\x12RefundRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\"_\n\x13RefundResponseProto\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\"\n\x05\x61sset\x18\x02 \x01(\x0b\x32\x13.ExternalAssetProto\x12\x14\n\x0cresultDetail\x18\x03 \x01(\t\"*\n\x17RemoveAssetRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\"\xcd\x02\n\x16RequestPropertiesProto\x12\x15\n\ruserAuthToken\x18\x01 \x01(\t\x12\x1b\n\x13userAuthTokenSecure\x18\x02 \x01(\x08\x12\x17\n\x0fsoftwareVersion\x18\x03 \x01(\x05\x12\x0b\n\x03\x61id\x18\x04 \x01(\t\x12\x1d\n\x15productNameAndVersion\x18\x05 \x01(\t\x12\x14\n\x0cuserLanguage\x18\x06 \x01(\t\x12\x13\n\x0buserCountry\x18\x07 \x01(\t\x12\x14\n\x0coperatorName\x18\x08 \x01(\t\x12\x17\n\x0fsimOperatorName\x18\t \x01(\t\x12\x1b\n\x13operatorNumericName\x18\n \x01(\t\x12\x1e\n\x16simOperatorNumericName\x18\x0b \x01(\t\x12\x10\n\x08\x63lientId\x18\x0c \x01(\t\x12\x11\n\tloggingId\x18\r \x01(\t\"\xbe\x11\n\x0cRequestProto\x12\x32\n\x11requestProperties\x18\x01 \x01(\x0b\x32\x17.RequestPropertiesProto\x12&\n\x07request\x18\x02 \x03(\n2\x15.RequestProto.Request\x1a\xd1\x10\n\x07Request\x12\x42\n\x19requestSpecificProperties\x18\x03 \x01(\x0b\x32\x1f.RequestSpecificPropertiesProto\x12)\n\x0c\x61ssetRequest\x18\x04 \x01(\x0b\x32\x13.AssetsRequestProto\x12.\n\x0f\x63ommentsRequest\x18\x05 \x01(\x0b\x32\x15.CommentsRequestProto\x12\x38\n\x14modifyCommentRequest\x18\x06 \x01(\x0b\x32\x1a.ModifyCommentRequestProto\x12\x36\n\x13purchasePostRequest\x18\x07 \x01(\x0b\x32\x19.PurchasePostRequestProto\x12\x38\n\x14purchaseOrderRequest\x18\x08 \x01(\x0b\x32\x1a.PurchaseOrderRequestProto\x12\x34\n\x12\x63ontentSyncRequest\x18\t \x01(\x0b\x32\x18.ContentSyncRequestProto\x12.\n\x0fgetAssetRequest\x18\n \x01(\x0b\x32\x15.GetAssetRequestProto\x12.\n\x0fgetImageRequest\x18\x0b \x01(\x0b\x32\x15.GetImageRequestProto\x12*\n\rrefundRequest\x18\x0c \x01(\x0b\x32\x13.RefundRequestProto\x12>\n\x17purchaseMetadataRequest\x18\r \x01(\x0b\x32\x1d.PurchaseMetadataRequestProto\x12;\n\x14subCategoriesRequest\x18\x0e \x01(\x0b\x32\x1d.GetSubCategoriesRequestProto\x12<\n\x16uninstallReasonRequest\x18\x10 \x01(\x0b\x32\x1c.UninstallReasonRequestProto\x12\x34\n\x12rateCommentRequest\x18\x11 \x01(\x0b\x32\x18.RateCommentRequestProto\x12\x36\n\x13\x63heckLicenseRequest\x18\x12 \x01(\x0b\x32\x19.CheckLicenseRequestProto\x12@\n\x18getMarketMetadataRequest\x18\x13 \x01(\x0b\x32\x1e.GetMarketMetadataRequestProto\x12\x38\n\x14getCategoriesRequest\x18\x15 \x01(\x0b\x32\x1a.GetCategoriesRequestProto\x12:\n\x15getCarrierInfoRequest\x18\x16 \x01(\x0b\x32\x1b.GetCarrierInfoRequestProto\x12\x34\n\x12removeAssetRequest\x18\x17 \x01(\x0b\x32\x18.RemoveAssetRequestProto\x12\x44\n\x1arestoreApplicationsRequest\x18\x18 \x01(\x0b\x32 .RestoreApplicationsRequestProto\x12<\n\x16querySuggestionRequest\x18\x19 \x01(\x0b\x32\x1c.QuerySuggestionRequestProto\x12\x36\n\x13\x62illingEventRequest\x18\x1a \x01(\x0b\x32\x19.BillingEventRequestProto\x12@\n\x18paypalPreapprovalRequest\x18\x1b \x01(\x0b\x32\x1e.PaypalPreapprovalRequestProto\x12N\n\x1fpaypalPreapprovalDetailsRequest\x18\x1c \x01(\x0b\x32%.PaypalPreapprovalDetailsRequestProto\x12\x44\n\x1apaypalCreateAccountRequest\x18\x1d \x01(\x0b\x32 .PaypalCreateAccountRequestProto\x12V\n#paypalPreapprovalCredentialsRequest\x18\x1e \x01(\x0b\x32).PaypalPreapprovalCredentialsRequestProto\x12N\n\x1finAppRestoreTransactionsRequest\x18\x1f \x01(\x0b\x32%.InAppRestoreTransactionsRequestProto\x12N\n\x1finAppPurchaseInformationRequest\x18 \x01(\x0b\x32%.InAppPurchaseInformationRequestProto\x12H\n\x1c\x63heckForNotificationsRequest\x18! \x01(\x0b\x32\".CheckForNotificationsRequestProto\x12>\n\x17\x61\x63kNotificationsRequest\x18\" \x01(\x0b\x32\x1d.AckNotificationsRequestProto\x12<\n\x16purchaseProductRequest\x18# \x01(\x0b\x32\x1c.PurchaseProductRequestProto\x12\x44\n\x1areconstructDatabaseRequest\x18$ \x01(\x0b\x32 .ReconstructDatabaseRequestProto\x12\x46\n\x1bpaypalMassageAddressRequest\x18% \x01(\x0b\x32!.PaypalMassageAddressRequestProto\x12@\n\x18getAddressSnippetRequest\x18& \x01(\x0b\x32\x1e.GetAddressSnippetRequestProto\"5\n\x1eRequestSpecificPropertiesProto\x12\x13\n\x0bifNoneMatch\x18\x01 \x01(\t\"\xbe\x01\n\x17ResponsePropertiesProto\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x0e\n\x06maxAge\x18\x02 \x01(\x05\x12\x0c\n\x04\x65tag\x18\x03 \x01(\t\x12\x15\n\rserverVersion\x18\x04 \x01(\x05\x12\x18\n\x10maxAgeConsumable\x18\x06 \x01(\x05\x12\x14\n\x0c\x65rrorMessage\x18\x07 \x01(\t\x12.\n\x0f\x65rrorInputField\x18\x08 \x03(\x0b\x32\x15.InputValidationError\"\xf7\x11\n\rResponseProto\x12)\n\x08response\x18\x01 \x03(\n2\x17.ResponseProto.Response\x12\x38\n\x14pendingNotifications\x18& \x01(\x0b\x32\x1a.PendingNotificationsProto\x1a\x80\x11\n\x08Response\x12\x34\n\x12responseProperties\x18\x02 \x01(\x0b\x32\x18.ResponsePropertiesProto\x12,\n\x0e\x61ssetsResponse\x18\x03 \x01(\x0b\x32\x14.AssetsResponseProto\x12\x30\n\x10\x63ommentsResponse\x18\x04 \x01(\x0b\x32\x16.CommentsResponseProto\x12:\n\x15modifyCommentResponse\x18\x05 \x01(\x0b\x32\x1b.ModifyCommentResponseProto\x12\x38\n\x14purchasePostResponse\x18\x06 \x01(\x0b\x32\x1a.PurchasePostResponseProto\x12:\n\x15purchaseOrderResponse\x18\x07 \x01(\x0b\x32\x1b.PurchaseOrderResponseProto\x12\x36\n\x13\x63ontentSyncResponse\x18\x08 \x01(\x0b\x32\x19.ContentSyncResponseProto\x12\x30\n\x10getAssetResponse\x18\t \x01(\x0b\x32\x16.GetAssetResponseProto\x12\x30\n\x10getImageResponse\x18\n \x01(\x0b\x32\x16.GetImageResponseProto\x12,\n\x0erefundResponse\x18\x0b \x01(\x0b\x32\x14.RefundResponseProto\x12@\n\x18purchaseMetadataResponse\x18\x0c \x01(\x0b\x32\x1e.PurchaseMetadataResponseProto\x12=\n\x15subCategoriesResponse\x18\r \x01(\x0b\x32\x1e.GetSubCategoriesResponseProto\x12>\n\x17uninstallReasonResponse\x18\x0f \x01(\x0b\x32\x1d.UninstallReasonResponseProto\x12\x36\n\x13rateCommentResponse\x18\x10 \x01(\x0b\x32\x19.RateCommentResponseProto\x12\x38\n\x14\x63heckLicenseResponse\x18\x11 \x01(\x0b\x32\x1a.CheckLicenseResponseProto\x12\x42\n\x19getMarketMetadataResponse\x18\x12 \x01(\x0b\x32\x1f.GetMarketMetadataResponseProto\x12\x30\n\x10prefetchedBundle\x18\x13 \x03(\x0b\x32\x16.PrefetchedBundleProto\x12:\n\x15getCategoriesResponse\x18\x14 \x01(\x0b\x32\x1b.GetCategoriesResponseProto\x12<\n\x16getCarrierInfoResponse\x18\x15 \x01(\x0b\x32\x1c.GetCarrierInfoResponseProto\x12\x45\n\x1arestoreApplicationResponse\x18\x17 \x01(\x0b\x32!.RestoreApplicationsResponseProto\x12>\n\x17querySuggestionResponse\x18\x18 \x01(\x0b\x32\x1d.QuerySuggestionResponseProto\x12\x38\n\x14\x62illingEventResponse\x18\x19 \x01(\x0b\x32\x1a.BillingEventResponseProto\x12\x42\n\x19paypalPreapprovalResponse\x18\x1a \x01(\x0b\x32\x1f.PaypalPreapprovalResponseProto\x12P\n paypalPreapprovalDetailsResponse\x18\x1b \x01(\x0b\x32&.PaypalPreapprovalDetailsResponseProto\x12\x46\n\x1bpaypalCreateAccountResponse\x18\x1c \x01(\x0b\x32!.PaypalCreateAccountResponseProto\x12X\n$paypalPreapprovalCredentialsResponse\x18\x1d \x01(\x0b\x32*.PaypalPreapprovalCredentialsResponseProto\x12P\n inAppRestoreTransactionsResponse\x18\x1e \x01(\x0b\x32&.InAppRestoreTransactionsResponseProto\x12P\n inAppPurchaseInformationResponse\x18\x1f \x01(\x0b\x32&.InAppPurchaseInformationResponseProto\x12J\n\x1d\x63heckForNotificationsResponse\x18 \x01(\x0b\x32#.CheckForNotificationsResponseProto\x12@\n\x18\x61\x63kNotificationsResponse\x18! \x01(\x0b\x32\x1e.AckNotificationsResponseProto\x12>\n\x17purchaseProductResponse\x18\" \x01(\x0b\x32\x1d.PurchaseProductResponseProto\x12\x46\n\x1breconstructDatabaseResponse\x18# \x01(\x0b\x32!.ReconstructDatabaseResponseProto\x12H\n\x1cpaypalMassageAddressResponse\x18$ \x01(\x0b\x32\".PaypalMassageAddressResponseProto\x12\x42\n\x19getAddressSnippetResponse\x18% \x01(\x0b\x32\x1f.GetAddressSnippetResponseProto\"\x86\x01\n\x1fRestoreApplicationsRequestProto\x12\x17\n\x0f\x62\x61\x63kupAndroidId\x18\x01 \x01(\t\x12\x12\n\ntosVersion\x18\x02 \x01(\t\x12\x36\n\x13\x64\x65viceConfiguration\x18\x03 \x01(\x0b\x32\x19.DeviceConfigurationProto\"I\n RestoreApplicationsResponseProto\x12%\n\x05\x61sset\x18\x01 \x03(\x0b\x32\x16.GetAssetResponseProto\"/\n\x13RiskHeaderInfoProto\x12\x18\n\x10hashedDeviceInfo\x18\x01 \x01(\t\"L\n\x12SignatureHashProto\x12\x13\n\x0bpackageName\x18\x01 \x01(\t\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0c\n\x04hash\x18\x03 \x01(\x0c\"8\n\x0fSignedDataProto\x12\x12\n\nsignedData\x18\x01 \x01(\t\x12\x11\n\tsignature\x18\x02 \x01(\t\"\xdf\x10\n\x12SingleRequestProto\x12\x42\n\x19requestSpecificProperties\x18\x03 \x01(\x0b\x32\x1f.RequestSpecificPropertiesProto\x12)\n\x0c\x61ssetRequest\x18\x04 \x01(\x0b\x32\x13.AssetsRequestProto\x12.\n\x0f\x63ommentsRequest\x18\x05 \x01(\x0b\x32\x15.CommentsRequestProto\x12\x38\n\x14modifyCommentRequest\x18\x06 \x01(\x0b\x32\x1a.ModifyCommentRequestProto\x12\x36\n\x13purchasePostRequest\x18\x07 \x01(\x0b\x32\x19.PurchasePostRequestProto\x12\x38\n\x14purchaseOrderRequest\x18\x08 \x01(\x0b\x32\x1a.PurchaseOrderRequestProto\x12\x34\n\x12\x63ontentSyncRequest\x18\t \x01(\x0b\x32\x18.ContentSyncRequestProto\x12.\n\x0fgetAssetRequest\x18\n \x01(\x0b\x32\x15.GetAssetRequestProto\x12.\n\x0fgetImageRequest\x18\x0b \x01(\x0b\x32\x15.GetImageRequestProto\x12*\n\rrefundRequest\x18\x0c \x01(\x0b\x32\x13.RefundRequestProto\x12>\n\x17purchaseMetadataRequest\x18\r \x01(\x0b\x32\x1d.PurchaseMetadataRequestProto\x12;\n\x14subCategoriesRequest\x18\x0e \x01(\x0b\x32\x1d.GetSubCategoriesRequestProto\x12<\n\x16uninstallReasonRequest\x18\x10 \x01(\x0b\x32\x1c.UninstallReasonRequestProto\x12\x34\n\x12rateCommentRequest\x18\x11 \x01(\x0b\x32\x18.RateCommentRequestProto\x12\x36\n\x13\x63heckLicenseRequest\x18\x12 \x01(\x0b\x32\x19.CheckLicenseRequestProto\x12@\n\x18getMarketMetadataRequest\x18\x13 \x01(\x0b\x32\x1e.GetMarketMetadataRequestProto\x12\x38\n\x14getCategoriesRequest\x18\x15 \x01(\x0b\x32\x1a.GetCategoriesRequestProto\x12:\n\x15getCarrierInfoRequest\x18\x16 \x01(\x0b\x32\x1b.GetCarrierInfoRequestProto\x12\x34\n\x12removeAssetRequest\x18\x17 \x01(\x0b\x32\x18.RemoveAssetRequestProto\x12\x44\n\x1arestoreApplicationsRequest\x18\x18 \x01(\x0b\x32 .RestoreApplicationsRequestProto\x12<\n\x16querySuggestionRequest\x18\x19 \x01(\x0b\x32\x1c.QuerySuggestionRequestProto\x12\x36\n\x13\x62illingEventRequest\x18\x1a \x01(\x0b\x32\x19.BillingEventRequestProto\x12@\n\x18paypalPreapprovalRequest\x18\x1b \x01(\x0b\x32\x1e.PaypalPreapprovalRequestProto\x12N\n\x1fpaypalPreapprovalDetailsRequest\x18\x1c \x01(\x0b\x32%.PaypalPreapprovalDetailsRequestProto\x12\x44\n\x1apaypalCreateAccountRequest\x18\x1d \x01(\x0b\x32 .PaypalCreateAccountRequestProto\x12V\n#paypalPreapprovalCredentialsRequest\x18\x1e \x01(\x0b\x32).PaypalPreapprovalCredentialsRequestProto\x12N\n\x1finAppRestoreTransactionsRequest\x18\x1f \x01(\x0b\x32%.InAppRestoreTransactionsRequestProto\x12Q\n\"getInAppPurchaseInformationRequest\x18 \x01(\x0b\x32%.InAppPurchaseInformationRequestProto\x12H\n\x1c\x63heckForNotificationsRequest\x18! \x01(\x0b\x32\".CheckForNotificationsRequestProto\x12>\n\x17\x61\x63kNotificationsRequest\x18\" \x01(\x0b\x32\x1d.AckNotificationsRequestProto\x12<\n\x16purchaseProductRequest\x18# \x01(\x0b\x32\x1c.PurchaseProductRequestProto\x12\x44\n\x1areconstructDatabaseRequest\x18$ \x01(\x0b\x32 .ReconstructDatabaseRequestProto\x12\x46\n\x1bpaypalMassageAddressRequest\x18% \x01(\x0b\x32!.PaypalMassageAddressRequestProto\x12@\n\x18getAddressSnippetRequest\x18& \x01(\x0b\x32\x1e.GetAddressSnippetRequestProto\"\xdc\x10\n\x13SingleResponseProto\x12\x34\n\x12responseProperties\x18\x02 \x01(\x0b\x32\x18.ResponsePropertiesProto\x12,\n\x0e\x61ssetsResponse\x18\x03 \x01(\x0b\x32\x14.AssetsResponseProto\x12\x30\n\x10\x63ommentsResponse\x18\x04 \x01(\x0b\x32\x16.CommentsResponseProto\x12:\n\x15modifyCommentResponse\x18\x05 \x01(\x0b\x32\x1b.ModifyCommentResponseProto\x12\x38\n\x14purchasePostResponse\x18\x06 \x01(\x0b\x32\x1a.PurchasePostResponseProto\x12:\n\x15purchaseOrderResponse\x18\x07 \x01(\x0b\x32\x1b.PurchaseOrderResponseProto\x12\x36\n\x13\x63ontentSyncResponse\x18\x08 \x01(\x0b\x32\x19.ContentSyncResponseProto\x12\x30\n\x10getAssetResponse\x18\t \x01(\x0b\x32\x16.GetAssetResponseProto\x12\x30\n\x10getImageResponse\x18\n \x01(\x0b\x32\x16.GetImageResponseProto\x12,\n\x0erefundResponse\x18\x0b \x01(\x0b\x32\x14.RefundResponseProto\x12@\n\x18purchaseMetadataResponse\x18\x0c \x01(\x0b\x32\x1e.PurchaseMetadataResponseProto\x12=\n\x15subCategoriesResponse\x18\r \x01(\x0b\x32\x1e.GetSubCategoriesResponseProto\x12>\n\x17uninstallReasonResponse\x18\x0f \x01(\x0b\x32\x1d.UninstallReasonResponseProto\x12\x36\n\x13rateCommentResponse\x18\x10 \x01(\x0b\x32\x19.RateCommentResponseProto\x12\x38\n\x14\x63heckLicenseResponse\x18\x11 \x01(\x0b\x32\x1a.CheckLicenseResponseProto\x12\x42\n\x19getMarketMetadataResponse\x18\x12 \x01(\x0b\x32\x1f.GetMarketMetadataResponseProto\x12:\n\x15getCategoriesResponse\x18\x14 \x01(\x0b\x32\x1b.GetCategoriesResponseProto\x12<\n\x16getCarrierInfoResponse\x18\x15 \x01(\x0b\x32\x1c.GetCarrierInfoResponseProto\x12\x45\n\x1arestoreApplicationResponse\x18\x17 \x01(\x0b\x32!.RestoreApplicationsResponseProto\x12>\n\x17querySuggestionResponse\x18\x18 \x01(\x0b\x32\x1d.QuerySuggestionResponseProto\x12\x38\n\x14\x62illingEventResponse\x18\x19 \x01(\x0b\x32\x1a.BillingEventResponseProto\x12\x42\n\x19paypalPreapprovalResponse\x18\x1a \x01(\x0b\x32\x1f.PaypalPreapprovalResponseProto\x12P\n paypalPreapprovalDetailsResponse\x18\x1b \x01(\x0b\x32&.PaypalPreapprovalDetailsResponseProto\x12\x46\n\x1bpaypalCreateAccountResponse\x18\x1c \x01(\x0b\x32!.PaypalCreateAccountResponseProto\x12X\n$paypalPreapprovalCredentialsResponse\x18\x1d \x01(\x0b\x32*.PaypalPreapprovalCredentialsResponseProto\x12P\n inAppRestoreTransactionsResponse\x18\x1e \x01(\x0b\x32&.InAppRestoreTransactionsResponseProto\x12S\n#getInAppPurchaseInformationResponse\x18\x1f \x01(\x0b\x32&.InAppPurchaseInformationResponseProto\x12J\n\x1d\x63heckForNotificationsResponse\x18 \x01(\x0b\x32#.CheckForNotificationsResponseProto\x12@\n\x18\x61\x63kNotificationsResponse\x18! \x01(\x0b\x32\x1e.AckNotificationsResponseProto\x12>\n\x17purchaseProductResponse\x18\" \x01(\x0b\x32\x1d.PurchaseProductResponseProto\x12\x46\n\x1breconstructDatabaseResponse\x18# \x01(\x0b\x32!.ReconstructDatabaseResponseProto\x12H\n\x1cpaypalMassageAddressResponse\x18$ \x01(\x0b\x32\".PaypalMassageAddressResponseProto\x12\x42\n\x19getAddressSnippetResponse\x18% \x01(\x0b\x32\x1f.GetAddressSnippetResponseProto\"[\n\x1aStatusBarNotificationProto\x12\x12\n\ntickerText\x18\x01 \x01(\t\x12\x14\n\x0c\x63ontentTitle\x18\x02 \x01(\t\x12\x13\n\x0b\x63ontentText\x18\x03 \x01(\t\">\n\x1bUninstallReasonRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x0e\n\x06reason\x18\x02 \x01(\x05\"\x1e\n\x1cUninstallReasonResponseProto') + serialized_pb='\n\x10googleplay.proto\"\x19\n\x17\x41\x63kNotificationResponse\"\x8b\x03\n\x16\x41ndroidAppDeliveryData\x12\x14\n\x0c\x64ownloadSize\x18\x01 \x01(\x03\x12\x11\n\tsignature\x18\x02 \x01(\t\x12\x13\n\x0b\x64ownloadUrl\x18\x03 \x01(\t\x12(\n\x0e\x61\x64\x64itionalFile\x18\x04 \x03(\x0b\x32\x10.AppFileMetadata\x12\'\n\x12\x64ownloadAuthCookie\x18\x05 \x03(\x0b\x32\x0b.HttpCookie\x12\x15\n\rforwardLocked\x18\x06 \x01(\x08\x12\x15\n\rrefundTimeout\x18\x07 \x01(\x03\x12\x17\n\x0fserverInitiated\x18\x08 \x01(\x08\x12%\n\x1dpostInstallRefundWindowMillis\x18\t \x01(\x03\x12\x1c\n\x14immediateStartNeeded\x18\n \x01(\x08\x12\'\n\tpatchData\x18\x0b \x01(\x0b\x32\x14.AndroidAppPatchData\x12+\n\x10\x65ncryptionParams\x18\x0c \x01(\x0b\x32\x11.EncryptionParams\"\x85\x01\n\x13\x41ndroidAppPatchData\x12\x17\n\x0f\x62\x61seVersionCode\x18\x01 \x01(\x05\x12\x15\n\rbaseSignature\x18\x02 \x01(\t\x12\x13\n\x0b\x64ownloadUrl\x18\x03 \x01(\t\x12\x13\n\x0bpatchFormat\x18\x04 \x01(\x05\x12\x14\n\x0cmaxPatchSize\x18\x05 \x01(\x03\"[\n\x0f\x41ppFileMetadata\x12\x10\n\x08\x66ileType\x18\x01 \x01(\x05\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0c\n\x04size\x18\x03 \x01(\x03\x12\x13\n\x0b\x64ownloadUrl\x18\x04 \x01(\t\"K\n\x10\x45ncryptionParams\x12\x0f\n\x07version\x18\x01 \x01(\x05\x12\x15\n\rencryptionKey\x18\x02 \x01(\t\x12\x0f\n\x07hmacKey\x18\x03 \x01(\t\")\n\nHttpCookie\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xad\x02\n\x07\x41\x64\x64ress\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x61\x64\x64ressLine1\x18\x02 \x01(\t\x12\x14\n\x0c\x61\x64\x64ressLine2\x18\x03 \x01(\t\x12\x0c\n\x04\x63ity\x18\x04 \x01(\t\x12\r\n\x05state\x18\x05 \x01(\t\x12\x12\n\npostalCode\x18\x06 \x01(\t\x12\x15\n\rpostalCountry\x18\x07 \x01(\t\x12\x19\n\x11\x64\x65pendentLocality\x18\x08 \x01(\t\x12\x13\n\x0bsortingCode\x18\t \x01(\t\x12\x14\n\x0clanguageCode\x18\n \x01(\t\x12\x13\n\x0bphoneNumber\x18\x0b \x01(\t\x12\x11\n\tisReduced\x18\x0c \x01(\x08\x12\x11\n\tfirstName\x18\r \x01(\t\x12\x10\n\x08lastName\x18\x0e \x01(\t\x12\r\n\x05\x65mail\x18\x0f \x01(\t\"J\n\nBookAuthor\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x17\n\x0f\x64\x65precatedQuery\x18\x02 \x01(\t\x12\x15\n\x05\x64ocid\x18\x03 \x01(\x0b\x32\x06.Docid\"\xc3\x03\n\x0b\x42ookDetails\x12\x1d\n\x07subject\x18\x03 \x03(\x0b\x32\x0c.BookSubject\x12\x11\n\tpublisher\x18\x04 \x01(\t\x12\x17\n\x0fpublicationDate\x18\x05 \x01(\t\x12\x0c\n\x04isbn\x18\x06 \x01(\t\x12\x15\n\rnumberOfPages\x18\x07 \x01(\x05\x12\x10\n\x08subtitle\x18\x08 \x01(\t\x12\x1b\n\x06\x61uthor\x18\t \x03(\x0b\x32\x0b.BookAuthor\x12\x11\n\treaderUrl\x18\n \x01(\t\x12\x17\n\x0f\x64ownloadEpubUrl\x18\x0b \x01(\t\x12\x16\n\x0e\x64ownloadPdfUrl\x18\x0c \x01(\t\x12\x17\n\x0f\x61\x63sEpubTokenUrl\x18\r \x01(\t\x12\x16\n\x0e\x61\x63sPdfTokenUrl\x18\x0e \x01(\t\x12\x15\n\repubAvailable\x18\x0f \x01(\x08\x12\x14\n\x0cpdfAvailable\x18\x10 \x01(\x08\x12\x16\n\x0e\x61\x62outTheAuthor\x18\x11 \x01(\t\x12+\n\nidentifier\x18\x12 \x03(\n2\x17.BookDetails.Identifier\x1a.\n\nIdentifier\x12\x0c\n\x04type\x18\x13 \x01(\x05\x12\x12\n\nidentifier\x18\x14 \x01(\t\"=\n\x0b\x42ookSubject\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05query\x18\x02 \x01(\t\x12\x11\n\tsubjectId\x18\x03 \x01(\t\"+\n\nBrowseLink\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07\x64\x61taUrl\x18\x03 \x01(\t\"w\n\x0e\x42rowseResponse\x12\x13\n\x0b\x63ontentsUrl\x18\x01 \x01(\t\x12\x10\n\x08promoUrl\x18\x02 \x01(\t\x12\x1d\n\x08\x63\x61tegory\x18\x03 \x03(\x0b\x32\x0b.BrowseLink\x12\x1f\n\nbreadcrumb\x18\x04 \x03(\x0b\x32\x0b.BrowseLink\"\x8f\x02\n\x10\x41\x64\x64ressChallenge\x12\x1c\n\x14responseAddressParam\x18\x01 \x01(\t\x12\x1f\n\x17responseCheckboxesParam\x18\x02 \x01(\t\x12\r\n\x05title\x18\x03 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x04 \x01(\t\x12\x1f\n\x08\x63heckbox\x18\x05 \x03(\x0b\x32\r.FormCheckbox\x12\x19\n\x07\x61\x64\x64ress\x18\x06 \x01(\x0b\x32\x08.Address\x12.\n\x0f\x65rrorInputField\x18\x07 \x03(\x0b\x32\x15.InputValidationError\x12\x11\n\terrorHtml\x18\x08 \x01(\t\x12\x15\n\rrequiredField\x18\t \x03(\x05\"\xef\x01\n\x17\x41uthenticationChallenge\x12\x1a\n\x12\x61uthenticationType\x18\x01 \x01(\x05\x12\'\n\x1fresponseAuthenticationTypeParam\x18\x02 \x01(\t\x12\x1f\n\x17responseRetryCountParam\x18\x03 \x01(\t\x12\x15\n\rpinHeaderText\x18\x04 \x01(\t\x12\x1e\n\x16pinDescriptionTextHtml\x18\x05 \x01(\t\x12\x16\n\x0egaiaHeaderText\x18\x06 \x01(\t\x12\x1f\n\x17gaiaDescriptionTextHtml\x18\x07 \x01(\t\"\x81\t\n\x0b\x42uyResponse\x12\x37\n\x10purchaseResponse\x18\x01 \x01(\x0b\x32\x1d.PurchaseNotificationResponse\x12/\n\x0c\x63heckoutinfo\x18\x02 \x01(\n2\x19.BuyResponse.CheckoutInfo\x12\x16\n\x0e\x63ontinueViaUrl\x18\x08 \x01(\t\x12\x19\n\x11purchaseStatusUrl\x18\t \x01(\t\x12\x19\n\x11\x63heckoutServiceId\x18\x0c \x01(\t\x12\x1d\n\x15\x63heckoutTokenRequired\x18\r \x01(\x08\x12\x17\n\x0f\x62\x61seCheckoutUrl\x18\x0e \x01(\t\x12\x17\n\x0ftosCheckboxHtml\x18% \x03(\t\x12\x1a\n\x12iabPermissionError\x18& \x01(\x05\x12\x37\n\x16purchaseStatusResponse\x18\' \x01(\x0b\x32\x17.PurchaseStatusResponse\x12\x16\n\x0epurchaseCookie\x18. \x01(\t\x12\x1d\n\tchallenge\x18\x31 \x01(\x0b\x32\n.Challenge\x1a\xdc\x05\n\x0c\x43heckoutInfo\x12\x17\n\x04item\x18\x03 \x01(\x0b\x32\t.LineItem\x12\x1a\n\x07subItem\x18\x04 \x03(\x0b\x32\t.LineItem\x12@\n\x0e\x63heckoutoption\x18\x05 \x03(\n2(.BuyResponse.CheckoutInfo.CheckoutOption\x12\x1d\n\x15\x64\x65precatedCheckoutUrl\x18\n \x01(\t\x12\x18\n\x10\x61\x64\x64InstrumentUrl\x18\x0b \x01(\t\x12\x12\n\nfooterHtml\x18\x14 \x03(\t\x12 \n\x18\x65ligibleInstrumentFamily\x18\x1f \x03(\x05\x12\x14\n\x0c\x66ootnoteHtml\x18$ \x03(\t\x12\'\n\x12\x65ligibleInstrument\x18, \x03(\x0b\x32\x0b.Instrument\x1a\xa6\x03\n\x0e\x43heckoutOption\x12\x15\n\rformOfPayment\x18\x06 \x01(\t\x12\x1b\n\x13\x65ncodedAdjustedCart\x18\x07 \x01(\t\x12\x14\n\x0cinstrumentId\x18\x0f \x01(\t\x12\x17\n\x04item\x18\x10 \x03(\x0b\x32\t.LineItem\x12\x1a\n\x07subItem\x18\x11 \x03(\x0b\x32\t.LineItem\x12\x18\n\x05total\x18\x12 \x01(\x0b\x32\t.LineItem\x12\x12\n\nfooterHtml\x18\x13 \x03(\t\x12\x18\n\x10instrumentFamily\x18\x1d \x01(\x05\x12.\n&deprecatedInstrumentInapplicableReason\x18\x1e \x03(\x05\x12\x1a\n\x12selectedInstrument\x18 \x01(\x08\x12\x1a\n\x07summary\x18! \x01(\x0b\x32\t.LineItem\x12\x14\n\x0c\x66ootnoteHtml\x18# \x03(\t\x12\x1f\n\ninstrument\x18+ \x01(\x0b\x32\x0b.Instrument\x12\x16\n\x0epurchaseCookie\x18- \x01(\t\x12\x16\n\x0e\x64isabledReason\x18\x30 \x03(\t\"s\n\tChallenge\x12+\n\x10\x61\x64\x64ressChallenge\x18\x01 \x01(\x0b\x32\x11.AddressChallenge\x12\x39\n\x17\x61uthenticationChallenge\x18\x02 \x01(\x0b\x32\x18.AuthenticationChallenge\"F\n\x0c\x46ormCheckbox\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\x12\x0f\n\x07\x63hecked\x18\x02 \x01(\x08\x12\x10\n\x08required\x18\x03 \x01(\x08\"\\\n\x08LineItem\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x15\n\x05offer\x18\x03 \x01(\x0b\x32\x06.Offer\x12\x16\n\x06\x61mount\x18\x04 \x01(\x0b\x32\x06.Money\"F\n\x05Money\x12\x0e\n\x06micros\x18\x01 \x01(\x03\x12\x14\n\x0c\x63urrencyCode\x18\x02 \x01(\t\x12\x17\n\x0f\x66ormattedAmount\x18\x03 \x01(\t\"\x80\x01\n\x1cPurchaseNotificationResponse\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x1d\n\tdebugInfo\x18\x02 \x01(\x0b\x32\n.DebugInfo\x12\x1d\n\x15localizedErrorMessage\x18\x03 \x01(\t\x12\x12\n\npurchaseId\x18\x04 \x01(\t\"\xf9\x01\n\x16PurchaseStatusResponse\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x11\n\tstatusMsg\x18\x02 \x01(\t\x12\x13\n\x0bstatusTitle\x18\x03 \x01(\t\x12\x14\n\x0c\x62riefMessage\x18\x04 \x01(\t\x12\x0f\n\x07infoUrl\x18\x05 \x01(\t\x12%\n\rlibraryUpdate\x18\x06 \x01(\x0b\x32\x0e.LibraryUpdate\x12\'\n\x12rejectedInstrument\x18\x07 \x01(\x0b\x32\x0b.Instrument\x12\x30\n\x0f\x61ppDeliveryData\x18\x08 \x01(\x0b\x32\x17.AndroidAppDeliveryData\"\xa2\x01\n\x17\x43heckInstrumentResponse\x12\x1e\n\x16userHasValidInstrument\x18\x01 \x01(\x08\x12\x1d\n\x15\x63heckoutTokenRequired\x18\x02 \x01(\x08\x12\x1f\n\ninstrument\x18\x04 \x03(\x0b\x32\x0b.Instrument\x12\'\n\x12\x65ligibleInstrument\x18\x05 \x03(\x0b\x32\x0b.Instrument\"Q\n\x17UpdateInstrumentRequest\x12\x1f\n\ninstrument\x18\x01 \x01(\x0b\x32\x0b.Instrument\x12\x15\n\rcheckoutToken\x18\x02 \x01(\t\"\xd4\x01\n\x18UpdateInstrumentResponse\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x14\n\x0cinstrumentId\x18\x02 \x01(\t\x12\x17\n\x0fuserMessageHtml\x18\x03 \x01(\t\x12.\n\x0f\x65rrorInputField\x18\x04 \x03(\x0b\x32\x15.InputValidationError\x12\x1d\n\x15\x63heckoutTokenRequired\x18\x05 \x01(\x08\x12*\n\rredeemedOffer\x18\x06 \x01(\x0b\x32\x13.RedeemedPromoOffer\"0\n\x1bInitiateAssociationResponse\x12\x11\n\tuserToken\x18\x01 \x01(\t\"n\n\x19VerifyAssociationResponse\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12 \n\x0e\x62illingAddress\x18\x02 \x01(\x0b\x32\x08.Address\x12\x1f\n\ncarrierTos\x18\x03 \x01(\x0b\x32\x0b.CarrierTos\"\xcc\x01\n\x17\x41\x64\x64\x43reditCardPromoOffer\x12\x12\n\nheaderText\x18\x01 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x02 \x01(\t\x12\x15\n\x05image\x18\x03 \x01(\x0b\x32\x06.Image\x12\x1c\n\x14introductoryTextHtml\x18\x04 \x01(\t\x12\x12\n\nofferTitle\x18\x05 \x01(\t\x12\x1b\n\x13noActionDescription\x18\x06 \x01(\t\x12\x1e\n\x16termsAndConditionsHtml\x18\x07 \x01(\t\"K\n\x13\x41vailablePromoOffer\x12\x34\n\x12\x61\x64\x64\x43reditCardOffer\x18\x01 \x01(\x0b\x32\x18.AddCreditCardPromoOffer\"\x92\x01\n\x17\x43heckPromoOfferResponse\x12,\n\x0e\x61vailableOffer\x18\x01 \x03(\x0b\x32\x14.AvailablePromoOffer\x12*\n\rredeemedOffer\x18\x02 \x01(\x0b\x32\x13.RedeemedPromoOffer\x12\x1d\n\x15\x63heckoutTokenRequired\x18\x03 \x01(\x08\"X\n\x12RedeemedPromoOffer\x12\x12\n\nheaderText\x18\x01 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x02 \x01(\t\x12\x15\n\x05image\x18\x03 \x01(\x0b\x32\x06.Image\"<\n\x05\x44ocid\x12\x14\n\x0c\x62\x61\x63kendDocid\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\x05\x12\x0f\n\x07\x62\x61\x63kend\x18\x03 \x01(\x05\">\n\x07Install\x12\x11\n\tandroidId\x18\x01 \x01(\x06\x12\x0f\n\x07version\x18\x02 \x01(\x05\x12\x0f\n\x07\x62undled\x18\x03 \x01(\x08\"\x80\x03\n\x05Offer\x12\x0e\n\x06micros\x18\x01 \x01(\x03\x12\x14\n\x0c\x63urrencyCode\x18\x02 \x01(\t\x12\x17\n\x0f\x66ormattedAmount\x18\x03 \x01(\t\x12\x1e\n\x0e\x63onvertedPrice\x18\x04 \x03(\x0b\x32\x06.Offer\x12\x1c\n\x14\x63heckoutFlowRequired\x18\x05 \x01(\x08\x12\x17\n\x0f\x66ullPriceMicros\x18\x06 \x01(\x03\x12\x1b\n\x13\x66ormattedFullAmount\x18\x07 \x01(\t\x12\x11\n\tofferType\x18\x08 \x01(\x05\x12!\n\x0brentalTerms\x18\t \x01(\x0b\x32\x0c.RentalTerms\x12\x12\n\nonSaleDate\x18\n \x01(\x03\x12\x16\n\x0epromotionLabel\x18\x0b \x03(\t\x12-\n\x11subscriptionTerms\x18\x0c \x01(\x0b\x32\x12.SubscriptionTerms\x12\x15\n\rformattedName\x18\r \x01(\t\x12\x1c\n\x14\x66ormattedDescription\x18\x0e \x01(\t\"\xb1\x01\n\rOwnershipInfo\x12\x1f\n\x17initiationTimestampMsec\x18\x01 \x01(\x03\x12\x1f\n\x17validUntilTimestampMsec\x18\x02 \x01(\x03\x12\x14\n\x0c\x61utoRenewing\x18\x03 \x01(\x08\x12\"\n\x1arefundTimeoutTimestampMsec\x18\x04 \x01(\x03\x12$\n\x1cpostDeliveryRefundWindowMsec\x18\x05 \x01(\x03\"H\n\x0bRentalTerms\x12\x1a\n\x12grantPeriodSeconds\x18\x01 \x01(\x05\x12\x1d\n\x15\x61\x63tivatePeriodSeconds\x18\x02 \x01(\x05\"[\n\x11SubscriptionTerms\x12$\n\x0frecurringPeriod\x18\x01 \x01(\x0b\x32\x0b.TimePeriod\x12 \n\x0btrialPeriod\x18\x02 \x01(\x0b\x32\x0b.TimePeriod\")\n\nTimePeriod\x12\x0c\n\x04unit\x18\x01 \x01(\x05\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\"G\n\x12\x42illingAddressSpec\x12\x1a\n\x12\x62illingAddressType\x18\x01 \x01(\x05\x12\x15\n\rrequiredField\x18\x02 \x03(\x05\">\n\x19\x43\x61rrierBillingCredentials\x12\r\n\x05value\x18\x01 \x01(\t\x12\x12\n\nexpiration\x18\x02 \x01(\x03\"\xa9\x02\n\x18\x43\x61rrierBillingInstrument\x12\x15\n\rinstrumentKey\x18\x01 \x01(\t\x12\x13\n\x0b\x61\x63\x63ountType\x18\x02 \x01(\t\x12\x14\n\x0c\x63urrencyCode\x18\x03 \x01(\t\x12\x18\n\x10transactionLimit\x18\x04 \x01(\x03\x12\x1c\n\x14subscriberIdentifier\x18\x05 \x01(\t\x12\x39\n\x17\x65ncryptedSubscriberInfo\x18\x06 \x01(\x0b\x32\x18.EncryptedSubscriberInfo\x12/\n\x0b\x63redentials\x18\x07 \x01(\x0b\x32\x1a.CarrierBillingCredentials\x12\'\n\x12\x61\x63\x63\x65ptedCarrierTos\x18\x08 \x01(\x0b\x32\x0b.CarrierTos\"\xca\x01\n\x1e\x43\x61rrierBillingInstrumentStatus\x12\x1f\n\ncarrierTos\x18\x01 \x01(\x0b\x32\x0b.CarrierTos\x12\x1b\n\x13\x61ssociationRequired\x18\x02 \x01(\x08\x12\x18\n\x10passwordRequired\x18\x03 \x01(\x08\x12.\n\x15\x63\x61rrierPasswordPrompt\x18\x04 \x01(\x0b\x32\x0f.PasswordPrompt\x12\x12\n\napiVersion\x18\x05 \x01(\x05\x12\x0c\n\x04name\x18\x06 \x01(\t\"\x8e\x01\n\nCarrierTos\x12 \n\x06\x64\x63\x62Tos\x18\x01 \x01(\x0b\x32\x10.CarrierTosEntry\x12 \n\x06piiTos\x18\x02 \x01(\x0b\x32\x10.CarrierTosEntry\x12\x1d\n\x15needsDcbTosAcceptance\x18\x03 \x01(\x08\x12\x1d\n\x15needsPiiTosAcceptance\x18\x04 \x01(\x08\"/\n\x0f\x43\x61rrierTosEntry\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\"\xa2\x01\n\x14\x43reditCardInstrument\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x14\n\x0c\x65scrowHandle\x18\x02 \x01(\t\x12\x12\n\nlastDigits\x18\x03 \x01(\t\x12\x17\n\x0f\x65xpirationMonth\x18\x04 \x01(\x05\x12\x16\n\x0e\x65xpirationYear\x18\x05 \x01(\x05\x12!\n\x0e\x65scrowEfeParam\x18\x06 \x03(\x0b\x32\t.EfeParam\"&\n\x08\x45\x66\x65Param\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\t\"@\n\x14InputValidationError\x12\x12\n\ninputField\x18\x01 \x01(\x05\x12\x14\n\x0c\x65rrorMessage\x18\x02 \x01(\t\"\xc2\x02\n\nInstrument\x12\x14\n\x0cinstrumentId\x18\x01 \x01(\t\x12 \n\x0e\x62illingAddress\x18\x02 \x01(\x0b\x32\x08.Address\x12)\n\ncreditCard\x18\x03 \x01(\x0b\x32\x15.CreditCardInstrument\x12\x31\n\x0e\x63\x61rrierBilling\x18\x04 \x01(\x0b\x32\x19.CarrierBillingInstrument\x12/\n\x12\x62illingAddressSpec\x18\x05 \x01(\x0b\x32\x13.BillingAddressSpec\x12\x18\n\x10instrumentFamily\x18\x06 \x01(\x05\x12=\n\x14\x63\x61rrierBillingStatus\x18\x07 \x01(\x0b\x32\x1f.CarrierBillingInstrumentStatus\x12\x14\n\x0c\x64isplayTitle\x18\x08 \x01(\t\";\n\x0ePasswordPrompt\x12\x0e\n\x06prompt\x18\x01 \x01(\t\x12\x19\n\x11\x66orgotPasswordUrl\x18\x02 \x01(\t\"\x92\x01\n\x11\x43ontainerMetadata\x12\x11\n\tbrowseUrl\x18\x01 \x01(\t\x12\x13\n\x0bnextPageUrl\x18\x02 \x01(\t\x12\x11\n\trelevance\x18\x03 \x01(\x01\x12\x18\n\x10\x65stimatedResults\x18\x04 \x01(\x03\x12\x17\n\x0f\x61nalyticsCookie\x18\x05 \x01(\t\x12\x0f\n\x07ordered\x18\x06 \x01(\x08\"\x15\n\x13\x46lagContentResponse\"i\n\tDebugInfo\x12\x0f\n\x07message\x18\x01 \x03(\t\x12!\n\x06timing\x18\x02 \x03(\n2\x11.DebugInfo.Timing\x1a(\n\x06Timing\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x10\n\x08timeInMs\x18\x04 \x01(\x01\"T\n\x10\x44\x65liveryResponse\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x30\n\x0f\x61ppDeliveryData\x18\x02 \x01(\x0b\x32\x17.AndroidAppDeliveryData\"\'\n\x10\x42ulkDetailsEntry\x12\x13\n\x03\x64oc\x18\x01 \x01(\x0b\x32\x06.DocV2\"=\n\x12\x42ulkDetailsRequest\x12\r\n\x05\x64ocid\x18\x01 \x03(\t\x12\x18\n\x10includeChildDocs\x18\x02 \x01(\x08\"7\n\x13\x42ulkDetailsResponse\x12 \n\x05\x65ntry\x18\x01 \x03(\x0b\x32\x11.BulkDetailsEntry\"\x89\x01\n\x0f\x44\x65tailsResponse\x12\x15\n\x05\x64ocV1\x18\x01 \x01(\x0b\x32\x06.DocV1\x12\x17\n\x0f\x61nalyticsCookie\x18\x02 \x01(\t\x12\x1b\n\nuserReview\x18\x03 \x01(\x0b\x32\x07.Review\x12\x15\n\x05\x64ocV2\x18\x04 \x01(\x0b\x32\x06.DocV2\x12\x12\n\nfooterHtml\x18\x05 \x01(\t\"\xb5\x03\n\x18\x44\x65viceConfigurationProto\x12\x13\n\x0btouchScreen\x18\x01 \x01(\x05\x12\x10\n\x08keyboard\x18\x02 \x01(\x05\x12\x12\n\nnavigation\x18\x03 \x01(\x05\x12\x14\n\x0cscreenLayout\x18\x04 \x01(\x05\x12\x17\n\x0fhasHardKeyboard\x18\x05 \x01(\x08\x12\x1c\n\x14hasFiveWayNavigation\x18\x06 \x01(\x08\x12\x15\n\rscreenDensity\x18\x07 \x01(\x05\x12\x13\n\x0bglEsVersion\x18\x08 \x01(\x05\x12\x1b\n\x13systemSharedLibrary\x18\t \x03(\t\x12\x1e\n\x16systemAvailableFeature\x18\n \x03(\t\x12\x16\n\x0enativePlatform\x18\x0b \x03(\t\x12\x13\n\x0bscreenWidth\x18\x0c \x01(\x05\x12\x14\n\x0cscreenHeight\x18\r \x01(\x05\x12\x1d\n\x15systemSupportedLocale\x18\x0e \x03(\t\x12\x13\n\x0bglExtension\x18\x0f \x03(\t\x12\x13\n\x0b\x64\x65viceClass\x18\x10 \x01(\x05\x12\x1c\n\x14maxApkDownloadSizeMb\x18\x11 \x01(\x05\"\xff\x03\n\x08\x44ocument\x12\x15\n\x05\x64ocid\x18\x01 \x01(\x0b\x32\x06.Docid\x12\x1a\n\nfetchDocid\x18\x02 \x01(\x0b\x32\x06.Docid\x12\x1b\n\x0bsampleDocid\x18\x03 \x01(\x0b\x32\x06.Docid\x12\r\n\x05title\x18\x04 \x01(\t\x12\x0b\n\x03url\x18\x05 \x01(\t\x12\x0f\n\x07snippet\x18\x06 \x03(\t\x12\x1f\n\x0fpriceDeprecated\x18\x07 \x01(\x0b\x32\x06.Offer\x12#\n\x0c\x61vailability\x18\t \x01(\x0b\x32\r.Availability\x12\x15\n\x05image\x18\n \x03(\x0b\x32\x06.Image\x12\x18\n\x05\x63hild\x18\x0b \x03(\x0b\x32\t.Document\x12)\n\x0f\x61ggregateRating\x18\r \x01(\x0b\x32\x10.AggregateRating\x12\x15\n\x05offer\x18\x0e \x03(\x0b\x32\x06.Offer\x12*\n\x11translatedSnippet\x18\x0f \x03(\x0b\x32\x0f.TranslatedText\x12)\n\x0f\x64ocumentVariant\x18\x10 \x03(\x0b\x32\x10.DocumentVariant\x12\x12\n\ncategoryId\x18\x11 \x03(\t\x12\x1d\n\ndecoration\x18\x12 \x03(\x0b\x32\t.Document\x12\x19\n\x06parent\x18\x13 \x03(\x0b\x32\t.Document\x12\x18\n\x10privacyPolicyUrl\x18\x14 \x01(\t\"\x81\x02\n\x0f\x44ocumentVariant\x12\x15\n\rvariationType\x18\x01 \x01(\x05\x12\x13\n\x04rule\x18\x02 \x01(\x0b\x32\x05.Rule\x12\r\n\x05title\x18\x03 \x01(\t\x12\x0f\n\x07snippet\x18\x04 \x03(\t\x12\x15\n\rrecentChanges\x18\x05 \x01(\t\x12(\n\x0f\x61utoTranslation\x18\x06 \x03(\x0b\x32\x0f.TranslatedText\x12\x15\n\x05offer\x18\x07 \x03(\x0b\x32\x06.Offer\x12\x11\n\tchannelId\x18\t \x01(\x03\x12\x18\n\x05\x63hild\x18\n \x03(\x0b\x32\t.Document\x12\x1d\n\ndecoration\x18\x0b \x03(\x0b\x32\t.Document\"\xba\x02\n\x05Image\x12\x11\n\timageType\x18\x01 \x01(\x05\x12#\n\tdimension\x18\x02 \x01(\n2\x10.Image.Dimension\x12\x10\n\x08imageUrl\x18\x05 \x01(\t\x12\x18\n\x10\x61ltTextLocalized\x18\x06 \x01(\t\x12\x11\n\tsecureUrl\x18\x07 \x01(\t\x12\x1a\n\x12positionInSequence\x18\x08 \x01(\x05\x12\x1e\n\x16supportsFifeUrlOptions\x18\t \x01(\x08\x12!\n\x08\x63itation\x18\n \x01(\n2\x0f.Image.Citation\x1a*\n\tDimension\x12\r\n\x05width\x18\x03 \x01(\x05\x12\x0e\n\x06height\x18\x04 \x01(\x05\x1a/\n\x08\x43itation\x12\x16\n\x0etitleLocalized\x18\x0b \x01(\t\x12\x0b\n\x03url\x18\x0c \x01(\t\"J\n\x0eTranslatedText\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x14\n\x0csourceLocale\x18\x02 \x01(\t\x12\x14\n\x0ctargetLocale\x18\x03 \x01(\t\"@\n\x05\x42\x61\x64ge\x12\r\n\x05title\x18\x01 \x01(\t\x12\x15\n\x05image\x18\x02 \x03(\x0b\x32\x06.Image\x12\x11\n\tbrowseUrl\x18\x03 \x01(\t\"-\n\x13\x43ontainerWithBanner\x12\x16\n\x0e\x63olorThemeArgb\x18\x01 \x01(\t\">\n\x0c\x44\x65\x61lOfTheDay\x12\x16\n\x0e\x66\x65\x61turedHeader\x18\x01 \x01(\t\x12\x16\n\x0e\x63olorThemeArgb\x18\x02 \x01(\t\"\x8e\x01\n\x18\x45\x64itorialSeriesContainer\x12\x13\n\x0bseriesTitle\x18\x01 \x01(\t\x12\x16\n\x0eseriesSubtitle\x18\x02 \x01(\t\x12\x14\n\x0c\x65pisodeTitle\x18\x03 \x01(\t\x12\x17\n\x0f\x65pisodeSubtitle\x18\x04 \x01(\t\x12\x16\n\x0e\x63olorThemeArgb\x18\x05 \x01(\t\"\x13\n\x04Link\x12\x0b\n\x03uri\x18\x01 \x01(\t\"i\n\x0bPlusOneData\x12\x11\n\tsetByUser\x18\x01 \x01(\x08\x12\r\n\x05total\x18\x02 \x01(\x03\x12\x14\n\x0c\x63irclesTotal\x18\x03 \x01(\x03\x12\"\n\rcirclesPeople\x18\x04 \x03(\x0b\x32\x0b.PlusPerson\":\n\nPlusPerson\x12\x13\n\x0b\x64isplayName\x18\x02 \x01(\t\x12\x17\n\x0fprofileImageUrl\x18\x04 \x01(\t\"r\n\x0bPromotedDoc\x12\r\n\x05title\x18\x01 \x01(\t\x12\x10\n\x08subtitle\x18\x02 \x01(\t\x12\x15\n\x05image\x18\x03 \x03(\x0b\x32\x06.Image\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x04 \x01(\t\x12\x12\n\ndetailsUrl\x18\x05 \x01(\t\"G\n\x06Reason\x12\x13\n\x0b\x62riefReason\x18\x01 \x01(\t\x12\x16\n\x0e\x64\x65tailedReason\x18\x02 \x01(\t\x12\x10\n\x08uniqueId\x18\x03 \x01(\t\"^\n\x0fSectionMetadata\x12\x0e\n\x06header\x18\x01 \x01(\t\x12\x0f\n\x07listUrl\x18\x02 \x01(\t\x12\x11\n\tbrowseUrl\x18\x03 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x04 \x01(\t\"\xd5\x01\n\rSeriesAntenna\x12\x13\n\x0bseriesTitle\x18\x01 \x01(\t\x12\x16\n\x0eseriesSubtitle\x18\x02 \x01(\t\x12\x14\n\x0c\x65pisodeTitle\x18\x03 \x01(\t\x12\x17\n\x0f\x65pisodeSubtitle\x18\x04 \x01(\t\x12\x16\n\x0e\x63olorThemeArgb\x18\x05 \x01(\t\x12\'\n\rsectionTracks\x18\x06 \x01(\x0b\x32\x10.SectionMetadata\x12\'\n\rsectionAlbums\x18\x07 \x01(\x0b\x32\x10.SectionMetadata\"\x8f\x04\n\x08Template\x12%\n\rseriesAntenna\x18\x01 \x01(\x0b\x32\x0e.SeriesAntenna\x12%\n\x0etileGraphic2X1\x18\x02 \x01(\x0b\x32\r.TileTemplate\x12%\n\x0etileGraphic4X2\x18\x03 \x01(\x0b\x32\r.TileTemplate\x12\x31\n\x1atileGraphicColoredTitle2X1\x18\x04 \x01(\x0b\x32\r.TileTemplate\x12\x33\n\x1ctileGraphicUpperLeftTitle2X1\x18\x05 \x01(\x0b\x32\r.TileTemplate\x12\x35\n\x1etileDetailsReflectedGraphic2X2\x18\x06 \x01(\x0b\x32\r.TileTemplate\x12\'\n\x10tileFourBlock4X2\x18\x07 \x01(\x0b\x32\r.TileTemplate\x12\x31\n\x13\x63ontainerWithBanner\x18\x08 \x01(\x0b\x32\x14.ContainerWithBanner\x12#\n\x0c\x64\x65\x61lOfTheDay\x18\t \x01(\x0b\x32\r.DealOfTheDay\x12\x31\n\x1atileGraphicColoredTitle4X2\x18\n \x01(\x0b\x32\r.TileTemplate\x12;\n\x18\x65\x64itorialSeriesContainer\x18\x0b \x01(\x0b\x32\x19.EditorialSeriesContainer\"=\n\x0cTileTemplate\x12\x16\n\x0e\x63olorThemeArgb\x18\x01 \x01(\t\x12\x15\n\rcolorTextArgb\x18\x02 \x01(\t\"#\n\x07Warning\x12\x18\n\x10localizedMessage\x18\x01 \x01(\t\"c\n\x0c\x41lbumDetails\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1e\n\x07\x64\x65tails\x18\x02 \x01(\x0b\x32\r.MusicDetails\x12%\n\rdisplayArtist\x18\x03 \x01(\x0b\x32\x0e.ArtistDetails\"\x8e\x03\n\nAppDetails\x12\x15\n\rdeveloperName\x18\x01 \x01(\t\x12\x1a\n\x12majorVersionNumber\x18\x02 \x01(\x05\x12\x13\n\x0bversionCode\x18\x03 \x01(\x05\x12\x15\n\rversionString\x18\x04 \x01(\t\x12\r\n\x05title\x18\x05 \x01(\t\x12\x13\n\x0b\x61ppCategory\x18\x07 \x03(\t\x12\x15\n\rcontentRating\x18\x08 \x01(\x05\x12\x18\n\x10installationSize\x18\t \x01(\x03\x12\x12\n\npermission\x18\n \x03(\t\x12\x16\n\x0e\x64\x65veloperEmail\x18\x0b \x01(\t\x12\x18\n\x10\x64\x65veloperWebsite\x18\x0c \x01(\t\x12\x14\n\x0cnumDownloads\x18\r \x01(\t\x12\x13\n\x0bpackageName\x18\x0e \x01(\t\x12\x19\n\x11recentChangesHtml\x18\x0f \x01(\t\x12\x12\n\nuploadDate\x18\x10 \x01(\t\x12\x1b\n\x04\x66ile\x18\x11 \x03(\x0b\x32\r.FileMetadata\x12\x0f\n\x07\x61ppType\x18\x12 \x01(\t\"^\n\rArtistDetails\x12\x12\n\ndetailsUrl\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\rexternalLinks\x18\x03 \x01(\x0b\x32\x14.ArtistExternalLinks\"b\n\x13\x41rtistExternalLinks\x12\x12\n\nwebsiteUrl\x18\x01 \x03(\t\x12\x1c\n\x14googlePlusProfileUrl\x18\x02 \x01(\t\x12\x19\n\x11youtubeChannelUrl\x18\x03 \x01(\t\"\xc6\x03\n\x0f\x44ocumentDetails\x12\x1f\n\nappDetails\x18\x01 \x01(\x0b\x32\x0b.AppDetails\x12#\n\x0c\x61lbumDetails\x18\x02 \x01(\x0b\x32\r.AlbumDetails\x12%\n\rartistDetails\x18\x03 \x01(\x0b\x32\x0e.ArtistDetails\x12!\n\x0bsongDetails\x18\x04 \x01(\x0b\x32\x0c.SongDetails\x12!\n\x0b\x62ookDetails\x18\x05 \x01(\x0b\x32\x0c.BookDetails\x12#\n\x0cvideoDetails\x18\x06 \x01(\x0b\x32\r.VideoDetails\x12\x31\n\x13subscriptionDetails\x18\x07 \x01(\x0b\x32\x14.SubscriptionDetails\x12)\n\x0fmagazineDetails\x18\x08 \x01(\x0b\x32\x10.MagazineDetails\x12%\n\rtvShowDetails\x18\t \x01(\x0b\x32\x0e.TvShowDetails\x12)\n\x0ftvSeasonDetails\x18\n \x01(\x0b\x32\x10.TvSeasonDetails\x12+\n\x10tvEpisodeDetails\x18\x0b \x01(\x0b\x32\x11.TvEpisodeDetails\"C\n\x0c\x46ileMetadata\x12\x10\n\x08\x66ileType\x18\x01 \x01(\x05\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0c\n\x04size\x18\x03 \x01(\x03\"\x94\x01\n\x0fMagazineDetails\x12\x18\n\x10parentDetailsUrl\x18\x01 \x01(\t\x12)\n!deviceAvailabilityDescriptionHtml\x18\x02 \x01(\t\x12\x16\n\x0epsvDescription\x18\x03 \x01(\t\x12$\n\x1c\x64\x65liveryFrequencyDescription\x18\x04 \x01(\t\"\xbb\x01\n\x0cMusicDetails\x12\x11\n\tcensoring\x18\x01 \x01(\x05\x12\x13\n\x0b\x64urationSec\x18\x02 \x01(\x05\x12\x1b\n\x13originalReleaseDate\x18\x03 \x01(\t\x12\r\n\x05label\x18\x04 \x01(\t\x12\x1e\n\x06\x61rtist\x18\x05 \x03(\x0b\x32\x0e.ArtistDetails\x12\r\n\x05genre\x18\x06 \x03(\t\x12\x13\n\x0breleaseDate\x18\x07 \x01(\t\x12\x13\n\x0breleaseType\x18\x08 \x03(\x05\"\x9e\x01\n\x0bSongDetails\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1e\n\x07\x64\x65tails\x18\x02 \x01(\x0b\x32\r.MusicDetails\x12\x11\n\talbumName\x18\x03 \x01(\t\x12\x13\n\x0btrackNumber\x18\x04 \x01(\x05\x12\x12\n\npreviewUrl\x18\x05 \x01(\t\x12%\n\rdisplayArtist\x18\x06 \x01(\x0b\x32\x0e.ArtistDetails\"1\n\x13SubscriptionDetails\x12\x1a\n\x12subscriptionPeriod\x18\x01 \x01(\x05\"e\n\x07Trailer\x12\x11\n\ttrailerId\x18\x01 \x01(\t\x12\r\n\x05title\x18\x02 \x01(\t\x12\x14\n\x0cthumbnailUrl\x18\x03 \x01(\t\x12\x10\n\x08watchUrl\x18\x04 \x01(\t\x12\x10\n\x08\x64uration\x18\x05 \x01(\t\"W\n\x10TvEpisodeDetails\x12\x18\n\x10parentDetailsUrl\x18\x01 \x01(\t\x12\x14\n\x0c\x65pisodeIndex\x18\x02 \x01(\x05\x12\x13\n\x0breleaseDate\x18\x03 \x01(\t\"j\n\x0fTvSeasonDetails\x12\x18\n\x10parentDetailsUrl\x18\x01 \x01(\t\x12\x13\n\x0bseasonIndex\x18\x02 \x01(\x05\x12\x13\n\x0breleaseDate\x18\x03 \x01(\t\x12\x13\n\x0b\x62roadcaster\x18\x04 \x01(\t\"]\n\rTvShowDetails\x12\x13\n\x0bseasonCount\x18\x01 \x01(\x05\x12\x11\n\tstartYear\x18\x02 \x01(\x05\x12\x0f\n\x07\x65ndYear\x18\x03 \x01(\x05\x12\x13\n\x0b\x62roadcaster\x18\x04 \x01(\t\"?\n\x0bVideoCredit\x12\x12\n\ncreditType\x18\x01 \x01(\x05\x12\x0e\n\x06\x63redit\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x03(\t\"\xdb\x01\n\x0cVideoDetails\x12\x1c\n\x06\x63redit\x18\x01 \x03(\x0b\x32\x0c.VideoCredit\x12\x10\n\x08\x64uration\x18\x02 \x01(\t\x12\x13\n\x0breleaseDate\x18\x03 \x01(\t\x12\x15\n\rcontentRating\x18\x04 \x01(\t\x12\r\n\x05likes\x18\x05 \x01(\x03\x12\x10\n\x08\x64islikes\x18\x06 \x01(\x03\x12\r\n\x05genre\x18\x07 \x03(\t\x12\x19\n\x07trailer\x18\x08 \x03(\x0b\x32\x08.Trailer\x12$\n\nrentalTerm\x18\t \x03(\x0b\x32\x10.VideoRentalTerm\"\xa0\x01\n\x0fVideoRentalTerm\x12\x11\n\tofferType\x18\x01 \x01(\x05\x12\x19\n\x11offerAbbreviation\x18\x02 \x01(\t\x12\x14\n\x0crentalHeader\x18\x03 \x01(\t\x12#\n\x04term\x18\x04 \x03(\n2\x15.VideoRentalTerm.Term\x1a$\n\x04Term\x12\x0e\n\x06header\x18\x05 \x01(\t\x12\x0c\n\x04\x62ody\x18\x06 \x01(\t\"\xf9\x01\n\x06\x42ucket\x12\x18\n\x08\x64ocument\x18\x01 \x03(\x0b\x32\x06.DocV1\x12\x13\n\x0bmultiCorpus\x18\x02 \x01(\x08\x12\r\n\x05title\x18\x03 \x01(\t\x12\x0f\n\x07iconUrl\x18\x04 \x01(\t\x12\x17\n\x0f\x66ullContentsUrl\x18\x05 \x01(\t\x12\x11\n\trelevance\x18\x06 \x01(\x01\x12\x18\n\x10\x65stimatedResults\x18\x07 \x01(\x03\x12\x17\n\x0f\x61nalyticsCookie\x18\x08 \x01(\t\x12\x1b\n\x13\x66ullContentsListUrl\x18\t \x01(\t\x12\x13\n\x0bnextPageUrl\x18\n \x01(\t\x12\x0f\n\x07ordered\x18\x0b \x01(\x08\"<\n\x0cListResponse\x12\x17\n\x06\x62ucket\x18\x01 \x03(\x0b\x32\x07.Bucket\x12\x13\n\x03\x64oc\x18\x02 \x03(\x0b\x32\x06.DocV2\"\x94\x03\n\x05\x44ocV1\x12\x1c\n\tfinskyDoc\x18\x01 \x01(\x0b\x32\t.Document\x12\r\n\x05\x64ocid\x18\x02 \x01(\t\x12\x12\n\ndetailsUrl\x18\x03 \x01(\t\x12\x12\n\nreviewsUrl\x18\x04 \x01(\t\x12\x16\n\x0erelatedListUrl\x18\x05 \x01(\t\x12\x15\n\rmoreByListUrl\x18\x06 \x01(\t\x12\x10\n\x08shareUrl\x18\x07 \x01(\t\x12\x0f\n\x07\x63reator\x18\x08 \x01(\t\x12!\n\x07\x64\x65tails\x18\t \x01(\x0b\x32\x10.DocumentDetails\x12\x17\n\x0f\x64\x65scriptionHtml\x18\n \x01(\t\x12\x18\n\x10relatedBrowseUrl\x18\x0b \x01(\t\x12\x17\n\x0fmoreByBrowseUrl\x18\x0c \x01(\t\x12\x15\n\rrelatedHeader\x18\r \x01(\t\x12\x14\n\x0cmoreByHeader\x18\x0e \x01(\t\x12\r\n\x05title\x18\x0f \x01(\t\x12!\n\x0bplusOneData\x18\x10 \x01(\x0b\x32\x0c.PlusOneData\x12\x16\n\x0ewarningMessage\x18\x11 \x01(\t\"\xcd\x04\n\x0b\x41nnotations\x12(\n\x0esectionRelated\x18\x01 \x01(\x0b\x32\x10.SectionMetadata\x12\'\n\rsectionMoreBy\x18\x02 \x01(\x0b\x32\x10.SectionMetadata\x12!\n\x0bplusOneData\x18\x03 \x01(\x0b\x32\x0c.PlusOneData\x12\x19\n\x07warning\x18\x04 \x03(\x0b\x32\x08.Warning\x12+\n\x11sectionBodyOfWork\x18\x05 \x01(\x0b\x32\x10.SectionMetadata\x12,\n\x12sectionCoreContent\x18\x06 \x01(\x0b\x32\x10.SectionMetadata\x12\x1b\n\x08template\x18\x07 \x01(\x0b\x32\t.Template\x12\x1f\n\x0f\x62\x61\x64geForCreator\x18\x08 \x03(\x0b\x32\x06.Badge\x12\x1b\n\x0b\x62\x61\x64geForDoc\x18\t \x03(\x0b\x32\x06.Badge\x12\x13\n\x04link\x18\n \x01(\x0b\x32\x05.Link\x12*\n\x10sectionCrossSell\x18\x0b \x01(\x0b\x32\x10.SectionMetadata\x12/\n\x15sectionRelatedDocType\x18\x0c \x01(\x0b\x32\x10.SectionMetadata\x12!\n\x0bpromotedDoc\x18\r \x03(\x0b\x32\x0c.PromotedDoc\x12\x11\n\tofferNote\x18\x0e \x01(\t\x12\x1c\n\x0csubscription\x18\x10 \x03(\x0b\x32\x06.DocV2\x12\x17\n\x06reason\x18\x11 \x01(\x0b\x32\x07.Reason\x12\x18\n\x10privacyPolicyUrl\x18\x12 \x01(\t\"\xa8\x04\n\x05\x44ocV2\x12\r\n\x05\x64ocid\x18\x01 \x01(\t\x12\x14\n\x0c\x62\x61\x63kendDocid\x18\x02 \x01(\t\x12\x0f\n\x07\x64ocType\x18\x03 \x01(\x05\x12\x11\n\tbackendId\x18\x04 \x01(\x05\x12\r\n\x05title\x18\x05 \x01(\t\x12\x0f\n\x07\x63reator\x18\x06 \x01(\t\x12\x17\n\x0f\x64\x65scriptionHtml\x18\x07 \x01(\t\x12\x15\n\x05offer\x18\x08 \x03(\x0b\x32\x06.Offer\x12#\n\x0c\x61vailability\x18\t \x01(\x0b\x32\r.Availability\x12\x15\n\x05image\x18\n \x03(\x0b\x32\x06.Image\x12\x15\n\x05\x63hild\x18\x0b \x03(\x0b\x32\x06.DocV2\x12-\n\x11\x63ontainerMetadata\x18\x0c \x01(\x0b\x32\x12.ContainerMetadata\x12!\n\x07\x64\x65tails\x18\r \x01(\x0b\x32\x10.DocumentDetails\x12)\n\x0f\x61ggregateRating\x18\x0e \x01(\x0b\x32\x10.AggregateRating\x12!\n\x0b\x61nnotations\x18\x0f \x01(\x0b\x32\x0c.Annotations\x12\x12\n\ndetailsUrl\x18\x10 \x01(\t\x12\x10\n\x08shareUrl\x18\x11 \x01(\t\x12\x12\n\nreviewsUrl\x18\x12 \x01(\t\x12\x12\n\nbackendUrl\x18\x13 \x01(\t\x12\x1a\n\x12purchaseDetailsUrl\x18\x14 \x01(\t\x12\x17\n\x0f\x64\x65tailsReusable\x18\x15 \x01(\x08\x12\x10\n\x08subtitle\x18\x16 \x01(\t\"\x99\x01\n\x17\x45ncryptedSubscriberInfo\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\t\x12\x14\n\x0c\x65ncryptedKey\x18\x02 \x01(\t\x12\x11\n\tsignature\x18\x03 \x01(\t\x12\x12\n\ninitVector\x18\x04 \x01(\t\x12\x18\n\x10googleKeyVersion\x18\x05 \x01(\x05\x12\x19\n\x11\x63\x61rrierKeyVersion\x18\x06 \x01(\x05\"\xbd\x03\n\x0c\x41vailability\x12\x13\n\x0brestriction\x18\x05 \x01(\x05\x12\x11\n\tofferType\x18\x06 \x01(\x05\x12\x13\n\x04rule\x18\x07 \x01(\x0b\x32\x05.Rule\x12X\n perdeviceavailabilityrestriction\x18\t \x03(\n2..Availability.PerDeviceAvailabilityRestriction\x12\x18\n\x10\x61vailableIfOwned\x18\r \x01(\x08\x12\x19\n\x07install\x18\x0e \x03(\x0b\x32\x08.Install\x12)\n\nfilterInfo\x18\x10 \x01(\x0b\x32\x15.FilterEvaluationInfo\x12%\n\rownershipInfo\x18\x11 \x01(\x0b\x32\x0e.OwnershipInfo\x1a\x8e\x01\n PerDeviceAvailabilityRestriction\x12\x11\n\tandroidId\x18\n \x01(\x06\x12\x19\n\x11\x64\x65viceRestriction\x18\x0b \x01(\x05\x12\x11\n\tchannelId\x18\x0c \x01(\x03\x12)\n\nfilterInfo\x18\x0f \x01(\x0b\x32\x15.FilterEvaluationInfo\"?\n\x14\x46ilterEvaluationInfo\x12\'\n\x0eruleEvaluation\x18\x01 \x03(\x0b\x32\x0f.RuleEvaluation\"\xd4\x01\n\x04Rule\x12\x0e\n\x06negate\x18\x01 \x01(\x08\x12\x10\n\x08operator\x18\x02 \x01(\x05\x12\x0b\n\x03key\x18\x03 \x01(\x05\x12\x11\n\tstringArg\x18\x04 \x03(\t\x12\x0f\n\x07longArg\x18\x05 \x03(\x03\x12\x11\n\tdoubleArg\x18\x06 \x03(\x01\x12\x16\n\x07subrule\x18\x07 \x03(\x0b\x32\x05.Rule\x12\x14\n\x0cresponseCode\x18\x08 \x01(\x05\x12\x0f\n\x07\x63omment\x18\t \x01(\t\x12\x15\n\rstringArgHash\x18\n \x03(\x06\x12\x10\n\x08\x63onstArg\x18\x0b \x03(\x05\"\x8d\x01\n\x0eRuleEvaluation\x12\x13\n\x04rule\x18\x01 \x01(\x0b\x32\x05.Rule\x12\x19\n\x11\x61\x63tualStringValue\x18\x02 \x03(\t\x12\x17\n\x0f\x61\x63tualLongValue\x18\x03 \x03(\x03\x12\x17\n\x0f\x61\x63tualBoolValue\x18\x04 \x03(\x08\x12\x19\n\x11\x61\x63tualDoubleValue\x18\x05 \x03(\x01\"v\n\x11LibraryAppDetails\x12\x17\n\x0f\x63\x65rtificateHash\x18\x02 \x01(\t\x12\"\n\x1arefundTimeoutTimestampMsec\x18\x03 \x01(\x03\x12$\n\x1cpostDeliveryRefundWindowMsec\x18\x04 \x01(\x03\"\xc4\x01\n\x0fLibraryMutation\x12\x15\n\x05\x64ocid\x18\x01 \x01(\x0b\x32\x06.Docid\x12\x11\n\tofferType\x18\x02 \x01(\x05\x12\x14\n\x0c\x64ocumentHash\x18\x03 \x01(\x03\x12\x0f\n\x07\x64\x65leted\x18\x04 \x01(\x08\x12&\n\nappDetails\x18\x05 \x01(\x0b\x32\x12.LibraryAppDetails\x12\x38\n\x13subscriptionDetails\x18\x06 \x01(\x0b\x32\x1b.LibrarySubscriptionDetails\"\x95\x01\n\x1aLibrarySubscriptionDetails\x12\x1f\n\x17initiationTimestampMsec\x18\x01 \x01(\x03\x12\x1f\n\x17validUntilTimestampMsec\x18\x02 \x01(\x03\x12\x14\n\x0c\x61utoRenewing\x18\x03 \x01(\x08\x12\x1f\n\x17trialUntilTimestampMsec\x18\x04 \x01(\x03\"\x8c\x01\n\rLibraryUpdate\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x0e\n\x06\x63orpus\x18\x02 \x01(\x05\x12\x13\n\x0bserverToken\x18\x03 \x01(\x0c\x12\"\n\x08mutation\x18\x04 \x03(\x0b\x32\x10.LibraryMutation\x12\x0f\n\x07hasMore\x18\x05 \x01(\x08\x12\x11\n\tlibraryId\x18\x06 \x01(\t\"c\n\x12\x43lientLibraryState\x12\x0e\n\x06\x63orpus\x18\x01 \x01(\x05\x12\x13\n\x0bserverToken\x18\x02 \x01(\x0c\x12\x13\n\x0bhashCodeSum\x18\x03 \x01(\x03\x12\x13\n\x0blibrarySize\x18\x04 \x01(\x05\"F\n\x19LibraryReplicationRequest\x12)\n\x0clibraryState\x18\x01 \x03(\x0b\x32\x13.ClientLibraryState\"<\n\x1aLibraryReplicationResponse\x12\x1e\n\x06update\x18\x01 \x03(\x0b\x32\x0e.LibraryUpdate\"l\n\rClickLogEvent\x12\x11\n\teventTime\x18\x01 \x01(\x03\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06listId\x18\x03 \x01(\t\x12\x13\n\x0breferrerUrl\x18\x04 \x01(\t\x12\x16\n\x0ereferrerListId\x18\x05 \x01(\t\"0\n\nLogRequest\x12\"\n\nclickEvent\x18\x01 \x03(\x0b\x32\x0e.ClickLogEvent\"\r\n\x0bLogResponse\"B\n\x1a\x41ndroidAppNotificationData\x12\x13\n\x0bversionCode\x18\x01 \x01(\x05\x12\x0f\n\x07\x61ssetId\x18\x02 \x01(\t\"M\n\x15InAppNotificationData\x12\x17\n\x0f\x63heckoutOrderId\x18\x01 \x01(\t\x12\x1b\n\x13inAppNotificationId\x18\x02 \x01(\t\"#\n\x10LibraryDirtyData\x12\x0f\n\x07\x62\x61\x63kend\x18\x01 \x01(\x05\"\x97\x04\n\x0cNotification\x12\x18\n\x10notificationType\x18\x01 \x01(\x05\x12\x11\n\ttimestamp\x18\x03 \x01(\x03\x12\x15\n\x05\x64ocid\x18\x04 \x01(\x0b\x32\x06.Docid\x12\x10\n\x08\x64ocTitle\x18\x05 \x01(\t\x12\x11\n\tuserEmail\x18\x06 \x01(\t\x12,\n\x07\x61ppData\x18\x07 \x01(\x0b\x32\x1b.AndroidAppNotificationData\x12\x30\n\x0f\x61ppDeliveryData\x18\x08 \x01(\x0b\x32\x17.AndroidAppDeliveryData\x12\x31\n\x13purchaseRemovalData\x18\t \x01(\x0b\x32\x14.PurchaseRemovalData\x12\x33\n\x14userNotificationData\x18\n \x01(\x0b\x32\x15.UserNotificationData\x12\x35\n\x15inAppNotificationData\x18\x0b \x01(\x0b\x32\x16.InAppNotificationData\x12\x33\n\x14purchaseDeclinedData\x18\x0c \x01(\x0b\x32\x15.PurchaseDeclinedData\x12\x16\n\x0enotificationId\x18\r \x01(\t\x12%\n\rlibraryUpdate\x18\x0e \x01(\x0b\x32\x0e.LibraryUpdate\x12+\n\x10libraryDirtyData\x18\x0f \x01(\x0b\x32\x11.LibraryDirtyData\"@\n\x14PurchaseDeclinedData\x12\x0e\n\x06reason\x18\x01 \x01(\x05\x12\x18\n\x10showNotification\x18\x02 \x01(\x08\"(\n\x13PurchaseRemovalData\x12\x11\n\tmalicious\x18\x01 \x01(\x08\"\x88\x01\n\x14UserNotificationData\x12\x19\n\x11notificationTitle\x18\x01 \x01(\t\x12\x18\n\x10notificationText\x18\x02 \x01(\t\x12\x12\n\ntickerText\x18\x03 \x01(\t\x12\x13\n\x0b\x64ialogTitle\x18\x04 \x01(\t\x12\x12\n\ndialogText\x18\x05 \x01(\t\"\x11\n\x0fPlusOneResponse\"\x1e\n\x1cRateSuggestedContentResponse\"\xa7\x02\n\x0f\x41ggregateRating\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x12\n\nstarRating\x18\x02 \x01(\x02\x12\x14\n\x0cratingsCount\x18\x03 \x01(\x04\x12\x16\n\x0eoneStarRatings\x18\x04 \x01(\x04\x12\x16\n\x0etwoStarRatings\x18\x05 \x01(\x04\x12\x18\n\x10threeStarRatings\x18\x06 \x01(\x04\x12\x17\n\x0f\x66ourStarRatings\x18\x07 \x01(\x04\x12\x17\n\x0f\x66iveStarRatings\x18\x08 \x01(\x04\x12\x15\n\rthumbsUpCount\x18\t \x01(\x04\x12\x17\n\x0fthumbsDownCount\x18\n \x01(\x04\x12\x14\n\x0c\x63ommentCount\x18\x0b \x01(\x04\x12\x1a\n\x12\x62\x61yesianMeanRating\x18\x0c \x01(\x01\"c\n\x0e\x44irectPurchase\x12\x12\n\ndetailsUrl\x18\x01 \x01(\t\x12\x15\n\rpurchaseDocid\x18\x02 \x01(\t\x12\x13\n\x0bparentDocid\x18\x03 \x01(\t\x12\x11\n\tofferType\x18\x04 \x01(\x05\"\x89\x01\n\x13ResolveLinkResponse\x12\x12\n\ndetailsUrl\x18\x01 \x01(\t\x12\x11\n\tbrowseUrl\x18\x02 \x01(\t\x12\x11\n\tsearchUrl\x18\x03 \x01(\t\x12\'\n\x0e\x64irectPurchase\x18\x04 \x01(\x0b\x32\x0f.DirectPurchase\x12\x0f\n\x07homeUrl\x18\x05 \x01(\t\"\xb5\t\n\x07Payload\x12#\n\x0clistResponse\x18\x01 \x01(\x0b\x32\r.ListResponse\x12)\n\x0f\x64\x65tailsResponse\x18\x02 \x01(\x0b\x32\x10.DetailsResponse\x12\'\n\x0ereviewResponse\x18\x03 \x01(\x0b\x32\x0f.ReviewResponse\x12!\n\x0b\x62uyResponse\x18\x04 \x01(\x0b\x32\x0c.BuyResponse\x12\'\n\x0esearchResponse\x18\x05 \x01(\x0b\x32\x0f.SearchResponse\x12!\n\x0btocResponse\x18\x06 \x01(\x0b\x32\x0c.TocResponse\x12\'\n\x0e\x62rowseResponse\x18\x07 \x01(\x0b\x32\x0f.BrowseResponse\x12\x37\n\x16purchaseStatusResponse\x18\x08 \x01(\x0b\x32\x17.PurchaseStatusResponse\x12;\n\x18updateInstrumentResponse\x18\t \x01(\x0b\x32\x19.UpdateInstrumentResponse\x12!\n\x0blogResponse\x18\n \x01(\x0b\x32\x0c.LogResponse\x12\x39\n\x17\x63heckInstrumentResponse\x18\x0b \x01(\x0b\x32\x18.CheckInstrumentResponse\x12)\n\x0fplusOneResponse\x18\x0c \x01(\x0b\x32\x10.PlusOneResponse\x12\x31\n\x13\x66lagContentResponse\x18\r \x01(\x0b\x32\x14.FlagContentResponse\x12\x39\n\x17\x61\x63kNotificationResponse\x18\x0e \x01(\x0b\x32\x18.AckNotificationResponse\x12\x41\n\x1binitiateAssociationResponse\x18\x0f \x01(\x0b\x32\x1c.InitiateAssociationResponse\x12=\n\x19verifyAssociationResponse\x18\x10 \x01(\x0b\x32\x1a.VerifyAssociationResponse\x12?\n\x1alibraryReplicationResponse\x18\x11 \x01(\x0b\x32\x1b.LibraryReplicationResponse\x12\'\n\x0erevokeResponse\x18\x12 \x01(\x0b\x32\x0f.RevokeResponse\x12\x31\n\x13\x62ulkDetailsResponse\x18\x13 \x01(\x0b\x32\x14.BulkDetailsResponse\x12\x31\n\x13resolveLinkResponse\x18\x14 \x01(\x0b\x32\x14.ResolveLinkResponse\x12+\n\x10\x64\x65liveryResponse\x18\x15 \x01(\x0b\x32\x11.DeliveryResponse\x12-\n\x11\x61\x63\x63\x65ptTosResponse\x18\x16 \x01(\x0b\x32\x12.AcceptTosResponse\x12\x43\n\x1crateSuggestedContentResponse\x18\x17 \x01(\x0b\x32\x1d.RateSuggestedContentResponse\x12\x39\n\x17\x63heckPromoOfferResponse\x18\x18 \x01(\x0b\x32\x18.CheckPromoOfferResponse\"U\n\x08PreFetch\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x10\n\x08response\x18\x02 \x01(\x0c\x12\x0c\n\x04\x65tag\x18\x03 \x01(\t\x12\x0b\n\x03ttl\x18\x04 \x01(\x03\x12\x0f\n\x07softTtl\x18\x05 \x01(\x03\"\x91\x01\n\x0fResponseWrapper\x12\x19\n\x07payload\x18\x01 \x01(\x0b\x32\x08.Payload\x12!\n\x08\x63ommands\x18\x02 \x01(\x0b\x32\x0f.ServerCommands\x12\x1b\n\x08preFetch\x18\x03 \x03(\x0b\x32\t.PreFetch\x12#\n\x0cnotification\x18\x04 \x03(\x0b\x32\r.Notification\"]\n\x0eServerCommands\x12\x12\n\nclearCache\x18\x01 \x01(\x08\x12\x1b\n\x13\x64isplayErrorMessage\x18\x02 \x01(\t\x12\x1a\n\x12logErrorStacktrace\x18\x03 \x01(\t\"D\n\x12GetReviewsResponse\x12\x17\n\x06review\x18\x01 \x03(\x0b\x32\x07.Review\x12\x15\n\rmatchingCount\x18\x02 \x01(\x03\"\xf3\x01\n\x06Review\x12\x12\n\nauthorName\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06source\x18\x03 \x01(\t\x12\x17\n\x0f\x64ocumentVersion\x18\x04 \x01(\t\x12\x15\n\rtimestampMsec\x18\x05 \x01(\x03\x12\x12\n\nstarRating\x18\x06 \x01(\x05\x12\r\n\x05title\x18\x07 \x01(\t\x12\x0f\n\x07\x63omment\x18\x08 \x01(\t\x12\x11\n\tcommentId\x18\t \x01(\t\x12\x12\n\ndeviceName\x18\x13 \x01(\t\x12\x11\n\treplyText\x18\x1d \x01(\t\x12\x1a\n\x12replyTimestampMsec\x18\x1e \x01(\x03\"O\n\x0eReviewResponse\x12(\n\x0bgetResponse\x18\x01 \x01(\x0b\x32\x13.GetReviewsResponse\x12\x13\n\x0bnextPageUrl\x18\x02 \x01(\t\"7\n\x0eRevokeResponse\x12%\n\rlibraryUpdate\x18\x01 \x01(\x0b\x32\x0e.LibraryUpdate\"g\n\rRelatedSearch\x12\x11\n\tsearchUrl\x18\x01 \x01(\t\x12\x0e\n\x06header\x18\x02 \x01(\t\x12\x11\n\tbackendId\x18\x03 \x01(\x05\x12\x0f\n\x07\x64ocType\x18\x04 \x01(\x05\x12\x0f\n\x07\x63urrent\x18\x05 \x01(\x08\"\xac\x01\n\x0eSearchResponse\x12\x15\n\roriginalQuery\x18\x01 \x01(\t\x12\x16\n\x0esuggestedQuery\x18\x02 \x01(\t\x12\x16\n\x0e\x61ggregateQuery\x18\x03 \x01(\x08\x12\x17\n\x06\x62ucket\x18\x04 \x03(\x0b\x32\x07.Bucket\x12\x13\n\x03\x64oc\x18\x05 \x03(\x0b\x32\x06.DocV2\x12%\n\rrelatedSearch\x18\x06 \x03(\x0b\x32\x0e.RelatedSearch\"X\n\x0e\x43orpusMetadata\x12\x0f\n\x07\x62\x61\x63kend\x18\x01 \x01(\x05\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nlandingUrl\x18\x03 \x01(\t\x12\x13\n\x0blibraryName\x18\x04 \x01(\t\"#\n\x0b\x45xperiments\x12\x14\n\x0c\x65xperimentId\x18\x01 \x03(\t\"\x8c\x02\n\x0bTocResponse\x12\x1f\n\x06\x63orpus\x18\x01 \x03(\x0b\x32\x0f.CorpusMetadata\x12\x1c\n\x14tosVersionDeprecated\x18\x02 \x01(\x05\x12\x12\n\ntosContent\x18\x03 \x01(\t\x12\x0f\n\x07homeUrl\x18\x04 \x01(\t\x12!\n\x0b\x65xperiments\x18\x05 \x01(\x0b\x32\x0c.Experiments\x12&\n\x1etosCheckboxTextMarketingEmails\x18\x06 \x01(\t\x12\x10\n\x08tosToken\x18\x07 \x01(\t\x12#\n\x0cuserSettings\x18\x08 \x01(\x0b\x32\r.UserSettings\x12\x17\n\x0ficonOverrideUrl\x18\t \x01(\t\"9\n\x0cUserSettings\x12)\n!tosCheckboxMarketingEmailsOptedIn\x18\x01 \x01(\x08\"\x13\n\x11\x41\x63\x63\x65ptTosResponse\"~\n\x1c\x41\x63kNotificationsRequestProto\x12\x16\n\x0enotificationId\x18\x01 \x03(\t\x12*\n\rsignatureHash\x18\x02 \x01(\x0b\x32\x13.SignatureHashProto\x12\x1a\n\x12nackNotificationId\x18\x03 \x03(\t\"\x1f\n\x1d\x41\x63kNotificationsResponseProto\"\x9f\x01\n\x0c\x41\x64\x64ressProto\x12\x10\n\x08\x61\x64\x64ress1\x18\x01 \x01(\t\x12\x10\n\x08\x61\x64\x64ress2\x18\x02 \x01(\t\x12\x0c\n\x04\x63ity\x18\x03 \x01(\t\x12\r\n\x05state\x18\x04 \x01(\t\x12\x12\n\npostalCode\x18\x05 \x01(\t\x12\x0f\n\x07\x63ountry\x18\x06 \x01(\t\x12\x0c\n\x04name\x18\x07 \x01(\t\x12\x0c\n\x04type\x18\x08 \x01(\t\x12\r\n\x05phone\x18\t \x01(\t\"*\n\x0c\x41ppDataProto\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"<\n\x12\x41ppSuggestionProto\x12&\n\tassetInfo\x18\x01 \x01(\x0b\x32\x13.ExternalAssetProto\"Q\n\x14\x41ssetIdentifierProto\x12\x13\n\x0bpackageName\x18\x01 \x01(\t\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0f\n\x07\x61ssetId\x18\x03 \x01(\t\"\x8c\x03\n\x12\x41ssetsRequestProto\x12\x11\n\tassetType\x18\x01 \x01(\x05\x12\r\n\x05query\x18\x02 \x01(\t\x12\x12\n\ncategoryId\x18\x03 \x01(\t\x12\x0f\n\x07\x61ssetId\x18\x04 \x03(\t\x12\x1e\n\x16retrieveVendingHistory\x18\x05 \x01(\x08\x12\x1c\n\x14retrieveExtendedInfo\x18\x06 \x01(\x08\x12\x11\n\tsortOrder\x18\x07 \x01(\x05\x12\x12\n\nstartIndex\x18\x08 \x01(\x03\x12\x12\n\nnumEntries\x18\t \x01(\x03\x12\x12\n\nviewFilter\x18\n \x01(\x05\x12\x13\n\x0brankingType\x18\x0b \x01(\t\x12\x1e\n\x16retrieveCarrierChannel\x18\x0c \x01(\x08\x12\x1e\n\x16pendingDownloadAssetId\x18\r \x03(\t\x12!\n\x19reconstructVendingHistory\x18\x0e \x01(\x08\x12\x19\n\x11unfilteredResults\x18\x0f \x01(\x08\x12\x0f\n\x07\x62\x61\x64geId\x18\x10 \x03(\t\"\xd0\x01\n\x13\x41ssetsResponseProto\x12\"\n\x05\x61sset\x18\x01 \x03(\x0b\x32\x13.ExternalAssetProto\x12\x17\n\x0fnumTotalEntries\x18\x02 \x01(\x03\x12\x16\n\x0e\x63orrectedQuery\x18\x03 \x01(\t\x12%\n\x08\x61ltAsset\x18\x04 \x03(\x0b\x32\x13.ExternalAssetProto\x12\x1b\n\x13numCorrectedEntries\x18\x05 \x01(\x03\x12\x0e\n\x06header\x18\x06 \x01(\t\x12\x10\n\x08listType\x18\x07 \x01(\x05\"\xbb\x01\n\x18\x42illingEventRequestProto\x12\x11\n\teventType\x18\x01 \x01(\x05\x12\x1b\n\x13\x62illingParametersId\x18\x02 \x01(\t\x12\x15\n\rresultSuccess\x18\x03 \x01(\x08\x12\x15\n\rclientMessage\x18\x04 \x01(\t\x12\x41\n\x11\x63\x61rrierInstrument\x18\x05 \x01(\x0b\x32&.ExternalCarrierBillingInstrumentProto\"\x1b\n\x19\x42illingEventResponseProto\"\xbc\x03\n\x15\x42illingParameterProto\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06mncMcc\x18\x03 \x03(\t\x12\x12\n\nbackendUrl\x18\x04 \x03(\t\x12\x0e\n\x06iconId\x18\x05 \x01(\t\x12\x1d\n\x15\x62illingInstrumentType\x18\x06 \x01(\x05\x12\x15\n\rapplicationId\x18\x07 \x01(\t\x12\x0e\n\x06tosUrl\x18\x08 \x01(\t\x12\x1d\n\x15instrumentTosRequired\x18\t \x01(\x08\x12\x12\n\napiVersion\x18\n \x01(\x05\x12)\n!perTransactionCredentialsRequired\x18\x0b \x01(\x08\x12\x32\n*sendSubscriberIdWithCarrierBillingRequests\x18\x0c \x01(\x08\x12\x1f\n\x17\x64\x65viceAssociationMethod\x18\r \x01(\x05\x12\x1f\n\x17userTokenRequestMessage\x18\x0e \x01(\t\x12\x1f\n\x17userTokenRequestAddress\x18\x0f \x01(\t\x12\x1a\n\x12passphraseRequired\x18\x10 \x01(\x08\"Q\n\x1e\x43\x61rrierBillingCredentialsProto\x12\x13\n\x0b\x63redentials\x18\x01 \x01(\t\x12\x1a\n\x12\x63redentialsTimeout\x18\x02 \x01(\x03\"\xff\x01\n\rCategoryProto\x12\x11\n\tassetType\x18\x02 \x01(\x05\x12\x12\n\ncategoryId\x18\x03 \x01(\t\x12\x17\n\x0f\x63\x61tegoryDisplay\x18\x04 \x01(\t\x12\x18\n\x10\x63\x61tegorySubtitle\x18\x05 \x01(\t\x12\x19\n\x11promotedAssetsNew\x18\x06 \x03(\t\x12\x1a\n\x12promotedAssetsHome\x18\x07 \x03(\t\x12%\n\rsubCategories\x18\x08 \x03(\x0b\x32\x0e.CategoryProto\x12\x1a\n\x12promotedAssetsPaid\x18\t \x03(\t\x12\x1a\n\x12promotedAssetsFree\x18\n \x03(\t\":\n!CheckForNotificationsRequestProto\x12\x15\n\ralarmDuration\x18\x01 \x01(\x03\"$\n\"CheckForNotificationsResponseProto\"S\n\x18\x43heckLicenseRequestProto\x12\x13\n\x0bpackageName\x18\x01 \x01(\t\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\r\n\x05nonce\x18\x03 \x01(\x03\"X\n\x19\x43heckLicenseResponseProto\x12\x14\n\x0cresponseCode\x18\x01 \x01(\x05\x12\x12\n\nsignedData\x18\x02 \x01(\t\x12\x11\n\tsignature\x18\x03 \x01(\t\"\x87\x01\n\x14\x43ommentsRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x12\n\nstartIndex\x18\x02 \x01(\x03\x12\x12\n\nnumEntries\x18\x03 \x01(\x03\x12\x1f\n\x17shouldReturnSelfComment\x18\x04 \x01(\x08\x12\x15\n\rassetReferrer\x18\x05 \x01(\t\"\x84\x01\n\x15\x43ommentsResponseProto\x12&\n\x07\x63omment\x18\x01 \x03(\x0b\x32\x15.ExternalCommentProto\x12\x17\n\x0fnumTotalEntries\x18\x02 \x01(\x03\x12*\n\x0bselfComment\x18\x03 \x01(\x0b\x32\x15.ExternalCommentProto\"\xc0\x03\n\x17\x43ontentSyncRequestProto\x12\x13\n\x0bincremental\x18\x01 \x01(\x08\x12\x45\n\x11\x61ssetinstallstate\x18\x02 \x03(\n2*.ContentSyncRequestProto.AssetInstallState\x12\x35\n\tsystemapp\x18\n \x03(\n2\".ContentSyncRequestProto.SystemApp\x12\x1a\n\x12sideloadedAppCount\x18\x0e \x01(\x05\x1a\xa5\x01\n\x11\x41ssetInstallState\x12\x0f\n\x07\x61ssetId\x18\x03 \x01(\t\x12\x12\n\nassetState\x18\x04 \x01(\x05\x12\x13\n\x0binstallTime\x18\x05 \x01(\x03\x12\x15\n\runinstallTime\x18\x06 \x01(\x03\x12\x13\n\x0bpackageName\x18\x07 \x01(\t\x12\x13\n\x0bversionCode\x18\x08 \x01(\x05\x12\x15\n\rassetReferrer\x18\t \x01(\t\x1aN\n\tSystemApp\x12\x13\n\x0bpackageName\x18\x0b \x01(\t\x12\x13\n\x0bversionCode\x18\x0c \x01(\x05\x12\x17\n\x0f\x63\x65rtificateHash\x18\r \x03(\t\"7\n\x18\x43ontentSyncResponseProto\x12\x1b\n\x13numUpdatesAvailable\x18\x01 \x01(\x05\"D\n\x10\x44\x61taMessageProto\x12\x10\n\x08\x63\x61tegory\x18\x01 \x01(\t\x12\x1e\n\x07\x61ppData\x18\x03 \x03(\x0b\x32\r.AppDataProto\"P\n\x11\x44ownloadInfoProto\x12\x0f\n\x07\x61pkSize\x18\x01 \x01(\x03\x12*\n\x0e\x61\x64\x64itionalFile\x18\x02 \x03(\x0b\x32\x12.FileMetadataProto\"\xe6\n\n\x12\x45xternalAssetProto\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05title\x18\x02 \x01(\t\x12\x11\n\tassetType\x18\x03 \x01(\x05\x12\r\n\x05owner\x18\x04 \x01(\t\x12\x0f\n\x07version\x18\x05 \x01(\t\x12\r\n\x05price\x18\x06 \x01(\t\x12\x15\n\raverageRating\x18\x07 \x01(\t\x12\x12\n\nnumRatings\x18\x08 \x01(\x03\x12\x44\n\x13purchaseinformation\x18\t \x01(\n2\'.ExternalAssetProto.PurchaseInformation\x12\x36\n\x0c\x65xtendedinfo\x18\x0c \x01(\n2 .ExternalAssetProto.ExtendedInfo\x12\x0f\n\x07ownerId\x18\x16 \x01(\t\x12\x13\n\x0bpackageName\x18\x18 \x01(\t\x12\x13\n\x0bversionCode\x18\x19 \x01(\x05\x12\x14\n\x0c\x62undledAsset\x18\x1d \x01(\x08\x12\x15\n\rpriceCurrency\x18 \x01(\t\x12\x13\n\x0bpriceMicros\x18! \x01(\x03\x12\x14\n\x0c\x66ilterReason\x18# \x01(\t\x12\x19\n\x11\x61\x63tualSellerPrice\x18( \x01(\t\x12%\n\x08\x61ppBadge\x18/ \x03(\x0b\x32\x13.ExternalBadgeProto\x12\'\n\nownerBadge\x18\x30 \x03(\x0b\x32\x13.ExternalBadgeProto\x1a\x7f\n\x13PurchaseInformation\x12\x14\n\x0cpurchaseTime\x18\n \x01(\x03\x12\x19\n\x11refundTimeoutTime\x18\x0b \x01(\x03\x12\x19\n\x11refundStartPolicy\x18- \x01(\x05\x12\x1c\n\x14refundWindowDuration\x18. \x01(\x03\x1a\xca\x05\n\x0c\x45xtendedInfo\x12\x13\n\x0b\x64\x65scription\x18\r \x01(\t\x12\x15\n\rdownloadCount\x18\x0e \x01(\x03\x12\x1f\n\x17\x61pplicationPermissionId\x18\x0f \x03(\t\x12 \n\x18requiredInstallationSize\x18\x10 \x01(\x03\x12\x13\n\x0bpackageName\x18\x11 \x01(\t\x12\x10\n\x08\x63\x61tegory\x18\x12 \x01(\t\x12\x15\n\rforwardLocked\x18\x13 \x01(\x08\x12\x14\n\x0c\x63ontactEmail\x18\x14 \x01(\t\x12\x1b\n\x13\x65verInstalledByUser\x18\x15 \x01(\x08\x12\x1b\n\x13\x64ownloadCountString\x18\x17 \x01(\t\x12\x14\n\x0c\x63ontactPhone\x18\x1a \x01(\t\x12\x16\n\x0e\x63ontactWebsite\x18\x1b \x01(\t\x12\x1e\n\x16nextPurchaseRefundable\x18\x1c \x01(\x08\x12\x16\n\x0enumScreenshots\x18\x1e \x01(\x05\x12\x1e\n\x16promotionalDescription\x18\x1f \x01(\t\x12\x18\n\x10serverAssetState\x18\" \x01(\x05\x12\x1a\n\x12\x63ontentRatingLevel\x18$ \x01(\x05\x12\x1b\n\x13\x63ontentRatingString\x18% \x01(\t\x12\x15\n\rrecentChanges\x18& \x01(\t\x12M\n\x11packagedependency\x18\' \x03(\n22.ExternalAssetProto.ExtendedInfo.PackageDependency\x12\x11\n\tvideoLink\x18+ \x01(\t\x12(\n\x0c\x64ownloadInfo\x18\x31 \x01(\x0b\x32\x12.DownloadInfoProto\x1a\x41\n\x11PackageDependency\x12\x13\n\x0bpackageName\x18) \x01(\t\x12\x17\n\x0fskipPermissions\x18* \x01(\x08\"5\n\x17\x45xternalBadgeImageProto\x12\r\n\x05usage\x18\x01 \x01(\x05\x12\x0b\n\x03url\x18\x02 \x01(\t\"\x8a\x01\n\x12\x45xternalBadgeProto\x12\x16\n\x0elocalizedTitle\x18\x01 \x01(\t\x12\x1c\n\x14localizedDescription\x18\x02 \x01(\t\x12,\n\nbadgeImage\x18\x03 \x03(\x0b\x32\x18.ExternalBadgeImageProto\x12\x10\n\x08searchId\x18\x04 \x01(\t\"\xe0\x02\n%ExternalCarrierBillingInstrumentProto\x12\x15\n\rinstrumentKey\x18\x01 \x01(\t\x12\x1c\n\x14subscriberIdentifier\x18\x02 \x01(\t\x12\x13\n\x0b\x61\x63\x63ountType\x18\x03 \x01(\t\x12\x1a\n\x12subscriberCurrency\x18\x04 \x01(\t\x12\x18\n\x10transactionLimit\x18\x05 \x01(\x04\x12\x16\n\x0esubscriberName\x18\x06 \x01(\t\x12\x10\n\x08\x61\x64\x64ress1\x18\x07 \x01(\t\x12\x10\n\x08\x61\x64\x64ress2\x18\x08 \x01(\t\x12\x0c\n\x04\x63ity\x18\t \x01(\t\x12\r\n\x05state\x18\n \x01(\t\x12\x12\n\npostalCode\x18\x0b \x01(\t\x12\x0f\n\x07\x63ountry\x18\x0c \x01(\t\x12\x39\n\x17\x65ncryptedSubscriberInfo\x18\r \x01(\x0b\x32\x18.EncryptedSubscriberInfo\"r\n\x14\x45xternalCommentProto\x12\x0c\n\x04\x62ody\x18\x01 \x01(\t\x12\x0e\n\x06rating\x18\x02 \x01(\x05\x12\x13\n\x0b\x63reatorName\x18\x03 \x01(\t\x12\x14\n\x0c\x63reationTime\x18\x04 \x01(\x03\x12\x11\n\tcreatorId\x18\x05 \x01(\t\"\xfb\x01\n\x12\x45xternalCreditCard\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x12\n\nlastDigits\x18\x02 \x01(\t\x12\x0f\n\x07\x65xpYear\x18\x03 \x01(\x05\x12\x10\n\x08\x65xpMonth\x18\x04 \x01(\x05\x12\x12\n\npersonName\x18\x05 \x01(\t\x12\x13\n\x0b\x63ountryCode\x18\x06 \x01(\t\x12\x12\n\npostalCode\x18\x07 \x01(\t\x12\x13\n\x0bmakeDefault\x18\x08 \x01(\x08\x12\x10\n\x08\x61\x64\x64ress1\x18\t \x01(\t\x12\x10\n\x08\x61\x64\x64ress2\x18\n \x01(\t\x12\x0c\n\x04\x63ity\x18\x0b \x01(\t\x12\r\n\x05state\x18\x0c \x01(\t\x12\r\n\x05phone\x18\r \x01(\t\"\xb5\x01\n\x1d\x45xternalPaypalInstrumentProto\x12\x15\n\rinstrumentKey\x18\x01 \x01(\t\x12\x16\n\x0epreapprovalKey\x18\x02 \x01(\t\x12\x13\n\x0bpaypalEmail\x18\x03 \x01(\t\x12$\n\rpaypalAddress\x18\x04 \x01(\x0b\x32\r.AddressProto\x12*\n\"multiplePaypalInstrumentsSupported\x18\x05 \x01(\x08\"]\n\x11\x46ileMetadataProto\x12\x10\n\x08\x66ileType\x18\x01 \x01(\x05\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0c\n\x04size\x18\x03 \x01(\x03\x12\x13\n\x0b\x64ownloadUrl\x18\x04 \x01(\t\"Z\n\x1dGetAddressSnippetRequestProto\x12\x39\n\x17\x65ncryptedSubscriberInfo\x18\x01 \x01(\x0b\x32\x18.EncryptedSubscriberInfo\"8\n\x1eGetAddressSnippetResponseProto\x12\x16\n\x0e\x61\x64\x64ressSnippet\x18\x01 \x01(\t\"B\n\x14GetAssetRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x19\n\x11\x64irectDownloadKey\x18\x02 \x01(\t\"\xda\x03\n\x15GetAssetResponseProto\x12\x39\n\x0cinstallasset\x18\x01 \x01(\n2#.GetAssetResponseProto.InstallAsset\x12*\n\x0e\x61\x64\x64itionalFile\x18\x0f \x03(\x0b\x32\x12.FileMetadataProto\x1a\xd9\x02\n\x0cInstallAsset\x12\x0f\n\x07\x61ssetId\x18\x02 \x01(\t\x12\x11\n\tassetName\x18\x03 \x01(\t\x12\x11\n\tassetType\x18\x04 \x01(\t\x12\x14\n\x0c\x61ssetPackage\x18\x05 \x01(\t\x12\x0f\n\x07\x62lobUrl\x18\x06 \x01(\t\x12\x16\n\x0e\x61ssetSignature\x18\x07 \x01(\t\x12\x11\n\tassetSize\x18\x08 \x01(\x03\x12\x1b\n\x13refundTimeoutMillis\x18\t \x01(\x03\x12\x15\n\rforwardLocked\x18\n \x01(\x08\x12\x0f\n\x07secured\x18\x0b \x01(\x08\x12\x13\n\x0bversionCode\x18\x0c \x01(\x05\x12\x1e\n\x16\x64ownloadAuthCookieName\x18\r \x01(\t\x12\x1f\n\x17\x64ownloadAuthCookieValue\x18\x0e \x01(\t\x12%\n\x1dpostInstallRefundWindowMillis\x18\x10 \x01(\x03\"\x1c\n\x1aGetCarrierInfoRequestProto\"\xb8\x01\n\x1bGetCarrierInfoResponseProto\x12\x1d\n\x15\x63\x61rrierChannelEnabled\x18\x01 \x01(\x08\x12\x17\n\x0f\x63\x61rrierLogoIcon\x18\x02 \x01(\x0c\x12\x15\n\rcarrierBanner\x18\x03 \x01(\x0c\x12\x17\n\x0f\x63\x61rrierSubtitle\x18\x04 \x01(\t\x12\x14\n\x0c\x63\x61rrierTitle\x18\x05 \x01(\t\x12\x1b\n\x13\x63\x61rrierImageDensity\x18\x06 \x01(\x05\"6\n\x19GetCategoriesRequestProto\x12\x19\n\x11prefetchPromoData\x18\x01 \x01(\x08\"@\n\x1aGetCategoriesResponseProto\x12\"\n\ncategories\x18\x01 \x03(\x0b\x32\x0e.CategoryProto\"\xbb\x01\n\x14GetImageRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x12\n\nimageUsage\x18\x03 \x01(\x05\x12\x0f\n\x07imageId\x18\x04 \x01(\t\x12\x1b\n\x13screenPropertyWidth\x18\x05 \x01(\x05\x12\x1c\n\x14screenPropertyHeight\x18\x06 \x01(\x05\x12\x1d\n\x15screenPropertyDensity\x18\x07 \x01(\x05\x12\x13\n\x0bproductType\x18\x08 \x01(\x05\"@\n\x15GetImageResponseProto\x12\x11\n\timageData\x18\x01 \x01(\x0c\x12\x14\n\x0cimageDensity\x18\x02 \x01(\x05\"\xf4\x01\n\x1dGetMarketMetadataRequestProto\x12\x17\n\x0flastRequestTime\x18\x01 \x01(\x03\x12\x36\n\x13\x64\x65viceConfiguration\x18\x02 \x01(\x0b\x32\x19.DeviceConfigurationProto\x12\x15\n\rdeviceRoaming\x18\x03 \x01(\x08\x12\x1b\n\x13marketSignatureHash\x18\x04 \x03(\t\x12\x15\n\rcontentRating\x18\x05 \x01(\x05\x12\x17\n\x0f\x64\x65viceModelName\x18\x06 \x01(\t\x12\x1e\n\x16\x64\x65viceManufacturerName\x18\x07 \x01(\t\"\xb7\x02\n\x1eGetMarketMetadataResponseProto\x12\x1f\n\x17latestClientVersionCode\x18\x01 \x01(\x05\x12\x17\n\x0flatestClientUrl\x18\x02 \x01(\t\x12\x17\n\x0fpaidAppsEnabled\x18\x03 \x01(\x08\x12\x30\n\x10\x62illingParameter\x18\x04 \x03(\x0b\x32\x16.BillingParameterProto\x12\x1a\n\x12\x63ommentPostEnabled\x18\x05 \x01(\x08\x12\x1c\n\x14\x62illingEventsEnabled\x18\x06 \x01(\x08\x12\x16\n\x0ewarningMessage\x18\x07 \x01(\t\x12\x1b\n\x13inAppBillingEnabled\x18\x08 \x01(\x08\x12!\n\x19inAppBillingMaxApiVersion\x18\t \x01(\x05\"1\n\x1cGetSubCategoriesRequestProto\x12\x11\n\tassetType\x18\x01 \x01(\x05\"\xa2\x01\n\x1dGetSubCategoriesResponseProto\x12?\n\x0bsubcategory\x18\x01 \x03(\n2*.GetSubCategoriesResponseProto.SubCategory\x1a@\n\x0bSubCategory\x12\x1a\n\x12subCategoryDisplay\x18\x02 \x01(\t\x12\x15\n\rsubCategoryId\x18\x03 \x01(\t\"\xb0\x01\n$InAppPurchaseInformationRequestProto\x12*\n\rsignatureHash\x18\x01 \x01(\x0b\x32\x13.SignatureHashProto\x12\r\n\x05nonce\x18\x02 \x01(\x03\x12\x16\n\x0enotificationId\x18\x03 \x03(\t\x12\x1a\n\x12signatureAlgorithm\x18\x04 \x01(\t\x12\x19\n\x11\x62illingApiVersion\x18\x05 \x01(\x05\"\xbb\x01\n%InAppPurchaseInformationResponseProto\x12(\n\x0esignedResponse\x18\x01 \x01(\x0b\x32\x10.SignedDataProto\x12:\n\x15statusBarNotification\x18\x02 \x03(\x0b\x32\x1b.StatusBarNotificationProto\x12,\n\x0epurchaseResult\x18\x03 \x01(\x0b\x32\x14.PurchaseResultProto\"\x98\x01\n$InAppRestoreTransactionsRequestProto\x12*\n\rsignatureHash\x18\x01 \x01(\x0b\x32\x13.SignatureHashProto\x12\r\n\x05nonce\x18\x02 \x01(\x03\x12\x1a\n\x12signatureAlgorithm\x18\x03 \x01(\t\x12\x19\n\x11\x62illingApiVersion\x18\x04 \x01(\x05\"\x7f\n%InAppRestoreTransactionsResponseProto\x12(\n\x0esignedResponse\x18\x01 \x01(\x0b\x32\x10.SignedDataProto\x12,\n\x0epurchaseResult\x18\x02 \x01(\x0b\x32\x14.PurchaseResultProto\"\xba\x01\n\x19ModifyCommentRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12&\n\x07\x63omment\x18\x02 \x01(\x0b\x32\x15.ExternalCommentProto\x12\x15\n\rdeleteComment\x18\x03 \x01(\x08\x12\x11\n\tflagAsset\x18\x04 \x01(\x08\x12\x10\n\x08\x66lagType\x18\x05 \x01(\x05\x12\x13\n\x0b\x66lagMessage\x18\x06 \x01(\t\x12\x13\n\x0bnonFlagFlow\x18\x07 \x01(\x08\"\x1c\n\x1aModifyCommentResponseProto\"v\n\x16PaypalCountryInfoProto\x12\x19\n\x11\x62irthDateRequired\x18\x01 \x01(\x08\x12\x0f\n\x07tosText\x18\x02 \x01(\t\x12\x1c\n\x14\x62illingAgreementText\x18\x03 \x01(\t\x12\x12\n\npreTosText\x18\x04 \x01(\t\"y\n\x1fPaypalCreateAccountRequestProto\x12\x11\n\tfirstName\x18\x01 \x01(\t\x12\x10\n\x08lastName\x18\x02 \x01(\t\x12\x1e\n\x07\x61\x64\x64ress\x18\x03 \x01(\x0b\x32\r.AddressProto\x12\x11\n\tbirthDate\x18\x04 \x01(\t\"<\n PaypalCreateAccountResponseProto\x12\x18\n\x10\x63reateAccountKey\x18\x01 \x01(\t\"E\n\x16PaypalCredentialsProto\x12\x16\n\x0epreapprovalKey\x18\x01 \x01(\t\x12\x13\n\x0bpaypalEmail\x18\x02 \x01(\t\"B\n PaypalMassageAddressRequestProto\x12\x1e\n\x07\x61\x64\x64ress\x18\x01 \x01(\x0b\x32\r.AddressProto\"C\n!PaypalMassageAddressResponseProto\x12\x1e\n\x07\x61\x64\x64ress\x18\x01 \x01(\x0b\x32\r.AddressProto\"^\n(PaypalPreapprovalCredentialsRequestProto\x12\x15\n\rgaiaAuthToken\x18\x01 \x01(\t\x12\x1b\n\x13\x62illingInstrumentId\x18\x02 \x01(\t\"n\n)PaypalPreapprovalCredentialsResponseProto\x12\x12\n\nresultCode\x18\x01 \x01(\x05\x12\x18\n\x10paypalAccountKey\x18\x02 \x01(\t\x12\x13\n\x0bpaypalEmail\x18\x03 \x01(\t\"R\n$PaypalPreapprovalDetailsRequestProto\x12\x12\n\ngetAddress\x18\x01 \x01(\x08\x12\x16\n\x0epreapprovalKey\x18\x02 \x01(\t\"\\\n%PaypalPreapprovalDetailsResponseProto\x12\x13\n\x0bpaypalEmail\x18\x01 \x01(\t\x12\x1e\n\x07\x61\x64\x64ress\x18\x02 \x01(\x0b\x32\r.AddressProto\"\x1f\n\x1dPaypalPreapprovalRequestProto\"8\n\x1ePaypalPreapprovalResponseProto\x12\x16\n\x0epreapprovalKey\x18\x01 \x01(\t\"]\n\x19PendingNotificationsProto\x12\'\n\x0cnotification\x18\x01 \x03(\x0b\x32\x11.DataMessageProto\x12\x17\n\x0fnextCheckMillis\x18\x02 \x01(\x03\"e\n\x15PrefetchedBundleProto\x12$\n\x07request\x18\x01 \x01(\x0b\x32\x13.SingleRequestProto\x12&\n\x08response\x18\x02 \x01(\x0b\x32\x14.SingleResponseProto\"\xbc\x01\n\x15PurchaseCartInfoProto\x12\x11\n\titemPrice\x18\x01 \x01(\t\x12\x14\n\x0ctaxInclusive\x18\x02 \x01(\t\x12\x14\n\x0ctaxExclusive\x18\x03 \x01(\t\x12\r\n\x05total\x18\x04 \x01(\t\x12\x12\n\ntaxMessage\x18\x05 \x01(\t\x12\x15\n\rfooterMessage\x18\x06 \x01(\t\x12\x15\n\rpriceCurrency\x18\x07 \x01(\t\x12\x13\n\x0bpriceMicros\x18\x08 \x01(\x03\"\x93\x04\n\x11PurchaseInfoProto\x12\x15\n\rtransactionId\x18\x01 \x01(\t\x12(\n\x08\x63\x61rtInfo\x18\x02 \x01(\x0b\x32\x16.PurchaseCartInfoProto\x12\x41\n\x12\x62illinginstruments\x18\x03 \x01(\n2%.PurchaseInfoProto.BillingInstruments\x12\x18\n\x10\x65rrorInputFields\x18\t \x03(\x05\x12\x14\n\x0crefundPolicy\x18\n \x01(\t\x12\x15\n\ruserCanAddGdd\x18\x0c \x01(\x08\x12\x1f\n\x17\x65ligibleInstrumentTypes\x18\r \x03(\x05\x12\x0f\n\x07orderId\x18\x0f \x01(\t\x1a\x80\x02\n\x12\x42illingInstruments\x12R\n\x11\x62illinginstrument\x18\x04 \x03(\n27.PurchaseInfoProto.BillingInstruments.BillingInstrument\x12\"\n\x1a\x64\x65\x66\x61ultBillingInstrumentId\x18\x08 \x01(\t\x1ar\n\x11\x42illingInstrument\x12\n\n\x02id\x18\x05 \x01(\t\x12\x0c\n\x04name\x18\x06 \x01(\t\x12\x11\n\tisInvalid\x18\x07 \x01(\x08\x12\x16\n\x0einstrumentType\x18\x0b \x01(\x05\x12\x18\n\x10instrumentStatus\x18\x0e \x01(\x05\"i\n\x1cPurchaseMetadataRequestProto\x12*\n\"deprecatedRetrieveBillingCountries\x18\x01 \x01(\x08\x12\x1d\n\x15\x62illingInstrumentType\x18\x02 \x01(\x05\"\x87\x04\n\x1dPurchaseMetadataResponseProto\x12;\n\tcountries\x18\x01 \x01(\n2(.PurchaseMetadataResponseProto.Countries\x1a\xa8\x03\n\tCountries\x12\x41\n\x07\x63ountry\x18\x02 \x03(\n20.PurchaseMetadataResponseProto.Countries.Country\x1a\xd7\x02\n\x07\x43ountry\x12\x13\n\x0b\x63ountryCode\x18\x03 \x01(\t\x12\x13\n\x0b\x63ountryName\x18\x04 \x01(\t\x12\x32\n\x11paypalCountryInfo\x18\x05 \x01(\x0b\x32\x17.PaypalCountryInfoProto\x12#\n\x1b\x61llowsReducedBillingAddress\x18\x06 \x01(\x08\x12\x65\n\x15instrumentaddressspec\x18\x07 \x03(\n2F.PurchaseMetadataResponseProto.Countries.Country.InstrumentAddressSpec\x1a\x62\n\x15InstrumentAddressSpec\x12\x18\n\x10instrumentFamily\x18\x08 \x01(\x05\x12/\n\x12\x62illingAddressSpec\x18\t \x01(\x0b\x32\x13.BillingAddressSpec\"\xe2\x03\n\x19PurchaseOrderRequestProto\x12\x15\n\rgaiaAuthToken\x18\x01 \x01(\t\x12\x0f\n\x07\x61ssetId\x18\x02 \x01(\t\x12\x15\n\rtransactionId\x18\x03 \x01(\t\x12\x1b\n\x13\x62illingInstrumentId\x18\x04 \x01(\t\x12\x13\n\x0btosAccepted\x18\x05 \x01(\x08\x12\x42\n\x19\x63\x61rrierBillingCredentials\x18\x06 \x01(\x0b\x32\x1f.CarrierBillingCredentialsProto\x12\x17\n\x0f\x65xistingOrderId\x18\x07 \x01(\t\x12\x1d\n\x15\x62illingInstrumentType\x18\x08 \x01(\x05\x12\x1b\n\x13\x62illingParametersId\x18\t \x01(\t\x12\x32\n\x11paypalCredentials\x18\n \x01(\x0b\x32\x17.PaypalCredentialsProto\x12,\n\x0eriskHeaderInfo\x18\x0b \x01(\x0b\x32\x14.RiskHeaderInfoProto\x12\x13\n\x0bproductType\x18\x0c \x01(\x05\x12*\n\rsignatureHash\x18\r \x01(\x0b\x32\x13.SignatureHashProto\x12\x18\n\x10\x64\x65veloperPayload\x18\x0e \x01(\t\"\xb6\x01\n\x1aPurchaseOrderResponseProto\x12\x1c\n\x14\x64\x65precatedResultCode\x18\x01 \x01(\x05\x12(\n\x0cpurchaseInfo\x18\x02 \x01(\x0b\x32\x12.PurchaseInfoProto\x12\"\n\x05\x61sset\x18\x03 \x01(\x0b\x32\x13.ExternalAssetProto\x12,\n\x0epurchaseResult\x18\x04 \x01(\x0b\x32\x14.PurchaseResultProto\"\x92\x04\n\x18PurchasePostRequestProto\x12\x15\n\rgaiaAuthToken\x18\x01 \x01(\t\x12\x0f\n\x07\x61ssetId\x18\x02 \x01(\t\x12\x15\n\rtransactionId\x18\x03 \x01(\t\x12N\n\x15\x62illinginstrumentinfo\x18\x04 \x01(\n2/.PurchasePostRequestProto.BillingInstrumentInfo\x12\x13\n\x0btosAccepted\x18\x07 \x01(\x08\x12\x17\n\x0f\x63\x62InstrumentKey\x18\x08 \x01(\t\x12\x1b\n\x13paypalAuthConfirmed\x18\x0b \x01(\x08\x12\x13\n\x0bproductType\x18\x0c \x01(\x05\x12*\n\rsignatureHash\x18\r \x01(\x0b\x32\x13.SignatureHashProto\x1a\xda\x01\n\x15\x42illingInstrumentInfo\x12\x1b\n\x13\x62illingInstrumentId\x18\x05 \x01(\t\x12\'\n\ncreditCard\x18\x06 \x01(\x0b\x32\x13.ExternalCreditCard\x12\x41\n\x11\x63\x61rrierInstrument\x18\t \x01(\x0b\x32&.ExternalCarrierBillingInstrumentProto\x12\x38\n\x10paypalInstrument\x18\n \x01(\x0b\x32\x1e.ExternalPaypalInstrumentProto\"\xaa\x02\n\x19PurchasePostResponseProto\x12\x1c\n\x14\x64\x65precatedResultCode\x18\x01 \x01(\x05\x12(\n\x0cpurchaseInfo\x18\x02 \x01(\x0b\x32\x12.PurchaseInfoProto\x12\x19\n\x11termsOfServiceUrl\x18\x03 \x01(\t\x12\x1a\n\x12termsOfServiceText\x18\x04 \x01(\t\x12\x1a\n\x12termsOfServiceName\x18\x05 \x01(\t\x12\"\n\x1atermsOfServiceCheckboxText\x18\x06 \x01(\t\x12 \n\x18termsOfServiceHeaderText\x18\x07 \x01(\t\x12,\n\x0epurchaseResult\x18\x08 \x01(\x0b\x32\x14.PurchaseResultProto\"q\n\x1bPurchaseProductRequestProto\x12\x13\n\x0bproductType\x18\x01 \x01(\x05\x12\x11\n\tproductId\x18\x02 \x01(\t\x12*\n\rsignatureHash\x18\x03 \x01(\x0b\x32\x13.SignatureHashProto\"p\n\x1cPurchaseProductResponseProto\x12\r\n\x05title\x18\x01 \x01(\t\x12\x11\n\titemTitle\x18\x02 \x01(\t\x12\x17\n\x0fitemDescription\x18\x03 \x01(\t\x12\x15\n\rmerchantField\x18\x04 \x01(\t\"D\n\x13PurchaseResultProto\x12\x12\n\nresultCode\x18\x01 \x01(\x05\x12\x19\n\x11resultCodeMessage\x18\x02 \x01(\t\"W\n\x14QuerySuggestionProto\x12\r\n\x05query\x18\x01 \x01(\t\x12\x1b\n\x13\x65stimatedNumResults\x18\x02 \x01(\x05\x12\x13\n\x0bqueryWeight\x18\x03 \x01(\x05\"A\n\x1bQuerySuggestionRequestProto\x12\r\n\x05query\x18\x01 \x01(\t\x12\x13\n\x0brequestType\x18\x02 \x01(\x05\"\x90\x02\n\x1cQuerySuggestionResponseProto\x12<\n\nsuggestion\x18\x01 \x03(\n2(.QuerySuggestionResponseProto.Suggestion\x12\"\n\x1a\x65stimatedNumAppSuggestions\x18\x04 \x01(\x05\x12$\n\x1c\x65stimatedNumQuerySuggestions\x18\x05 \x01(\x05\x1ah\n\nSuggestion\x12*\n\rappSuggestion\x18\x02 \x01(\x0b\x32\x13.AppSuggestionProto\x12.\n\x0fquerySuggestion\x18\x03 \x01(\x0b\x32\x15.QuerySuggestionProto\"T\n\x17RateCommentRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x11\n\tcreatorId\x18\x02 \x01(\t\x12\x15\n\rcommentRating\x18\x03 \x01(\x05\"\x1a\n\x18RateCommentResponseProto\">\n\x1fReconstructDatabaseRequestProto\x12\x1b\n\x13retrieveFullHistory\x18\x01 \x01(\x08\"H\n ReconstructDatabaseResponseProto\x12$\n\x05\x61sset\x18\x01 \x03(\x0b\x32\x15.AssetIdentifierProto\"%\n\x12RefundRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\"_\n\x13RefundResponseProto\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\"\n\x05\x61sset\x18\x02 \x01(\x0b\x32\x13.ExternalAssetProto\x12\x14\n\x0cresultDetail\x18\x03 \x01(\t\"*\n\x17RemoveAssetRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\"\xcd\x02\n\x16RequestPropertiesProto\x12\x15\n\ruserAuthToken\x18\x01 \x01(\t\x12\x1b\n\x13userAuthTokenSecure\x18\x02 \x01(\x08\x12\x17\n\x0fsoftwareVersion\x18\x03 \x01(\x05\x12\x0b\n\x03\x61id\x18\x04 \x01(\t\x12\x1d\n\x15productNameAndVersion\x18\x05 \x01(\t\x12\x14\n\x0cuserLanguage\x18\x06 \x01(\t\x12\x13\n\x0buserCountry\x18\x07 \x01(\t\x12\x14\n\x0coperatorName\x18\x08 \x01(\t\x12\x17\n\x0fsimOperatorName\x18\t \x01(\t\x12\x1b\n\x13operatorNumericName\x18\n \x01(\t\x12\x1e\n\x16simOperatorNumericName\x18\x0b \x01(\t\x12\x10\n\x08\x63lientId\x18\x0c \x01(\t\x12\x11\n\tloggingId\x18\r \x01(\t\"\xbe\x11\n\x0cRequestProto\x12\x32\n\x11requestProperties\x18\x01 \x01(\x0b\x32\x17.RequestPropertiesProto\x12&\n\x07request\x18\x02 \x03(\n2\x15.RequestProto.Request\x1a\xd1\x10\n\x07Request\x12\x42\n\x19requestSpecificProperties\x18\x03 \x01(\x0b\x32\x1f.RequestSpecificPropertiesProto\x12)\n\x0c\x61ssetRequest\x18\x04 \x01(\x0b\x32\x13.AssetsRequestProto\x12.\n\x0f\x63ommentsRequest\x18\x05 \x01(\x0b\x32\x15.CommentsRequestProto\x12\x38\n\x14modifyCommentRequest\x18\x06 \x01(\x0b\x32\x1a.ModifyCommentRequestProto\x12\x36\n\x13purchasePostRequest\x18\x07 \x01(\x0b\x32\x19.PurchasePostRequestProto\x12\x38\n\x14purchaseOrderRequest\x18\x08 \x01(\x0b\x32\x1a.PurchaseOrderRequestProto\x12\x34\n\x12\x63ontentSyncRequest\x18\t \x01(\x0b\x32\x18.ContentSyncRequestProto\x12.\n\x0fgetAssetRequest\x18\n \x01(\x0b\x32\x15.GetAssetRequestProto\x12.\n\x0fgetImageRequest\x18\x0b \x01(\x0b\x32\x15.GetImageRequestProto\x12*\n\rrefundRequest\x18\x0c \x01(\x0b\x32\x13.RefundRequestProto\x12>\n\x17purchaseMetadataRequest\x18\r \x01(\x0b\x32\x1d.PurchaseMetadataRequestProto\x12;\n\x14subCategoriesRequest\x18\x0e \x01(\x0b\x32\x1d.GetSubCategoriesRequestProto\x12<\n\x16uninstallReasonRequest\x18\x10 \x01(\x0b\x32\x1c.UninstallReasonRequestProto\x12\x34\n\x12rateCommentRequest\x18\x11 \x01(\x0b\x32\x18.RateCommentRequestProto\x12\x36\n\x13\x63heckLicenseRequest\x18\x12 \x01(\x0b\x32\x19.CheckLicenseRequestProto\x12@\n\x18getMarketMetadataRequest\x18\x13 \x01(\x0b\x32\x1e.GetMarketMetadataRequestProto\x12\x38\n\x14getCategoriesRequest\x18\x15 \x01(\x0b\x32\x1a.GetCategoriesRequestProto\x12:\n\x15getCarrierInfoRequest\x18\x16 \x01(\x0b\x32\x1b.GetCarrierInfoRequestProto\x12\x34\n\x12removeAssetRequest\x18\x17 \x01(\x0b\x32\x18.RemoveAssetRequestProto\x12\x44\n\x1arestoreApplicationsRequest\x18\x18 \x01(\x0b\x32 .RestoreApplicationsRequestProto\x12<\n\x16querySuggestionRequest\x18\x19 \x01(\x0b\x32\x1c.QuerySuggestionRequestProto\x12\x36\n\x13\x62illingEventRequest\x18\x1a \x01(\x0b\x32\x19.BillingEventRequestProto\x12@\n\x18paypalPreapprovalRequest\x18\x1b \x01(\x0b\x32\x1e.PaypalPreapprovalRequestProto\x12N\n\x1fpaypalPreapprovalDetailsRequest\x18\x1c \x01(\x0b\x32%.PaypalPreapprovalDetailsRequestProto\x12\x44\n\x1apaypalCreateAccountRequest\x18\x1d \x01(\x0b\x32 .PaypalCreateAccountRequestProto\x12V\n#paypalPreapprovalCredentialsRequest\x18\x1e \x01(\x0b\x32).PaypalPreapprovalCredentialsRequestProto\x12N\n\x1finAppRestoreTransactionsRequest\x18\x1f \x01(\x0b\x32%.InAppRestoreTransactionsRequestProto\x12N\n\x1finAppPurchaseInformationRequest\x18 \x01(\x0b\x32%.InAppPurchaseInformationRequestProto\x12H\n\x1c\x63heckForNotificationsRequest\x18! \x01(\x0b\x32\".CheckForNotificationsRequestProto\x12>\n\x17\x61\x63kNotificationsRequest\x18\" \x01(\x0b\x32\x1d.AckNotificationsRequestProto\x12<\n\x16purchaseProductRequest\x18# \x01(\x0b\x32\x1c.PurchaseProductRequestProto\x12\x44\n\x1areconstructDatabaseRequest\x18$ \x01(\x0b\x32 .ReconstructDatabaseRequestProto\x12\x46\n\x1bpaypalMassageAddressRequest\x18% \x01(\x0b\x32!.PaypalMassageAddressRequestProto\x12@\n\x18getAddressSnippetRequest\x18& \x01(\x0b\x32\x1e.GetAddressSnippetRequestProto\"5\n\x1eRequestSpecificPropertiesProto\x12\x13\n\x0bifNoneMatch\x18\x01 \x01(\t\"\xbe\x01\n\x17ResponsePropertiesProto\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x0e\n\x06maxAge\x18\x02 \x01(\x05\x12\x0c\n\x04\x65tag\x18\x03 \x01(\t\x12\x15\n\rserverVersion\x18\x04 \x01(\x05\x12\x18\n\x10maxAgeConsumable\x18\x06 \x01(\x05\x12\x14\n\x0c\x65rrorMessage\x18\x07 \x01(\t\x12.\n\x0f\x65rrorInputField\x18\x08 \x03(\x0b\x32\x15.InputValidationError\"\xf7\x11\n\rResponseProto\x12)\n\x08response\x18\x01 \x03(\n2\x17.ResponseProto.Response\x12\x38\n\x14pendingNotifications\x18& \x01(\x0b\x32\x1a.PendingNotificationsProto\x1a\x80\x11\n\x08Response\x12\x34\n\x12responseProperties\x18\x02 \x01(\x0b\x32\x18.ResponsePropertiesProto\x12,\n\x0e\x61ssetsResponse\x18\x03 \x01(\x0b\x32\x14.AssetsResponseProto\x12\x30\n\x10\x63ommentsResponse\x18\x04 \x01(\x0b\x32\x16.CommentsResponseProto\x12:\n\x15modifyCommentResponse\x18\x05 \x01(\x0b\x32\x1b.ModifyCommentResponseProto\x12\x38\n\x14purchasePostResponse\x18\x06 \x01(\x0b\x32\x1a.PurchasePostResponseProto\x12:\n\x15purchaseOrderResponse\x18\x07 \x01(\x0b\x32\x1b.PurchaseOrderResponseProto\x12\x36\n\x13\x63ontentSyncResponse\x18\x08 \x01(\x0b\x32\x19.ContentSyncResponseProto\x12\x30\n\x10getAssetResponse\x18\t \x01(\x0b\x32\x16.GetAssetResponseProto\x12\x30\n\x10getImageResponse\x18\n \x01(\x0b\x32\x16.GetImageResponseProto\x12,\n\x0erefundResponse\x18\x0b \x01(\x0b\x32\x14.RefundResponseProto\x12@\n\x18purchaseMetadataResponse\x18\x0c \x01(\x0b\x32\x1e.PurchaseMetadataResponseProto\x12=\n\x15subCategoriesResponse\x18\r \x01(\x0b\x32\x1e.GetSubCategoriesResponseProto\x12>\n\x17uninstallReasonResponse\x18\x0f \x01(\x0b\x32\x1d.UninstallReasonResponseProto\x12\x36\n\x13rateCommentResponse\x18\x10 \x01(\x0b\x32\x19.RateCommentResponseProto\x12\x38\n\x14\x63heckLicenseResponse\x18\x11 \x01(\x0b\x32\x1a.CheckLicenseResponseProto\x12\x42\n\x19getMarketMetadataResponse\x18\x12 \x01(\x0b\x32\x1f.GetMarketMetadataResponseProto\x12\x30\n\x10prefetchedBundle\x18\x13 \x03(\x0b\x32\x16.PrefetchedBundleProto\x12:\n\x15getCategoriesResponse\x18\x14 \x01(\x0b\x32\x1b.GetCategoriesResponseProto\x12<\n\x16getCarrierInfoResponse\x18\x15 \x01(\x0b\x32\x1c.GetCarrierInfoResponseProto\x12\x45\n\x1arestoreApplicationResponse\x18\x17 \x01(\x0b\x32!.RestoreApplicationsResponseProto\x12>\n\x17querySuggestionResponse\x18\x18 \x01(\x0b\x32\x1d.QuerySuggestionResponseProto\x12\x38\n\x14\x62illingEventResponse\x18\x19 \x01(\x0b\x32\x1a.BillingEventResponseProto\x12\x42\n\x19paypalPreapprovalResponse\x18\x1a \x01(\x0b\x32\x1f.PaypalPreapprovalResponseProto\x12P\n paypalPreapprovalDetailsResponse\x18\x1b \x01(\x0b\x32&.PaypalPreapprovalDetailsResponseProto\x12\x46\n\x1bpaypalCreateAccountResponse\x18\x1c \x01(\x0b\x32!.PaypalCreateAccountResponseProto\x12X\n$paypalPreapprovalCredentialsResponse\x18\x1d \x01(\x0b\x32*.PaypalPreapprovalCredentialsResponseProto\x12P\n inAppRestoreTransactionsResponse\x18\x1e \x01(\x0b\x32&.InAppRestoreTransactionsResponseProto\x12P\n inAppPurchaseInformationResponse\x18\x1f \x01(\x0b\x32&.InAppPurchaseInformationResponseProto\x12J\n\x1d\x63heckForNotificationsResponse\x18 \x01(\x0b\x32#.CheckForNotificationsResponseProto\x12@\n\x18\x61\x63kNotificationsResponse\x18! \x01(\x0b\x32\x1e.AckNotificationsResponseProto\x12>\n\x17purchaseProductResponse\x18\" \x01(\x0b\x32\x1d.PurchaseProductResponseProto\x12\x46\n\x1breconstructDatabaseResponse\x18# \x01(\x0b\x32!.ReconstructDatabaseResponseProto\x12H\n\x1cpaypalMassageAddressResponse\x18$ \x01(\x0b\x32\".PaypalMassageAddressResponseProto\x12\x42\n\x19getAddressSnippetResponse\x18% \x01(\x0b\x32\x1f.GetAddressSnippetResponseProto\"\x86\x01\n\x1fRestoreApplicationsRequestProto\x12\x17\n\x0f\x62\x61\x63kupAndroidId\x18\x01 \x01(\t\x12\x12\n\ntosVersion\x18\x02 \x01(\t\x12\x36\n\x13\x64\x65viceConfiguration\x18\x03 \x01(\x0b\x32\x19.DeviceConfigurationProto\"I\n RestoreApplicationsResponseProto\x12%\n\x05\x61sset\x18\x01 \x03(\x0b\x32\x16.GetAssetResponseProto\"/\n\x13RiskHeaderInfoProto\x12\x18\n\x10hashedDeviceInfo\x18\x01 \x01(\t\"L\n\x12SignatureHashProto\x12\x13\n\x0bpackageName\x18\x01 \x01(\t\x12\x13\n\x0bversionCode\x18\x02 \x01(\x05\x12\x0c\n\x04hash\x18\x03 \x01(\x0c\"8\n\x0fSignedDataProto\x12\x12\n\nsignedData\x18\x01 \x01(\t\x12\x11\n\tsignature\x18\x02 \x01(\t\"\xdf\x10\n\x12SingleRequestProto\x12\x42\n\x19requestSpecificProperties\x18\x03 \x01(\x0b\x32\x1f.RequestSpecificPropertiesProto\x12)\n\x0c\x61ssetRequest\x18\x04 \x01(\x0b\x32\x13.AssetsRequestProto\x12.\n\x0f\x63ommentsRequest\x18\x05 \x01(\x0b\x32\x15.CommentsRequestProto\x12\x38\n\x14modifyCommentRequest\x18\x06 \x01(\x0b\x32\x1a.ModifyCommentRequestProto\x12\x36\n\x13purchasePostRequest\x18\x07 \x01(\x0b\x32\x19.PurchasePostRequestProto\x12\x38\n\x14purchaseOrderRequest\x18\x08 \x01(\x0b\x32\x1a.PurchaseOrderRequestProto\x12\x34\n\x12\x63ontentSyncRequest\x18\t \x01(\x0b\x32\x18.ContentSyncRequestProto\x12.\n\x0fgetAssetRequest\x18\n \x01(\x0b\x32\x15.GetAssetRequestProto\x12.\n\x0fgetImageRequest\x18\x0b \x01(\x0b\x32\x15.GetImageRequestProto\x12*\n\rrefundRequest\x18\x0c \x01(\x0b\x32\x13.RefundRequestProto\x12>\n\x17purchaseMetadataRequest\x18\r \x01(\x0b\x32\x1d.PurchaseMetadataRequestProto\x12;\n\x14subCategoriesRequest\x18\x0e \x01(\x0b\x32\x1d.GetSubCategoriesRequestProto\x12<\n\x16uninstallReasonRequest\x18\x10 \x01(\x0b\x32\x1c.UninstallReasonRequestProto\x12\x34\n\x12rateCommentRequest\x18\x11 \x01(\x0b\x32\x18.RateCommentRequestProto\x12\x36\n\x13\x63heckLicenseRequest\x18\x12 \x01(\x0b\x32\x19.CheckLicenseRequestProto\x12@\n\x18getMarketMetadataRequest\x18\x13 \x01(\x0b\x32\x1e.GetMarketMetadataRequestProto\x12\x38\n\x14getCategoriesRequest\x18\x15 \x01(\x0b\x32\x1a.GetCategoriesRequestProto\x12:\n\x15getCarrierInfoRequest\x18\x16 \x01(\x0b\x32\x1b.GetCarrierInfoRequestProto\x12\x34\n\x12removeAssetRequest\x18\x17 \x01(\x0b\x32\x18.RemoveAssetRequestProto\x12\x44\n\x1arestoreApplicationsRequest\x18\x18 \x01(\x0b\x32 .RestoreApplicationsRequestProto\x12<\n\x16querySuggestionRequest\x18\x19 \x01(\x0b\x32\x1c.QuerySuggestionRequestProto\x12\x36\n\x13\x62illingEventRequest\x18\x1a \x01(\x0b\x32\x19.BillingEventRequestProto\x12@\n\x18paypalPreapprovalRequest\x18\x1b \x01(\x0b\x32\x1e.PaypalPreapprovalRequestProto\x12N\n\x1fpaypalPreapprovalDetailsRequest\x18\x1c \x01(\x0b\x32%.PaypalPreapprovalDetailsRequestProto\x12\x44\n\x1apaypalCreateAccountRequest\x18\x1d \x01(\x0b\x32 .PaypalCreateAccountRequestProto\x12V\n#paypalPreapprovalCredentialsRequest\x18\x1e \x01(\x0b\x32).PaypalPreapprovalCredentialsRequestProto\x12N\n\x1finAppRestoreTransactionsRequest\x18\x1f \x01(\x0b\x32%.InAppRestoreTransactionsRequestProto\x12Q\n\"getInAppPurchaseInformationRequest\x18 \x01(\x0b\x32%.InAppPurchaseInformationRequestProto\x12H\n\x1c\x63heckForNotificationsRequest\x18! \x01(\x0b\x32\".CheckForNotificationsRequestProto\x12>\n\x17\x61\x63kNotificationsRequest\x18\" \x01(\x0b\x32\x1d.AckNotificationsRequestProto\x12<\n\x16purchaseProductRequest\x18# \x01(\x0b\x32\x1c.PurchaseProductRequestProto\x12\x44\n\x1areconstructDatabaseRequest\x18$ \x01(\x0b\x32 .ReconstructDatabaseRequestProto\x12\x46\n\x1bpaypalMassageAddressRequest\x18% \x01(\x0b\x32!.PaypalMassageAddressRequestProto\x12@\n\x18getAddressSnippetRequest\x18& \x01(\x0b\x32\x1e.GetAddressSnippetRequestProto\"\xdc\x10\n\x13SingleResponseProto\x12\x34\n\x12responseProperties\x18\x02 \x01(\x0b\x32\x18.ResponsePropertiesProto\x12,\n\x0e\x61ssetsResponse\x18\x03 \x01(\x0b\x32\x14.AssetsResponseProto\x12\x30\n\x10\x63ommentsResponse\x18\x04 \x01(\x0b\x32\x16.CommentsResponseProto\x12:\n\x15modifyCommentResponse\x18\x05 \x01(\x0b\x32\x1b.ModifyCommentResponseProto\x12\x38\n\x14purchasePostResponse\x18\x06 \x01(\x0b\x32\x1a.PurchasePostResponseProto\x12:\n\x15purchaseOrderResponse\x18\x07 \x01(\x0b\x32\x1b.PurchaseOrderResponseProto\x12\x36\n\x13\x63ontentSyncResponse\x18\x08 \x01(\x0b\x32\x19.ContentSyncResponseProto\x12\x30\n\x10getAssetResponse\x18\t \x01(\x0b\x32\x16.GetAssetResponseProto\x12\x30\n\x10getImageResponse\x18\n \x01(\x0b\x32\x16.GetImageResponseProto\x12,\n\x0erefundResponse\x18\x0b \x01(\x0b\x32\x14.RefundResponseProto\x12@\n\x18purchaseMetadataResponse\x18\x0c \x01(\x0b\x32\x1e.PurchaseMetadataResponseProto\x12=\n\x15subCategoriesResponse\x18\r \x01(\x0b\x32\x1e.GetSubCategoriesResponseProto\x12>\n\x17uninstallReasonResponse\x18\x0f \x01(\x0b\x32\x1d.UninstallReasonResponseProto\x12\x36\n\x13rateCommentResponse\x18\x10 \x01(\x0b\x32\x19.RateCommentResponseProto\x12\x38\n\x14\x63heckLicenseResponse\x18\x11 \x01(\x0b\x32\x1a.CheckLicenseResponseProto\x12\x42\n\x19getMarketMetadataResponse\x18\x12 \x01(\x0b\x32\x1f.GetMarketMetadataResponseProto\x12:\n\x15getCategoriesResponse\x18\x14 \x01(\x0b\x32\x1b.GetCategoriesResponseProto\x12<\n\x16getCarrierInfoResponse\x18\x15 \x01(\x0b\x32\x1c.GetCarrierInfoResponseProto\x12\x45\n\x1arestoreApplicationResponse\x18\x17 \x01(\x0b\x32!.RestoreApplicationsResponseProto\x12>\n\x17querySuggestionResponse\x18\x18 \x01(\x0b\x32\x1d.QuerySuggestionResponseProto\x12\x38\n\x14\x62illingEventResponse\x18\x19 \x01(\x0b\x32\x1a.BillingEventResponseProto\x12\x42\n\x19paypalPreapprovalResponse\x18\x1a \x01(\x0b\x32\x1f.PaypalPreapprovalResponseProto\x12P\n paypalPreapprovalDetailsResponse\x18\x1b \x01(\x0b\x32&.PaypalPreapprovalDetailsResponseProto\x12\x46\n\x1bpaypalCreateAccountResponse\x18\x1c \x01(\x0b\x32!.PaypalCreateAccountResponseProto\x12X\n$paypalPreapprovalCredentialsResponse\x18\x1d \x01(\x0b\x32*.PaypalPreapprovalCredentialsResponseProto\x12P\n inAppRestoreTransactionsResponse\x18\x1e \x01(\x0b\x32&.InAppRestoreTransactionsResponseProto\x12S\n#getInAppPurchaseInformationResponse\x18\x1f \x01(\x0b\x32&.InAppPurchaseInformationResponseProto\x12J\n\x1d\x63heckForNotificationsResponse\x18 \x01(\x0b\x32#.CheckForNotificationsResponseProto\x12@\n\x18\x61\x63kNotificationsResponse\x18! \x01(\x0b\x32\x1e.AckNotificationsResponseProto\x12>\n\x17purchaseProductResponse\x18\" \x01(\x0b\x32\x1d.PurchaseProductResponseProto\x12\x46\n\x1breconstructDatabaseResponse\x18# \x01(\x0b\x32!.ReconstructDatabaseResponseProto\x12H\n\x1cpaypalMassageAddressResponse\x18$ \x01(\x0b\x32\".PaypalMassageAddressResponseProto\x12\x42\n\x19getAddressSnippetResponse\x18% \x01(\x0b\x32\x1f.GetAddressSnippetResponseProto\"[\n\x1aStatusBarNotificationProto\x12\x12\n\ntickerText\x18\x01 \x01(\t\x12\x14\n\x0c\x63ontentTitle\x18\x02 \x01(\t\x12\x13\n\x0b\x63ontentText\x18\x03 \x01(\t\">\n\x1bUninstallReasonRequestProto\x12\x0f\n\x07\x61ssetId\x18\x01 \x01(\t\x12\x0e\n\x06reason\x18\x02 \x01(\x05\"\x1e\n\x1cUninstallReasonResponseProto\"\x82\x02\n\x13\x41ndroidCheckinProto\x12!\n\x05\x62uild\x18\x01 \x01(\x0b\x32\x12.AndroidBuildProto\x12\x17\n\x0flastCheckinMsec\x18\x02 \x01(\x03\x12!\n\x05\x65vent\x18\x03 \x03(\x0b\x32\x12.AndroidEventProto\x12$\n\x04stat\x18\x04 \x03(\x0b\x32\x16.AndroidStatisticProto\x12\x16\n\x0erequestedGroup\x18\x05 \x03(\t\x12\x14\n\x0c\x63\x65llOperator\x18\x06 \x01(\t\x12\x13\n\x0bsimOperator\x18\x07 \x01(\t\x12\x0f\n\x07roaming\x18\x08 \x01(\t\x12\x12\n\nuserNumber\x18\t \x01(\x05\"\x94\x02\n\x11\x41ndroidBuildProto\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0f\n\x07product\x18\x02 \x01(\t\x12\x0f\n\x07\x63\x61rrier\x18\x03 \x01(\t\x12\r\n\x05radio\x18\x04 \x01(\t\x12\x12\n\nbootloader\x18\x05 \x01(\t\x12\x0e\n\x06\x63lient\x18\x06 \x01(\t\x12\x11\n\ttimestamp\x18\x07 \x01(\x03\x12\x16\n\x0egoogleServices\x18\x08 \x01(\x05\x12\x0e\n\x06\x64\x65vice\x18\t \x01(\t\x12\x12\n\nsdkVersion\x18\n \x01(\x05\x12\r\n\x05model\x18\x0b \x01(\t\x12\x14\n\x0cmanufacturer\x18\x0c \x01(\t\x12\x14\n\x0c\x62uildProduct\x18\r \x01(\t\x12\x14\n\x0cotaInstalled\x18\x0e \x01(\x08\"A\n\x11\x41ndroidEventProto\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x10\n\x08timeMsec\x18\x03 \x01(\x03\"@\n\x15\x41ndroidStatisticProto\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12\x0b\n\x03sum\x18\x03 \x01(\x02\"\xaa\x01\n\x12\x41ndroidIntentProto\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\t\x12\x0f\n\x07\x64\x61taUri\x18\x02 \x01(\t\x12\x10\n\x08mimeType\x18\x03 \x01(\t\x12\x11\n\tjavaClass\x18\x04 \x01(\t\x12(\n\x05\x65xtra\x18\x05 \x03(\n2\x19.AndroidIntentProto.Extra\x1a$\n\x05\x45xtra\x12\x0c\n\x04name\x18\x06 \x01(\t\x12\r\n\x05value\x18\x07 \x01(\t\"\xcd\x03\n\x15\x41ndroidCheckinRequest\x12\x0c\n\x04imei\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\x03\x12\x0e\n\x06\x64igest\x18\x03 \x01(\t\x12%\n\x07\x63heckin\x18\x04 \x01(\x0b\x32\x14.AndroidCheckinProto\x12\x14\n\x0c\x64\x65siredBuild\x18\x05 \x01(\t\x12\x0e\n\x06locale\x18\x06 \x01(\t\x12\x11\n\tloggingId\x18\x07 \x01(\x03\x12\x15\n\rmarketCheckin\x18\x08 \x01(\t\x12\x0f\n\x07macAddr\x18\t \x03(\t\x12\x0c\n\x04meid\x18\n \x01(\t\x12\x15\n\raccountCookie\x18\x0b \x03(\t\x12\x10\n\x08timeZone\x18\x0c \x01(\t\x12\x15\n\rsecurityToken\x18\r \x01(\x06\x12\x0f\n\x07version\x18\x0e \x01(\x05\x12\x0f\n\x07otaCert\x18\x0f \x03(\t\x12\x14\n\x0cserialNumber\x18\x10 \x01(\t\x12\x0b\n\x03\x65sn\x18\x11 \x01(\t\x12\x36\n\x13\x64\x65viceConfiguration\x18\x12 \x01(\x0b\x32\x19.DeviceConfigurationProto\x12\x13\n\x0bmacAddrType\x18\x13 \x03(\t\x12\x10\n\x08\x66ragment\x18\x14 \x01(\x05\x12\x10\n\x08userName\x18\x15 \x01(\t\"\xfd\x01\n\x16\x41ndroidCheckinResponse\x12\x0f\n\x07statsOk\x18\x01 \x01(\x08\x12#\n\x06intent\x18\x02 \x03(\x0b\x32\x13.AndroidIntentProto\x12\x10\n\x08timeMsec\x18\x03 \x01(\x03\x12\x0e\n\x06\x64igest\x18\x04 \x01(\t\x12\"\n\x07setting\x18\x05 \x03(\x0b\x32\x11.GservicesSetting\x12\x10\n\x08marketOk\x18\x06 \x01(\x08\x12\x11\n\tandroidId\x18\x07 \x01(\x06\x12\x15\n\rsecurityToken\x18\x08 \x01(\x06\x12\x14\n\x0csettingsDiff\x18\t \x01(\x08\x12\x15\n\rdeleteSetting\x18\n \x03(\t\"/\n\x10GservicesSetting\x12\x0c\n\x04name\x18\x01 \x01(\x0c\x12\r\n\x05value\x18\x02 \x01(\x0c') @@ -14789,261 +14790,931 @@ ) -_ANDROIDAPPDELIVERYDATA.fields_by_name['additionalFile'].message_type = _APPFILEMETADATA -_ANDROIDAPPDELIVERYDATA.fields_by_name['downloadAuthCookie'].message_type = _HTTPCOOKIE -_ANDROIDAPPDELIVERYDATA.fields_by_name['patchData'].message_type = _ANDROIDAPPPATCHDATA -_ANDROIDAPPDELIVERYDATA.fields_by_name['encryptionParams'].message_type = _ENCRYPTIONPARAMS -_BOOKAUTHOR.fields_by_name['docid'].message_type = _DOCID -_BOOKDETAILS_IDENTIFIER.containing_type = _BOOKDETAILS; -_BOOKDETAILS.fields_by_name['subject'].message_type = _BOOKSUBJECT -_BOOKDETAILS.fields_by_name['author'].message_type = _BOOKAUTHOR -_BOOKDETAILS.fields_by_name['identifier'].message_type = _BOOKDETAILS_IDENTIFIER -_BROWSERESPONSE.fields_by_name['category'].message_type = _BROWSELINK -_BROWSERESPONSE.fields_by_name['breadcrumb'].message_type = _BROWSELINK -_ADDRESSCHALLENGE.fields_by_name['checkbox'].message_type = _FORMCHECKBOX -_ADDRESSCHALLENGE.fields_by_name['address'].message_type = _ADDRESS -_ADDRESSCHALLENGE.fields_by_name['errorInputField'].message_type = _INPUTVALIDATIONERROR -_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['item'].message_type = _LINEITEM -_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['subItem'].message_type = _LINEITEM -_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['total'].message_type = _LINEITEM -_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['summary'].message_type = _LINEITEM -_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['instrument'].message_type = _INSTRUMENT -_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.containing_type = _BUYRESPONSE_CHECKOUTINFO; -_BUYRESPONSE_CHECKOUTINFO.fields_by_name['item'].message_type = _LINEITEM -_BUYRESPONSE_CHECKOUTINFO.fields_by_name['subItem'].message_type = _LINEITEM -_BUYRESPONSE_CHECKOUTINFO.fields_by_name['checkoutoption'].message_type = _BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION -_BUYRESPONSE_CHECKOUTINFO.fields_by_name['eligibleInstrument'].message_type = _INSTRUMENT -_BUYRESPONSE_CHECKOUTINFO.containing_type = _BUYRESPONSE; -_BUYRESPONSE.fields_by_name['purchaseResponse'].message_type = _PURCHASENOTIFICATIONRESPONSE -_BUYRESPONSE.fields_by_name['checkoutinfo'].message_type = _BUYRESPONSE_CHECKOUTINFO -_BUYRESPONSE.fields_by_name['purchaseStatusResponse'].message_type = _PURCHASESTATUSRESPONSE -_BUYRESPONSE.fields_by_name['challenge'].message_type = _CHALLENGE -_CHALLENGE.fields_by_name['addressChallenge'].message_type = _ADDRESSCHALLENGE -_CHALLENGE.fields_by_name['authenticationChallenge'].message_type = _AUTHENTICATIONCHALLENGE -_LINEITEM.fields_by_name['offer'].message_type = _OFFER -_LINEITEM.fields_by_name['amount'].message_type = _MONEY -_PURCHASENOTIFICATIONRESPONSE.fields_by_name['debugInfo'].message_type = _DEBUGINFO -_PURCHASESTATUSRESPONSE.fields_by_name['libraryUpdate'].message_type = _LIBRARYUPDATE -_PURCHASESTATUSRESPONSE.fields_by_name['rejectedInstrument'].message_type = _INSTRUMENT -_PURCHASESTATUSRESPONSE.fields_by_name['appDeliveryData'].message_type = _ANDROIDAPPDELIVERYDATA -_CHECKINSTRUMENTRESPONSE.fields_by_name['instrument'].message_type = _INSTRUMENT -_CHECKINSTRUMENTRESPONSE.fields_by_name['eligibleInstrument'].message_type = _INSTRUMENT -_UPDATEINSTRUMENTREQUEST.fields_by_name['instrument'].message_type = _INSTRUMENT -_UPDATEINSTRUMENTRESPONSE.fields_by_name['errorInputField'].message_type = _INPUTVALIDATIONERROR -_UPDATEINSTRUMENTRESPONSE.fields_by_name['redeemedOffer'].message_type = _REDEEMEDPROMOOFFER -_VERIFYASSOCIATIONRESPONSE.fields_by_name['billingAddress'].message_type = _ADDRESS -_VERIFYASSOCIATIONRESPONSE.fields_by_name['carrierTos'].message_type = _CARRIERTOS -_ADDCREDITCARDPROMOOFFER.fields_by_name['image'].message_type = _IMAGE -_AVAILABLEPROMOOFFER.fields_by_name['addCreditCardOffer'].message_type = _ADDCREDITCARDPROMOOFFER -_CHECKPROMOOFFERRESPONSE.fields_by_name['availableOffer'].message_type = _AVAILABLEPROMOOFFER -_CHECKPROMOOFFERRESPONSE.fields_by_name['redeemedOffer'].message_type = _REDEEMEDPROMOOFFER -_REDEEMEDPROMOOFFER.fields_by_name['image'].message_type = _IMAGE -_OFFER.fields_by_name['convertedPrice'].message_type = _OFFER -_OFFER.fields_by_name['rentalTerms'].message_type = _RENTALTERMS -_OFFER.fields_by_name['subscriptionTerms'].message_type = _SUBSCRIPTIONTERMS -_SUBSCRIPTIONTERMS.fields_by_name['recurringPeriod'].message_type = _TIMEPERIOD -_SUBSCRIPTIONTERMS.fields_by_name['trialPeriod'].message_type = _TIMEPERIOD -_CARRIERBILLINGINSTRUMENT.fields_by_name['encryptedSubscriberInfo'].message_type = _ENCRYPTEDSUBSCRIBERINFO -_CARRIERBILLINGINSTRUMENT.fields_by_name['credentials'].message_type = _CARRIERBILLINGCREDENTIALS -_CARRIERBILLINGINSTRUMENT.fields_by_name['acceptedCarrierTos'].message_type = _CARRIERTOS -_CARRIERBILLINGINSTRUMENTSTATUS.fields_by_name['carrierTos'].message_type = _CARRIERTOS -_CARRIERBILLINGINSTRUMENTSTATUS.fields_by_name['carrierPasswordPrompt'].message_type = _PASSWORDPROMPT -_CARRIERTOS.fields_by_name['dcbTos'].message_type = _CARRIERTOSENTRY -_CARRIERTOS.fields_by_name['piiTos'].message_type = _CARRIERTOSENTRY -_CREDITCARDINSTRUMENT.fields_by_name['escrowEfeParam'].message_type = _EFEPARAM -_INSTRUMENT.fields_by_name['billingAddress'].message_type = _ADDRESS -_INSTRUMENT.fields_by_name['creditCard'].message_type = _CREDITCARDINSTRUMENT -_INSTRUMENT.fields_by_name['carrierBilling'].message_type = _CARRIERBILLINGINSTRUMENT -_INSTRUMENT.fields_by_name['billingAddressSpec'].message_type = _BILLINGADDRESSSPEC -_INSTRUMENT.fields_by_name['carrierBillingStatus'].message_type = _CARRIERBILLINGINSTRUMENTSTATUS -_DEBUGINFO_TIMING.containing_type = _DEBUGINFO; -_DEBUGINFO.fields_by_name['timing'].message_type = _DEBUGINFO_TIMING -_DELIVERYRESPONSE.fields_by_name['appDeliveryData'].message_type = _ANDROIDAPPDELIVERYDATA -_BULKDETAILSENTRY.fields_by_name['doc'].message_type = _DOCV2 -_BULKDETAILSRESPONSE.fields_by_name['entry'].message_type = _BULKDETAILSENTRY -_DETAILSRESPONSE.fields_by_name['docV1'].message_type = _DOCV1 -_DETAILSRESPONSE.fields_by_name['userReview'].message_type = _REVIEW -_DETAILSRESPONSE.fields_by_name['docV2'].message_type = _DOCV2 -_DOCUMENT.fields_by_name['docid'].message_type = _DOCID -_DOCUMENT.fields_by_name['fetchDocid'].message_type = _DOCID -_DOCUMENT.fields_by_name['sampleDocid'].message_type = _DOCID -_DOCUMENT.fields_by_name['priceDeprecated'].message_type = _OFFER -_DOCUMENT.fields_by_name['availability'].message_type = _AVAILABILITY -_DOCUMENT.fields_by_name['image'].message_type = _IMAGE -_DOCUMENT.fields_by_name['child'].message_type = _DOCUMENT -_DOCUMENT.fields_by_name['aggregateRating'].message_type = _AGGREGATERATING -_DOCUMENT.fields_by_name['offer'].message_type = _OFFER -_DOCUMENT.fields_by_name['translatedSnippet'].message_type = _TRANSLATEDTEXT -_DOCUMENT.fields_by_name['documentVariant'].message_type = _DOCUMENTVARIANT -_DOCUMENT.fields_by_name['decoration'].message_type = _DOCUMENT -_DOCUMENT.fields_by_name['parent'].message_type = _DOCUMENT -_DOCUMENTVARIANT.fields_by_name['rule'].message_type = _RULE -_DOCUMENTVARIANT.fields_by_name['autoTranslation'].message_type = _TRANSLATEDTEXT -_DOCUMENTVARIANT.fields_by_name['offer'].message_type = _OFFER -_DOCUMENTVARIANT.fields_by_name['child'].message_type = _DOCUMENT -_DOCUMENTVARIANT.fields_by_name['decoration'].message_type = _DOCUMENT -_IMAGE_DIMENSION.containing_type = _IMAGE; -_IMAGE_CITATION.containing_type = _IMAGE; -_IMAGE.fields_by_name['dimension'].message_type = _IMAGE_DIMENSION -_IMAGE.fields_by_name['citation'].message_type = _IMAGE_CITATION -_BADGE.fields_by_name['image'].message_type = _IMAGE -_PLUSONEDATA.fields_by_name['circlesPeople'].message_type = _PLUSPERSON -_PROMOTEDDOC.fields_by_name['image'].message_type = _IMAGE -_SERIESANTENNA.fields_by_name['sectionTracks'].message_type = _SECTIONMETADATA -_SERIESANTENNA.fields_by_name['sectionAlbums'].message_type = _SECTIONMETADATA -_TEMPLATE.fields_by_name['seriesAntenna'].message_type = _SERIESANTENNA -_TEMPLATE.fields_by_name['tileGraphic2X1'].message_type = _TILETEMPLATE -_TEMPLATE.fields_by_name['tileGraphic4X2'].message_type = _TILETEMPLATE -_TEMPLATE.fields_by_name['tileGraphicColoredTitle2X1'].message_type = _TILETEMPLATE -_TEMPLATE.fields_by_name['tileGraphicUpperLeftTitle2X1'].message_type = _TILETEMPLATE -_TEMPLATE.fields_by_name['tileDetailsReflectedGraphic2X2'].message_type = _TILETEMPLATE -_TEMPLATE.fields_by_name['tileFourBlock4X2'].message_type = _TILETEMPLATE -_TEMPLATE.fields_by_name['containerWithBanner'].message_type = _CONTAINERWITHBANNER -_TEMPLATE.fields_by_name['dealOfTheDay'].message_type = _DEALOFTHEDAY -_TEMPLATE.fields_by_name['tileGraphicColoredTitle4X2'].message_type = _TILETEMPLATE -_TEMPLATE.fields_by_name['editorialSeriesContainer'].message_type = _EDITORIALSERIESCONTAINER -_ALBUMDETAILS.fields_by_name['details'].message_type = _MUSICDETAILS -_ALBUMDETAILS.fields_by_name['displayArtist'].message_type = _ARTISTDETAILS -_APPDETAILS.fields_by_name['file'].message_type = _FILEMETADATA -_ARTISTDETAILS.fields_by_name['externalLinks'].message_type = _ARTISTEXTERNALLINKS -_DOCUMENTDETAILS.fields_by_name['appDetails'].message_type = _APPDETAILS -_DOCUMENTDETAILS.fields_by_name['albumDetails'].message_type = _ALBUMDETAILS -_DOCUMENTDETAILS.fields_by_name['artistDetails'].message_type = _ARTISTDETAILS -_DOCUMENTDETAILS.fields_by_name['songDetails'].message_type = _SONGDETAILS -_DOCUMENTDETAILS.fields_by_name['bookDetails'].message_type = _BOOKDETAILS -_DOCUMENTDETAILS.fields_by_name['videoDetails'].message_type = _VIDEODETAILS -_DOCUMENTDETAILS.fields_by_name['subscriptionDetails'].message_type = _SUBSCRIPTIONDETAILS -_DOCUMENTDETAILS.fields_by_name['magazineDetails'].message_type = _MAGAZINEDETAILS -_DOCUMENTDETAILS.fields_by_name['tvShowDetails'].message_type = _TVSHOWDETAILS -_DOCUMENTDETAILS.fields_by_name['tvSeasonDetails'].message_type = _TVSEASONDETAILS -_DOCUMENTDETAILS.fields_by_name['tvEpisodeDetails'].message_type = _TVEPISODEDETAILS -_MUSICDETAILS.fields_by_name['artist'].message_type = _ARTISTDETAILS -_SONGDETAILS.fields_by_name['details'].message_type = _MUSICDETAILS -_SONGDETAILS.fields_by_name['displayArtist'].message_type = _ARTISTDETAILS -_VIDEODETAILS.fields_by_name['credit'].message_type = _VIDEOCREDIT -_VIDEODETAILS.fields_by_name['trailer'].message_type = _TRAILER -_VIDEODETAILS.fields_by_name['rentalTerm'].message_type = _VIDEORENTALTERM -_VIDEORENTALTERM_TERM.containing_type = _VIDEORENTALTERM; -_VIDEORENTALTERM.fields_by_name['term'].message_type = _VIDEORENTALTERM_TERM -_BUCKET.fields_by_name['document'].message_type = _DOCV1 -_LISTRESPONSE.fields_by_name['bucket'].message_type = _BUCKET -_LISTRESPONSE.fields_by_name['doc'].message_type = _DOCV2 -_DOCV1.fields_by_name['finskyDoc'].message_type = _DOCUMENT -_DOCV1.fields_by_name['details'].message_type = _DOCUMENTDETAILS -_DOCV1.fields_by_name['plusOneData'].message_type = _PLUSONEDATA -_ANNOTATIONS.fields_by_name['sectionRelated'].message_type = _SECTIONMETADATA -_ANNOTATIONS.fields_by_name['sectionMoreBy'].message_type = _SECTIONMETADATA -_ANNOTATIONS.fields_by_name['plusOneData'].message_type = _PLUSONEDATA -_ANNOTATIONS.fields_by_name['warning'].message_type = _WARNING -_ANNOTATIONS.fields_by_name['sectionBodyOfWork'].message_type = _SECTIONMETADATA -_ANNOTATIONS.fields_by_name['sectionCoreContent'].message_type = _SECTIONMETADATA -_ANNOTATIONS.fields_by_name['template'].message_type = _TEMPLATE -_ANNOTATIONS.fields_by_name['badgeForCreator'].message_type = _BADGE -_ANNOTATIONS.fields_by_name['badgeForDoc'].message_type = _BADGE -_ANNOTATIONS.fields_by_name['link'].message_type = _LINK -_ANNOTATIONS.fields_by_name['sectionCrossSell'].message_type = _SECTIONMETADATA -_ANNOTATIONS.fields_by_name['sectionRelatedDocType'].message_type = _SECTIONMETADATA -_ANNOTATIONS.fields_by_name['promotedDoc'].message_type = _PROMOTEDDOC -_ANNOTATIONS.fields_by_name['subscription'].message_type = _DOCV2 -_ANNOTATIONS.fields_by_name['reason'].message_type = _REASON -_DOCV2.fields_by_name['offer'].message_type = _OFFER -_DOCV2.fields_by_name['availability'].message_type = _AVAILABILITY -_DOCV2.fields_by_name['image'].message_type = _IMAGE -_DOCV2.fields_by_name['child'].message_type = _DOCV2 -_DOCV2.fields_by_name['containerMetadata'].message_type = _CONTAINERMETADATA -_DOCV2.fields_by_name['details'].message_type = _DOCUMENTDETAILS -_DOCV2.fields_by_name['aggregateRating'].message_type = _AGGREGATERATING -_DOCV2.fields_by_name['annotations'].message_type = _ANNOTATIONS -_AVAILABILITY_PERDEVICEAVAILABILITYRESTRICTION.fields_by_name['filterInfo'].message_type = _FILTEREVALUATIONINFO -_AVAILABILITY_PERDEVICEAVAILABILITYRESTRICTION.containing_type = _AVAILABILITY; -_AVAILABILITY.fields_by_name['rule'].message_type = _RULE -_AVAILABILITY.fields_by_name['perdeviceavailabilityrestriction'].message_type = _AVAILABILITY_PERDEVICEAVAILABILITYRESTRICTION -_AVAILABILITY.fields_by_name['install'].message_type = _INSTALL -_AVAILABILITY.fields_by_name['filterInfo'].message_type = _FILTEREVALUATIONINFO -_AVAILABILITY.fields_by_name['ownershipInfo'].message_type = _OWNERSHIPINFO -_FILTEREVALUATIONINFO.fields_by_name['ruleEvaluation'].message_type = _RULEEVALUATION -_RULE.fields_by_name['subrule'].message_type = _RULE -_RULEEVALUATION.fields_by_name['rule'].message_type = _RULE -_LIBRARYMUTATION.fields_by_name['docid'].message_type = _DOCID -_LIBRARYMUTATION.fields_by_name['appDetails'].message_type = _LIBRARYAPPDETAILS -_LIBRARYMUTATION.fields_by_name['subscriptionDetails'].message_type = _LIBRARYSUBSCRIPTIONDETAILS -_LIBRARYUPDATE.fields_by_name['mutation'].message_type = _LIBRARYMUTATION -_LIBRARYREPLICATIONREQUEST.fields_by_name['libraryState'].message_type = _CLIENTLIBRARYSTATE -_LIBRARYREPLICATIONRESPONSE.fields_by_name['update'].message_type = _LIBRARYUPDATE -_LOGREQUEST.fields_by_name['clickEvent'].message_type = _CLICKLOGEVENT -_NOTIFICATION.fields_by_name['docid'].message_type = _DOCID -_NOTIFICATION.fields_by_name['appData'].message_type = _ANDROIDAPPNOTIFICATIONDATA -_NOTIFICATION.fields_by_name['appDeliveryData'].message_type = _ANDROIDAPPDELIVERYDATA -_NOTIFICATION.fields_by_name['purchaseRemovalData'].message_type = _PURCHASEREMOVALDATA -_NOTIFICATION.fields_by_name['userNotificationData'].message_type = _USERNOTIFICATIONDATA -_NOTIFICATION.fields_by_name['inAppNotificationData'].message_type = _INAPPNOTIFICATIONDATA -_NOTIFICATION.fields_by_name['purchaseDeclinedData'].message_type = _PURCHASEDECLINEDDATA -_NOTIFICATION.fields_by_name['libraryUpdate'].message_type = _LIBRARYUPDATE -_NOTIFICATION.fields_by_name['libraryDirtyData'].message_type = _LIBRARYDIRTYDATA -_RESOLVELINKRESPONSE.fields_by_name['directPurchase'].message_type = _DIRECTPURCHASE -_PAYLOAD.fields_by_name['listResponse'].message_type = _LISTRESPONSE -_PAYLOAD.fields_by_name['detailsResponse'].message_type = _DETAILSRESPONSE -_PAYLOAD.fields_by_name['reviewResponse'].message_type = _REVIEWRESPONSE -_PAYLOAD.fields_by_name['buyResponse'].message_type = _BUYRESPONSE -_PAYLOAD.fields_by_name['searchResponse'].message_type = _SEARCHRESPONSE -_PAYLOAD.fields_by_name['tocResponse'].message_type = _TOCRESPONSE -_PAYLOAD.fields_by_name['browseResponse'].message_type = _BROWSERESPONSE -_PAYLOAD.fields_by_name['purchaseStatusResponse'].message_type = _PURCHASESTATUSRESPONSE -_PAYLOAD.fields_by_name['updateInstrumentResponse'].message_type = _UPDATEINSTRUMENTRESPONSE -_PAYLOAD.fields_by_name['logResponse'].message_type = _LOGRESPONSE -_PAYLOAD.fields_by_name['checkInstrumentResponse'].message_type = _CHECKINSTRUMENTRESPONSE -_PAYLOAD.fields_by_name['plusOneResponse'].message_type = _PLUSONERESPONSE -_PAYLOAD.fields_by_name['flagContentResponse'].message_type = _FLAGCONTENTRESPONSE -_PAYLOAD.fields_by_name['ackNotificationResponse'].message_type = _ACKNOTIFICATIONRESPONSE -_PAYLOAD.fields_by_name['initiateAssociationResponse'].message_type = _INITIATEASSOCIATIONRESPONSE -_PAYLOAD.fields_by_name['verifyAssociationResponse'].message_type = _VERIFYASSOCIATIONRESPONSE -_PAYLOAD.fields_by_name['libraryReplicationResponse'].message_type = _LIBRARYREPLICATIONRESPONSE -_PAYLOAD.fields_by_name['revokeResponse'].message_type = _REVOKERESPONSE -_PAYLOAD.fields_by_name['bulkDetailsResponse'].message_type = _BULKDETAILSRESPONSE -_PAYLOAD.fields_by_name['resolveLinkResponse'].message_type = _RESOLVELINKRESPONSE -_PAYLOAD.fields_by_name['deliveryResponse'].message_type = _DELIVERYRESPONSE -_PAYLOAD.fields_by_name['acceptTosResponse'].message_type = _ACCEPTTOSRESPONSE -_PAYLOAD.fields_by_name['rateSuggestedContentResponse'].message_type = _RATESUGGESTEDCONTENTRESPONSE -_PAYLOAD.fields_by_name['checkPromoOfferResponse'].message_type = _CHECKPROMOOFFERRESPONSE -_RESPONSEWRAPPER.fields_by_name['payload'].message_type = _PAYLOAD -_RESPONSEWRAPPER.fields_by_name['commands'].message_type = _SERVERCOMMANDS -_RESPONSEWRAPPER.fields_by_name['preFetch'].message_type = _PREFETCH -_RESPONSEWRAPPER.fields_by_name['notification'].message_type = _NOTIFICATION -_GETREVIEWSRESPONSE.fields_by_name['review'].message_type = _REVIEW -_REVIEWRESPONSE.fields_by_name['getResponse'].message_type = _GETREVIEWSRESPONSE -_REVOKERESPONSE.fields_by_name['libraryUpdate'].message_type = _LIBRARYUPDATE -_SEARCHRESPONSE.fields_by_name['bucket'].message_type = _BUCKET -_SEARCHRESPONSE.fields_by_name['doc'].message_type = _DOCV2 -_SEARCHRESPONSE.fields_by_name['relatedSearch'].message_type = _RELATEDSEARCH -_TOCRESPONSE.fields_by_name['corpus'].message_type = _CORPUSMETADATA -_TOCRESPONSE.fields_by_name['experiments'].message_type = _EXPERIMENTS -_TOCRESPONSE.fields_by_name['userSettings'].message_type = _USERSETTINGS -_ACKNOTIFICATIONSREQUESTPROTO.fields_by_name['signatureHash'].message_type = _SIGNATUREHASHPROTO -_APPSUGGESTIONPROTO.fields_by_name['assetInfo'].message_type = _EXTERNALASSETPROTO -_ASSETSRESPONSEPROTO.fields_by_name['asset'].message_type = _EXTERNALASSETPROTO -_ASSETSRESPONSEPROTO.fields_by_name['altAsset'].message_type = _EXTERNALASSETPROTO -_BILLINGEVENTREQUESTPROTO.fields_by_name['carrierInstrument'].message_type = _EXTERNALCARRIERBILLINGINSTRUMENTPROTO -_CATEGORYPROTO.fields_by_name['subCategories'].message_type = _CATEGORYPROTO -_COMMENTSRESPONSEPROTO.fields_by_name['comment'].message_type = _EXTERNALCOMMENTPROTO -_COMMENTSRESPONSEPROTO.fields_by_name['selfComment'].message_type = _EXTERNALCOMMENTPROTO -_CONTENTSYNCREQUESTPROTO_ASSETINSTALLSTATE.containing_type = _CONTENTSYNCREQUESTPROTO; -_CONTENTSYNCREQUESTPROTO_SYSTEMAPP.containing_type = _CONTENTSYNCREQUESTPROTO; -_CONTENTSYNCREQUESTPROTO.fields_by_name['assetinstallstate'].message_type = _CONTENTSYNCREQUESTPROTO_ASSETINSTALLSTATE -_CONTENTSYNCREQUESTPROTO.fields_by_name['systemapp'].message_type = _CONTENTSYNCREQUESTPROTO_SYSTEMAPP -_DATAMESSAGEPROTO.fields_by_name['appData'].message_type = _APPDATAPROTO -_DOWNLOADINFOPROTO.fields_by_name['additionalFile'].message_type = _FILEMETADATAPROTO -_EXTERNALASSETPROTO_PURCHASEINFORMATION.containing_type = _EXTERNALASSETPROTO; -_EXTERNALASSETPROTO_EXTENDEDINFO_PACKAGEDEPENDENCY.containing_type = _EXTERNALASSETPROTO_EXTENDEDINFO; -_EXTERNALASSETPROTO_EXTENDEDINFO.fields_by_name['packagedependency'].message_type = _EXTERNALASSETPROTO_EXTENDEDINFO_PACKAGEDEPENDENCY -_EXTERNALASSETPROTO_EXTENDEDINFO.fields_by_name['downloadInfo'].message_type = _DOWNLOADINFOPROTO -_EXTERNALASSETPROTO_EXTENDEDINFO.containing_type = _EXTERNALASSETPROTO; -_EXTERNALASSETPROTO.fields_by_name['purchaseinformation'].message_type = _EXTERNALASSETPROTO_PURCHASEINFORMATION -_EXTERNALASSETPROTO.fields_by_name['extendedinfo'].message_type = _EXTERNALASSETPROTO_EXTENDEDINFO -_EXTERNALASSETPROTO.fields_by_name['appBadge'].message_type = _EXTERNALBADGEPROTO -_EXTERNALASSETPROTO.fields_by_name['ownerBadge'].message_type = _EXTERNALBADGEPROTO -_EXTERNALBADGEPROTO.fields_by_name['badgeImage'].message_type = _EXTERNALBADGEIMAGEPROTO -_EXTERNALCARRIERBILLINGINSTRUMENTPROTO.fields_by_name['encryptedSubscriberInfo'].message_type = _ENCRYPTEDSUBSCRIBERINFO -_EXTERNALPAYPALINSTRUMENTPROTO.fields_by_name['paypalAddress'].message_type = _ADDRESSPROTO +_ANDROIDCHECKINPROTO = descriptor.Descriptor( + name='AndroidCheckinProto', + full_name='AndroidCheckinProto', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + descriptor.FieldDescriptor( + name='build', full_name='AndroidCheckinProto.build', 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='lastCheckinMsec', full_name='AndroidCheckinProto.lastCheckinMsec', 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), + descriptor.FieldDescriptor( + name='event', full_name='AndroidCheckinProto.event', index=2, + 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, + options=None), + descriptor.FieldDescriptor( + name='stat', full_name='AndroidCheckinProto.stat', index=3, + number=4, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='requestedGroup', full_name='AndroidCheckinProto.requestedGroup', index=4, + number=5, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='cellOperator', full_name='AndroidCheckinProto.cellOperator', index=5, + number=6, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='simOperator', full_name='AndroidCheckinProto.simOperator', index=6, + number=7, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='roaming', full_name='AndroidCheckinProto.roaming', index=7, + number=8, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='userNumber', full_name='AndroidCheckinProto.userNumber', index=8, + number=9, 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), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=46642, + serialized_end=46900, +) + + +_ANDROIDBUILDPROTO = descriptor.Descriptor( + name='AndroidBuildProto', + full_name='AndroidBuildProto', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + descriptor.FieldDescriptor( + name='id', full_name='AndroidBuildProto.id', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='product', full_name='AndroidBuildProto.product', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='carrier', full_name='AndroidBuildProto.carrier', index=2, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='radio', full_name='AndroidBuildProto.radio', index=3, + number=4, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='bootloader', full_name='AndroidBuildProto.bootloader', index=4, + number=5, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='client', full_name='AndroidBuildProto.client', index=5, + number=6, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='timestamp', full_name='AndroidBuildProto.timestamp', index=6, + number=7, 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='googleServices', full_name='AndroidBuildProto.googleServices', index=7, + number=8, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='device', full_name='AndroidBuildProto.device', index=8, + number=9, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='sdkVersion', full_name='AndroidBuildProto.sdkVersion', index=9, + 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='model', full_name='AndroidBuildProto.model', index=10, + number=11, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='manufacturer', full_name='AndroidBuildProto.manufacturer', index=11, + number=12, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='buildProduct', full_name='AndroidBuildProto.buildProduct', index=12, + number=13, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='otaInstalled', full_name='AndroidBuildProto.otaInstalled', index=13, + number=14, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=46903, + serialized_end=47179, +) + + +_ANDROIDEVENTPROTO = descriptor.Descriptor( + name='AndroidEventProto', + full_name='AndroidEventProto', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + descriptor.FieldDescriptor( + name='tag', full_name='AndroidEventProto.tag', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='value', full_name='AndroidEventProto.value', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='timeMsec', full_name='AndroidEventProto.timeMsec', 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), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=47181, + serialized_end=47246, +) + + +_ANDROIDSTATISTICPROTO = descriptor.Descriptor( + name='AndroidStatisticProto', + full_name='AndroidStatisticProto', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + descriptor.FieldDescriptor( + name='tag', full_name='AndroidStatisticProto.tag', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='count', full_name='AndroidStatisticProto.count', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='sum', full_name='AndroidStatisticProto.sum', index=2, + number=3, type=2, cpp_type=6, 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, + extension_ranges=[], + serialized_start=47248, + serialized_end=47312, +) + + +_ANDROIDINTENTPROTO_EXTRA = descriptor.Descriptor( + name='Extra', + full_name='AndroidIntentProto.Extra', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + descriptor.FieldDescriptor( + name='name', full_name='AndroidIntentProto.Extra.name', index=0, + number=6, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='value', full_name='AndroidIntentProto.Extra.value', index=1, + number=7, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=47449, + serialized_end=47485, +) + +_ANDROIDINTENTPROTO = descriptor.Descriptor( + name='AndroidIntentProto', + full_name='AndroidIntentProto', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + descriptor.FieldDescriptor( + name='action', full_name='AndroidIntentProto.action', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='dataUri', full_name='AndroidIntentProto.dataUri', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='mimeType', full_name='AndroidIntentProto.mimeType', index=2, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='javaClass', full_name='AndroidIntentProto.javaClass', index=3, + number=4, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='extra', full_name='AndroidIntentProto.extra', index=4, + number=5, type=10, 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=[_ANDROIDINTENTPROTO_EXTRA, ], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=47315, + serialized_end=47485, +) + + +_ANDROIDCHECKINREQUEST = descriptor.Descriptor( + name='AndroidCheckinRequest', + full_name='AndroidCheckinRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + descriptor.FieldDescriptor( + name='imei', full_name='AndroidCheckinRequest.imei', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='id', full_name='AndroidCheckinRequest.id', 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), + descriptor.FieldDescriptor( + name='digest', full_name='AndroidCheckinRequest.digest', index=2, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='checkin', full_name='AndroidCheckinRequest.checkin', 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), + descriptor.FieldDescriptor( + name='desiredBuild', full_name='AndroidCheckinRequest.desiredBuild', index=4, + number=5, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='locale', full_name='AndroidCheckinRequest.locale', index=5, + number=6, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='loggingId', full_name='AndroidCheckinRequest.loggingId', index=6, + number=7, 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='marketCheckin', full_name='AndroidCheckinRequest.marketCheckin', index=7, + number=8, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='macAddr', full_name='AndroidCheckinRequest.macAddr', index=8, + number=9, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='meid', full_name='AndroidCheckinRequest.meid', index=9, + number=10, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='accountCookie', full_name='AndroidCheckinRequest.accountCookie', index=10, + number=11, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='timeZone', full_name='AndroidCheckinRequest.timeZone', index=11, + number=12, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='securityToken', full_name='AndroidCheckinRequest.securityToken', index=12, + number=13, type=6, cpp_type=4, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='version', full_name='AndroidCheckinRequest.version', index=13, + number=14, 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='otaCert', full_name='AndroidCheckinRequest.otaCert', index=14, + number=15, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='serialNumber', full_name='AndroidCheckinRequest.serialNumber', index=15, + number=16, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='esn', full_name='AndroidCheckinRequest.esn', index=16, + number=17, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='deviceConfiguration', full_name='AndroidCheckinRequest.deviceConfiguration', index=17, + number=18, 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='macAddrType', full_name='AndroidCheckinRequest.macAddrType', index=18, + number=19, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='fragment', full_name='AndroidCheckinRequest.fragment', index=19, + number=20, 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='userName', full_name='AndroidCheckinRequest.userName', index=20, + number=21, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=47488, + serialized_end=47949, +) + + +_ANDROIDCHECKINRESPONSE = descriptor.Descriptor( + name='AndroidCheckinResponse', + full_name='AndroidCheckinResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + descriptor.FieldDescriptor( + name='statsOk', full_name='AndroidCheckinResponse.statsOk', index=0, + number=1, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='intent', full_name='AndroidCheckinResponse.intent', 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), + descriptor.FieldDescriptor( + name='timeMsec', full_name='AndroidCheckinResponse.timeMsec', 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='digest', full_name='AndroidCheckinResponse.digest', index=3, + number=4, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='setting', full_name='AndroidCheckinResponse.setting', index=4, + number=5, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='marketOk', full_name='AndroidCheckinResponse.marketOk', index=5, + number=6, 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='androidId', full_name='AndroidCheckinResponse.androidId', index=6, + number=7, type=6, cpp_type=4, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='securityToken', full_name='AndroidCheckinResponse.securityToken', index=7, + number=8, type=6, cpp_type=4, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='settingsDiff', full_name='AndroidCheckinResponse.settingsDiff', index=8, + number=9, 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='deleteSetting', full_name='AndroidCheckinResponse.deleteSetting', index=9, + number=10, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=47952, + serialized_end=48205, +) + + +_GSERVICESSETTING = descriptor.Descriptor( + name='GservicesSetting', + full_name='GservicesSetting', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + descriptor.FieldDescriptor( + name='name', full_name='GservicesSetting.name', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value="", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + descriptor.FieldDescriptor( + name='value', full_name='GservicesSetting.value', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value="", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=48207, + serialized_end=48254, +) + +_ANDROIDAPPDELIVERYDATA.fields_by_name['additionalFile'].message_type = _APPFILEMETADATA +_ANDROIDAPPDELIVERYDATA.fields_by_name['downloadAuthCookie'].message_type = _HTTPCOOKIE +_ANDROIDAPPDELIVERYDATA.fields_by_name['patchData'].message_type = _ANDROIDAPPPATCHDATA +_ANDROIDAPPDELIVERYDATA.fields_by_name['encryptionParams'].message_type = _ENCRYPTIONPARAMS +_BOOKAUTHOR.fields_by_name['docid'].message_type = _DOCID +_BOOKDETAILS_IDENTIFIER.containing_type = _BOOKDETAILS; +_BOOKDETAILS.fields_by_name['subject'].message_type = _BOOKSUBJECT +_BOOKDETAILS.fields_by_name['author'].message_type = _BOOKAUTHOR +_BOOKDETAILS.fields_by_name['identifier'].message_type = _BOOKDETAILS_IDENTIFIER +_BROWSERESPONSE.fields_by_name['category'].message_type = _BROWSELINK +_BROWSERESPONSE.fields_by_name['breadcrumb'].message_type = _BROWSELINK +_ADDRESSCHALLENGE.fields_by_name['checkbox'].message_type = _FORMCHECKBOX +_ADDRESSCHALLENGE.fields_by_name['address'].message_type = _ADDRESS +_ADDRESSCHALLENGE.fields_by_name['errorInputField'].message_type = _INPUTVALIDATIONERROR +_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['item'].message_type = _LINEITEM +_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['subItem'].message_type = _LINEITEM +_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['total'].message_type = _LINEITEM +_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['summary'].message_type = _LINEITEM +_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.fields_by_name['instrument'].message_type = _INSTRUMENT +_BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION.containing_type = _BUYRESPONSE_CHECKOUTINFO; +_BUYRESPONSE_CHECKOUTINFO.fields_by_name['item'].message_type = _LINEITEM +_BUYRESPONSE_CHECKOUTINFO.fields_by_name['subItem'].message_type = _LINEITEM +_BUYRESPONSE_CHECKOUTINFO.fields_by_name['checkoutoption'].message_type = _BUYRESPONSE_CHECKOUTINFO_CHECKOUTOPTION +_BUYRESPONSE_CHECKOUTINFO.fields_by_name['eligibleInstrument'].message_type = _INSTRUMENT +_BUYRESPONSE_CHECKOUTINFO.containing_type = _BUYRESPONSE; +_BUYRESPONSE.fields_by_name['purchaseResponse'].message_type = _PURCHASENOTIFICATIONRESPONSE +_BUYRESPONSE.fields_by_name['checkoutinfo'].message_type = _BUYRESPONSE_CHECKOUTINFO +_BUYRESPONSE.fields_by_name['purchaseStatusResponse'].message_type = _PURCHASESTATUSRESPONSE +_BUYRESPONSE.fields_by_name['challenge'].message_type = _CHALLENGE +_CHALLENGE.fields_by_name['addressChallenge'].message_type = _ADDRESSCHALLENGE +_CHALLENGE.fields_by_name['authenticationChallenge'].message_type = _AUTHENTICATIONCHALLENGE +_LINEITEM.fields_by_name['offer'].message_type = _OFFER +_LINEITEM.fields_by_name['amount'].message_type = _MONEY +_PURCHASENOTIFICATIONRESPONSE.fields_by_name['debugInfo'].message_type = _DEBUGINFO +_PURCHASESTATUSRESPONSE.fields_by_name['libraryUpdate'].message_type = _LIBRARYUPDATE +_PURCHASESTATUSRESPONSE.fields_by_name['rejectedInstrument'].message_type = _INSTRUMENT +_PURCHASESTATUSRESPONSE.fields_by_name['appDeliveryData'].message_type = _ANDROIDAPPDELIVERYDATA +_CHECKINSTRUMENTRESPONSE.fields_by_name['instrument'].message_type = _INSTRUMENT +_CHECKINSTRUMENTRESPONSE.fields_by_name['eligibleInstrument'].message_type = _INSTRUMENT +_UPDATEINSTRUMENTREQUEST.fields_by_name['instrument'].message_type = _INSTRUMENT +_UPDATEINSTRUMENTRESPONSE.fields_by_name['errorInputField'].message_type = _INPUTVALIDATIONERROR +_UPDATEINSTRUMENTRESPONSE.fields_by_name['redeemedOffer'].message_type = _REDEEMEDPROMOOFFER +_VERIFYASSOCIATIONRESPONSE.fields_by_name['billingAddress'].message_type = _ADDRESS +_VERIFYASSOCIATIONRESPONSE.fields_by_name['carrierTos'].message_type = _CARRIERTOS +_ADDCREDITCARDPROMOOFFER.fields_by_name['image'].message_type = _IMAGE +_AVAILABLEPROMOOFFER.fields_by_name['addCreditCardOffer'].message_type = _ADDCREDITCARDPROMOOFFER +_CHECKPROMOOFFERRESPONSE.fields_by_name['availableOffer'].message_type = _AVAILABLEPROMOOFFER +_CHECKPROMOOFFERRESPONSE.fields_by_name['redeemedOffer'].message_type = _REDEEMEDPROMOOFFER +_REDEEMEDPROMOOFFER.fields_by_name['image'].message_type = _IMAGE +_OFFER.fields_by_name['convertedPrice'].message_type = _OFFER +_OFFER.fields_by_name['rentalTerms'].message_type = _RENTALTERMS +_OFFER.fields_by_name['subscriptionTerms'].message_type = _SUBSCRIPTIONTERMS +_SUBSCRIPTIONTERMS.fields_by_name['recurringPeriod'].message_type = _TIMEPERIOD +_SUBSCRIPTIONTERMS.fields_by_name['trialPeriod'].message_type = _TIMEPERIOD +_CARRIERBILLINGINSTRUMENT.fields_by_name['encryptedSubscriberInfo'].message_type = _ENCRYPTEDSUBSCRIBERINFO +_CARRIERBILLINGINSTRUMENT.fields_by_name['credentials'].message_type = _CARRIERBILLINGCREDENTIALS +_CARRIERBILLINGINSTRUMENT.fields_by_name['acceptedCarrierTos'].message_type = _CARRIERTOS +_CARRIERBILLINGINSTRUMENTSTATUS.fields_by_name['carrierTos'].message_type = _CARRIERTOS +_CARRIERBILLINGINSTRUMENTSTATUS.fields_by_name['carrierPasswordPrompt'].message_type = _PASSWORDPROMPT +_CARRIERTOS.fields_by_name['dcbTos'].message_type = _CARRIERTOSENTRY +_CARRIERTOS.fields_by_name['piiTos'].message_type = _CARRIERTOSENTRY +_CREDITCARDINSTRUMENT.fields_by_name['escrowEfeParam'].message_type = _EFEPARAM +_INSTRUMENT.fields_by_name['billingAddress'].message_type = _ADDRESS +_INSTRUMENT.fields_by_name['creditCard'].message_type = _CREDITCARDINSTRUMENT +_INSTRUMENT.fields_by_name['carrierBilling'].message_type = _CARRIERBILLINGINSTRUMENT +_INSTRUMENT.fields_by_name['billingAddressSpec'].message_type = _BILLINGADDRESSSPEC +_INSTRUMENT.fields_by_name['carrierBillingStatus'].message_type = _CARRIERBILLINGINSTRUMENTSTATUS +_DEBUGINFO_TIMING.containing_type = _DEBUGINFO; +_DEBUGINFO.fields_by_name['timing'].message_type = _DEBUGINFO_TIMING +_DELIVERYRESPONSE.fields_by_name['appDeliveryData'].message_type = _ANDROIDAPPDELIVERYDATA +_BULKDETAILSENTRY.fields_by_name['doc'].message_type = _DOCV2 +_BULKDETAILSRESPONSE.fields_by_name['entry'].message_type = _BULKDETAILSENTRY +_DETAILSRESPONSE.fields_by_name['docV1'].message_type = _DOCV1 +_DETAILSRESPONSE.fields_by_name['userReview'].message_type = _REVIEW +_DETAILSRESPONSE.fields_by_name['docV2'].message_type = _DOCV2 +_DOCUMENT.fields_by_name['docid'].message_type = _DOCID +_DOCUMENT.fields_by_name['fetchDocid'].message_type = _DOCID +_DOCUMENT.fields_by_name['sampleDocid'].message_type = _DOCID +_DOCUMENT.fields_by_name['priceDeprecated'].message_type = _OFFER +_DOCUMENT.fields_by_name['availability'].message_type = _AVAILABILITY +_DOCUMENT.fields_by_name['image'].message_type = _IMAGE +_DOCUMENT.fields_by_name['child'].message_type = _DOCUMENT +_DOCUMENT.fields_by_name['aggregateRating'].message_type = _AGGREGATERATING +_DOCUMENT.fields_by_name['offer'].message_type = _OFFER +_DOCUMENT.fields_by_name['translatedSnippet'].message_type = _TRANSLATEDTEXT +_DOCUMENT.fields_by_name['documentVariant'].message_type = _DOCUMENTVARIANT +_DOCUMENT.fields_by_name['decoration'].message_type = _DOCUMENT +_DOCUMENT.fields_by_name['parent'].message_type = _DOCUMENT +_DOCUMENTVARIANT.fields_by_name['rule'].message_type = _RULE +_DOCUMENTVARIANT.fields_by_name['autoTranslation'].message_type = _TRANSLATEDTEXT +_DOCUMENTVARIANT.fields_by_name['offer'].message_type = _OFFER +_DOCUMENTVARIANT.fields_by_name['child'].message_type = _DOCUMENT +_DOCUMENTVARIANT.fields_by_name['decoration'].message_type = _DOCUMENT +_IMAGE_DIMENSION.containing_type = _IMAGE; +_IMAGE_CITATION.containing_type = _IMAGE; +_IMAGE.fields_by_name['dimension'].message_type = _IMAGE_DIMENSION +_IMAGE.fields_by_name['citation'].message_type = _IMAGE_CITATION +_BADGE.fields_by_name['image'].message_type = _IMAGE +_PLUSONEDATA.fields_by_name['circlesPeople'].message_type = _PLUSPERSON +_PROMOTEDDOC.fields_by_name['image'].message_type = _IMAGE +_SERIESANTENNA.fields_by_name['sectionTracks'].message_type = _SECTIONMETADATA +_SERIESANTENNA.fields_by_name['sectionAlbums'].message_type = _SECTIONMETADATA +_TEMPLATE.fields_by_name['seriesAntenna'].message_type = _SERIESANTENNA +_TEMPLATE.fields_by_name['tileGraphic2X1'].message_type = _TILETEMPLATE +_TEMPLATE.fields_by_name['tileGraphic4X2'].message_type = _TILETEMPLATE +_TEMPLATE.fields_by_name['tileGraphicColoredTitle2X1'].message_type = _TILETEMPLATE +_TEMPLATE.fields_by_name['tileGraphicUpperLeftTitle2X1'].message_type = _TILETEMPLATE +_TEMPLATE.fields_by_name['tileDetailsReflectedGraphic2X2'].message_type = _TILETEMPLATE +_TEMPLATE.fields_by_name['tileFourBlock4X2'].message_type = _TILETEMPLATE +_TEMPLATE.fields_by_name['containerWithBanner'].message_type = _CONTAINERWITHBANNER +_TEMPLATE.fields_by_name['dealOfTheDay'].message_type = _DEALOFTHEDAY +_TEMPLATE.fields_by_name['tileGraphicColoredTitle4X2'].message_type = _TILETEMPLATE +_TEMPLATE.fields_by_name['editorialSeriesContainer'].message_type = _EDITORIALSERIESCONTAINER +_ALBUMDETAILS.fields_by_name['details'].message_type = _MUSICDETAILS +_ALBUMDETAILS.fields_by_name['displayArtist'].message_type = _ARTISTDETAILS +_APPDETAILS.fields_by_name['file'].message_type = _FILEMETADATA +_ARTISTDETAILS.fields_by_name['externalLinks'].message_type = _ARTISTEXTERNALLINKS +_DOCUMENTDETAILS.fields_by_name['appDetails'].message_type = _APPDETAILS +_DOCUMENTDETAILS.fields_by_name['albumDetails'].message_type = _ALBUMDETAILS +_DOCUMENTDETAILS.fields_by_name['artistDetails'].message_type = _ARTISTDETAILS +_DOCUMENTDETAILS.fields_by_name['songDetails'].message_type = _SONGDETAILS +_DOCUMENTDETAILS.fields_by_name['bookDetails'].message_type = _BOOKDETAILS +_DOCUMENTDETAILS.fields_by_name['videoDetails'].message_type = _VIDEODETAILS +_DOCUMENTDETAILS.fields_by_name['subscriptionDetails'].message_type = _SUBSCRIPTIONDETAILS +_DOCUMENTDETAILS.fields_by_name['magazineDetails'].message_type = _MAGAZINEDETAILS +_DOCUMENTDETAILS.fields_by_name['tvShowDetails'].message_type = _TVSHOWDETAILS +_DOCUMENTDETAILS.fields_by_name['tvSeasonDetails'].message_type = _TVSEASONDETAILS +_DOCUMENTDETAILS.fields_by_name['tvEpisodeDetails'].message_type = _TVEPISODEDETAILS +_MUSICDETAILS.fields_by_name['artist'].message_type = _ARTISTDETAILS +_SONGDETAILS.fields_by_name['details'].message_type = _MUSICDETAILS +_SONGDETAILS.fields_by_name['displayArtist'].message_type = _ARTISTDETAILS +_VIDEODETAILS.fields_by_name['credit'].message_type = _VIDEOCREDIT +_VIDEODETAILS.fields_by_name['trailer'].message_type = _TRAILER +_VIDEODETAILS.fields_by_name['rentalTerm'].message_type = _VIDEORENTALTERM +_VIDEORENTALTERM_TERM.containing_type = _VIDEORENTALTERM; +_VIDEORENTALTERM.fields_by_name['term'].message_type = _VIDEORENTALTERM_TERM +_BUCKET.fields_by_name['document'].message_type = _DOCV1 +_LISTRESPONSE.fields_by_name['bucket'].message_type = _BUCKET +_LISTRESPONSE.fields_by_name['doc'].message_type = _DOCV2 +_DOCV1.fields_by_name['finskyDoc'].message_type = _DOCUMENT +_DOCV1.fields_by_name['details'].message_type = _DOCUMENTDETAILS +_DOCV1.fields_by_name['plusOneData'].message_type = _PLUSONEDATA +_ANNOTATIONS.fields_by_name['sectionRelated'].message_type = _SECTIONMETADATA +_ANNOTATIONS.fields_by_name['sectionMoreBy'].message_type = _SECTIONMETADATA +_ANNOTATIONS.fields_by_name['plusOneData'].message_type = _PLUSONEDATA +_ANNOTATIONS.fields_by_name['warning'].message_type = _WARNING +_ANNOTATIONS.fields_by_name['sectionBodyOfWork'].message_type = _SECTIONMETADATA +_ANNOTATIONS.fields_by_name['sectionCoreContent'].message_type = _SECTIONMETADATA +_ANNOTATIONS.fields_by_name['template'].message_type = _TEMPLATE +_ANNOTATIONS.fields_by_name['badgeForCreator'].message_type = _BADGE +_ANNOTATIONS.fields_by_name['badgeForDoc'].message_type = _BADGE +_ANNOTATIONS.fields_by_name['link'].message_type = _LINK +_ANNOTATIONS.fields_by_name['sectionCrossSell'].message_type = _SECTIONMETADATA +_ANNOTATIONS.fields_by_name['sectionRelatedDocType'].message_type = _SECTIONMETADATA +_ANNOTATIONS.fields_by_name['promotedDoc'].message_type = _PROMOTEDDOC +_ANNOTATIONS.fields_by_name['subscription'].message_type = _DOCV2 +_ANNOTATIONS.fields_by_name['reason'].message_type = _REASON +_DOCV2.fields_by_name['offer'].message_type = _OFFER +_DOCV2.fields_by_name['availability'].message_type = _AVAILABILITY +_DOCV2.fields_by_name['image'].message_type = _IMAGE +_DOCV2.fields_by_name['child'].message_type = _DOCV2 +_DOCV2.fields_by_name['containerMetadata'].message_type = _CONTAINERMETADATA +_DOCV2.fields_by_name['details'].message_type = _DOCUMENTDETAILS +_DOCV2.fields_by_name['aggregateRating'].message_type = _AGGREGATERATING +_DOCV2.fields_by_name['annotations'].message_type = _ANNOTATIONS +_AVAILABILITY_PERDEVICEAVAILABILITYRESTRICTION.fields_by_name['filterInfo'].message_type = _FILTEREVALUATIONINFO +_AVAILABILITY_PERDEVICEAVAILABILITYRESTRICTION.containing_type = _AVAILABILITY; +_AVAILABILITY.fields_by_name['rule'].message_type = _RULE +_AVAILABILITY.fields_by_name['perdeviceavailabilityrestriction'].message_type = _AVAILABILITY_PERDEVICEAVAILABILITYRESTRICTION +_AVAILABILITY.fields_by_name['install'].message_type = _INSTALL +_AVAILABILITY.fields_by_name['filterInfo'].message_type = _FILTEREVALUATIONINFO +_AVAILABILITY.fields_by_name['ownershipInfo'].message_type = _OWNERSHIPINFO +_FILTEREVALUATIONINFO.fields_by_name['ruleEvaluation'].message_type = _RULEEVALUATION +_RULE.fields_by_name['subrule'].message_type = _RULE +_RULEEVALUATION.fields_by_name['rule'].message_type = _RULE +_LIBRARYMUTATION.fields_by_name['docid'].message_type = _DOCID +_LIBRARYMUTATION.fields_by_name['appDetails'].message_type = _LIBRARYAPPDETAILS +_LIBRARYMUTATION.fields_by_name['subscriptionDetails'].message_type = _LIBRARYSUBSCRIPTIONDETAILS +_LIBRARYUPDATE.fields_by_name['mutation'].message_type = _LIBRARYMUTATION +_LIBRARYREPLICATIONREQUEST.fields_by_name['libraryState'].message_type = _CLIENTLIBRARYSTATE +_LIBRARYREPLICATIONRESPONSE.fields_by_name['update'].message_type = _LIBRARYUPDATE +_LOGREQUEST.fields_by_name['clickEvent'].message_type = _CLICKLOGEVENT +_NOTIFICATION.fields_by_name['docid'].message_type = _DOCID +_NOTIFICATION.fields_by_name['appData'].message_type = _ANDROIDAPPNOTIFICATIONDATA +_NOTIFICATION.fields_by_name['appDeliveryData'].message_type = _ANDROIDAPPDELIVERYDATA +_NOTIFICATION.fields_by_name['purchaseRemovalData'].message_type = _PURCHASEREMOVALDATA +_NOTIFICATION.fields_by_name['userNotificationData'].message_type = _USERNOTIFICATIONDATA +_NOTIFICATION.fields_by_name['inAppNotificationData'].message_type = _INAPPNOTIFICATIONDATA +_NOTIFICATION.fields_by_name['purchaseDeclinedData'].message_type = _PURCHASEDECLINEDDATA +_NOTIFICATION.fields_by_name['libraryUpdate'].message_type = _LIBRARYUPDATE +_NOTIFICATION.fields_by_name['libraryDirtyData'].message_type = _LIBRARYDIRTYDATA +_RESOLVELINKRESPONSE.fields_by_name['directPurchase'].message_type = _DIRECTPURCHASE +_PAYLOAD.fields_by_name['listResponse'].message_type = _LISTRESPONSE +_PAYLOAD.fields_by_name['detailsResponse'].message_type = _DETAILSRESPONSE +_PAYLOAD.fields_by_name['reviewResponse'].message_type = _REVIEWRESPONSE +_PAYLOAD.fields_by_name['buyResponse'].message_type = _BUYRESPONSE +_PAYLOAD.fields_by_name['searchResponse'].message_type = _SEARCHRESPONSE +_PAYLOAD.fields_by_name['tocResponse'].message_type = _TOCRESPONSE +_PAYLOAD.fields_by_name['browseResponse'].message_type = _BROWSERESPONSE +_PAYLOAD.fields_by_name['purchaseStatusResponse'].message_type = _PURCHASESTATUSRESPONSE +_PAYLOAD.fields_by_name['updateInstrumentResponse'].message_type = _UPDATEINSTRUMENTRESPONSE +_PAYLOAD.fields_by_name['logResponse'].message_type = _LOGRESPONSE +_PAYLOAD.fields_by_name['checkInstrumentResponse'].message_type = _CHECKINSTRUMENTRESPONSE +_PAYLOAD.fields_by_name['plusOneResponse'].message_type = _PLUSONERESPONSE +_PAYLOAD.fields_by_name['flagContentResponse'].message_type = _FLAGCONTENTRESPONSE +_PAYLOAD.fields_by_name['ackNotificationResponse'].message_type = _ACKNOTIFICATIONRESPONSE +_PAYLOAD.fields_by_name['initiateAssociationResponse'].message_type = _INITIATEASSOCIATIONRESPONSE +_PAYLOAD.fields_by_name['verifyAssociationResponse'].message_type = _VERIFYASSOCIATIONRESPONSE +_PAYLOAD.fields_by_name['libraryReplicationResponse'].message_type = _LIBRARYREPLICATIONRESPONSE +_PAYLOAD.fields_by_name['revokeResponse'].message_type = _REVOKERESPONSE +_PAYLOAD.fields_by_name['bulkDetailsResponse'].message_type = _BULKDETAILSRESPONSE +_PAYLOAD.fields_by_name['resolveLinkResponse'].message_type = _RESOLVELINKRESPONSE +_PAYLOAD.fields_by_name['deliveryResponse'].message_type = _DELIVERYRESPONSE +_PAYLOAD.fields_by_name['acceptTosResponse'].message_type = _ACCEPTTOSRESPONSE +_PAYLOAD.fields_by_name['rateSuggestedContentResponse'].message_type = _RATESUGGESTEDCONTENTRESPONSE +_PAYLOAD.fields_by_name['checkPromoOfferResponse'].message_type = _CHECKPROMOOFFERRESPONSE +_RESPONSEWRAPPER.fields_by_name['payload'].message_type = _PAYLOAD +_RESPONSEWRAPPER.fields_by_name['commands'].message_type = _SERVERCOMMANDS +_RESPONSEWRAPPER.fields_by_name['preFetch'].message_type = _PREFETCH +_RESPONSEWRAPPER.fields_by_name['notification'].message_type = _NOTIFICATION +_GETREVIEWSRESPONSE.fields_by_name['review'].message_type = _REVIEW +_REVIEWRESPONSE.fields_by_name['getResponse'].message_type = _GETREVIEWSRESPONSE +_REVOKERESPONSE.fields_by_name['libraryUpdate'].message_type = _LIBRARYUPDATE +_SEARCHRESPONSE.fields_by_name['bucket'].message_type = _BUCKET +_SEARCHRESPONSE.fields_by_name['doc'].message_type = _DOCV2 +_SEARCHRESPONSE.fields_by_name['relatedSearch'].message_type = _RELATEDSEARCH +_TOCRESPONSE.fields_by_name['corpus'].message_type = _CORPUSMETADATA +_TOCRESPONSE.fields_by_name['experiments'].message_type = _EXPERIMENTS +_TOCRESPONSE.fields_by_name['userSettings'].message_type = _USERSETTINGS +_ACKNOTIFICATIONSREQUESTPROTO.fields_by_name['signatureHash'].message_type = _SIGNATUREHASHPROTO +_APPSUGGESTIONPROTO.fields_by_name['assetInfo'].message_type = _EXTERNALASSETPROTO +_ASSETSRESPONSEPROTO.fields_by_name['asset'].message_type = _EXTERNALASSETPROTO +_ASSETSRESPONSEPROTO.fields_by_name['altAsset'].message_type = _EXTERNALASSETPROTO +_BILLINGEVENTREQUESTPROTO.fields_by_name['carrierInstrument'].message_type = _EXTERNALCARRIERBILLINGINSTRUMENTPROTO +_CATEGORYPROTO.fields_by_name['subCategories'].message_type = _CATEGORYPROTO +_COMMENTSRESPONSEPROTO.fields_by_name['comment'].message_type = _EXTERNALCOMMENTPROTO +_COMMENTSRESPONSEPROTO.fields_by_name['selfComment'].message_type = _EXTERNALCOMMENTPROTO +_CONTENTSYNCREQUESTPROTO_ASSETINSTALLSTATE.containing_type = _CONTENTSYNCREQUESTPROTO; +_CONTENTSYNCREQUESTPROTO_SYSTEMAPP.containing_type = _CONTENTSYNCREQUESTPROTO; +_CONTENTSYNCREQUESTPROTO.fields_by_name['assetinstallstate'].message_type = _CONTENTSYNCREQUESTPROTO_ASSETINSTALLSTATE +_CONTENTSYNCREQUESTPROTO.fields_by_name['systemapp'].message_type = _CONTENTSYNCREQUESTPROTO_SYSTEMAPP +_DATAMESSAGEPROTO.fields_by_name['appData'].message_type = _APPDATAPROTO +_DOWNLOADINFOPROTO.fields_by_name['additionalFile'].message_type = _FILEMETADATAPROTO +_EXTERNALASSETPROTO_PURCHASEINFORMATION.containing_type = _EXTERNALASSETPROTO; +_EXTERNALASSETPROTO_EXTENDEDINFO_PACKAGEDEPENDENCY.containing_type = _EXTERNALASSETPROTO_EXTENDEDINFO; +_EXTERNALASSETPROTO_EXTENDEDINFO.fields_by_name['packagedependency'].message_type = _EXTERNALASSETPROTO_EXTENDEDINFO_PACKAGEDEPENDENCY +_EXTERNALASSETPROTO_EXTENDEDINFO.fields_by_name['downloadInfo'].message_type = _DOWNLOADINFOPROTO +_EXTERNALASSETPROTO_EXTENDEDINFO.containing_type = _EXTERNALASSETPROTO; +_EXTERNALASSETPROTO.fields_by_name['purchaseinformation'].message_type = _EXTERNALASSETPROTO_PURCHASEINFORMATION +_EXTERNALASSETPROTO.fields_by_name['extendedinfo'].message_type = _EXTERNALASSETPROTO_EXTENDEDINFO +_EXTERNALASSETPROTO.fields_by_name['appBadge'].message_type = _EXTERNALBADGEPROTO +_EXTERNALASSETPROTO.fields_by_name['ownerBadge'].message_type = _EXTERNALBADGEPROTO +_EXTERNALBADGEPROTO.fields_by_name['badgeImage'].message_type = _EXTERNALBADGEIMAGEPROTO +_EXTERNALCARRIERBILLINGINSTRUMENTPROTO.fields_by_name['encryptedSubscriberInfo'].message_type = _ENCRYPTEDSUBSCRIBERINFO +_EXTERNALPAYPALINSTRUMENTPROTO.fields_by_name['paypalAddress'].message_type = _ADDRESSPROTO _GETADDRESSSNIPPETREQUESTPROTO.fields_by_name['encryptedSubscriberInfo'].message_type = _ENCRYPTEDSUBSCRIBERINFO _GETASSETRESPONSEPROTO_INSTALLASSET.containing_type = _GETASSETRESPONSEPROTO; _GETASSETRESPONSEPROTO.fields_by_name['installasset'].message_type = _GETASSETRESPONSEPROTO_INSTALLASSET @@ -15247,6 +15918,263 @@ _SINGLERESPONSEPROTO.fields_by_name['reconstructDatabaseResponse'].message_type = _RECONSTRUCTDATABASERESPONSEPROTO _SINGLERESPONSEPROTO.fields_by_name['paypalMassageAddressResponse'].message_type = _PAYPALMASSAGEADDRESSRESPONSEPROTO _SINGLERESPONSEPROTO.fields_by_name['getAddressSnippetResponse'].message_type = _GETADDRESSSNIPPETRESPONSEPROTO +_ANDROIDCHECKINPROTO.fields_by_name['build'].message_type = _ANDROIDBUILDPROTO +_ANDROIDCHECKINPROTO.fields_by_name['event'].message_type = _ANDROIDEVENTPROTO +_ANDROIDCHECKINPROTO.fields_by_name['stat'].message_type = _ANDROIDSTATISTICPROTO +_ANDROIDINTENTPROTO_EXTRA.containing_type = _ANDROIDINTENTPROTO; +_ANDROIDINTENTPROTO.fields_by_name['extra'].message_type = _ANDROIDINTENTPROTO_EXTRA +_ANDROIDCHECKINREQUEST.fields_by_name['checkin'].message_type = _ANDROIDCHECKINPROTO +_ANDROIDCHECKINREQUEST.fields_by_name['deviceConfiguration'].message_type = _DEVICECONFIGURATIONPROTO +_ANDROIDCHECKINRESPONSE.fields_by_name['intent'].message_type = _ANDROIDINTENTPROTO +_ANDROIDCHECKINRESPONSE.fields_by_name['setting'].message_type = _GSERVICESSETTING +DESCRIPTOR.message_types_by_name['AckNotificationResponse'] = _ACKNOTIFICATIONRESPONSE +DESCRIPTOR.message_types_by_name['AndroidAppDeliveryData'] = _ANDROIDAPPDELIVERYDATA +DESCRIPTOR.message_types_by_name['AndroidAppPatchData'] = _ANDROIDAPPPATCHDATA +DESCRIPTOR.message_types_by_name['AppFileMetadata'] = _APPFILEMETADATA +DESCRIPTOR.message_types_by_name['EncryptionParams'] = _ENCRYPTIONPARAMS +DESCRIPTOR.message_types_by_name['HttpCookie'] = _HTTPCOOKIE +DESCRIPTOR.message_types_by_name['Address'] = _ADDRESS +DESCRIPTOR.message_types_by_name['BookAuthor'] = _BOOKAUTHOR +DESCRIPTOR.message_types_by_name['BookDetails'] = _BOOKDETAILS +DESCRIPTOR.message_types_by_name['BookSubject'] = _BOOKSUBJECT +DESCRIPTOR.message_types_by_name['BrowseLink'] = _BROWSELINK +DESCRIPTOR.message_types_by_name['BrowseResponse'] = _BROWSERESPONSE +DESCRIPTOR.message_types_by_name['AddressChallenge'] = _ADDRESSCHALLENGE +DESCRIPTOR.message_types_by_name['AuthenticationChallenge'] = _AUTHENTICATIONCHALLENGE +DESCRIPTOR.message_types_by_name['BuyResponse'] = _BUYRESPONSE +DESCRIPTOR.message_types_by_name['Challenge'] = _CHALLENGE +DESCRIPTOR.message_types_by_name['FormCheckbox'] = _FORMCHECKBOX +DESCRIPTOR.message_types_by_name['LineItem'] = _LINEITEM +DESCRIPTOR.message_types_by_name['Money'] = _MONEY +DESCRIPTOR.message_types_by_name['PurchaseNotificationResponse'] = _PURCHASENOTIFICATIONRESPONSE +DESCRIPTOR.message_types_by_name['PurchaseStatusResponse'] = _PURCHASESTATUSRESPONSE +DESCRIPTOR.message_types_by_name['CheckInstrumentResponse'] = _CHECKINSTRUMENTRESPONSE +DESCRIPTOR.message_types_by_name['UpdateInstrumentRequest'] = _UPDATEINSTRUMENTREQUEST +DESCRIPTOR.message_types_by_name['UpdateInstrumentResponse'] = _UPDATEINSTRUMENTRESPONSE +DESCRIPTOR.message_types_by_name['InitiateAssociationResponse'] = _INITIATEASSOCIATIONRESPONSE +DESCRIPTOR.message_types_by_name['VerifyAssociationResponse'] = _VERIFYASSOCIATIONRESPONSE +DESCRIPTOR.message_types_by_name['AddCreditCardPromoOffer'] = _ADDCREDITCARDPROMOOFFER +DESCRIPTOR.message_types_by_name['AvailablePromoOffer'] = _AVAILABLEPROMOOFFER +DESCRIPTOR.message_types_by_name['CheckPromoOfferResponse'] = _CHECKPROMOOFFERRESPONSE +DESCRIPTOR.message_types_by_name['RedeemedPromoOffer'] = _REDEEMEDPROMOOFFER +DESCRIPTOR.message_types_by_name['Docid'] = _DOCID +DESCRIPTOR.message_types_by_name['Install'] = _INSTALL +DESCRIPTOR.message_types_by_name['Offer'] = _OFFER +DESCRIPTOR.message_types_by_name['OwnershipInfo'] = _OWNERSHIPINFO +DESCRIPTOR.message_types_by_name['RentalTerms'] = _RENTALTERMS +DESCRIPTOR.message_types_by_name['SubscriptionTerms'] = _SUBSCRIPTIONTERMS +DESCRIPTOR.message_types_by_name['TimePeriod'] = _TIMEPERIOD +DESCRIPTOR.message_types_by_name['BillingAddressSpec'] = _BILLINGADDRESSSPEC +DESCRIPTOR.message_types_by_name['CarrierBillingCredentials'] = _CARRIERBILLINGCREDENTIALS +DESCRIPTOR.message_types_by_name['CarrierBillingInstrument'] = _CARRIERBILLINGINSTRUMENT +DESCRIPTOR.message_types_by_name['CarrierBillingInstrumentStatus'] = _CARRIERBILLINGINSTRUMENTSTATUS +DESCRIPTOR.message_types_by_name['CarrierTos'] = _CARRIERTOS +DESCRIPTOR.message_types_by_name['CarrierTosEntry'] = _CARRIERTOSENTRY +DESCRIPTOR.message_types_by_name['CreditCardInstrument'] = _CREDITCARDINSTRUMENT +DESCRIPTOR.message_types_by_name['EfeParam'] = _EFEPARAM +DESCRIPTOR.message_types_by_name['InputValidationError'] = _INPUTVALIDATIONERROR +DESCRIPTOR.message_types_by_name['Instrument'] = _INSTRUMENT +DESCRIPTOR.message_types_by_name['PasswordPrompt'] = _PASSWORDPROMPT +DESCRIPTOR.message_types_by_name['ContainerMetadata'] = _CONTAINERMETADATA +DESCRIPTOR.message_types_by_name['FlagContentResponse'] = _FLAGCONTENTRESPONSE +DESCRIPTOR.message_types_by_name['DebugInfo'] = _DEBUGINFO +DESCRIPTOR.message_types_by_name['DeliveryResponse'] = _DELIVERYRESPONSE +DESCRIPTOR.message_types_by_name['BulkDetailsEntry'] = _BULKDETAILSENTRY +DESCRIPTOR.message_types_by_name['BulkDetailsRequest'] = _BULKDETAILSREQUEST +DESCRIPTOR.message_types_by_name['BulkDetailsResponse'] = _BULKDETAILSRESPONSE +DESCRIPTOR.message_types_by_name['DetailsResponse'] = _DETAILSRESPONSE +DESCRIPTOR.message_types_by_name['DeviceConfigurationProto'] = _DEVICECONFIGURATIONPROTO +DESCRIPTOR.message_types_by_name['Document'] = _DOCUMENT +DESCRIPTOR.message_types_by_name['DocumentVariant'] = _DOCUMENTVARIANT +DESCRIPTOR.message_types_by_name['Image'] = _IMAGE +DESCRIPTOR.message_types_by_name['TranslatedText'] = _TRANSLATEDTEXT +DESCRIPTOR.message_types_by_name['Badge'] = _BADGE +DESCRIPTOR.message_types_by_name['ContainerWithBanner'] = _CONTAINERWITHBANNER +DESCRIPTOR.message_types_by_name['DealOfTheDay'] = _DEALOFTHEDAY +DESCRIPTOR.message_types_by_name['EditorialSeriesContainer'] = _EDITORIALSERIESCONTAINER +DESCRIPTOR.message_types_by_name['Link'] = _LINK +DESCRIPTOR.message_types_by_name['PlusOneData'] = _PLUSONEDATA +DESCRIPTOR.message_types_by_name['PlusPerson'] = _PLUSPERSON +DESCRIPTOR.message_types_by_name['PromotedDoc'] = _PROMOTEDDOC +DESCRIPTOR.message_types_by_name['Reason'] = _REASON +DESCRIPTOR.message_types_by_name['SectionMetadata'] = _SECTIONMETADATA +DESCRIPTOR.message_types_by_name['SeriesAntenna'] = _SERIESANTENNA +DESCRIPTOR.message_types_by_name['Template'] = _TEMPLATE +DESCRIPTOR.message_types_by_name['TileTemplate'] = _TILETEMPLATE +DESCRIPTOR.message_types_by_name['Warning'] = _WARNING +DESCRIPTOR.message_types_by_name['AlbumDetails'] = _ALBUMDETAILS +DESCRIPTOR.message_types_by_name['AppDetails'] = _APPDETAILS +DESCRIPTOR.message_types_by_name['ArtistDetails'] = _ARTISTDETAILS +DESCRIPTOR.message_types_by_name['ArtistExternalLinks'] = _ARTISTEXTERNALLINKS +DESCRIPTOR.message_types_by_name['DocumentDetails'] = _DOCUMENTDETAILS +DESCRIPTOR.message_types_by_name['FileMetadata'] = _FILEMETADATA +DESCRIPTOR.message_types_by_name['MagazineDetails'] = _MAGAZINEDETAILS +DESCRIPTOR.message_types_by_name['MusicDetails'] = _MUSICDETAILS +DESCRIPTOR.message_types_by_name['SongDetails'] = _SONGDETAILS +DESCRIPTOR.message_types_by_name['SubscriptionDetails'] = _SUBSCRIPTIONDETAILS +DESCRIPTOR.message_types_by_name['Trailer'] = _TRAILER +DESCRIPTOR.message_types_by_name['TvEpisodeDetails'] = _TVEPISODEDETAILS +DESCRIPTOR.message_types_by_name['TvSeasonDetails'] = _TVSEASONDETAILS +DESCRIPTOR.message_types_by_name['TvShowDetails'] = _TVSHOWDETAILS +DESCRIPTOR.message_types_by_name['VideoCredit'] = _VIDEOCREDIT +DESCRIPTOR.message_types_by_name['VideoDetails'] = _VIDEODETAILS +DESCRIPTOR.message_types_by_name['VideoRentalTerm'] = _VIDEORENTALTERM +DESCRIPTOR.message_types_by_name['Bucket'] = _BUCKET +DESCRIPTOR.message_types_by_name['ListResponse'] = _LISTRESPONSE +DESCRIPTOR.message_types_by_name['DocV1'] = _DOCV1 +DESCRIPTOR.message_types_by_name['Annotations'] = _ANNOTATIONS +DESCRIPTOR.message_types_by_name['DocV2'] = _DOCV2 +DESCRIPTOR.message_types_by_name['EncryptedSubscriberInfo'] = _ENCRYPTEDSUBSCRIBERINFO +DESCRIPTOR.message_types_by_name['Availability'] = _AVAILABILITY +DESCRIPTOR.message_types_by_name['FilterEvaluationInfo'] = _FILTEREVALUATIONINFO +DESCRIPTOR.message_types_by_name['Rule'] = _RULE +DESCRIPTOR.message_types_by_name['RuleEvaluation'] = _RULEEVALUATION +DESCRIPTOR.message_types_by_name['LibraryAppDetails'] = _LIBRARYAPPDETAILS +DESCRIPTOR.message_types_by_name['LibraryMutation'] = _LIBRARYMUTATION +DESCRIPTOR.message_types_by_name['LibrarySubscriptionDetails'] = _LIBRARYSUBSCRIPTIONDETAILS +DESCRIPTOR.message_types_by_name['LibraryUpdate'] = _LIBRARYUPDATE +DESCRIPTOR.message_types_by_name['ClientLibraryState'] = _CLIENTLIBRARYSTATE +DESCRIPTOR.message_types_by_name['LibraryReplicationRequest'] = _LIBRARYREPLICATIONREQUEST +DESCRIPTOR.message_types_by_name['LibraryReplicationResponse'] = _LIBRARYREPLICATIONRESPONSE +DESCRIPTOR.message_types_by_name['ClickLogEvent'] = _CLICKLOGEVENT +DESCRIPTOR.message_types_by_name['LogRequest'] = _LOGREQUEST +DESCRIPTOR.message_types_by_name['LogResponse'] = _LOGRESPONSE +DESCRIPTOR.message_types_by_name['AndroidAppNotificationData'] = _ANDROIDAPPNOTIFICATIONDATA +DESCRIPTOR.message_types_by_name['InAppNotificationData'] = _INAPPNOTIFICATIONDATA +DESCRIPTOR.message_types_by_name['LibraryDirtyData'] = _LIBRARYDIRTYDATA +DESCRIPTOR.message_types_by_name['Notification'] = _NOTIFICATION +DESCRIPTOR.message_types_by_name['PurchaseDeclinedData'] = _PURCHASEDECLINEDDATA +DESCRIPTOR.message_types_by_name['PurchaseRemovalData'] = _PURCHASEREMOVALDATA +DESCRIPTOR.message_types_by_name['UserNotificationData'] = _USERNOTIFICATIONDATA +DESCRIPTOR.message_types_by_name['PlusOneResponse'] = _PLUSONERESPONSE +DESCRIPTOR.message_types_by_name['RateSuggestedContentResponse'] = _RATESUGGESTEDCONTENTRESPONSE +DESCRIPTOR.message_types_by_name['AggregateRating'] = _AGGREGATERATING +DESCRIPTOR.message_types_by_name['DirectPurchase'] = _DIRECTPURCHASE +DESCRIPTOR.message_types_by_name['ResolveLinkResponse'] = _RESOLVELINKRESPONSE +DESCRIPTOR.message_types_by_name['Payload'] = _PAYLOAD +DESCRIPTOR.message_types_by_name['PreFetch'] = _PREFETCH +DESCRIPTOR.message_types_by_name['ResponseWrapper'] = _RESPONSEWRAPPER +DESCRIPTOR.message_types_by_name['ServerCommands'] = _SERVERCOMMANDS +DESCRIPTOR.message_types_by_name['GetReviewsResponse'] = _GETREVIEWSRESPONSE +DESCRIPTOR.message_types_by_name['Review'] = _REVIEW +DESCRIPTOR.message_types_by_name['ReviewResponse'] = _REVIEWRESPONSE +DESCRIPTOR.message_types_by_name['RevokeResponse'] = _REVOKERESPONSE +DESCRIPTOR.message_types_by_name['RelatedSearch'] = _RELATEDSEARCH +DESCRIPTOR.message_types_by_name['SearchResponse'] = _SEARCHRESPONSE +DESCRIPTOR.message_types_by_name['CorpusMetadata'] = _CORPUSMETADATA +DESCRIPTOR.message_types_by_name['Experiments'] = _EXPERIMENTS +DESCRIPTOR.message_types_by_name['TocResponse'] = _TOCRESPONSE +DESCRIPTOR.message_types_by_name['UserSettings'] = _USERSETTINGS +DESCRIPTOR.message_types_by_name['AcceptTosResponse'] = _ACCEPTTOSRESPONSE +DESCRIPTOR.message_types_by_name['AckNotificationsRequestProto'] = _ACKNOTIFICATIONSREQUESTPROTO +DESCRIPTOR.message_types_by_name['AckNotificationsResponseProto'] = _ACKNOTIFICATIONSRESPONSEPROTO +DESCRIPTOR.message_types_by_name['AddressProto'] = _ADDRESSPROTO +DESCRIPTOR.message_types_by_name['AppDataProto'] = _APPDATAPROTO +DESCRIPTOR.message_types_by_name['AppSuggestionProto'] = _APPSUGGESTIONPROTO +DESCRIPTOR.message_types_by_name['AssetIdentifierProto'] = _ASSETIDENTIFIERPROTO +DESCRIPTOR.message_types_by_name['AssetsRequestProto'] = _ASSETSREQUESTPROTO +DESCRIPTOR.message_types_by_name['AssetsResponseProto'] = _ASSETSRESPONSEPROTO +DESCRIPTOR.message_types_by_name['BillingEventRequestProto'] = _BILLINGEVENTREQUESTPROTO +DESCRIPTOR.message_types_by_name['BillingEventResponseProto'] = _BILLINGEVENTRESPONSEPROTO +DESCRIPTOR.message_types_by_name['BillingParameterProto'] = _BILLINGPARAMETERPROTO +DESCRIPTOR.message_types_by_name['CarrierBillingCredentialsProto'] = _CARRIERBILLINGCREDENTIALSPROTO +DESCRIPTOR.message_types_by_name['CategoryProto'] = _CATEGORYPROTO +DESCRIPTOR.message_types_by_name['CheckForNotificationsRequestProto'] = _CHECKFORNOTIFICATIONSREQUESTPROTO +DESCRIPTOR.message_types_by_name['CheckForNotificationsResponseProto'] = _CHECKFORNOTIFICATIONSRESPONSEPROTO +DESCRIPTOR.message_types_by_name['CheckLicenseRequestProto'] = _CHECKLICENSEREQUESTPROTO +DESCRIPTOR.message_types_by_name['CheckLicenseResponseProto'] = _CHECKLICENSERESPONSEPROTO +DESCRIPTOR.message_types_by_name['CommentsRequestProto'] = _COMMENTSREQUESTPROTO +DESCRIPTOR.message_types_by_name['CommentsResponseProto'] = _COMMENTSRESPONSEPROTO +DESCRIPTOR.message_types_by_name['ContentSyncRequestProto'] = _CONTENTSYNCREQUESTPROTO +DESCRIPTOR.message_types_by_name['ContentSyncResponseProto'] = _CONTENTSYNCRESPONSEPROTO +DESCRIPTOR.message_types_by_name['DataMessageProto'] = _DATAMESSAGEPROTO +DESCRIPTOR.message_types_by_name['DownloadInfoProto'] = _DOWNLOADINFOPROTO +DESCRIPTOR.message_types_by_name['ExternalAssetProto'] = _EXTERNALASSETPROTO +DESCRIPTOR.message_types_by_name['ExternalBadgeImageProto'] = _EXTERNALBADGEIMAGEPROTO +DESCRIPTOR.message_types_by_name['ExternalBadgeProto'] = _EXTERNALBADGEPROTO +DESCRIPTOR.message_types_by_name['ExternalCarrierBillingInstrumentProto'] = _EXTERNALCARRIERBILLINGINSTRUMENTPROTO +DESCRIPTOR.message_types_by_name['ExternalCommentProto'] = _EXTERNALCOMMENTPROTO +DESCRIPTOR.message_types_by_name['ExternalCreditCard'] = _EXTERNALCREDITCARD +DESCRIPTOR.message_types_by_name['ExternalPaypalInstrumentProto'] = _EXTERNALPAYPALINSTRUMENTPROTO +DESCRIPTOR.message_types_by_name['FileMetadataProto'] = _FILEMETADATAPROTO +DESCRIPTOR.message_types_by_name['GetAddressSnippetRequestProto'] = _GETADDRESSSNIPPETREQUESTPROTO +DESCRIPTOR.message_types_by_name['GetAddressSnippetResponseProto'] = _GETADDRESSSNIPPETRESPONSEPROTO +DESCRIPTOR.message_types_by_name['GetAssetRequestProto'] = _GETASSETREQUESTPROTO +DESCRIPTOR.message_types_by_name['GetAssetResponseProto'] = _GETASSETRESPONSEPROTO +DESCRIPTOR.message_types_by_name['GetCarrierInfoRequestProto'] = _GETCARRIERINFOREQUESTPROTO +DESCRIPTOR.message_types_by_name['GetCarrierInfoResponseProto'] = _GETCARRIERINFORESPONSEPROTO +DESCRIPTOR.message_types_by_name['GetCategoriesRequestProto'] = _GETCATEGORIESREQUESTPROTO +DESCRIPTOR.message_types_by_name['GetCategoriesResponseProto'] = _GETCATEGORIESRESPONSEPROTO +DESCRIPTOR.message_types_by_name['GetImageRequestProto'] = _GETIMAGEREQUESTPROTO +DESCRIPTOR.message_types_by_name['GetImageResponseProto'] = _GETIMAGERESPONSEPROTO +DESCRIPTOR.message_types_by_name['GetMarketMetadataRequestProto'] = _GETMARKETMETADATAREQUESTPROTO +DESCRIPTOR.message_types_by_name['GetMarketMetadataResponseProto'] = _GETMARKETMETADATARESPONSEPROTO +DESCRIPTOR.message_types_by_name['GetSubCategoriesRequestProto'] = _GETSUBCATEGORIESREQUESTPROTO +DESCRIPTOR.message_types_by_name['GetSubCategoriesResponseProto'] = _GETSUBCATEGORIESRESPONSEPROTO +DESCRIPTOR.message_types_by_name['InAppPurchaseInformationRequestProto'] = _INAPPPURCHASEINFORMATIONREQUESTPROTO +DESCRIPTOR.message_types_by_name['InAppPurchaseInformationResponseProto'] = _INAPPPURCHASEINFORMATIONRESPONSEPROTO +DESCRIPTOR.message_types_by_name['InAppRestoreTransactionsRequestProto'] = _INAPPRESTORETRANSACTIONSREQUESTPROTO +DESCRIPTOR.message_types_by_name['InAppRestoreTransactionsResponseProto'] = _INAPPRESTORETRANSACTIONSRESPONSEPROTO +DESCRIPTOR.message_types_by_name['ModifyCommentRequestProto'] = _MODIFYCOMMENTREQUESTPROTO +DESCRIPTOR.message_types_by_name['ModifyCommentResponseProto'] = _MODIFYCOMMENTRESPONSEPROTO +DESCRIPTOR.message_types_by_name['PaypalCountryInfoProto'] = _PAYPALCOUNTRYINFOPROTO +DESCRIPTOR.message_types_by_name['PaypalCreateAccountRequestProto'] = _PAYPALCREATEACCOUNTREQUESTPROTO +DESCRIPTOR.message_types_by_name['PaypalCreateAccountResponseProto'] = _PAYPALCREATEACCOUNTRESPONSEPROTO +DESCRIPTOR.message_types_by_name['PaypalCredentialsProto'] = _PAYPALCREDENTIALSPROTO +DESCRIPTOR.message_types_by_name['PaypalMassageAddressRequestProto'] = _PAYPALMASSAGEADDRESSREQUESTPROTO +DESCRIPTOR.message_types_by_name['PaypalMassageAddressResponseProto'] = _PAYPALMASSAGEADDRESSRESPONSEPROTO +DESCRIPTOR.message_types_by_name['PaypalPreapprovalCredentialsRequestProto'] = _PAYPALPREAPPROVALCREDENTIALSREQUESTPROTO +DESCRIPTOR.message_types_by_name['PaypalPreapprovalCredentialsResponseProto'] = _PAYPALPREAPPROVALCREDENTIALSRESPONSEPROTO +DESCRIPTOR.message_types_by_name['PaypalPreapprovalDetailsRequestProto'] = _PAYPALPREAPPROVALDETAILSREQUESTPROTO +DESCRIPTOR.message_types_by_name['PaypalPreapprovalDetailsResponseProto'] = _PAYPALPREAPPROVALDETAILSRESPONSEPROTO +DESCRIPTOR.message_types_by_name['PaypalPreapprovalRequestProto'] = _PAYPALPREAPPROVALREQUESTPROTO +DESCRIPTOR.message_types_by_name['PaypalPreapprovalResponseProto'] = _PAYPALPREAPPROVALRESPONSEPROTO +DESCRIPTOR.message_types_by_name['PendingNotificationsProto'] = _PENDINGNOTIFICATIONSPROTO +DESCRIPTOR.message_types_by_name['PrefetchedBundleProto'] = _PREFETCHEDBUNDLEPROTO +DESCRIPTOR.message_types_by_name['PurchaseCartInfoProto'] = _PURCHASECARTINFOPROTO +DESCRIPTOR.message_types_by_name['PurchaseInfoProto'] = _PURCHASEINFOPROTO +DESCRIPTOR.message_types_by_name['PurchaseMetadataRequestProto'] = _PURCHASEMETADATAREQUESTPROTO +DESCRIPTOR.message_types_by_name['PurchaseMetadataResponseProto'] = _PURCHASEMETADATARESPONSEPROTO +DESCRIPTOR.message_types_by_name['PurchaseOrderRequestProto'] = _PURCHASEORDERREQUESTPROTO +DESCRIPTOR.message_types_by_name['PurchaseOrderResponseProto'] = _PURCHASEORDERRESPONSEPROTO +DESCRIPTOR.message_types_by_name['PurchasePostRequestProto'] = _PURCHASEPOSTREQUESTPROTO +DESCRIPTOR.message_types_by_name['PurchasePostResponseProto'] = _PURCHASEPOSTRESPONSEPROTO +DESCRIPTOR.message_types_by_name['PurchaseProductRequestProto'] = _PURCHASEPRODUCTREQUESTPROTO +DESCRIPTOR.message_types_by_name['PurchaseProductResponseProto'] = _PURCHASEPRODUCTRESPONSEPROTO +DESCRIPTOR.message_types_by_name['PurchaseResultProto'] = _PURCHASERESULTPROTO +DESCRIPTOR.message_types_by_name['QuerySuggestionProto'] = _QUERYSUGGESTIONPROTO +DESCRIPTOR.message_types_by_name['QuerySuggestionRequestProto'] = _QUERYSUGGESTIONREQUESTPROTO +DESCRIPTOR.message_types_by_name['QuerySuggestionResponseProto'] = _QUERYSUGGESTIONRESPONSEPROTO +DESCRIPTOR.message_types_by_name['RateCommentRequestProto'] = _RATECOMMENTREQUESTPROTO +DESCRIPTOR.message_types_by_name['RateCommentResponseProto'] = _RATECOMMENTRESPONSEPROTO +DESCRIPTOR.message_types_by_name['ReconstructDatabaseRequestProto'] = _RECONSTRUCTDATABASEREQUESTPROTO +DESCRIPTOR.message_types_by_name['ReconstructDatabaseResponseProto'] = _RECONSTRUCTDATABASERESPONSEPROTO +DESCRIPTOR.message_types_by_name['RefundRequestProto'] = _REFUNDREQUESTPROTO +DESCRIPTOR.message_types_by_name['RefundResponseProto'] = _REFUNDRESPONSEPROTO +DESCRIPTOR.message_types_by_name['RemoveAssetRequestProto'] = _REMOVEASSETREQUESTPROTO +DESCRIPTOR.message_types_by_name['RequestPropertiesProto'] = _REQUESTPROPERTIESPROTO +DESCRIPTOR.message_types_by_name['RequestProto'] = _REQUESTPROTO +DESCRIPTOR.message_types_by_name['RequestSpecificPropertiesProto'] = _REQUESTSPECIFICPROPERTIESPROTO +DESCRIPTOR.message_types_by_name['ResponsePropertiesProto'] = _RESPONSEPROPERTIESPROTO +DESCRIPTOR.message_types_by_name['ResponseProto'] = _RESPONSEPROTO +DESCRIPTOR.message_types_by_name['RestoreApplicationsRequestProto'] = _RESTOREAPPLICATIONSREQUESTPROTO +DESCRIPTOR.message_types_by_name['RestoreApplicationsResponseProto'] = _RESTOREAPPLICATIONSRESPONSEPROTO +DESCRIPTOR.message_types_by_name['RiskHeaderInfoProto'] = _RISKHEADERINFOPROTO +DESCRIPTOR.message_types_by_name['SignatureHashProto'] = _SIGNATUREHASHPROTO +DESCRIPTOR.message_types_by_name['SignedDataProto'] = _SIGNEDDATAPROTO +DESCRIPTOR.message_types_by_name['SingleRequestProto'] = _SINGLEREQUESTPROTO +DESCRIPTOR.message_types_by_name['SingleResponseProto'] = _SINGLERESPONSEPROTO +DESCRIPTOR.message_types_by_name['StatusBarNotificationProto'] = _STATUSBARNOTIFICATIONPROTO +DESCRIPTOR.message_types_by_name['UninstallReasonRequestProto'] = _UNINSTALLREASONREQUESTPROTO +DESCRIPTOR.message_types_by_name['UninstallReasonResponseProto'] = _UNINSTALLREASONRESPONSEPROTO +DESCRIPTOR.message_types_by_name['AndroidCheckinProto'] = _ANDROIDCHECKINPROTO +DESCRIPTOR.message_types_by_name['AndroidBuildProto'] = _ANDROIDBUILDPROTO +DESCRIPTOR.message_types_by_name['AndroidEventProto'] = _ANDROIDEVENTPROTO +DESCRIPTOR.message_types_by_name['AndroidStatisticProto'] = _ANDROIDSTATISTICPROTO +DESCRIPTOR.message_types_by_name['AndroidIntentProto'] = _ANDROIDINTENTPROTO +DESCRIPTOR.message_types_by_name['AndroidCheckinRequest'] = _ANDROIDCHECKINREQUEST +DESCRIPTOR.message_types_by_name['AndroidCheckinResponse'] = _ANDROIDCHECKINRESPONSE +DESCRIPTOR.message_types_by_name['GservicesSetting'] = _GSERVICESSETTING class AckNotificationResponse(message.Message): __metaclass__ = reflection.GeneratedProtocolMessageType @@ -16832,4 +17760,58 @@ class UninstallReasonResponseProto(message.Message): # @@protoc_insertion_point(class_scope:UninstallReasonResponseProto) +class AndroidCheckinProto(message.Message): + __metaclass__ = reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ANDROIDCHECKINPROTO + + # @@protoc_insertion_point(class_scope:AndroidCheckinProto) + +class AndroidBuildProto(message.Message): + __metaclass__ = reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ANDROIDBUILDPROTO + + # @@protoc_insertion_point(class_scope:AndroidBuildProto) + +class AndroidEventProto(message.Message): + __metaclass__ = reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ANDROIDEVENTPROTO + + # @@protoc_insertion_point(class_scope:AndroidEventProto) + +class AndroidStatisticProto(message.Message): + __metaclass__ = reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ANDROIDSTATISTICPROTO + + # @@protoc_insertion_point(class_scope:AndroidStatisticProto) + +class AndroidIntentProto(message.Message): + __metaclass__ = reflection.GeneratedProtocolMessageType + + class Extra(message.Message): + __metaclass__ = reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ANDROIDINTENTPROTO_EXTRA + + # @@protoc_insertion_point(class_scope:AndroidIntentProto.Extra) + DESCRIPTOR = _ANDROIDINTENTPROTO + + # @@protoc_insertion_point(class_scope:AndroidIntentProto) + +class AndroidCheckinRequest(message.Message): + __metaclass__ = reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ANDROIDCHECKINREQUEST + + # @@protoc_insertion_point(class_scope:AndroidCheckinRequest) + +class AndroidCheckinResponse(message.Message): + __metaclass__ = reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ANDROIDCHECKINRESPONSE + + # @@protoc_insertion_point(class_scope:AndroidCheckinResponse) + +class GservicesSetting(message.Message): + __metaclass__ = reflection.GeneratedProtocolMessageType + DESCRIPTOR = _GSERVICESSETTING + + # @@protoc_insertion_point(class_scope:GservicesSetting) + # @@protoc_insertion_point(module_scope)