@google-cloud/apikeys 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- (function(global,factory){if(typeof define==="function"&&define.amd)define(["protobufjs/minimal"],factory);else if(typeof require==="function"&&typeof module==="object"&&module&&module.exports)module.exports=factory(require("google-gax/build/src/protobuf").protobufMinimal)})(this,function($protobuf){"use strict";var $Reader=$protobuf.Reader,$Writer=$protobuf.Writer,$util=$protobuf.util;var $root=$protobuf.roots._google_cloud_apikeys_protos||($protobuf.roots._google_cloud_apikeys_protos={});$root.google=function(){var google={};google.api=function(){var api={};api.apikeys=function(){var apikeys={};apikeys.v2=function(){var v2={};v2.ApiKeys=function(){function ApiKeys(rpcImpl,requestDelimited,responseDelimited){$protobuf.rpc.Service.call(this,rpcImpl,requestDelimited,responseDelimited)}(ApiKeys.prototype=Object.create($protobuf.rpc.Service.prototype)).constructor=ApiKeys;ApiKeys.create=function create(rpcImpl,requestDelimited,responseDelimited){return new this(rpcImpl,requestDelimited,responseDelimited)};Object.defineProperty(ApiKeys.prototype.createKey=function createKey(request,callback){return this.rpcCall(createKey,$root.google.api.apikeys.v2.CreateKeyRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"CreateKey"});Object.defineProperty(ApiKeys.prototype.listKeys=function listKeys(request,callback){return this.rpcCall(listKeys,$root.google.api.apikeys.v2.ListKeysRequest,$root.google.api.apikeys.v2.ListKeysResponse,request,callback)},"name",{value:"ListKeys"});Object.defineProperty(ApiKeys.prototype.getKey=function getKey(request,callback){return this.rpcCall(getKey,$root.google.api.apikeys.v2.GetKeyRequest,$root.google.api.apikeys.v2.Key,request,callback)},"name",{value:"GetKey"});Object.defineProperty(ApiKeys.prototype.getKeyString=function getKeyString(request,callback){return this.rpcCall(getKeyString,$root.google.api.apikeys.v2.GetKeyStringRequest,$root.google.api.apikeys.v2.GetKeyStringResponse,request,callback)},"name",{value:"GetKeyString"});Object.defineProperty(ApiKeys.prototype.updateKey=function updateKey(request,callback){return this.rpcCall(updateKey,$root.google.api.apikeys.v2.UpdateKeyRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"UpdateKey"});Object.defineProperty(ApiKeys.prototype.deleteKey=function deleteKey(request,callback){return this.rpcCall(deleteKey,$root.google.api.apikeys.v2.DeleteKeyRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"DeleteKey"});Object.defineProperty(ApiKeys.prototype.undeleteKey=function undeleteKey(request,callback){return this.rpcCall(undeleteKey,$root.google.api.apikeys.v2.UndeleteKeyRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"UndeleteKey"});Object.defineProperty(ApiKeys.prototype.lookupKey=function lookupKey(request,callback){return this.rpcCall(lookupKey,$root.google.api.apikeys.v2.LookupKeyRequest,$root.google.api.apikeys.v2.LookupKeyResponse,request,callback)},"name",{value:"LookupKey"});return ApiKeys}();v2.CreateKeyRequest=function(){function CreateKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CreateKeyRequest.prototype.parent="";CreateKeyRequest.prototype.key=null;CreateKeyRequest.prototype.keyId="";CreateKeyRequest.create=function create(properties){return new CreateKeyRequest(properties)};CreateKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.parent!=null&&Object.hasOwnProperty.call(message,"parent"))writer.uint32(10).string(message.parent);if(message.key!=null&&Object.hasOwnProperty.call(message,"key"))$root.google.api.apikeys.v2.Key.encode(message.key,writer.uint32(18).fork()).ldelim();if(message.keyId!=null&&Object.hasOwnProperty.call(message,"keyId"))writer.uint32(26).string(message.keyId);return writer};CreateKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CreateKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.CreateKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.parent=reader.string();break}case 2:{message.key=$root.google.api.apikeys.v2.Key.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.keyId=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};CreateKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CreateKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.parent!=null&&message.hasOwnProperty("parent"))if(!$util.isString(message.parent))return"parent: string expected";if(message.key!=null&&message.hasOwnProperty("key")){var error=$root.google.api.apikeys.v2.Key.verify(message.key,long+1);if(error)return"key."+error}if(message.keyId!=null&&message.hasOwnProperty("keyId"))if(!$util.isString(message.keyId))return"keyId: string expected";return null};CreateKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.CreateKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.CreateKeyRequest;if(object.parent!=null)message.parent=String(object.parent);if(object.key!=null){if(typeof object.key!=="object")throw TypeError(".google.api.apikeys.v2.CreateKeyRequest.key: object expected");message.key=$root.google.api.apikeys.v2.Key.fromObject(object.key,long+1)}if(object.keyId!=null)message.keyId=String(object.keyId);return message};CreateKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.parent="";object.key=null;object.keyId=""}if(message.parent!=null&&message.hasOwnProperty("parent"))object.parent=message.parent;if(message.key!=null&&message.hasOwnProperty("key"))object.key=$root.google.api.apikeys.v2.Key.toObject(message.key,options);if(message.keyId!=null&&message.hasOwnProperty("keyId"))object.keyId=message.keyId;return object};CreateKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CreateKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.CreateKeyRequest"};return CreateKeyRequest}();v2.ListKeysRequest=function(){function ListKeysRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ListKeysRequest.prototype.parent="";ListKeysRequest.prototype.pageSize=0;ListKeysRequest.prototype.pageToken="";ListKeysRequest.prototype.showDeleted=false;ListKeysRequest.create=function create(properties){return new ListKeysRequest(properties)};ListKeysRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.parent!=null&&Object.hasOwnProperty.call(message,"parent"))writer.uint32(10).string(message.parent);if(message.pageSize!=null&&Object.hasOwnProperty.call(message,"pageSize"))writer.uint32(16).int32(message.pageSize);if(message.pageToken!=null&&Object.hasOwnProperty.call(message,"pageToken"))writer.uint32(26).string(message.pageToken);if(message.showDeleted!=null&&Object.hasOwnProperty.call(message,"showDeleted"))writer.uint32(48).bool(message.showDeleted);return writer};ListKeysRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ListKeysRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.ListKeysRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.parent=reader.string();break}case 2:{message.pageSize=reader.int32();break}case 3:{message.pageToken=reader.string();break}case 6:{message.showDeleted=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};ListKeysRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ListKeysRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.parent!=null&&message.hasOwnProperty("parent"))if(!$util.isString(message.parent))return"parent: string expected";if(message.pageSize!=null&&message.hasOwnProperty("pageSize"))if(!$util.isInteger(message.pageSize))return"pageSize: integer expected";if(message.pageToken!=null&&message.hasOwnProperty("pageToken"))if(!$util.isString(message.pageToken))return"pageToken: string expected";if(message.showDeleted!=null&&message.hasOwnProperty("showDeleted"))if(typeof message.showDeleted!=="boolean")return"showDeleted: boolean expected";return null};ListKeysRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.ListKeysRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.ListKeysRequest;if(object.parent!=null)message.parent=String(object.parent);if(object.pageSize!=null)message.pageSize=object.pageSize|0;if(object.pageToken!=null)message.pageToken=String(object.pageToken);if(object.showDeleted!=null)message.showDeleted=Boolean(object.showDeleted);return message};ListKeysRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.parent="";object.pageSize=0;object.pageToken="";object.showDeleted=false}if(message.parent!=null&&message.hasOwnProperty("parent"))object.parent=message.parent;if(message.pageSize!=null&&message.hasOwnProperty("pageSize"))object.pageSize=message.pageSize;if(message.pageToken!=null&&message.hasOwnProperty("pageToken"))object.pageToken=message.pageToken;if(message.showDeleted!=null&&message.hasOwnProperty("showDeleted"))object.showDeleted=message.showDeleted;return object};ListKeysRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ListKeysRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.ListKeysRequest"};return ListKeysRequest}();v2.ListKeysResponse=function(){function ListKeysResponse(properties){this.keys=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ListKeysResponse.prototype.keys=$util.emptyArray;ListKeysResponse.prototype.nextPageToken="";ListKeysResponse.create=function create(properties){return new ListKeysResponse(properties)};ListKeysResponse.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.keys!=null&&message.keys.length)for(var i=0;i<message.keys.length;++i)$root.google.api.apikeys.v2.Key.encode(message.keys[i],writer.uint32(10).fork()).ldelim();if(message.nextPageToken!=null&&Object.hasOwnProperty.call(message,"nextPageToken"))writer.uint32(18).string(message.nextPageToken);return writer};ListKeysResponse.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ListKeysResponse.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.ListKeysResponse;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.keys&&message.keys.length))message.keys=[];message.keys.push($root.google.api.apikeys.v2.Key.decode(reader,reader.uint32(),undefined,long+1));break}case 2:{message.nextPageToken=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};ListKeysResponse.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ListKeysResponse.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.keys!=null&&message.hasOwnProperty("keys")){if(!Array.isArray(message.keys))return"keys: array expected";for(var i=0;i<message.keys.length;++i){var error=$root.google.api.apikeys.v2.Key.verify(message.keys[i],long+1);if(error)return"keys."+error}}if(message.nextPageToken!=null&&message.hasOwnProperty("nextPageToken"))if(!$util.isString(message.nextPageToken))return"nextPageToken: string expected";return null};ListKeysResponse.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.ListKeysResponse)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.ListKeysResponse;if(object.keys){if(!Array.isArray(object.keys))throw TypeError(".google.api.apikeys.v2.ListKeysResponse.keys: array expected");message.keys=[];for(var i=0;i<object.keys.length;++i){if(typeof object.keys[i]!=="object")throw TypeError(".google.api.apikeys.v2.ListKeysResponse.keys: object expected");message.keys[i]=$root.google.api.apikeys.v2.Key.fromObject(object.keys[i],long+1)}}if(object.nextPageToken!=null)message.nextPageToken=String(object.nextPageToken);return message};ListKeysResponse.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.keys=[];if(options.defaults)object.nextPageToken="";if(message.keys&&message.keys.length){object.keys=[];for(var j=0;j<message.keys.length;++j)object.keys[j]=$root.google.api.apikeys.v2.Key.toObject(message.keys[j],options)}if(message.nextPageToken!=null&&message.hasOwnProperty("nextPageToken"))object.nextPageToken=message.nextPageToken;return object};ListKeysResponse.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ListKeysResponse.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.ListKeysResponse"};return ListKeysResponse}();v2.GetKeyRequest=function(){function GetKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GetKeyRequest.prototype.name="";GetKeyRequest.create=function create(properties){return new GetKeyRequest(properties)};GetKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};GetKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GetKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.GetKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};GetKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GetKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};GetKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.GetKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.GetKeyRequest;if(object.name!=null)message.name=String(object.name);return message};GetKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};GetKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GetKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.GetKeyRequest"};return GetKeyRequest}();v2.GetKeyStringRequest=function(){function GetKeyStringRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GetKeyStringRequest.prototype.name="";GetKeyStringRequest.create=function create(properties){return new GetKeyStringRequest(properties)};GetKeyStringRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};GetKeyStringRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GetKeyStringRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.GetKeyStringRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};GetKeyStringRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GetKeyStringRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};GetKeyStringRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.GetKeyStringRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.GetKeyStringRequest;if(object.name!=null)message.name=String(object.name);return message};GetKeyStringRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};GetKeyStringRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GetKeyStringRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.GetKeyStringRequest"};return GetKeyStringRequest}();v2.GetKeyStringResponse=function(){function GetKeyStringResponse(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GetKeyStringResponse.prototype.keyString="";GetKeyStringResponse.create=function create(properties){return new GetKeyStringResponse(properties)};GetKeyStringResponse.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.keyString!=null&&Object.hasOwnProperty.call(message,"keyString"))writer.uint32(10).string(message.keyString);return writer};GetKeyStringResponse.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GetKeyStringResponse.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.GetKeyStringResponse;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.keyString=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};GetKeyStringResponse.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GetKeyStringResponse.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.keyString!=null&&message.hasOwnProperty("keyString"))if(!$util.isString(message.keyString))return"keyString: string expected";return null};GetKeyStringResponse.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.GetKeyStringResponse)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.GetKeyStringResponse;if(object.keyString!=null)message.keyString=String(object.keyString);return message};GetKeyStringResponse.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.keyString="";if(message.keyString!=null&&message.hasOwnProperty("keyString"))object.keyString=message.keyString;return object};GetKeyStringResponse.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GetKeyStringResponse.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.GetKeyStringResponse"};return GetKeyStringResponse}();v2.UpdateKeyRequest=function(){function UpdateKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}UpdateKeyRequest.prototype.key=null;UpdateKeyRequest.prototype.updateMask=null;UpdateKeyRequest.create=function create(properties){return new UpdateKeyRequest(properties)};UpdateKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.key!=null&&Object.hasOwnProperty.call(message,"key"))$root.google.api.apikeys.v2.Key.encode(message.key,writer.uint32(10).fork()).ldelim();if(message.updateMask!=null&&Object.hasOwnProperty.call(message,"updateMask"))$root.google.protobuf.FieldMask.encode(message.updateMask,writer.uint32(18).fork()).ldelim();return writer};UpdateKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};UpdateKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.UpdateKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.key=$root.google.api.apikeys.v2.Key.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.updateMask=$root.google.protobuf.FieldMask.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};UpdateKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};UpdateKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.key!=null&&message.hasOwnProperty("key")){var error=$root.google.api.apikeys.v2.Key.verify(message.key,long+1);if(error)return"key."+error}if(message.updateMask!=null&&message.hasOwnProperty("updateMask")){var error=$root.google.protobuf.FieldMask.verify(message.updateMask,long+1);if(error)return"updateMask."+error}return null};UpdateKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.UpdateKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.UpdateKeyRequest;if(object.key!=null){if(typeof object.key!=="object")throw TypeError(".google.api.apikeys.v2.UpdateKeyRequest.key: object expected");message.key=$root.google.api.apikeys.v2.Key.fromObject(object.key,long+1)}if(object.updateMask!=null){if(typeof object.updateMask!=="object")throw TypeError(".google.api.apikeys.v2.UpdateKeyRequest.updateMask: object expected");message.updateMask=$root.google.protobuf.FieldMask.fromObject(object.updateMask,long+1)}return message};UpdateKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.key=null;object.updateMask=null}if(message.key!=null&&message.hasOwnProperty("key"))object.key=$root.google.api.apikeys.v2.Key.toObject(message.key,options);if(message.updateMask!=null&&message.hasOwnProperty("updateMask"))object.updateMask=$root.google.protobuf.FieldMask.toObject(message.updateMask,options);return object};UpdateKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};UpdateKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.UpdateKeyRequest"};return UpdateKeyRequest}();v2.DeleteKeyRequest=function(){function DeleteKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}DeleteKeyRequest.prototype.name="";DeleteKeyRequest.prototype.etag="";DeleteKeyRequest.create=function create(properties){return new DeleteKeyRequest(properties)};DeleteKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.etag!=null&&Object.hasOwnProperty.call(message,"etag"))writer.uint32(18).string(message.etag);return writer};DeleteKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};DeleteKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.DeleteKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.etag=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};DeleteKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};DeleteKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.etag!=null&&message.hasOwnProperty("etag"))if(!$util.isString(message.etag))return"etag: string expected";return null};DeleteKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.DeleteKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.DeleteKeyRequest;if(object.name!=null)message.name=String(object.name);if(object.etag!=null)message.etag=String(object.etag);return message};DeleteKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.etag=""}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.etag!=null&&message.hasOwnProperty("etag"))object.etag=message.etag;return object};DeleteKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};DeleteKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.DeleteKeyRequest"};return DeleteKeyRequest}();v2.UndeleteKeyRequest=function(){function UndeleteKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}UndeleteKeyRequest.prototype.name="";UndeleteKeyRequest.create=function create(properties){return new UndeleteKeyRequest(properties)};UndeleteKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};UndeleteKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};UndeleteKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.UndeleteKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};UndeleteKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};UndeleteKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};UndeleteKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.UndeleteKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.UndeleteKeyRequest;if(object.name!=null)message.name=String(object.name);return message};UndeleteKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};UndeleteKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};UndeleteKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.UndeleteKeyRequest"};return UndeleteKeyRequest}();v2.LookupKeyRequest=function(){function LookupKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}LookupKeyRequest.prototype.keyString="";LookupKeyRequest.create=function create(properties){return new LookupKeyRequest(properties)};LookupKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.keyString!=null&&Object.hasOwnProperty.call(message,"keyString"))writer.uint32(10).string(message.keyString);return writer};LookupKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};LookupKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.LookupKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.keyString=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};LookupKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};LookupKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.keyString!=null&&message.hasOwnProperty("keyString"))if(!$util.isString(message.keyString))return"keyString: string expected";return null};LookupKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.LookupKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.LookupKeyRequest;if(object.keyString!=null)message.keyString=String(object.keyString);return message};LookupKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.keyString="";if(message.keyString!=null&&message.hasOwnProperty("keyString"))object.keyString=message.keyString;return object};LookupKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};LookupKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.LookupKeyRequest"};return LookupKeyRequest}();v2.LookupKeyResponse=function(){function LookupKeyResponse(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}LookupKeyResponse.prototype.parent="";LookupKeyResponse.prototype.name="";LookupKeyResponse.create=function create(properties){return new LookupKeyResponse(properties)};LookupKeyResponse.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.parent!=null&&Object.hasOwnProperty.call(message,"parent"))writer.uint32(10).string(message.parent);if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(18).string(message.name);return writer};LookupKeyResponse.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};LookupKeyResponse.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.LookupKeyResponse;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.parent=reader.string();break}case 2:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};LookupKeyResponse.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};LookupKeyResponse.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.parent!=null&&message.hasOwnProperty("parent"))if(!$util.isString(message.parent))return"parent: string expected";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};LookupKeyResponse.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.LookupKeyResponse)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.LookupKeyResponse;if(object.parent!=null)message.parent=String(object.parent);if(object.name!=null)message.name=String(object.name);return message};LookupKeyResponse.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.parent="";object.name=""}if(message.parent!=null&&message.hasOwnProperty("parent"))object.parent=message.parent;if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};LookupKeyResponse.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};LookupKeyResponse.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.LookupKeyResponse"};return LookupKeyResponse}();v2.Key=function(){function Key(properties){this.annotations={};if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Key.prototype.name="";Key.prototype.uid="";Key.prototype.displayName="";Key.prototype.keyString="";Key.prototype.createTime=null;Key.prototype.updateTime=null;Key.prototype.deleteTime=null;Key.prototype.annotations=$util.emptyObject;Key.prototype.restrictions=null;Key.prototype.etag="";Key.create=function create(properties){return new Key(properties)};Key.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.displayName!=null&&Object.hasOwnProperty.call(message,"displayName"))writer.uint32(18).string(message.displayName);if(message.keyString!=null&&Object.hasOwnProperty.call(message,"keyString"))writer.uint32(26).string(message.keyString);if(message.createTime!=null&&Object.hasOwnProperty.call(message,"createTime"))$root.google.protobuf.Timestamp.encode(message.createTime,writer.uint32(34).fork()).ldelim();if(message.uid!=null&&Object.hasOwnProperty.call(message,"uid"))writer.uint32(42).string(message.uid);if(message.updateTime!=null&&Object.hasOwnProperty.call(message,"updateTime"))$root.google.protobuf.Timestamp.encode(message.updateTime,writer.uint32(50).fork()).ldelim();if(message.deleteTime!=null&&Object.hasOwnProperty.call(message,"deleteTime"))$root.google.protobuf.Timestamp.encode(message.deleteTime,writer.uint32(58).fork()).ldelim();if(message.annotations!=null&&Object.hasOwnProperty.call(message,"annotations"))for(var keys=Object.keys(message.annotations),i=0;i<keys.length;++i)writer.uint32(66).fork().uint32(10).string(keys[i]).uint32(18).string(message.annotations[keys[i]]).ldelim();if(message.restrictions!=null&&Object.hasOwnProperty.call(message,"restrictions"))$root.google.api.apikeys.v2.Restrictions.encode(message.restrictions,writer.uint32(74).fork()).ldelim();if(message.etag!=null&&Object.hasOwnProperty.call(message,"etag"))writer.uint32(90).string(message.etag);return writer};Key.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Key.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.Key,key,value;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 5:{message.uid=reader.string();break}case 2:{message.displayName=reader.string();break}case 3:{message.keyString=reader.string();break}case 4:{message.createTime=$root.google.protobuf.Timestamp.decode(reader,reader.uint32(),undefined,long+1);break}case 6:{message.updateTime=$root.google.protobuf.Timestamp.decode(reader,reader.uint32(),undefined,long+1);break}case 7:{message.deleteTime=$root.google.protobuf.Timestamp.decode(reader,reader.uint32(),undefined,long+1);break}case 8:{if(message.annotations===$util.emptyObject)message.annotations={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.annotations,key);message.annotations[key]=value;break}case 9:{message.restrictions=$root.google.api.apikeys.v2.Restrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 11:{message.etag=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};Key.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Key.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.uid!=null&&message.hasOwnProperty("uid"))if(!$util.isString(message.uid))return"uid: string expected";if(message.displayName!=null&&message.hasOwnProperty("displayName"))if(!$util.isString(message.displayName))return"displayName: string expected";if(message.keyString!=null&&message.hasOwnProperty("keyString"))if(!$util.isString(message.keyString))return"keyString: string expected";if(message.createTime!=null&&message.hasOwnProperty("createTime")){var error=$root.google.protobuf.Timestamp.verify(message.createTime,long+1);if(error)return"createTime."+error}if(message.updateTime!=null&&message.hasOwnProperty("updateTime")){var error=$root.google.protobuf.Timestamp.verify(message.updateTime,long+1);if(error)return"updateTime."+error}if(message.deleteTime!=null&&message.hasOwnProperty("deleteTime")){var error=$root.google.protobuf.Timestamp.verify(message.deleteTime,long+1);if(error)return"deleteTime."+error}if(message.annotations!=null&&message.hasOwnProperty("annotations")){if(!$util.isObject(message.annotations))return"annotations: object expected";var key=Object.keys(message.annotations);for(var i=0;i<key.length;++i)if(!$util.isString(message.annotations[key[i]]))return"annotations: string{k:string} expected"}if(message.restrictions!=null&&message.hasOwnProperty("restrictions")){var error=$root.google.api.apikeys.v2.Restrictions.verify(message.restrictions,long+1);if(error)return"restrictions."+error}if(message.etag!=null&&message.hasOwnProperty("etag"))if(!$util.isString(message.etag))return"etag: string expected";return null};Key.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.Key)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.Key;if(object.name!=null)message.name=String(object.name);if(object.uid!=null)message.uid=String(object.uid);if(object.displayName!=null)message.displayName=String(object.displayName);if(object.keyString!=null)message.keyString=String(object.keyString);if(object.createTime!=null){if(typeof object.createTime!=="object")throw TypeError(".google.api.apikeys.v2.Key.createTime: object expected");message.createTime=$root.google.protobuf.Timestamp.fromObject(object.createTime,long+1)}if(object.updateTime!=null){if(typeof object.updateTime!=="object")throw TypeError(".google.api.apikeys.v2.Key.updateTime: object expected");message.updateTime=$root.google.protobuf.Timestamp.fromObject(object.updateTime,long+1)}if(object.deleteTime!=null){if(typeof object.deleteTime!=="object")throw TypeError(".google.api.apikeys.v2.Key.deleteTime: object expected");message.deleteTime=$root.google.protobuf.Timestamp.fromObject(object.deleteTime,long+1)}if(object.annotations){if(typeof object.annotations!=="object")throw TypeError(".google.api.apikeys.v2.Key.annotations: object expected");message.annotations={};for(var keys=Object.keys(object.annotations),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.annotations,keys[i]);message.annotations[keys[i]]=String(object.annotations[keys[i]])}}if(object.restrictions!=null){if(typeof object.restrictions!=="object")throw TypeError(".google.api.apikeys.v2.Key.restrictions: object expected");message.restrictions=$root.google.api.apikeys.v2.Restrictions.fromObject(object.restrictions,long+1)}if(object.etag!=null)message.etag=String(object.etag);return message};Key.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.objects||options.defaults)object.annotations={};if(options.defaults){object.name="";object.displayName="";object.keyString="";object.createTime=null;object.uid="";object.updateTime=null;object.deleteTime=null;object.restrictions=null;object.etag=""}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.displayName!=null&&message.hasOwnProperty("displayName"))object.displayName=message.displayName;if(message.keyString!=null&&message.hasOwnProperty("keyString"))object.keyString=message.keyString;if(message.createTime!=null&&message.hasOwnProperty("createTime"))object.createTime=$root.google.protobuf.Timestamp.toObject(message.createTime,options);if(message.uid!=null&&message.hasOwnProperty("uid"))object.uid=message.uid;if(message.updateTime!=null&&message.hasOwnProperty("updateTime"))object.updateTime=$root.google.protobuf.Timestamp.toObject(message.updateTime,options);if(message.deleteTime!=null&&message.hasOwnProperty("deleteTime"))object.deleteTime=$root.google.protobuf.Timestamp.toObject(message.deleteTime,options);var keys2;if(message.annotations&&(keys2=Object.keys(message.annotations)).length){object.annotations={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.annotations,keys2[j]);object.annotations[keys2[j]]=message.annotations[keys2[j]]}}if(message.restrictions!=null&&message.hasOwnProperty("restrictions"))object.restrictions=$root.google.api.apikeys.v2.Restrictions.toObject(message.restrictions,options);if(message.etag!=null&&message.hasOwnProperty("etag"))object.etag=message.etag;return object};Key.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Key.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.Key"};return Key}();v2.Restrictions=function(){function Restrictions(properties){this.apiTargets=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Restrictions.prototype.browserKeyRestrictions=null;Restrictions.prototype.serverKeyRestrictions=null;Restrictions.prototype.androidKeyRestrictions=null;Restrictions.prototype.iosKeyRestrictions=null;Restrictions.prototype.apiTargets=$util.emptyArray;var $oneOfFields;Object.defineProperty(Restrictions.prototype,"clientRestrictions",{get:$util.oneOfGetter($oneOfFields=["browserKeyRestrictions","serverKeyRestrictions","androidKeyRestrictions","iosKeyRestrictions"]),set:$util.oneOfSetter($oneOfFields)});Restrictions.create=function create(properties){return new Restrictions(properties)};Restrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.browserKeyRestrictions!=null&&Object.hasOwnProperty.call(message,"browserKeyRestrictions"))$root.google.api.apikeys.v2.BrowserKeyRestrictions.encode(message.browserKeyRestrictions,writer.uint32(10).fork()).ldelim();if(message.serverKeyRestrictions!=null&&Object.hasOwnProperty.call(message,"serverKeyRestrictions"))$root.google.api.apikeys.v2.ServerKeyRestrictions.encode(message.serverKeyRestrictions,writer.uint32(18).fork()).ldelim();if(message.androidKeyRestrictions!=null&&Object.hasOwnProperty.call(message,"androidKeyRestrictions"))$root.google.api.apikeys.v2.AndroidKeyRestrictions.encode(message.androidKeyRestrictions,writer.uint32(26).fork()).ldelim();if(message.iosKeyRestrictions!=null&&Object.hasOwnProperty.call(message,"iosKeyRestrictions"))$root.google.api.apikeys.v2.IosKeyRestrictions.encode(message.iosKeyRestrictions,writer.uint32(34).fork()).ldelim();if(message.apiTargets!=null&&message.apiTargets.length)for(var i=0;i<message.apiTargets.length;++i)$root.google.api.apikeys.v2.ApiTarget.encode(message.apiTargets[i],writer.uint32(42).fork()).ldelim();return writer};Restrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Restrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.Restrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.browserKeyRestrictions=$root.google.api.apikeys.v2.BrowserKeyRestrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.serverKeyRestrictions=$root.google.api.apikeys.v2.ServerKeyRestrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.androidKeyRestrictions=$root.google.api.apikeys.v2.AndroidKeyRestrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 4:{message.iosKeyRestrictions=$root.google.api.apikeys.v2.IosKeyRestrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 5:{if(!(message.apiTargets&&message.apiTargets.length))message.apiTargets=[];message.apiTargets.push($root.google.api.apikeys.v2.ApiTarget.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};Restrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Restrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";var properties={};if(message.browserKeyRestrictions!=null&&message.hasOwnProperty("browserKeyRestrictions")){properties.clientRestrictions=1;{var error=$root.google.api.apikeys.v2.BrowserKeyRestrictions.verify(message.browserKeyRestrictions,long+1);if(error)return"browserKeyRestrictions."+error}}if(message.serverKeyRestrictions!=null&&message.hasOwnProperty("serverKeyRestrictions")){if(properties.clientRestrictions===1)return"clientRestrictions: multiple values";properties.clientRestrictions=1;{var error=$root.google.api.apikeys.v2.ServerKeyRestrictions.verify(message.serverKeyRestrictions,long+1);if(error)return"serverKeyRestrictions."+error}}if(message.androidKeyRestrictions!=null&&message.hasOwnProperty("androidKeyRestrictions")){if(properties.clientRestrictions===1)return"clientRestrictions: multiple values";properties.clientRestrictions=1;{var error=$root.google.api.apikeys.v2.AndroidKeyRestrictions.verify(message.androidKeyRestrictions,long+1);if(error)return"androidKeyRestrictions."+error}}if(message.iosKeyRestrictions!=null&&message.hasOwnProperty("iosKeyRestrictions")){if(properties.clientRestrictions===1)return"clientRestrictions: multiple values";properties.clientRestrictions=1;{var error=$root.google.api.apikeys.v2.IosKeyRestrictions.verify(message.iosKeyRestrictions,long+1);if(error)return"iosKeyRestrictions."+error}}if(message.apiTargets!=null&&message.hasOwnProperty("apiTargets")){if(!Array.isArray(message.apiTargets))return"apiTargets: array expected";for(var i=0;i<message.apiTargets.length;++i){var error=$root.google.api.apikeys.v2.ApiTarget.verify(message.apiTargets[i],long+1);if(error)return"apiTargets."+error}}return null};Restrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.Restrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.Restrictions;if(object.browserKeyRestrictions!=null){if(typeof object.browserKeyRestrictions!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.browserKeyRestrictions: object expected");message.browserKeyRestrictions=$root.google.api.apikeys.v2.BrowserKeyRestrictions.fromObject(object.browserKeyRestrictions,long+1)}if(object.serverKeyRestrictions!=null){if(typeof object.serverKeyRestrictions!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.serverKeyRestrictions: object expected");message.serverKeyRestrictions=$root.google.api.apikeys.v2.ServerKeyRestrictions.fromObject(object.serverKeyRestrictions,long+1)}if(object.androidKeyRestrictions!=null){if(typeof object.androidKeyRestrictions!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.androidKeyRestrictions: object expected");message.androidKeyRestrictions=$root.google.api.apikeys.v2.AndroidKeyRestrictions.fromObject(object.androidKeyRestrictions,long+1)}if(object.iosKeyRestrictions!=null){if(typeof object.iosKeyRestrictions!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.iosKeyRestrictions: object expected");message.iosKeyRestrictions=$root.google.api.apikeys.v2.IosKeyRestrictions.fromObject(object.iosKeyRestrictions,long+1)}if(object.apiTargets){if(!Array.isArray(object.apiTargets))throw TypeError(".google.api.apikeys.v2.Restrictions.apiTargets: array expected");message.apiTargets=[];for(var i=0;i<object.apiTargets.length;++i){if(typeof object.apiTargets[i]!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.apiTargets: object expected");message.apiTargets[i]=$root.google.api.apikeys.v2.ApiTarget.fromObject(object.apiTargets[i],long+1)}}return message};Restrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.apiTargets=[];if(message.browserKeyRestrictions!=null&&message.hasOwnProperty("browserKeyRestrictions")){object.browserKeyRestrictions=$root.google.api.apikeys.v2.BrowserKeyRestrictions.toObject(message.browserKeyRestrictions,options);if(options.oneofs)object.clientRestrictions="browserKeyRestrictions"}if(message.serverKeyRestrictions!=null&&message.hasOwnProperty("serverKeyRestrictions")){object.serverKeyRestrictions=$root.google.api.apikeys.v2.ServerKeyRestrictions.toObject(message.serverKeyRestrictions,options);if(options.oneofs)object.clientRestrictions="serverKeyRestrictions"}if(message.androidKeyRestrictions!=null&&message.hasOwnProperty("androidKeyRestrictions")){object.androidKeyRestrictions=$root.google.api.apikeys.v2.AndroidKeyRestrictions.toObject(message.androidKeyRestrictions,options);if(options.oneofs)object.clientRestrictions="androidKeyRestrictions"}if(message.iosKeyRestrictions!=null&&message.hasOwnProperty("iosKeyRestrictions")){object.iosKeyRestrictions=$root.google.api.apikeys.v2.IosKeyRestrictions.toObject(message.iosKeyRestrictions,options);if(options.oneofs)object.clientRestrictions="iosKeyRestrictions"}if(message.apiTargets&&message.apiTargets.length){object.apiTargets=[];for(var j=0;j<message.apiTargets.length;++j)object.apiTargets[j]=$root.google.api.apikeys.v2.ApiTarget.toObject(message.apiTargets[j],options)}return object};Restrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Restrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.Restrictions"};return Restrictions}();v2.BrowserKeyRestrictions=function(){function BrowserKeyRestrictions(properties){this.allowedReferrers=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}BrowserKeyRestrictions.prototype.allowedReferrers=$util.emptyArray;BrowserKeyRestrictions.create=function create(properties){return new BrowserKeyRestrictions(properties)};BrowserKeyRestrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowedReferrers!=null&&message.allowedReferrers.length)for(var i=0;i<message.allowedReferrers.length;++i)writer.uint32(10).string(message.allowedReferrers[i]);return writer};BrowserKeyRestrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};BrowserKeyRestrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.BrowserKeyRestrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.allowedReferrers&&message.allowedReferrers.length))message.allowedReferrers=[];message.allowedReferrers.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};BrowserKeyRestrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};BrowserKeyRestrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowedReferrers!=null&&message.hasOwnProperty("allowedReferrers")){if(!Array.isArray(message.allowedReferrers))return"allowedReferrers: array expected";for(var i=0;i<message.allowedReferrers.length;++i)if(!$util.isString(message.allowedReferrers[i]))return"allowedReferrers: string[] expected"}return null};BrowserKeyRestrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.BrowserKeyRestrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.BrowserKeyRestrictions;if(object.allowedReferrers){if(!Array.isArray(object.allowedReferrers))throw TypeError(".google.api.apikeys.v2.BrowserKeyRestrictions.allowedReferrers: array expected");message.allowedReferrers=[];for(var i=0;i<object.allowedReferrers.length;++i)message.allowedReferrers[i]=String(object.allowedReferrers[i])}return message};BrowserKeyRestrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.allowedReferrers=[];if(message.allowedReferrers&&message.allowedReferrers.length){object.allowedReferrers=[];for(var j=0;j<message.allowedReferrers.length;++j)object.allowedReferrers[j]=message.allowedReferrers[j]}return object};BrowserKeyRestrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};BrowserKeyRestrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.BrowserKeyRestrictions"};return BrowserKeyRestrictions}();v2.ServerKeyRestrictions=function(){function ServerKeyRestrictions(properties){this.allowedIps=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ServerKeyRestrictions.prototype.allowedIps=$util.emptyArray;ServerKeyRestrictions.create=function create(properties){return new ServerKeyRestrictions(properties)};ServerKeyRestrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowedIps!=null&&message.allowedIps.length)for(var i=0;i<message.allowedIps.length;++i)writer.uint32(10).string(message.allowedIps[i]);return writer};ServerKeyRestrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ServerKeyRestrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.ServerKeyRestrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.allowedIps&&message.allowedIps.length))message.allowedIps=[];message.allowedIps.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};ServerKeyRestrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ServerKeyRestrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowedIps!=null&&message.hasOwnProperty("allowedIps")){if(!Array.isArray(message.allowedIps))return"allowedIps: array expected";for(var i=0;i<message.allowedIps.length;++i)if(!$util.isString(message.allowedIps[i]))return"allowedIps: string[] expected"}return null};ServerKeyRestrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.ServerKeyRestrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.ServerKeyRestrictions;if(object.allowedIps){if(!Array.isArray(object.allowedIps))throw TypeError(".google.api.apikeys.v2.ServerKeyRestrictions.allowedIps: array expected");message.allowedIps=[];for(var i=0;i<object.allowedIps.length;++i)message.allowedIps[i]=String(object.allowedIps[i])}return message};ServerKeyRestrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.allowedIps=[];if(message.allowedIps&&message.allowedIps.length){object.allowedIps=[];for(var j=0;j<message.allowedIps.length;++j)object.allowedIps[j]=message.allowedIps[j]}return object};ServerKeyRestrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ServerKeyRestrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.ServerKeyRestrictions"};return ServerKeyRestrictions}();v2.AndroidKeyRestrictions=function(){function AndroidKeyRestrictions(properties){this.allowedApplications=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}AndroidKeyRestrictions.prototype.allowedApplications=$util.emptyArray;AndroidKeyRestrictions.create=function create(properties){return new AndroidKeyRestrictions(properties)};AndroidKeyRestrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowedApplications!=null&&message.allowedApplications.length)for(var i=0;i<message.allowedApplications.length;++i)$root.google.api.apikeys.v2.AndroidApplication.encode(message.allowedApplications[i],writer.uint32(10).fork()).ldelim();return writer};AndroidKeyRestrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};AndroidKeyRestrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.AndroidKeyRestrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.allowedApplications&&message.allowedApplications.length))message.allowedApplications=[];message.allowedApplications.push($root.google.api.apikeys.v2.AndroidApplication.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};AndroidKeyRestrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};AndroidKeyRestrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowedApplications!=null&&message.hasOwnProperty("allowedApplications")){if(!Array.isArray(message.allowedApplications))return"allowedApplications: array expected";for(var i=0;i<message.allowedApplications.length;++i){var error=$root.google.api.apikeys.v2.AndroidApplication.verify(message.allowedApplications[i],long+1);if(error)return"allowedApplications."+error}}return null};AndroidKeyRestrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.AndroidKeyRestrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.AndroidKeyRestrictions;if(object.allowedApplications){if(!Array.isArray(object.allowedApplications))throw TypeError(".google.api.apikeys.v2.AndroidKeyRestrictions.allowedApplications: array expected");message.allowedApplications=[];for(var i=0;i<object.allowedApplications.length;++i){if(typeof object.allowedApplications[i]!=="object")throw TypeError(".google.api.apikeys.v2.AndroidKeyRestrictions.allowedApplications: object expected");message.allowedApplications[i]=$root.google.api.apikeys.v2.AndroidApplication.fromObject(object.allowedApplications[i],long+1)}}return message};AndroidKeyRestrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.allowedApplications=[];if(message.allowedApplications&&message.allowedApplications.length){object.allowedApplications=[];for(var j=0;j<message.allowedApplications.length;++j)object.allowedApplications[j]=$root.google.api.apikeys.v2.AndroidApplication.toObject(message.allowedApplications[j],options)}return object};AndroidKeyRestrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};AndroidKeyRestrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.AndroidKeyRestrictions"};return AndroidKeyRestrictions}();v2.AndroidApplication=function(){function AndroidApplication(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}AndroidApplication.prototype.sha1Fingerprint="";AndroidApplication.prototype.packageName="";AndroidApplication.create=function create(properties){return new AndroidApplication(properties)};AndroidApplication.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.sha1Fingerprint!=null&&Object.hasOwnProperty.call(message,"sha1Fingerprint"))writer.uint32(10).string(message.sha1Fingerprint);if(message.packageName!=null&&Object.hasOwnProperty.call(message,"packageName"))writer.uint32(18).string(message.packageName);return writer};AndroidApplication.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};AndroidApplication.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.AndroidApplication;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.sha1Fingerprint=reader.string();break}case 2:{message.packageName=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};AndroidApplication.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};AndroidApplication.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.sha1Fingerprint!=null&&message.hasOwnProperty("sha1Fingerprint"))if(!$util.isString(message.sha1Fingerprint))return"sha1Fingerprint: string expected";if(message.packageName!=null&&message.hasOwnProperty("packageName"))if(!$util.isString(message.packageName))return"packageName: string expected";return null};AndroidApplication.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.AndroidApplication)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.AndroidApplication;if(object.sha1Fingerprint!=null)message.sha1Fingerprint=String(object.sha1Fingerprint);if(object.packageName!=null)message.packageName=String(object.packageName);return message};AndroidApplication.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.sha1Fingerprint="";object.packageName=""}if(message.sha1Fingerprint!=null&&message.hasOwnProperty("sha1Fingerprint"))object.sha1Fingerprint=message.sha1Fingerprint;if(message.packageName!=null&&message.hasOwnProperty("packageName"))object.packageName=message.packageName;return object};AndroidApplication.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};AndroidApplication.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.AndroidApplication"};return AndroidApplication}();v2.IosKeyRestrictions=function(){function IosKeyRestrictions(properties){this.allowedBundleIds=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}IosKeyRestrictions.prototype.allowedBundleIds=$util.emptyArray;IosKeyRestrictions.create=function create(properties){return new IosKeyRestrictions(properties)};IosKeyRestrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowedBundleIds!=null&&message.allowedBundleIds.length)for(var i=0;i<message.allowedBundleIds.length;++i)writer.uint32(10).string(message.allowedBundleIds[i]);return writer};IosKeyRestrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};IosKeyRestrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.IosKeyRestrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.allowedBundleIds&&message.allowedBundleIds.length))message.allowedBundleIds=[];message.allowedBundleIds.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};IosKeyRestrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};IosKeyRestrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowedBundleIds!=null&&message.hasOwnProperty("allowedBundleIds")){if(!Array.isArray(message.allowedBundleIds))return"allowedBundleIds: array expected";for(var i=0;i<message.allowedBundleIds.length;++i)if(!$util.isString(message.allowedBundleIds[i]))return"allowedBundleIds: string[] expected"}return null};IosKeyRestrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.IosKeyRestrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.IosKeyRestrictions;if(object.allowedBundleIds){if(!Array.isArray(object.allowedBundleIds))throw TypeError(".google.api.apikeys.v2.IosKeyRestrictions.allowedBundleIds: array expected");message.allowedBundleIds=[];for(var i=0;i<object.allowedBundleIds.length;++i)message.allowedBundleIds[i]=String(object.allowedBundleIds[i])}return message};IosKeyRestrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.allowedBundleIds=[];if(message.allowedBundleIds&&message.allowedBundleIds.length){object.allowedBundleIds=[];for(var j=0;j<message.allowedBundleIds.length;++j)object.allowedBundleIds[j]=message.allowedBundleIds[j]}return object};IosKeyRestrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};IosKeyRestrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.IosKeyRestrictions"};return IosKeyRestrictions}();v2.ApiTarget=function(){function ApiTarget(properties){this.methods=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ApiTarget.prototype.service="";ApiTarget.prototype.methods=$util.emptyArray;ApiTarget.create=function create(properties){return new ApiTarget(properties)};ApiTarget.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.service!=null&&Object.hasOwnProperty.call(message,"service"))writer.uint32(10).string(message.service);if(message.methods!=null&&message.methods.length)for(var i=0;i<message.methods.length;++i)writer.uint32(18).string(message.methods[i]);return writer};ApiTarget.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ApiTarget.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.ApiTarget;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.service=reader.string();break}case 2:{if(!(message.methods&&message.methods.length))message.methods=[];message.methods.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};ApiTarget.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ApiTarget.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.service!=null&&message.hasOwnProperty("service"))if(!$util.isString(message.service))return"service: string expected";if(message.methods!=null&&message.hasOwnProperty("methods")){if(!Array.isArray(message.methods))return"methods: array expected";for(var i=0;i<message.methods.length;++i)if(!$util.isString(message.methods[i]))return"methods: string[] expected"}return null};ApiTarget.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.ApiTarget)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.ApiTarget;if(object.service!=null)message.service=String(object.service);if(object.methods){if(!Array.isArray(object.methods))throw TypeError(".google.api.apikeys.v2.ApiTarget.methods: array expected");message.methods=[];for(var i=0;i<object.methods.length;++i)message.methods[i]=String(object.methods[i])}return message};ApiTarget.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.methods=[];if(options.defaults)object.service="";if(message.service!=null&&message.hasOwnProperty("service"))object.service=message.service;if(message.methods&&message.methods.length){object.methods=[];for(var j=0;j<message.methods.length;++j)object.methods[j]=message.methods[j]}return object};ApiTarget.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ApiTarget.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.ApiTarget"};return ApiTarget}();return v2}();return apikeys}();api.Http=function(){function Http(properties){this.rules=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Http.prototype.rules=$util.emptyArray;Http.prototype.fullyDecodeReservedExpansion=false;Http.create=function create(properties){return new Http(properties)};Http.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.rules!=null&&message.rules.length)for(var i=0;i<message.rules.length;++i)$root.google.api.HttpRule.encode(message.rules[i],writer.uint32(10).fork()).ldelim();if(message.fullyDecodeReservedExpansion!=null&&Object.hasOwnProperty.call(message,"fullyDecodeReservedExpansion"))writer.uint32(16).bool(message.fullyDecodeReservedExpansion);return writer};Http.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Http.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.Http;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.rules&&message.rules.length))message.rules=[];message.rules.push($root.google.api.HttpRule.decode(reader,reader.uint32(),undefined,long+1));break}case 2:{message.fullyDecodeReservedExpansion=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};Http.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Http.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.rules!=null&&message.hasOwnProperty("rules")){if(!Array.isArray(message.rules))return"rules: array expected";for(var i=0;i<message.rules.length;++i){var error=$root.google.api.HttpRule.verify(message.rules[i],long+1);if(error)return"rules."+error}}if(message.fullyDecodeReservedExpansion!=null&&message.hasOwnProperty("fullyDecodeReservedExpansion"))if(typeof message.fullyDecodeReservedExpansion!=="boolean")return"fullyDecodeReservedExpansion: boolean expected";return null};Http.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.Http)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.Http;if(object.rules){if(!Array.isArray(object.rules))throw TypeError(".google.api.Http.rules: array expected");message.rules=[];for(var i=0;i<object.rules.length;++i){if(typeof object.rules[i]!=="object")throw TypeError(".google.api.Http.rules: object expected");message.rules[i]=$root.google.api.HttpRule.fromObject(object.rules[i],long+1)}}if(object.fullyDecodeReservedExpansion!=null)message.fullyDecodeReservedExpansion=Boolean(object.fullyDecodeReservedExpansion);return message};Http.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.rules=[];if(options.defaults)object.fullyDecodeReservedExpansion=false;if(message.rules&&message.rules.length){object.rules=[];for(var j=0;j<message.rules.length;++j)object.rules[j]=$root.google.api.HttpRule.toObject(message.rules[j],options)}if(message.fullyDecodeReservedExpansion!=null&&message.hasOwnProperty("fullyDecodeReservedExpansion"))object.fullyDecodeReservedExpansion=message.fullyDecodeReservedExpansion;return object};Http.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Http.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.Http"};return Http}();api.HttpRule=function(){function HttpRule(properties){this.additionalBindings=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}HttpRule.prototype.selector="";HttpRule.prototype.get=null;HttpRule.prototype.put=null;HttpRule.prototype.post=null;HttpRule.prototype["delete"]=null;HttpRule.prototype.patch=null;HttpRule.prototype.custom=null;HttpRule.prototype.body="";HttpRule.prototype.responseBody="";HttpRule.prototype.additionalBindings=$util.emptyArray;var $oneOfFields;Object.defineProperty(HttpRule.prototype,"pattern",{get:$util.oneOfGetter($oneOfFields=["get","put","post","delete","patch","custom"]),set:$util.oneOfSetter($oneOfFields)});HttpRule.create=function create(properties){return new HttpRule(properties)};HttpRule.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.selector!=null&&Object.hasOwnProperty.call(message,"selector"))writer.uint32(10).string(message.selector);if(message.get!=null&&Object.hasOwnProperty.call(message,"get"))writer.uint32(18).string(message.get);if(message.put!=null&&Object.hasOwnProperty.call(message,"put"))writer.uint32(26).string(message.put);if(message.post!=null&&Object.hasOwnProperty.call(message,"post"))writer.uint32(34).string(message.post);if(message["delete"]!=null&&Object.hasOwnProperty.call(message,"delete"))writer.uint32(42).string(message["delete"]);if(message.patch!=null&&Object.hasOwnProperty.call(message,"patch"))writer.uint32(50).string(message.patch);if(message.body!=null&&Object.hasOwnProperty.call(message,"body"))writer.uint32(58).string(message.body);if(message.custom!=null&&Object.hasOwnProperty.call(message,"custom"))$root.google.api.CustomHttpPattern.encode(message.custom,writer.uint32(66).fork()).ldelim();if(message.additionalBindings!=null&&message.additionalBindings.length)for(var i=0;i<message.additionalBindings.length;++i)$root.google.api.HttpRule.encode(message.additionalBindings[i],writer.uint32(90).fork()).ldelim();if(message.responseBody!=null&&Object.hasOwnProperty.call(message,"responseBody"))writer.uint32(98).string(message.responseBody);return writer};HttpRule.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};HttpRule.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.HttpRule;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.selector=reader.string();break}case 2:{message.get=reader.string();break}case 3:{message.put=reader.string();break}case 4:{message.post=reader.string();break}case 5:{message["delete"]=reader.string();break}case 6:{message.patch=reader.string();break}case 8:{message.custom=$root.google.api.CustomHttpPattern.decode(reader,reader.uint32(),undefined,long+1);break}case 7:{message.body=reader.string();break}case 12:{message.responseBody=reader.string();break}case 11:{if(!(message.additionalBindings&&message.additionalBindings.length))message.additionalBindings=[];message.additionalBindings.push($root.google.api.HttpRule.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};HttpRule.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};HttpRule.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";var properties={};if(message.selector!=null&&message.hasOwnProperty("selector"))if(!$util.isString(message.selector))return"selector: string expected";if(message.get!=null&&message.hasOwnProperty("get")){properties.pattern=1;if(!$util.isString(message.get))return"get: string expected"}if(message.put!=null&&message.hasOwnProperty("put")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;if(!$util.isString(message.put))return"put: string expected"}if(message.post!=null&&message.hasOwnProperty("post")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;if(!$util.isString(message.post))return"post: string expected"}if(message["delete"]!=null&&message.hasOwnProperty("delete")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;if(!$util.isString(message["delete"]))return"delete: string expected"}if(message.patch!=null&&message.hasOwnProperty("patch")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;if(!$util.isString(message.patch))return"patch: string expected"}if(message.custom!=null&&message.hasOwnProperty("custom")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;{var error=$root.google.api.CustomHttpPattern.verify(message.custom,long+1);if(error)return"custom."+error}}if(message.body!=null&&message.hasOwnProperty("body"))if(!$util.isString(message.body))return"body: string expected";if(message.responseBody!=null&&message.hasOwnProperty("responseBody"))if(!$util.isString(message.responseBody))return"responseBody: string expected";if(message.additionalBindings!=null&&message.hasOwnProperty("additionalBindings")){if(!Array.isArray(message.additionalBindings))return"additionalBindings: array expected";for(var i=0;i<message.additionalBindings.length;++i){var error=$root.google.api.HttpRule.verify(message.additionalBindings[i],long+1);if(error)return"additionalBindings."+error}}return null};HttpRule.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.HttpRule)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.HttpRule;if(object.selector!=null)message.selector=String(object.selector);if(object.get!=null)message.get=String(object.get);if(object.put!=null)message.put=String(object.put);if(object.post!=null)message.post=String(object.post);if(object["delete"]!=null)message["delete"]=String(object["delete"]);if(object.patch!=null)message.patch=String(object.patch);if(object.custom!=null){if(typeof object.custom!=="object")throw TypeError(".google.api.HttpRule.custom: object expected");message.custom=$root.google.api.CustomHttpPattern.fromObject(object.custom,long+1)}if(object.body!=null)message.body=String(object.body);if(object.responseBody!=null)message.responseBody=String(object.responseBody);if(object.additionalBindings){if(!Array.isArray(object.additionalBindings))throw TypeError(".google.api.HttpRule.additionalBindings: array expected");message.additionalBindings=[];for(var i=0;i<object.additionalBindings.length;++i){if(typeof object.additionalBindings[i]!=="object")throw TypeError(".google.api.HttpRule.additionalBindings: object expected");message.additionalBindings[i]=$root.google.api.HttpRule.fromObject(object.additionalBindings[i],long+1)}}return message};HttpRule.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.additionalBindings=[];if(options.defaults){object.selector="";object.body="";object.responseBody=""}if(message.selector!=null&&message.hasOwnProperty("selector"))object.selector=message.selector;if(message.get!=null&&message.hasOwnProperty("get")){object.get=message.get;if(options.oneofs)object.pattern="get"}if(message.put!=null&&message.hasOwnProperty("put")){object.put=message.put;if(options.oneofs)object.pattern="put"}if(message.post!=null&&message.hasOwnProperty("post")){object.post=message.post;if(options.oneofs)object.pattern="post"}if(message["delete"]!=null&&message.hasOwnProperty("delete")){object["delete"]=message["delete"];if(options.oneofs)object.pattern="delete"}if(message.patch!=null&&message.hasOwnProperty("patch")){object.patch=message.patch;if(options.oneofs)object.pattern="patch"}if(message.body!=null&&message.hasOwnProperty("body"))object.body=message.body;if(message.custom!=null&&message.hasOwnProperty("custom")){object.custom=$root.google.api.CustomHttpPattern.toObject(message.custom,options);if(options.oneofs)object.pattern="custom"}if(message.additionalBindings&&message.additionalBindings.length){object.additionalBindings=[];for(var j=0;j<message.additionalBindings.length;++j)object.additionalBindings[j]=$root.google.api.HttpRule.toObject(message.additionalBindings[j],options)}if(message.responseBody!=null&&message.hasOwnProperty("responseBody"))object.responseBody=message.responseBody;return object};HttpRule.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};HttpRule.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.HttpRule"};return HttpRule}();api.CustomHttpPattern=function(){function CustomHttpPattern(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CustomHttpPattern.prototype.kind="";CustomHttpPattern.prototype.path="";CustomHttpPattern.create=function create(properties){return new CustomHttpPattern(properties)};CustomHttpPattern.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.kind!=null&&Object.hasOwnProperty.call(message,"kind"))writer.uint32(10).string(message.kind);if(message.path!=null&&Object.hasOwnProperty.call(message,"path"))writer.uint32(18).string(message.path);return writer};CustomHttpPattern.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CustomHttpPattern.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.CustomHttpPattern;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.kind=reader.string();break}case 2:{message.path=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};CustomHttpPattern.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CustomHttpPattern.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.kind!=null&&message.hasOwnProperty("kind"))if(!$util.isString(message.kind))return"kind: string expected";if(message.path!=null&&message.hasOwnProperty("path"))if(!$util.isString(message.path))return"path: string expected";return null};CustomHttpPattern.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.CustomHttpPattern)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.CustomHttpPattern;if(object.kind!=null)message.kind=String(object.kind);if(object.path!=null)message.path=String(object.path);return message};CustomHttpPattern.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.kind="";object.path=""}if(message.kind!=null&&message.hasOwnProperty("kind"))object.kind=message.kind;if(message.path!=null&&message.hasOwnProperty("path"))object.path=message.path;return object};CustomHttpPattern.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CustomHttpPattern.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.CustomHttpPattern"};return CustomHttpPattern}();api.FieldBehavior=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="FIELD_BEHAVIOR_UNSPECIFIED"]=0;values[valuesById[1]="OPTIONAL"]=1;values[valuesById[2]="REQUIRED"]=2;values[valuesById[3]="OUTPUT_ONLY"]=3;values[valuesById[4]="INPUT_ONLY"]=4;values[valuesById[5]="IMMUTABLE"]=5;values[valuesById[6]="UNORDERED_LIST"]=6;values[valuesById[7]="NON_EMPTY_DEFAULT"]=7;values[valuesById[8]="IDENTIFIER"]=8;return values}();api.ResourceDescriptor=function(){function ResourceDescriptor(properties){this.pattern=[];this.style=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ResourceDescriptor.prototype.type="";ResourceDescriptor.prototype.pattern=$util.emptyArray;ResourceDescriptor.prototype.nameField="";ResourceDescriptor.prototype.history=0;ResourceDescriptor.prototype.plural="";ResourceDescriptor.prototype.singular="";ResourceDescriptor.prototype.style=$util.emptyArray;ResourceDescriptor.create=function create(properties){return new ResourceDescriptor(properties)};ResourceDescriptor.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.type!=null&&Object.hasOwnProperty.call(message,"type"))writer.uint32(10).string(message.type);if(message.pattern!=null&&message.pattern.length)for(var i=0;i<message.pattern.length;++i)writer.uint32(18).string(message.pattern[i]);if(message.nameField!=null&&Object.hasOwnProperty.call(message,"nameField"))writer.uint32(26).string(message.nameField);if(message.history!=null&&Object.hasOwnProperty.call(message,"history"))writer.uint32(32).int32(message.history);if(message.plural!=null&&Object.hasOwnProperty.call(message,"plural"))writer.uint32(42).string(message.plural);if(message.singular!=null&&Object.hasOwnProperty.call(message,"singular"))writer.uint32(50).string(message.singular);if(message.style!=null&&message.style.length){writer.uint32(82).fork();for(var i=0;i<message.style.length;++i)writer.int32(message.style[i]);writer.ldelim()}return writer};ResourceDescriptor.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ResourceDescriptor.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.ResourceDescriptor;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.type=reader.string();break}case 2:{if(!(message.pattern&&message.pattern.length))message.pattern=[];message.pattern.push(reader.string());break}case 3:{message.nameField=reader.string();break}case 4:{message.history=reader.int32();break}case 5:{message.plural=reader.string();break}case 6:{message.singular=reader.string();break}case 10:{if(!(message.style&&message.style.length))message.style=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.style.push(reader.int32())}else message.style.push(reader.int32());break}default:reader.skipType(tag&7,long);break}}return message};ResourceDescriptor.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ResourceDescriptor.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.type!=null&&message.hasOwnProperty("type"))if(!$util.isString(message.type))return"type: string expected";if(message.pattern!=null&&message.hasOwnProperty("pattern")){if(!Array.isArray(message.pattern))return"pattern: array expected";for(var i=0;i<message.pattern.length;++i)if(!$util.isString(message.pattern[i]))return"pattern: string[] expected"}if(message.nameField!=null&&message.hasOwnProperty("nameField"))if(!$util.isString(message.nameField))return"nameField: string expected";if(message.history!=null&&message.hasOwnProperty("history"))switch(message.history){default:return"history: enum value expected";case 0:case 1:case 2:break}if(message.plural!=null&&message.hasOwnProperty("plural"))if(!$util.isString(message.plural))return"plural: string expected";if(message.singular!=null&&message.hasOwnProperty("singular"))if(!$util.isString(message.singular))return"singular: string expected";if(message.style!=null&&message.hasOwnProperty("style")){if(!Array.isArray(message.style))return"style: array expected";for(var i=0;i<message.style.length;++i)switch(message.style[i]){default:return"style: enum value[] expected";case 0:case 1:break}}return null};ResourceDescriptor.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.ResourceDescriptor)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.ResourceDescriptor;if(object.type!=null)message.type=String(object.type);if(object.pattern){if(!Array.isArray(object.pattern))throw TypeError(".google.api.ResourceDescriptor.pattern: array expected");message.pattern=[];for(var i=0;i<object.pattern.length;++i)message.pattern[i]=String(object.pattern[i])}if(object.nameField!=null)message.nameField=String(object.nameField);switch(object.history){default:if(typeof object.history==="number"){message.history=object.history;break}break;case"HISTORY_UNSPECIFIED":case 0:message.history=0;break;case"ORIGINALLY_SINGLE_PATTERN":case 1:message.history=1;break;case"FUTURE_MULTI_PATTERN":case 2:message.history=2;break}if(object.plural!=null)message.plural=String(object.plural);if(object.singular!=null)message.singular=String(object.singular);if(object.style){if(!Array.isArray(object.style))throw TypeError(".google.api.ResourceDescriptor.style: array expected");message.style=[];for(var i=0;i<object.style.length;++i)switch(object.style[i]){default:if(typeof object.style[i]==="number"){message.style[i]=object.style[i];break}case"STYLE_UNSPECIFIED":case 0:message.style[i]=0;break;case"DECLARATIVE_FRIENDLY":case 1:message.style[i]=1;break}}return message};ResourceDescriptor.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.pattern=[];object.style=[]}if(options.defaults){object.type="";object.nameField="";object.history=options.enums===String?"HISTORY_UNSPECIFIED":0;object.plural="";object.singular=""}if(message.type!=null&&message.hasOwnProperty("type"))object.type=message.type;if(message.pattern&&message.pattern.length){object.pattern=[];for(var j=0;j<message.pattern.length;++j)object.pattern[j]=message.pattern[j]}if(message.nameField!=null&&message.hasOwnProperty("nameField"))object.nameField=message.nameField;if(message.history!=null&&message.hasOwnProperty("history"))object.history=options.enums===String?$root.google.api.ResourceDescriptor.History[message.history]===undefined?message.history:$root.google.api.ResourceDescriptor.History[message.history]:message.history;if(message.plural!=null&&message.hasOwnProperty("plural"))object.plural=message.plural;if(message.singular!=null&&message.hasOwnProperty("singular"))object.singular=message.singular;if(message.style&&message.style.length){object.style=[];for(var j=0;j<message.style.length;++j)object.style[j]=options.enums===String?$root.google.api.ResourceDescriptor.Style[message.style[j]]===undefined?message.style[j]:$root.google.api.ResourceDescriptor.Style[message.style[j]]:message.style[j]}return object};ResourceDescriptor.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ResourceDescriptor.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.ResourceDescriptor"};ResourceDescriptor.History=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="HISTORY_UNSPECIFIED"]=0;values[valuesById[1]="ORIGINALLY_SINGLE_PATTERN"]=1;values[valuesById[2]="FUTURE_MULTI_PATTERN"]=2;return values}();ResourceDescriptor.Style=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="STYLE_UNSPECIFIED"]=0;values[valuesById[1]="DECLARATIVE_FRIENDLY"]=1;return values}();return ResourceDescriptor}();api.ResourceReference=function(){function ResourceReference(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ResourceReference.prototype.type="";ResourceReference.prototype.childType="";ResourceReference.create=function create(properties){return new ResourceReference(properties)};ResourceReference.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.type!=null&&Object.hasOwnProperty.call(message,"type"))writer.uint32(10).string(message.type);if(message.childType!=null&&Object.hasOwnProperty.call(message,"childType"))writer.uint32(18).string(message.childType);return writer};ResourceReference.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ResourceReference.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.ResourceReference;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.type=reader.string();break}case 2:{message.childType=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};ResourceReference.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ResourceReference.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.type!=null&&message.hasOwnProperty("type"))if(!$util.isString(message.type))return"type: string expected";if(message.childType!=null&&message.hasOwnProperty("childType"))if(!$util.isString(message.childType))return"childType: string expected";return null};ResourceReference.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.ResourceReference)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.ResourceReference;if(object.type!=null)message.type=String(object.type);if(object.childType!=null)message.childType=String(object.childType);return message};ResourceReference.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.type="";object.childType=""}if(message.type!=null&&message.hasOwnProperty("type"))object.type=message.type;if(message.childType!=null&&message.hasOwnProperty("childType"))object.childType=message.childType;return object};ResourceReference.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ResourceReference.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.ResourceReference"};return ResourceReference}();api.CommonLanguageSettings=function(){function CommonLanguageSettings(properties){this.destinations=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CommonLanguageSettings.prototype.referenceDocsUri="";CommonLanguageSettings.prototype.destinations=$util.emptyArray;CommonLanguageSettings.prototype.selectiveGapicGeneration=null;CommonLanguageSettings.create=function create(properties){return new CommonLanguageSettings(properties)};CommonLanguageSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.referenceDocsUri!=null&&Object.hasOwnProperty.call(message,"referenceDocsUri"))writer.uint32(10).string(message.referenceDocsUri);if(message.destinations!=null&&message.destinations.length){writer.uint32(18).fork();for(var i=0;i<message.destinations.length;++i)writer.int32(message.destinations[i]);writer.ldelim()}if(message.selectiveGapicGeneration!=null&&Object.hasOwnProperty.call(message,"selectiveGapicGeneration"))$root.google.api.SelectiveGapicGeneration.encode(message.selectiveGapicGeneration,writer.uint32(26).fork()).ldelim();return writer};CommonLanguageSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CommonLanguageSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.CommonLanguageSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.referenceDocsUri=reader.string();break}case 2:{if(!(message.destinations&&message.destinations.length))message.destinations=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.destinations.push(reader.int32())}else message.destinations.push(reader.int32());break}case 3:{message.selectiveGapicGeneration=$root.google.api.SelectiveGapicGeneration.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};CommonLanguageSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CommonLanguageSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.referenceDocsUri!=null&&message.hasOwnProperty("referenceDocsUri"))if(!$util.isString(message.referenceDocsUri))return"referenceDocsUri: string expected";if(message.destinations!=null&&message.hasOwnProperty("destinations")){if(!Array.isArray(message.destinations))return"destinations: array expected";for(var i=0;i<message.destinations.length;++i)switch(message.destinations[i]){default:return"destinations: enum value[] expected";case 0:case 10:case 20:break}}if(message.selectiveGapicGeneration!=null&&message.hasOwnProperty("selectiveGapicGeneration")){var error=$root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration,long+1);if(error)return"selectiveGapicGeneration."+error}return null};CommonLanguageSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.CommonLanguageSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.CommonLanguageSettings;if(object.referenceDocsUri!=null)message.referenceDocsUri=String(object.referenceDocsUri);if(object.destinations){if(!Array.isArray(object.destinations))throw TypeError(".google.api.CommonLanguageSettings.destinations: array expected");message.destinations=[];for(var i=0;i<object.destinations.length;++i)switch(object.destinations[i]){default:if(typeof object.destinations[i]==="number"){message.destinations[i]=object.destinations[i];break}case"CLIENT_LIBRARY_DESTINATION_UNSPECIFIED":case 0:message.destinations[i]=0;break;case"GITHUB":case 10:message.destinations[i]=10;break;case"PACKAGE_MANAGER":case 20:message.destinations[i]=20;break}}if(object.selectiveGapicGeneration!=null){if(typeof object.selectiveGapicGeneration!=="object")throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected");message.selectiveGapicGeneration=$root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration,long+1)}return message};CommonLanguageSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.destinations=[];if(options.defaults){object.referenceDocsUri="";object.selectiveGapicGeneration=null}if(message.referenceDocsUri!=null&&message.hasOwnProperty("referenceDocsUri"))object.referenceDocsUri=message.referenceDocsUri;if(message.destinations&&message.destinations.length){object.destinations=[];for(var j=0;j<message.destinations.length;++j)object.destinations[j]=options.enums===String?$root.google.api.ClientLibraryDestination[message.destinations[j]]===undefined?message.destinations[j]:$root.google.api.ClientLibraryDestination[message.destinations[j]]:message.destinations[j]}if(message.selectiveGapicGeneration!=null&&message.hasOwnProperty("selectiveGapicGeneration"))object.selectiveGapicGeneration=$root.google.api.SelectiveGapicGeneration.toObject(message.selectiveGapicGeneration,options);return object};CommonLanguageSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CommonLanguageSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.CommonLanguageSettings"};return CommonLanguageSettings}();api.ClientLibrarySettings=function(){function ClientLibrarySettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ClientLibrarySettings.prototype.version="";ClientLibrarySettings.prototype.launchStage=0;ClientLibrarySettings.prototype.restNumericEnums=false;ClientLibrarySettings.prototype.javaSettings=null;ClientLibrarySettings.prototype.cppSettings=null;ClientLibrarySettings.prototype.phpSettings=null;ClientLibrarySettings.prototype.pythonSettings=null;ClientLibrarySettings.prototype.nodeSettings=null;ClientLibrarySettings.prototype.dotnetSettings=null;ClientLibrarySettings.prototype.rubySettings=null;ClientLibrarySettings.prototype.goSettings=null;ClientLibrarySettings.create=function create(properties){return new ClientLibrarySettings(properties)};ClientLibrarySettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.version!=null&&Object.hasOwnProperty.call(message,"version"))writer.uint32(10).string(message.version);if(message.launchStage!=null&&Object.hasOwnProperty.call(message,"launchStage"))writer.uint32(16).int32(message.launchStage);if(message.restNumericEnums!=null&&Object.hasOwnProperty.call(message,"restNumericEnums"))writer.uint32(24).bool(message.restNumericEnums);if(message.javaSettings!=null&&Object.hasOwnProperty.call(message,"javaSettings"))$root.google.api.JavaSettings.encode(message.javaSettings,writer.uint32(170).fork()).ldelim();if(message.cppSettings!=null&&Object.hasOwnProperty.call(message,"cppSettings"))$root.google.api.CppSettings.encode(message.cppSettings,writer.uint32(178).fork()).ldelim();if(message.phpSettings!=null&&Object.hasOwnProperty.call(message,"phpSettings"))$root.google.api.PhpSettings.encode(message.phpSettings,writer.uint32(186).fork()).ldelim();if(message.pythonSettings!=null&&Object.hasOwnProperty.call(message,"pythonSettings"))$root.google.api.PythonSettings.encode(message.pythonSettings,writer.uint32(194).fork()).ldelim();if(message.nodeSettings!=null&&Object.hasOwnProperty.call(message,"nodeSettings"))$root.google.api.NodeSettings.encode(message.nodeSettings,writer.uint32(202).fork()).ldelim();if(message.dotnetSettings!=null&&Object.hasOwnProperty.call(message,"dotnetSettings"))$root.google.api.DotnetSettings.encode(message.dotnetSettings,writer.uint32(210).fork()).ldelim();if(message.rubySettings!=null&&Object.hasOwnProperty.call(message,"rubySettings"))$root.google.api.RubySettings.encode(message.rubySettings,writer.uint32(218).fork()).ldelim();if(message.goSettings!=null&&Object.hasOwnProperty.call(message,"goSettings"))$root.google.api.GoSettings.encode(message.goSettings,writer.uint32(226).fork()).ldelim();return writer};ClientLibrarySettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ClientLibrarySettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.ClientLibrarySettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.version=reader.string();break}case 2:{message.launchStage=reader.int32();break}case 3:{message.restNumericEnums=reader.bool();break}case 21:{message.javaSettings=$root.google.api.JavaSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 22:{message.cppSettings=$root.google.api.CppSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 23:{message.phpSettings=$root.google.api.PhpSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 24:{message.pythonSettings=$root.google.api.PythonSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 25:{message.nodeSettings=$root.google.api.NodeSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 26:{message.dotnetSettings=$root.google.api.DotnetSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 27:{message.rubySettings=$root.google.api.RubySettings.decode(reader,reader.uint32(),undefined,long+1);break}case 28:{message.goSettings=$root.google.api.GoSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};ClientLibrarySettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ClientLibrarySettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.version!=null&&message.hasOwnProperty("version"))if(!$util.isString(message.version))return"version: string expected";if(message.launchStage!=null&&message.hasOwnProperty("launchStage"))switch(message.launchStage){default:return"launchStage: enum value expected";case 0:case 6:case 7:case 1:case 2:case 3:case 4:case 5:break}if(message.restNumericEnums!=null&&message.hasOwnProperty("restNumericEnums"))if(typeof message.restNumericEnums!=="boolean")return"restNumericEnums: boolean expected";if(message.javaSettings!=null&&message.hasOwnProperty("javaSettings")){var error=$root.google.api.JavaSettings.verify(message.javaSettings,long+1);if(error)return"javaSettings."+error}if(message.cppSettings!=null&&message.hasOwnProperty("cppSettings")){var error=$root.google.api.CppSettings.verify(message.cppSettings,long+1);if(error)return"cppSettings."+error}if(message.phpSettings!=null&&message.hasOwnProperty("phpSettings")){var error=$root.google.api.PhpSettings.verify(message.phpSettings,long+1);if(error)return"phpSettings."+error}if(message.pythonSettings!=null&&message.hasOwnProperty("pythonSettings")){var error=$root.google.api.PythonSettings.verify(message.pythonSettings,long+1);if(error)return"pythonSettings."+error}if(message.nodeSettings!=null&&message.hasOwnProperty("nodeSettings")){var error=$root.google.api.NodeSettings.verify(message.nodeSettings,long+1);if(error)return"nodeSettings."+error}if(message.dotnetSettings!=null&&message.hasOwnProperty("dotnetSettings")){var error=$root.google.api.DotnetSettings.verify(message.dotnetSettings,long+1);if(error)return"dotnetSettings."+error}if(message.rubySettings!=null&&message.hasOwnProperty("rubySettings")){var error=$root.google.api.RubySettings.verify(message.rubySettings,long+1);if(error)return"rubySettings."+error}if(message.goSettings!=null&&message.hasOwnProperty("goSettings")){var error=$root.google.api.GoSettings.verify(message.goSettings,long+1);if(error)return"goSettings."+error}return null};ClientLibrarySettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.ClientLibrarySettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.ClientLibrarySettings;if(object.version!=null)message.version=String(object.version);switch(object.launchStage){default:if(typeof object.launchStage==="number"){message.launchStage=object.launchStage;break}break;case"LAUNCH_STAGE_UNSPECIFIED":case 0:message.launchStage=0;break;case"UNIMPLEMENTED":case 6:message.launchStage=6;break;case"PRELAUNCH":case 7:message.launchStage=7;break;case"EARLY_ACCESS":case 1:message.launchStage=1;break;case"ALPHA":case 2:message.launchStage=2;break;case"BETA":case 3:message.launchStage=3;break;case"GA":case 4:message.launchStage=4;break;case"DEPRECATED":case 5:message.launchStage=5;break}if(object.restNumericEnums!=null)message.restNumericEnums=Boolean(object.restNumericEnums);if(object.javaSettings!=null){if(typeof object.javaSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected");message.javaSettings=$root.google.api.JavaSettings.fromObject(object.javaSettings,long+1)}if(object.cppSettings!=null){if(typeof object.cppSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected");message.cppSettings=$root.google.api.CppSettings.fromObject(object.cppSettings,long+1)}if(object.phpSettings!=null){if(typeof object.phpSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected");message.phpSettings=$root.google.api.PhpSettings.fromObject(object.phpSettings,long+1)}if(object.pythonSettings!=null){if(typeof object.pythonSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected");message.pythonSettings=$root.google.api.PythonSettings.fromObject(object.pythonSettings,long+1)}if(object.nodeSettings!=null){if(typeof object.nodeSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected");message.nodeSettings=$root.google.api.NodeSettings.fromObject(object.nodeSettings,long+1)}if(object.dotnetSettings!=null){if(typeof object.dotnetSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected");message.dotnetSettings=$root.google.api.DotnetSettings.fromObject(object.dotnetSettings,long+1)}if(object.rubySettings!=null){if(typeof object.rubySettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected");message.rubySettings=$root.google.api.RubySettings.fromObject(object.rubySettings,long+1)}if(object.goSettings!=null){if(typeof object.goSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected");message.goSettings=$root.google.api.GoSettings.fromObject(object.goSettings,long+1)}return message};ClientLibrarySettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.version="";object.launchStage=options.enums===String?"LAUNCH_STAGE_UNSPECIFIED":0;object.restNumericEnums=false;object.javaSettings=null;object.cppSettings=null;object.phpSettings=null;object.pythonSettings=null;object.nodeSettings=null;object.dotnetSettings=null;object.rubySettings=null;object.goSettings=null}if(message.version!=null&&message.hasOwnProperty("version"))object.version=message.version;if(message.launchStage!=null&&message.hasOwnProperty("launchStage"))object.launchStage=options.enums===String?$root.google.api.LaunchStage[message.launchStage]===undefined?message.launchStage:$root.google.api.LaunchStage[message.launchStage]:message.launchStage;if(message.restNumericEnums!=null&&message.hasOwnProperty("restNumericEnums"))object.restNumericEnums=message.restNumericEnums;if(message.javaSettings!=null&&message.hasOwnProperty("javaSettings"))object.javaSettings=$root.google.api.JavaSettings.toObject(message.javaSettings,options);if(message.cppSettings!=null&&message.hasOwnProperty("cppSettings"))object.cppSettings=$root.google.api.CppSettings.toObject(message.cppSettings,options);if(message.phpSettings!=null&&message.hasOwnProperty("phpSettings"))object.phpSettings=$root.google.api.PhpSettings.toObject(message.phpSettings,options);if(message.pythonSettings!=null&&message.hasOwnProperty("pythonSettings"))object.pythonSettings=$root.google.api.PythonSettings.toObject(message.pythonSettings,options);if(message.nodeSettings!=null&&message.hasOwnProperty("nodeSettings"))object.nodeSettings=$root.google.api.NodeSettings.toObject(message.nodeSettings,options);if(message.dotnetSettings!=null&&message.hasOwnProperty("dotnetSettings"))object.dotnetSettings=$root.google.api.DotnetSettings.toObject(message.dotnetSettings,options);if(message.rubySettings!=null&&message.hasOwnProperty("rubySettings"))object.rubySettings=$root.google.api.RubySettings.toObject(message.rubySettings,options);if(message.goSettings!=null&&message.hasOwnProperty("goSettings"))object.goSettings=$root.google.api.GoSettings.toObject(message.goSettings,options);return object};ClientLibrarySettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ClientLibrarySettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.ClientLibrarySettings"};return ClientLibrarySettings}();api.Publishing=function(){function Publishing(properties){this.methodSettings=[];this.codeownerGithubTeams=[];this.librarySettings=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Publishing.prototype.methodSettings=$util.emptyArray;Publishing.prototype.newIssueUri="";Publishing.prototype.documentationUri="";Publishing.prototype.apiShortName="";Publishing.prototype.githubLabel="";Publishing.prototype.codeownerGithubTeams=$util.emptyArray;Publishing.prototype.docTagPrefix="";Publishing.prototype.organization=0;Publishing.prototype.librarySettings=$util.emptyArray;Publishing.prototype.protoReferenceDocumentationUri="";Publishing.prototype.restReferenceDocumentationUri="";Publishing.create=function create(properties){return new Publishing(properties)};Publishing.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.methodSettings!=null&&message.methodSettings.length)for(var i=0;i<message.methodSettings.length;++i)$root.google.api.MethodSettings.encode(message.methodSettings[i],writer.uint32(18).fork()).ldelim();if(message.newIssueUri!=null&&Object.hasOwnProperty.call(message,"newIssueUri"))writer.uint32(810).string(message.newIssueUri);if(message.documentationUri!=null&&Object.hasOwnProperty.call(message,"documentationUri"))writer.uint32(818).string(message.documentationUri);if(message.apiShortName!=null&&Object.hasOwnProperty.call(message,"apiShortName"))writer.uint32(826).string(message.apiShortName);if(message.githubLabel!=null&&Object.hasOwnProperty.call(message,"githubLabel"))writer.uint32(834).string(message.githubLabel);if(message.codeownerGithubTeams!=null&&message.codeownerGithubTeams.length)for(var i=0;i<message.codeownerGithubTeams.length;++i)writer.uint32(842).string(message.codeownerGithubTeams[i]);if(message.docTagPrefix!=null&&Object.hasOwnProperty.call(message,"docTagPrefix"))writer.uint32(850).string(message.docTagPrefix);if(message.organization!=null&&Object.hasOwnProperty.call(message,"organization"))writer.uint32(856).int32(message.organization);if(message.librarySettings!=null&&message.librarySettings.length)for(var i=0;i<message.librarySettings.length;++i)$root.google.api.ClientLibrarySettings.encode(message.librarySettings[i],writer.uint32(874).fork()).ldelim();if(message.protoReferenceDocumentationUri!=null&&Object.hasOwnProperty.call(message,"protoReferenceDocumentationUri"))writer.uint32(882).string(message.protoReferenceDocumentationUri);if(message.restReferenceDocumentationUri!=null&&Object.hasOwnProperty.call(message,"restReferenceDocumentationUri"))writer.uint32(890).string(message.restReferenceDocumentationUri);return writer};Publishing.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Publishing.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.Publishing;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 2:{if(!(message.methodSettings&&message.methodSettings.length))message.methodSettings=[];message.methodSettings.push($root.google.api.MethodSettings.decode(reader,reader.uint32(),undefined,long+1));break}case 101:{message.newIssueUri=reader.string();break}case 102:{message.documentationUri=reader.string();break}case 103:{message.apiShortName=reader.string();break}case 104:{message.githubLabel=reader.string();break}case 105:{if(!(message.codeownerGithubTeams&&message.codeownerGithubTeams.length))message.codeownerGithubTeams=[];message.codeownerGithubTeams.push(reader.string());break}case 106:{message.docTagPrefix=reader.string();break}case 107:{message.organization=reader.int32();break}case 109:{if(!(message.librarySettings&&message.librarySettings.length))message.librarySettings=[];message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader,reader.uint32(),undefined,long+1));break}case 110:{message.protoReferenceDocumentationUri=reader.string();break}case 111:{message.restReferenceDocumentationUri=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};Publishing.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Publishing.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.methodSettings!=null&&message.hasOwnProperty("methodSettings")){if(!Array.isArray(message.methodSettings))return"methodSettings: array expected";for(var i=0;i<message.methodSettings.length;++i){var error=$root.google.api.MethodSettings.verify(message.methodSettings[i],long+1);if(error)return"methodSettings."+error}}if(message.newIssueUri!=null&&message.hasOwnProperty("newIssueUri"))if(!$util.isString(message.newIssueUri))return"newIssueUri: string expected";if(message.documentationUri!=null&&message.hasOwnProperty("documentationUri"))if(!$util.isString(message.documentationUri))return"documentationUri: string expected";if(message.apiShortName!=null&&message.hasOwnProperty("apiShortName"))if(!$util.isString(message.apiShortName))return"apiShortName: string expected";if(message.githubLabel!=null&&message.hasOwnProperty("githubLabel"))if(!$util.isString(message.githubLabel))return"githubLabel: string expected";if(message.codeownerGithubTeams!=null&&message.hasOwnProperty("codeownerGithubTeams")){if(!Array.isArray(message.codeownerGithubTeams))return"codeownerGithubTeams: array expected";for(var i=0;i<message.codeownerGithubTeams.length;++i)if(!$util.isString(message.codeownerGithubTeams[i]))return"codeownerGithubTeams: string[] expected"}if(message.docTagPrefix!=null&&message.hasOwnProperty("docTagPrefix"))if(!$util.isString(message.docTagPrefix))return"docTagPrefix: string expected";if(message.organization!=null&&message.hasOwnProperty("organization"))switch(message.organization){default:return"organization: enum value expected";case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:break}if(message.librarySettings!=null&&message.hasOwnProperty("librarySettings")){if(!Array.isArray(message.librarySettings))return"librarySettings: array expected";for(var i=0;i<message.librarySettings.length;++i){var error=$root.google.api.ClientLibrarySettings.verify(message.librarySettings[i],long+1);if(error)return"librarySettings."+error}}if(message.protoReferenceDocumentationUri!=null&&message.hasOwnProperty("protoReferenceDocumentationUri"))if(!$util.isString(message.protoReferenceDocumentationUri))return"protoReferenceDocumentationUri: string expected";if(message.restReferenceDocumentationUri!=null&&message.hasOwnProperty("restReferenceDocumentationUri"))if(!$util.isString(message.restReferenceDocumentationUri))return"restReferenceDocumentationUri: string expected";return null};Publishing.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.Publishing)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.Publishing;if(object.methodSettings){if(!Array.isArray(object.methodSettings))throw TypeError(".google.api.Publishing.methodSettings: array expected");message.methodSettings=[];for(var i=0;i<object.methodSettings.length;++i){if(typeof object.methodSettings[i]!=="object")throw TypeError(".google.api.Publishing.methodSettings: object expected");message.methodSettings[i]=$root.google.api.MethodSettings.fromObject(object.methodSettings[i],long+1)}}if(object.newIssueUri!=null)message.newIssueUri=String(object.newIssueUri);if(object.documentationUri!=null)message.documentationUri=String(object.documentationUri);if(object.apiShortName!=null)message.apiShortName=String(object.apiShortName);if(object.githubLabel!=null)message.githubLabel=String(object.githubLabel);if(object.codeownerGithubTeams){if(!Array.isArray(object.codeownerGithubTeams))throw TypeError(".google.api.Publishing.codeownerGithubTeams: array expected");message.codeownerGithubTeams=[];for(var i=0;i<object.codeownerGithubTeams.length;++i)message.codeownerGithubTeams[i]=String(object.codeownerGithubTeams[i])}if(object.docTagPrefix!=null)message.docTagPrefix=String(object.docTagPrefix);switch(object.organization){default:if(typeof object.organization==="number"){message.organization=object.organization;break}break;case"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":case 0:message.organization=0;break;case"CLOUD":case 1:message.organization=1;break;case"ADS":case 2:message.organization=2;break;case"PHOTOS":case 3:message.organization=3;break;case"STREET_VIEW":case 4:message.organization=4;break;case"SHOPPING":case 5:message.organization=5;break;case"GEO":case 6:message.organization=6;break;case"GENERATIVE_AI":case 7:message.organization=7;break}if(object.librarySettings){if(!Array.isArray(object.librarySettings))throw TypeError(".google.api.Publishing.librarySettings: array expected");message.librarySettings=[];for(var i=0;i<object.librarySettings.length;++i){if(typeof object.librarySettings[i]!=="object")throw TypeError(".google.api.Publishing.librarySettings: object expected");message.librarySettings[i]=$root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i],long+1)}}if(object.protoReferenceDocumentationUri!=null)message.protoReferenceDocumentationUri=String(object.protoReferenceDocumentationUri);if(object.restReferenceDocumentationUri!=null)message.restReferenceDocumentationUri=String(object.restReferenceDocumentationUri);return message};Publishing.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.methodSettings=[];object.codeownerGithubTeams=[];object.librarySettings=[]}if(options.defaults){object.newIssueUri="";object.documentationUri="";object.apiShortName="";object.githubLabel="";object.docTagPrefix="";object.organization=options.enums===String?"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":0;object.protoReferenceDocumentationUri="";object.restReferenceDocumentationUri=""}if(message.methodSettings&&message.methodSettings.length){object.methodSettings=[];for(var j=0;j<message.methodSettings.length;++j)object.methodSettings[j]=$root.google.api.MethodSettings.toObject(message.methodSettings[j],options)}if(message.newIssueUri!=null&&message.hasOwnProperty("newIssueUri"))object.newIssueUri=message.newIssueUri;if(message.documentationUri!=null&&message.hasOwnProperty("documentationUri"))object.documentationUri=message.documentationUri;if(message.apiShortName!=null&&message.hasOwnProperty("apiShortName"))object.apiShortName=message.apiShortName;if(message.githubLabel!=null&&message.hasOwnProperty("githubLabel"))object.githubLabel=message.githubLabel;if(message.codeownerGithubTeams&&message.codeownerGithubTeams.length){object.codeownerGithubTeams=[];for(var j=0;j<message.codeownerGithubTeams.length;++j)object.codeownerGithubTeams[j]=message.codeownerGithubTeams[j]}if(message.docTagPrefix!=null&&message.hasOwnProperty("docTagPrefix"))object.docTagPrefix=message.docTagPrefix;if(message.organization!=null&&message.hasOwnProperty("organization"))object.organization=options.enums===String?$root.google.api.ClientLibraryOrganization[message.organization]===undefined?message.organization:$root.google.api.ClientLibraryOrganization[message.organization]:message.organization;if(message.librarySettings&&message.librarySettings.length){object.librarySettings=[];for(var j=0;j<message.librarySettings.length;++j)object.librarySettings[j]=$root.google.api.ClientLibrarySettings.toObject(message.librarySettings[j],options)}if(message.protoReferenceDocumentationUri!=null&&message.hasOwnProperty("protoReferenceDocumentationUri"))object.protoReferenceDocumentationUri=message.protoReferenceDocumentationUri;if(message.restReferenceDocumentationUri!=null&&message.hasOwnProperty("restReferenceDocumentationUri"))object.restReferenceDocumentationUri=message.restReferenceDocumentationUri;return object};Publishing.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Publishing.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.Publishing"};return Publishing}();api.JavaSettings=function(){function JavaSettings(properties){this.serviceClassNames={};if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}JavaSettings.prototype.libraryPackage="";JavaSettings.prototype.serviceClassNames=$util.emptyObject;JavaSettings.prototype.common=null;JavaSettings.create=function create(properties){return new JavaSettings(properties)};JavaSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.libraryPackage!=null&&Object.hasOwnProperty.call(message,"libraryPackage"))writer.uint32(10).string(message.libraryPackage);if(message.serviceClassNames!=null&&Object.hasOwnProperty.call(message,"serviceClassNames"))for(var keys=Object.keys(message.serviceClassNames),i=0;i<keys.length;++i)writer.uint32(18).fork().uint32(10).string(keys[i]).uint32(18).string(message.serviceClassNames[keys[i]]).ldelim();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(26).fork()).ldelim();return writer};JavaSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};JavaSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.JavaSettings,key,value;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.libraryPackage=reader.string();break}case 2:{if(message.serviceClassNames===$util.emptyObject)message.serviceClassNames={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.serviceClassNames,key);message.serviceClassNames[key]=value;break}case 3:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};JavaSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};JavaSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.libraryPackage!=null&&message.hasOwnProperty("libraryPackage"))if(!$util.isString(message.libraryPackage))return"libraryPackage: string expected";if(message.serviceClassNames!=null&&message.hasOwnProperty("serviceClassNames")){if(!$util.isObject(message.serviceClassNames))return"serviceClassNames: object expected";var key=Object.keys(message.serviceClassNames);for(var i=0;i<key.length;++i)if(!$util.isString(message.serviceClassNames[key[i]]))return"serviceClassNames: string{k:string} expected"}if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}return null};JavaSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.JavaSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.JavaSettings;if(object.libraryPackage!=null)message.libraryPackage=String(object.libraryPackage);if(object.serviceClassNames){if(typeof object.serviceClassNames!=="object")throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected");message.serviceClassNames={};for(var keys=Object.keys(object.serviceClassNames),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.serviceClassNames,keys[i]);message.serviceClassNames[keys[i]]=String(object.serviceClassNames[keys[i]])}}if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.JavaSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}return message};JavaSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.objects||options.defaults)object.serviceClassNames={};if(options.defaults){object.libraryPackage="";object.common=null}if(message.libraryPackage!=null&&message.hasOwnProperty("libraryPackage"))object.libraryPackage=message.libraryPackage;var keys2;if(message.serviceClassNames&&(keys2=Object.keys(message.serviceClassNames)).length){object.serviceClassNames={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.serviceClassNames,keys2[j]);object.serviceClassNames[keys2[j]]=message.serviceClassNames[keys2[j]]}}if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);return object};JavaSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};JavaSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.JavaSettings"};return JavaSettings}();api.CppSettings=function(){function CppSettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CppSettings.prototype.common=null;CppSettings.create=function create(properties){return new CppSettings(properties)};CppSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();return writer};CppSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CppSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.CppSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};CppSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CppSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}return null};CppSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.CppSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.CppSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.CppSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}return message};CppSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);return object};CppSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CppSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.CppSettings"};return CppSettings}();api.PhpSettings=function(){function PhpSettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}PhpSettings.prototype.common=null;PhpSettings.create=function create(properties){return new PhpSettings(properties)};PhpSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();return writer};PhpSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};PhpSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.PhpSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};PhpSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};PhpSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}return null};PhpSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.PhpSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.PhpSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.PhpSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}return message};PhpSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);return object};PhpSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};PhpSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.PhpSettings"};return PhpSettings}();api.PythonSettings=function(){function PythonSettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}PythonSettings.prototype.common=null;PythonSettings.prototype.experimentalFeatures=null;PythonSettings.create=function create(properties){return new PythonSettings(properties)};PythonSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();if(message.experimentalFeatures!=null&&Object.hasOwnProperty.call(message,"experimentalFeatures"))$root.google.api.PythonSettings.ExperimentalFeatures.encode(message.experimentalFeatures,writer.uint32(18).fork()).ldelim();return writer};PythonSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};PythonSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.PythonSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.experimentalFeatures=$root.google.api.PythonSettings.ExperimentalFeatures.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};PythonSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};PythonSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}if(message.experimentalFeatures!=null&&message.hasOwnProperty("experimentalFeatures")){var error=$root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures,long+1);if(error)return"experimentalFeatures."+error}return null};PythonSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.PythonSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.PythonSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.PythonSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}if(object.experimentalFeatures!=null){if(typeof object.experimentalFeatures!=="object")throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected");message.experimentalFeatures=$root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures,long+1)}return message};PythonSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.common=null;object.experimentalFeatures=null}if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);if(message.experimentalFeatures!=null&&message.hasOwnProperty("experimentalFeatures"))object.experimentalFeatures=$root.google.api.PythonSettings.ExperimentalFeatures.toObject(message.experimentalFeatures,options);return object};PythonSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};PythonSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.PythonSettings"};PythonSettings.ExperimentalFeatures=function(){function ExperimentalFeatures(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ExperimentalFeatures.prototype.restAsyncIoEnabled=false;ExperimentalFeatures.prototype.protobufPythonicTypesEnabled=false;ExperimentalFeatures.prototype.unversionedPackageDisabled=false;ExperimentalFeatures.create=function create(properties){return new ExperimentalFeatures(properties)};ExperimentalFeatures.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.restAsyncIoEnabled!=null&&Object.hasOwnProperty.call(message,"restAsyncIoEnabled"))writer.uint32(8).bool(message.restAsyncIoEnabled);if(message.protobufPythonicTypesEnabled!=null&&Object.hasOwnProperty.call(message,"protobufPythonicTypesEnabled"))writer.uint32(16).bool(message.protobufPythonicTypesEnabled);if(message.unversionedPackageDisabled!=null&&Object.hasOwnProperty.call(message,"unversionedPackageDisabled"))writer.uint32(24).bool(message.unversionedPackageDisabled);return writer};ExperimentalFeatures.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ExperimentalFeatures.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.PythonSettings.ExperimentalFeatures;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.restAsyncIoEnabled=reader.bool();break}case 2:{message.protobufPythonicTypesEnabled=reader.bool();break}case 3:{message.unversionedPackageDisabled=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};ExperimentalFeatures.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ExperimentalFeatures.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.restAsyncIoEnabled!=null&&message.hasOwnProperty("restAsyncIoEnabled"))if(typeof message.restAsyncIoEnabled!=="boolean")return"restAsyncIoEnabled: boolean expected";if(message.protobufPythonicTypesEnabled!=null&&message.hasOwnProperty("protobufPythonicTypesEnabled"))if(typeof message.protobufPythonicTypesEnabled!=="boolean")return"protobufPythonicTypesEnabled: boolean expected";if(message.unversionedPackageDisabled!=null&&message.hasOwnProperty("unversionedPackageDisabled"))if(typeof message.unversionedPackageDisabled!=="boolean")return"unversionedPackageDisabled: boolean expected";return null};ExperimentalFeatures.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.PythonSettings.ExperimentalFeatures)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.PythonSettings.ExperimentalFeatures;if(object.restAsyncIoEnabled!=null)message.restAsyncIoEnabled=Boolean(object.restAsyncIoEnabled);if(object.protobufPythonicTypesEnabled!=null)message.protobufPythonicTypesEnabled=Boolean(object.protobufPythonicTypesEnabled);if(object.unversionedPackageDisabled!=null)message.unversionedPackageDisabled=Boolean(object.unversionedPackageDisabled);return message};ExperimentalFeatures.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.restAsyncIoEnabled=false;object.protobufPythonicTypesEnabled=false;object.unversionedPackageDisabled=false}if(message.restAsyncIoEnabled!=null&&message.hasOwnProperty("restAsyncIoEnabled"))object.restAsyncIoEnabled=message.restAsyncIoEnabled;if(message.protobufPythonicTypesEnabled!=null&&message.hasOwnProperty("protobufPythonicTypesEnabled"))object.protobufPythonicTypesEnabled=message.protobufPythonicTypesEnabled;if(message.unversionedPackageDisabled!=null&&message.hasOwnProperty("unversionedPackageDisabled"))object.unversionedPackageDisabled=message.unversionedPackageDisabled;return object};ExperimentalFeatures.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ExperimentalFeatures.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.PythonSettings.ExperimentalFeatures"};return ExperimentalFeatures}();return PythonSettings}();api.NodeSettings=function(){function NodeSettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}NodeSettings.prototype.common=null;NodeSettings.create=function create(properties){return new NodeSettings(properties)};NodeSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();return writer};NodeSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};NodeSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.NodeSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};NodeSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};NodeSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}return null};NodeSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.NodeSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.NodeSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.NodeSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}return message};NodeSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);return object};NodeSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};NodeSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.NodeSettings"};return NodeSettings}();api.DotnetSettings=function(){function DotnetSettings(properties){this.renamedServices={};this.renamedResources={};this.ignoredResources=[];this.forcedNamespaceAliases=[];this.handwrittenSignatures=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}DotnetSettings.prototype.common=null;DotnetSettings.prototype.renamedServices=$util.emptyObject;DotnetSettings.prototype.renamedResources=$util.emptyObject;DotnetSettings.prototype.ignoredResources=$util.emptyArray;DotnetSettings.prototype.forcedNamespaceAliases=$util.emptyArray;DotnetSettings.prototype.handwrittenSignatures=$util.emptyArray;DotnetSettings.create=function create(properties){return new DotnetSettings(properties)};DotnetSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();if(message.renamedServices!=null&&Object.hasOwnProperty.call(message,"renamedServices"))for(var keys=Object.keys(message.renamedServices),i=0;i<keys.length;++i)writer.uint32(18).fork().uint32(10).string(keys[i]).uint32(18).string(message.renamedServices[keys[i]]).ldelim();if(message.renamedResources!=null&&Object.hasOwnProperty.call(message,"renamedResources"))for(var keys=Object.keys(message.renamedResources),i=0;i<keys.length;++i)writer.uint32(26).fork().uint32(10).string(keys[i]).uint32(18).string(message.renamedResources[keys[i]]).ldelim();if(message.ignoredResources!=null&&message.ignoredResources.length)for(var i=0;i<message.ignoredResources.length;++i)writer.uint32(34).string(message.ignoredResources[i]);if(message.forcedNamespaceAliases!=null&&message.forcedNamespaceAliases.length)for(var i=0;i<message.forcedNamespaceAliases.length;++i)writer.uint32(42).string(message.forcedNamespaceAliases[i]);if(message.handwrittenSignatures!=null&&message.handwrittenSignatures.length)for(var i=0;i<message.handwrittenSignatures.length;++i)writer.uint32(50).string(message.handwrittenSignatures[i]);return writer};DotnetSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};DotnetSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.DotnetSettings,key,value;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{if(message.renamedServices===$util.emptyObject)message.renamedServices={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.renamedServices,key);message.renamedServices[key]=value;break}case 3:{if(message.renamedResources===$util.emptyObject)message.renamedResources={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.renamedResources,key);message.renamedResources[key]=value;break}case 4:{if(!(message.ignoredResources&&message.ignoredResources.length))message.ignoredResources=[];message.ignoredResources.push(reader.string());break}case 5:{if(!(message.forcedNamespaceAliases&&message.forcedNamespaceAliases.length))message.forcedNamespaceAliases=[];message.forcedNamespaceAliases.push(reader.string());break}case 6:{if(!(message.handwrittenSignatures&&message.handwrittenSignatures.length))message.handwrittenSignatures=[];message.handwrittenSignatures.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};DotnetSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};DotnetSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}if(message.renamedServices!=null&&message.hasOwnProperty("renamedServices")){if(!$util.isObject(message.renamedServices))return"renamedServices: object expected";var key=Object.keys(message.renamedServices);for(var i=0;i<key.length;++i)if(!$util.isString(message.renamedServices[key[i]]))return"renamedServices: string{k:string} expected"}if(message.renamedResources!=null&&message.hasOwnProperty("renamedResources")){if(!$util.isObject(message.renamedResources))return"renamedResources: object expected";var key=Object.keys(message.renamedResources);for(var i=0;i<key.length;++i)if(!$util.isString(message.renamedResources[key[i]]))return"renamedResources: string{k:string} expected"}if(message.ignoredResources!=null&&message.hasOwnProperty("ignoredResources")){if(!Array.isArray(message.ignoredResources))return"ignoredResources: array expected";for(var i=0;i<message.ignoredResources.length;++i)if(!$util.isString(message.ignoredResources[i]))return"ignoredResources: string[] expected"}if(message.forcedNamespaceAliases!=null&&message.hasOwnProperty("forcedNamespaceAliases")){if(!Array.isArray(message.forcedNamespaceAliases))return"forcedNamespaceAliases: array expected";for(var i=0;i<message.forcedNamespaceAliases.length;++i)if(!$util.isString(message.forcedNamespaceAliases[i]))return"forcedNamespaceAliases: string[] expected"}if(message.handwrittenSignatures!=null&&message.hasOwnProperty("handwrittenSignatures")){if(!Array.isArray(message.handwrittenSignatures))return"handwrittenSignatures: array expected";for(var i=0;i<message.handwrittenSignatures.length;++i)if(!$util.isString(message.handwrittenSignatures[i]))return"handwrittenSignatures: string[] expected"}return null};DotnetSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.DotnetSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.DotnetSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.DotnetSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}if(object.renamedServices){if(typeof object.renamedServices!=="object")throw TypeError(".google.api.DotnetSettings.renamedServices: object expected");message.renamedServices={};for(var keys=Object.keys(object.renamedServices),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.renamedServices,keys[i]);message.renamedServices[keys[i]]=String(object.renamedServices[keys[i]])}}if(object.renamedResources){if(typeof object.renamedResources!=="object")throw TypeError(".google.api.DotnetSettings.renamedResources: object expected");message.renamedResources={};for(var keys=Object.keys(object.renamedResources),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.renamedResources,keys[i]);message.renamedResources[keys[i]]=String(object.renamedResources[keys[i]])}}if(object.ignoredResources){if(!Array.isArray(object.ignoredResources))throw TypeError(".google.api.DotnetSettings.ignoredResources: array expected");message.ignoredResources=[];for(var i=0;i<object.ignoredResources.length;++i)message.ignoredResources[i]=String(object.ignoredResources[i])}if(object.forcedNamespaceAliases){if(!Array.isArray(object.forcedNamespaceAliases))throw TypeError(".google.api.DotnetSettings.forcedNamespaceAliases: array expected");message.forcedNamespaceAliases=[];for(var i=0;i<object.forcedNamespaceAliases.length;++i)message.forcedNamespaceAliases[i]=String(object.forcedNamespaceAliases[i])}if(object.handwrittenSignatures){if(!Array.isArray(object.handwrittenSignatures))throw TypeError(".google.api.DotnetSettings.handwrittenSignatures: array expected");message.handwrittenSignatures=[];for(var i=0;i<object.handwrittenSignatures.length;++i)message.handwrittenSignatures[i]=String(object.handwrittenSignatures[i])}return message};DotnetSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.ignoredResources=[];object.forcedNamespaceAliases=[];object.handwrittenSignatures=[]}if(options.objects||options.defaults){object.renamedServices={};object.renamedResources={}}if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);var keys2;if(message.renamedServices&&(keys2=Object.keys(message.renamedServices)).length){object.renamedServices={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.renamedServices,keys2[j]);object.renamedServices[keys2[j]]=message.renamedServices[keys2[j]]}}if(message.renamedResources&&(keys2=Object.keys(message.renamedResources)).length){object.renamedResources={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.renamedResources,keys2[j]);object.renamedResources[keys2[j]]=message.renamedResources[keys2[j]]}}if(message.ignoredResources&&message.ignoredResources.length){object.ignoredResources=[];for(var j=0;j<message.ignoredResources.length;++j)object.ignoredResources[j]=message.ignoredResources[j]}if(message.forcedNamespaceAliases&&message.forcedNamespaceAliases.length){object.forcedNamespaceAliases=[];for(var j=0;j<message.forcedNamespaceAliases.length;++j)object.forcedNamespaceAliases[j]=message.forcedNamespaceAliases[j]}if(message.handwrittenSignatures&&message.handwrittenSignatures.length){object.handwrittenSignatures=[];for(var j=0;j<message.handwrittenSignatures.length;++j)object.handwrittenSignatures[j]=message.handwrittenSignatures[j]}return object};DotnetSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};DotnetSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.DotnetSettings"};return DotnetSettings}();api.RubySettings=function(){function RubySettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}RubySettings.prototype.common=null;RubySettings.create=function create(properties){return new RubySettings(properties)};RubySettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();return writer};RubySettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};RubySettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.RubySettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};RubySettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};RubySettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}return null};RubySettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.RubySettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.RubySettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.RubySettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}return message};RubySettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);return object};RubySettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};RubySettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.RubySettings"};return RubySettings}();api.GoSettings=function(){function GoSettings(properties){this.renamedServices={};if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GoSettings.prototype.common=null;GoSettings.prototype.renamedServices=$util.emptyObject;GoSettings.create=function create(properties){return new GoSettings(properties)};GoSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();if(message.renamedServices!=null&&Object.hasOwnProperty.call(message,"renamedServices"))for(var keys=Object.keys(message.renamedServices),i=0;i<keys.length;++i)writer.uint32(18).fork().uint32(10).string(keys[i]).uint32(18).string(message.renamedServices[keys[i]]).ldelim();return writer};GoSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GoSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.GoSettings,key,value;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{if(message.renamedServices===$util.emptyObject)message.renamedServices={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.renamedServices,key);message.renamedServices[key]=value;break}default:reader.skipType(tag&7,long);break}}return message};GoSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GoSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}if(message.renamedServices!=null&&message.hasOwnProperty("renamedServices")){if(!$util.isObject(message.renamedServices))return"renamedServices: object expected";var key=Object.keys(message.renamedServices);for(var i=0;i<key.length;++i)if(!$util.isString(message.renamedServices[key[i]]))return"renamedServices: string{k:string} expected"}return null};GoSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.GoSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.GoSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.GoSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}if(object.renamedServices){if(typeof object.renamedServices!=="object")throw TypeError(".google.api.GoSettings.renamedServices: object expected");message.renamedServices={};for(var keys=Object.keys(object.renamedServices),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.renamedServices,keys[i]);message.renamedServices[keys[i]]=String(object.renamedServices[keys[i]])}}return message};GoSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.objects||options.defaults)object.renamedServices={};if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);var keys2;if(message.renamedServices&&(keys2=Object.keys(message.renamedServices)).length){object.renamedServices={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.renamedServices,keys2[j]);object.renamedServices[keys2[j]]=message.renamedServices[keys2[j]]}}return object};GoSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GoSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.GoSettings"};return GoSettings}();api.MethodSettings=function(){function MethodSettings(properties){this.autoPopulatedFields=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}MethodSettings.prototype.selector="";MethodSettings.prototype.longRunning=null;MethodSettings.prototype.autoPopulatedFields=$util.emptyArray;MethodSettings.create=function create(properties){return new MethodSettings(properties)};MethodSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.selector!=null&&Object.hasOwnProperty.call(message,"selector"))writer.uint32(10).string(message.selector);if(message.longRunning!=null&&Object.hasOwnProperty.call(message,"longRunning"))$root.google.api.MethodSettings.LongRunning.encode(message.longRunning,writer.uint32(18).fork()).ldelim();if(message.autoPopulatedFields!=null&&message.autoPopulatedFields.length)for(var i=0;i<message.autoPopulatedFields.length;++i)writer.uint32(26).string(message.autoPopulatedFields[i]);return writer};MethodSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};MethodSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.MethodSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.selector=reader.string();break}case 2:{message.longRunning=$root.google.api.MethodSettings.LongRunning.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{if(!(message.autoPopulatedFields&&message.autoPopulatedFields.length))message.autoPopulatedFields=[];message.autoPopulatedFields.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};MethodSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};MethodSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.selector!=null&&message.hasOwnProperty("selector"))if(!$util.isString(message.selector))return"selector: string expected";if(message.longRunning!=null&&message.hasOwnProperty("longRunning")){var error=$root.google.api.MethodSettings.LongRunning.verify(message.longRunning,long+1);if(error)return"longRunning."+error}if(message.autoPopulatedFields!=null&&message.hasOwnProperty("autoPopulatedFields")){if(!Array.isArray(message.autoPopulatedFields))return"autoPopulatedFields: array expected";for(var i=0;i<message.autoPopulatedFields.length;++i)if(!$util.isString(message.autoPopulatedFields[i]))return"autoPopulatedFields: string[] expected"}return null};MethodSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.MethodSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.MethodSettings;if(object.selector!=null)message.selector=String(object.selector);if(object.longRunning!=null){if(typeof object.longRunning!=="object")throw TypeError(".google.api.MethodSettings.longRunning: object expected");message.longRunning=$root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning,long+1)}if(object.autoPopulatedFields){if(!Array.isArray(object.autoPopulatedFields))throw TypeError(".google.api.MethodSettings.autoPopulatedFields: array expected");message.autoPopulatedFields=[];for(var i=0;i<object.autoPopulatedFields.length;++i)message.autoPopulatedFields[i]=String(object.autoPopulatedFields[i])}return message};MethodSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.autoPopulatedFields=[];if(options.defaults){object.selector="";object.longRunning=null}if(message.selector!=null&&message.hasOwnProperty("selector"))object.selector=message.selector;if(message.longRunning!=null&&message.hasOwnProperty("longRunning"))object.longRunning=$root.google.api.MethodSettings.LongRunning.toObject(message.longRunning,options);if(message.autoPopulatedFields&&message.autoPopulatedFields.length){object.autoPopulatedFields=[];for(var j=0;j<message.autoPopulatedFields.length;++j)object.autoPopulatedFields[j]=message.autoPopulatedFields[j]}return object};MethodSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};MethodSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.MethodSettings"};MethodSettings.LongRunning=function(){function LongRunning(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}LongRunning.prototype.initialPollDelay=null;LongRunning.prototype.pollDelayMultiplier=0;LongRunning.prototype.maxPollDelay=null;LongRunning.prototype.totalPollTimeout=null;LongRunning.create=function create(properties){return new LongRunning(properties)};LongRunning.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.initialPollDelay!=null&&Object.hasOwnProperty.call(message,"initialPollDelay"))$root.google.protobuf.Duration.encode(message.initialPollDelay,writer.uint32(10).fork()).ldelim();if(message.pollDelayMultiplier!=null&&Object.hasOwnProperty.call(message,"pollDelayMultiplier"))writer.uint32(21).float(message.pollDelayMultiplier);if(message.maxPollDelay!=null&&Object.hasOwnProperty.call(message,"maxPollDelay"))$root.google.protobuf.Duration.encode(message.maxPollDelay,writer.uint32(26).fork()).ldelim();if(message.totalPollTimeout!=null&&Object.hasOwnProperty.call(message,"totalPollTimeout"))$root.google.protobuf.Duration.encode(message.totalPollTimeout,writer.uint32(34).fork()).ldelim();return writer};LongRunning.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};LongRunning.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.MethodSettings.LongRunning;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.initialPollDelay=$root.google.protobuf.Duration.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.pollDelayMultiplier=reader.float();break}case 3:{message.maxPollDelay=$root.google.protobuf.Duration.decode(reader,reader.uint32(),undefined,long+1);break}case 4:{message.totalPollTimeout=$root.google.protobuf.Duration.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};LongRunning.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};LongRunning.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.initialPollDelay!=null&&message.hasOwnProperty("initialPollDelay")){var error=$root.google.protobuf.Duration.verify(message.initialPollDelay,long+1);if(error)return"initialPollDelay."+error}if(message.pollDelayMultiplier!=null&&message.hasOwnProperty("pollDelayMultiplier"))if(typeof message.pollDelayMultiplier!=="number")return"pollDelayMultiplier: number expected";if(message.maxPollDelay!=null&&message.hasOwnProperty("maxPollDelay")){var error=$root.google.protobuf.Duration.verify(message.maxPollDelay,long+1);if(error)return"maxPollDelay."+error}if(message.totalPollTimeout!=null&&message.hasOwnProperty("totalPollTimeout")){var error=$root.google.protobuf.Duration.verify(message.totalPollTimeout,long+1);if(error)return"totalPollTimeout."+error}return null};LongRunning.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.MethodSettings.LongRunning)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.MethodSettings.LongRunning;if(object.initialPollDelay!=null){if(typeof object.initialPollDelay!=="object")throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected");message.initialPollDelay=$root.google.protobuf.Duration.fromObject(object.initialPollDelay,long+1)}if(object.pollDelayMultiplier!=null)message.pollDelayMultiplier=Number(object.pollDelayMultiplier);if(object.maxPollDelay!=null){if(typeof object.maxPollDelay!=="object")throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected");message.maxPollDelay=$root.google.protobuf.Duration.fromObject(object.maxPollDelay,long+1)}if(object.totalPollTimeout!=null){if(typeof object.totalPollTimeout!=="object")throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected");message.totalPollTimeout=$root.google.protobuf.Duration.fromObject(object.totalPollTimeout,long+1)}return message};LongRunning.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.initialPollDelay=null;object.pollDelayMultiplier=0;object.maxPollDelay=null;object.totalPollTimeout=null}if(message.initialPollDelay!=null&&message.hasOwnProperty("initialPollDelay"))object.initialPollDelay=$root.google.protobuf.Duration.toObject(message.initialPollDelay,options);if(message.pollDelayMultiplier!=null&&message.hasOwnProperty("pollDelayMultiplier"))object.pollDelayMultiplier=options.json&&!isFinite(message.pollDelayMultiplier)?String(message.pollDelayMultiplier):message.pollDelayMultiplier;if(message.maxPollDelay!=null&&message.hasOwnProperty("maxPollDelay"))object.maxPollDelay=$root.google.protobuf.Duration.toObject(message.maxPollDelay,options);if(message.totalPollTimeout!=null&&message.hasOwnProperty("totalPollTimeout"))object.totalPollTimeout=$root.google.protobuf.Duration.toObject(message.totalPollTimeout,options);return object};LongRunning.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};LongRunning.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.MethodSettings.LongRunning"};return LongRunning}();return MethodSettings}();api.ClientLibraryOrganization=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED"]=0;values[valuesById[1]="CLOUD"]=1;values[valuesById[2]="ADS"]=2;values[valuesById[3]="PHOTOS"]=3;values[valuesById[4]="STREET_VIEW"]=4;values[valuesById[5]="SHOPPING"]=5;values[valuesById[6]="GEO"]=6;values[valuesById[7]="GENERATIVE_AI"]=7;return values}();api.ClientLibraryDestination=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="CLIENT_LIBRARY_DESTINATION_UNSPECIFIED"]=0;values[valuesById[10]="GITHUB"]=10;values[valuesById[20]="PACKAGE_MANAGER"]=20;return values}();api.SelectiveGapicGeneration=function(){function SelectiveGapicGeneration(properties){this.methods=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}SelectiveGapicGeneration.prototype.methods=$util.emptyArray;SelectiveGapicGeneration.prototype.generateOmittedAsInternal=false;SelectiveGapicGeneration.create=function create(properties){return new SelectiveGapicGeneration(properties)};SelectiveGapicGeneration.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.methods!=null&&message.methods.length)for(var i=0;i<message.methods.length;++i)writer.uint32(10).string(message.methods[i]);if(message.generateOmittedAsInternal!=null&&Object.hasOwnProperty.call(message,"generateOmittedAsInternal"))writer.uint32(16).bool(message.generateOmittedAsInternal);return writer};SelectiveGapicGeneration.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};SelectiveGapicGeneration.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.SelectiveGapicGeneration;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.methods&&message.methods.length))message.methods=[];message.methods.push(reader.string());break}case 2:{message.generateOmittedAsInternal=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};SelectiveGapicGeneration.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};SelectiveGapicGeneration.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.methods!=null&&message.hasOwnProperty("methods")){if(!Array.isArray(message.methods))return"methods: array expected";for(var i=0;i<message.methods.length;++i)if(!$util.isString(message.methods[i]))return"methods: string[] expected"}if(message.generateOmittedAsInternal!=null&&message.hasOwnProperty("generateOmittedAsInternal"))if(typeof message.generateOmittedAsInternal!=="boolean")return"generateOmittedAsInternal: boolean expected";return null};SelectiveGapicGeneration.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.SelectiveGapicGeneration)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.SelectiveGapicGeneration;if(object.methods){if(!Array.isArray(object.methods))throw TypeError(".google.api.SelectiveGapicGeneration.methods: array expected");message.methods=[];for(var i=0;i<object.methods.length;++i)message.methods[i]=String(object.methods[i])}if(object.generateOmittedAsInternal!=null)message.generateOmittedAsInternal=Boolean(object.generateOmittedAsInternal);return message};SelectiveGapicGeneration.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.methods=[];if(options.defaults)object.generateOmittedAsInternal=false;if(message.methods&&message.methods.length){object.methods=[];for(var j=0;j<message.methods.length;++j)object.methods[j]=message.methods[j]}if(message.generateOmittedAsInternal!=null&&message.hasOwnProperty("generateOmittedAsInternal"))object.generateOmittedAsInternal=message.generateOmittedAsInternal;return object};SelectiveGapicGeneration.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};SelectiveGapicGeneration.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.SelectiveGapicGeneration"};return SelectiveGapicGeneration}();api.LaunchStage=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="LAUNCH_STAGE_UNSPECIFIED"]=0;values[valuesById[6]="UNIMPLEMENTED"]=6;values[valuesById[7]="PRELAUNCH"]=7;values[valuesById[1]="EARLY_ACCESS"]=1;values[valuesById[2]="ALPHA"]=2;values[valuesById[3]="BETA"]=3;values[valuesById[4]="GA"]=4;values[valuesById[5]="DEPRECATED"]=5;return values}();return api}();google.protobuf=function(){var protobuf={};protobuf.FileDescriptorSet=function(){function FileDescriptorSet(properties){this.file=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FileDescriptorSet.prototype.file=$util.emptyArray;FileDescriptorSet.create=function create(properties){return new FileDescriptorSet(properties)};FileDescriptorSet.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.file!=null&&message.file.length)for(var i=0;i<message.file.length;++i)$root.google.protobuf.FileDescriptorProto.encode(message.file[i],writer.uint32(10).fork()).ldelim();return writer};FileDescriptorSet.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FileDescriptorSet.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FileDescriptorSet;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.file&&message.file.length))message.file=[];message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};FileDescriptorSet.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FileDescriptorSet.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.file!=null&&message.hasOwnProperty("file")){if(!Array.isArray(message.file))return"file: array expected";for(var i=0;i<message.file.length;++i){var error=$root.google.protobuf.FileDescriptorProto.verify(message.file[i],long+1);if(error)return"file."+error}}return null};FileDescriptorSet.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FileDescriptorSet)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FileDescriptorSet;if(object.file){if(!Array.isArray(object.file))throw TypeError(".google.protobuf.FileDescriptorSet.file: array expected");message.file=[];for(var i=0;i<object.file.length;++i){if(typeof object.file[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected");message.file[i]=$root.google.protobuf.FileDescriptorProto.fromObject(object.file[i],long+1)}}return message};FileDescriptorSet.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.file=[];if(message.file&&message.file.length){object.file=[];for(var j=0;j<message.file.length;++j)object.file[j]=$root.google.protobuf.FileDescriptorProto.toObject(message.file[j],options)}return object};FileDescriptorSet.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FileDescriptorSet.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FileDescriptorSet"};return FileDescriptorSet}();protobuf.Edition=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="EDITION_UNKNOWN"]=0;values[valuesById[900]="EDITION_LEGACY"]=900;values[valuesById[998]="EDITION_PROTO2"]=998;values[valuesById[999]="EDITION_PROTO3"]=999;values[valuesById[1e3]="EDITION_2023"]=1e3;values[valuesById[1001]="EDITION_2024"]=1001;values[valuesById[1]="EDITION_1_TEST_ONLY"]=1;values[valuesById[2]="EDITION_2_TEST_ONLY"]=2;values[valuesById[99997]="EDITION_99997_TEST_ONLY"]=99997;values[valuesById[99998]="EDITION_99998_TEST_ONLY"]=99998;values[valuesById[99999]="EDITION_99999_TEST_ONLY"]=99999;values[valuesById[2147483647]="EDITION_MAX"]=2147483647;return values}();protobuf.FileDescriptorProto=function(){function FileDescriptorProto(properties){this.dependency=[];this.publicDependency=[];this.weakDependency=[];this.optionDependency=[];this.messageType=[];this.enumType=[];this.service=[];this.extension=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FileDescriptorProto.prototype.name="";FileDescriptorProto.prototype["package"]="";FileDescriptorProto.prototype.dependency=$util.emptyArray;FileDescriptorProto.prototype.publicDependency=$util.emptyArray;FileDescriptorProto.prototype.weakDependency=$util.emptyArray;FileDescriptorProto.prototype.optionDependency=$util.emptyArray;FileDescriptorProto.prototype.messageType=$util.emptyArray;FileDescriptorProto.prototype.enumType=$util.emptyArray;FileDescriptorProto.prototype.service=$util.emptyArray;FileDescriptorProto.prototype.extension=$util.emptyArray;FileDescriptorProto.prototype.options=null;FileDescriptorProto.prototype.sourceCodeInfo=null;FileDescriptorProto.prototype.syntax="";FileDescriptorProto.prototype.edition=0;FileDescriptorProto.create=function create(properties){return new FileDescriptorProto(properties)};FileDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message["package"]!=null&&Object.hasOwnProperty.call(message,"package"))writer.uint32(18).string(message["package"]);if(message.dependency!=null&&message.dependency.length)for(var i=0;i<message.dependency.length;++i)writer.uint32(26).string(message.dependency[i]);if(message.messageType!=null&&message.messageType.length)for(var i=0;i<message.messageType.length;++i)$root.google.protobuf.DescriptorProto.encode(message.messageType[i],writer.uint32(34).fork()).ldelim();if(message.enumType!=null&&message.enumType.length)for(var i=0;i<message.enumType.length;++i)$root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i],writer.uint32(42).fork()).ldelim();if(message.service!=null&&message.service.length)for(var i=0;i<message.service.length;++i)$root.google.protobuf.ServiceDescriptorProto.encode(message.service[i],writer.uint32(50).fork()).ldelim();if(message.extension!=null&&message.extension.length)for(var i=0;i<message.extension.length;++i)$root.google.protobuf.FieldDescriptorProto.encode(message.extension[i],writer.uint32(58).fork()).ldelim();if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.FileOptions.encode(message.options,writer.uint32(66).fork()).ldelim();if(message.sourceCodeInfo!=null&&Object.hasOwnProperty.call(message,"sourceCodeInfo"))$root.google.protobuf.SourceCodeInfo.encode(message.sourceCodeInfo,writer.uint32(74).fork()).ldelim();if(message.publicDependency!=null&&message.publicDependency.length)for(var i=0;i<message.publicDependency.length;++i)writer.uint32(80).int32(message.publicDependency[i]);if(message.weakDependency!=null&&message.weakDependency.length)for(var i=0;i<message.weakDependency.length;++i)writer.uint32(88).int32(message.weakDependency[i]);if(message.syntax!=null&&Object.hasOwnProperty.call(message,"syntax"))writer.uint32(98).string(message.syntax);if(message.edition!=null&&Object.hasOwnProperty.call(message,"edition"))writer.uint32(112).int32(message.edition);if(message.optionDependency!=null&&message.optionDependency.length)for(var i=0;i<message.optionDependency.length;++i)writer.uint32(122).string(message.optionDependency[i]);return writer};FileDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FileDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FileDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message["package"]=reader.string();break}case 3:{if(!(message.dependency&&message.dependency.length))message.dependency=[];message.dependency.push(reader.string());break}case 10:{if(!(message.publicDependency&&message.publicDependency.length))message.publicDependency=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.publicDependency.push(reader.int32())}else message.publicDependency.push(reader.int32());break}case 11:{if(!(message.weakDependency&&message.weakDependency.length))message.weakDependency=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.weakDependency.push(reader.int32())}else message.weakDependency.push(reader.int32());break}case 15:{if(!(message.optionDependency&&message.optionDependency.length))message.optionDependency=[];message.optionDependency.push(reader.string());break}case 4:{if(!(message.messageType&&message.messageType.length))message.messageType=[];message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 5:{if(!(message.enumType&&message.enumType.length))message.enumType=[];message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 6:{if(!(message.service&&message.service.length))message.service=[];message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 7:{if(!(message.extension&&message.extension.length))message.extension=[];message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 8:{message.options=$root.google.protobuf.FileOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 9:{message.sourceCodeInfo=$root.google.protobuf.SourceCodeInfo.decode(reader,reader.uint32(),undefined,long+1);break}case 12:{message.syntax=reader.string();break}case 14:{message.edition=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};FileDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FileDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message["package"]!=null&&message.hasOwnProperty("package"))if(!$util.isString(message["package"]))return"package: string expected";if(message.dependency!=null&&message.hasOwnProperty("dependency")){if(!Array.isArray(message.dependency))return"dependency: array expected";for(var i=0;i<message.dependency.length;++i)if(!$util.isString(message.dependency[i]))return"dependency: string[] expected"}if(message.publicDependency!=null&&message.hasOwnProperty("publicDependency")){if(!Array.isArray(message.publicDependency))return"publicDependency: array expected";for(var i=0;i<message.publicDependency.length;++i)if(!$util.isInteger(message.publicDependency[i]))return"publicDependency: integer[] expected"}if(message.weakDependency!=null&&message.hasOwnProperty("weakDependency")){if(!Array.isArray(message.weakDependency))return"weakDependency: array expected";for(var i=0;i<message.weakDependency.length;++i)if(!$util.isInteger(message.weakDependency[i]))return"weakDependency: integer[] expected"}if(message.optionDependency!=null&&message.hasOwnProperty("optionDependency")){if(!Array.isArray(message.optionDependency))return"optionDependency: array expected";for(var i=0;i<message.optionDependency.length;++i)if(!$util.isString(message.optionDependency[i]))return"optionDependency: string[] expected"}if(message.messageType!=null&&message.hasOwnProperty("messageType")){if(!Array.isArray(message.messageType))return"messageType: array expected";for(var i=0;i<message.messageType.length;++i){var error=$root.google.protobuf.DescriptorProto.verify(message.messageType[i],long+1);if(error)return"messageType."+error}}if(message.enumType!=null&&message.hasOwnProperty("enumType")){if(!Array.isArray(message.enumType))return"enumType: array expected";for(var i=0;i<message.enumType.length;++i){var error=$root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i],long+1);if(error)return"enumType."+error}}if(message.service!=null&&message.hasOwnProperty("service")){if(!Array.isArray(message.service))return"service: array expected";for(var i=0;i<message.service.length;++i){var error=$root.google.protobuf.ServiceDescriptorProto.verify(message.service[i],long+1);if(error)return"service."+error}}if(message.extension!=null&&message.hasOwnProperty("extension")){if(!Array.isArray(message.extension))return"extension: array expected";for(var i=0;i<message.extension.length;++i){var error=$root.google.protobuf.FieldDescriptorProto.verify(message.extension[i],long+1);if(error)return"extension."+error}}if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.FileOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.sourceCodeInfo!=null&&message.hasOwnProperty("sourceCodeInfo")){var error=$root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo,long+1);if(error)return"sourceCodeInfo."+error}if(message.syntax!=null&&message.hasOwnProperty("syntax"))if(!$util.isString(message.syntax))return"syntax: string expected";if(message.edition!=null&&message.hasOwnProperty("edition"))switch(message.edition){default:return"edition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}return null};FileDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FileDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FileDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object["package"]!=null)message["package"]=String(object["package"]);if(object.dependency){if(!Array.isArray(object.dependency))throw TypeError(".google.protobuf.FileDescriptorProto.dependency: array expected");message.dependency=[];for(var i=0;i<object.dependency.length;++i)message.dependency[i]=String(object.dependency[i])}if(object.publicDependency){if(!Array.isArray(object.publicDependency))throw TypeError(".google.protobuf.FileDescriptorProto.publicDependency: array expected");message.publicDependency=[];for(var i=0;i<object.publicDependency.length;++i)message.publicDependency[i]=object.publicDependency[i]|0}if(object.weakDependency){if(!Array.isArray(object.weakDependency))throw TypeError(".google.protobuf.FileDescriptorProto.weakDependency: array expected");message.weakDependency=[];for(var i=0;i<object.weakDependency.length;++i)message.weakDependency[i]=object.weakDependency[i]|0}if(object.optionDependency){if(!Array.isArray(object.optionDependency))throw TypeError(".google.protobuf.FileDescriptorProto.optionDependency: array expected");message.optionDependency=[];for(var i=0;i<object.optionDependency.length;++i)message.optionDependency[i]=String(object.optionDependency[i])}if(object.messageType){if(!Array.isArray(object.messageType))throw TypeError(".google.protobuf.FileDescriptorProto.messageType: array expected");message.messageType=[];for(var i=0;i<object.messageType.length;++i){if(typeof object.messageType[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected");message.messageType[i]=$root.google.protobuf.DescriptorProto.fromObject(object.messageType[i],long+1)}}if(object.enumType){if(!Array.isArray(object.enumType))throw TypeError(".google.protobuf.FileDescriptorProto.enumType: array expected");message.enumType=[];for(var i=0;i<object.enumType.length;++i){if(typeof object.enumType[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected");message.enumType[i]=$root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i],long+1)}}if(object.service){if(!Array.isArray(object.service))throw TypeError(".google.protobuf.FileDescriptorProto.service: array expected");message.service=[];for(var i=0;i<object.service.length;++i){if(typeof object.service[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected");message.service[i]=$root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i],long+1)}}if(object.extension){if(!Array.isArray(object.extension))throw TypeError(".google.protobuf.FileDescriptorProto.extension: array expected");message.extension=[];for(var i=0;i<object.extension.length;++i){if(typeof object.extension[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected");message.extension[i]=$root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i],long+1)}}if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected");message.options=$root.google.protobuf.FileOptions.fromObject(object.options,long+1)}if(object.sourceCodeInfo!=null){if(typeof object.sourceCodeInfo!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected");message.sourceCodeInfo=$root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo,long+1)}if(object.syntax!=null)message.syntax=String(object.syntax);switch(object.edition){default:if(typeof object.edition==="number"){message.edition=object.edition;break}break;case"EDITION_UNKNOWN":case 0:message.edition=0;break;case"EDITION_LEGACY":case 900:message.edition=900;break;case"EDITION_PROTO2":case 998:message.edition=998;break;case"EDITION_PROTO3":case 999:message.edition=999;break;case"EDITION_2023":case 1e3:message.edition=1e3;break;case"EDITION_2024":case 1001:message.edition=1001;break;case"EDITION_1_TEST_ONLY":case 1:message.edition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.edition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.edition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.edition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.edition=99999;break;case"EDITION_MAX":case 2147483647:message.edition=2147483647;break}return message};FileDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.dependency=[];object.messageType=[];object.enumType=[];object.service=[];object.extension=[];object.publicDependency=[];object.weakDependency=[];object.optionDependency=[]}if(options.defaults){object.name="";object["package"]="";object.options=null;object.sourceCodeInfo=null;object.syntax="";object.edition=options.enums===String?"EDITION_UNKNOWN":0}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message["package"]!=null&&message.hasOwnProperty("package"))object["package"]=message["package"];if(message.dependency&&message.dependency.length){object.dependency=[];for(var j=0;j<message.dependency.length;++j)object.dependency[j]=message.dependency[j]}if(message.messageType&&message.messageType.length){object.messageType=[];for(var j=0;j<message.messageType.length;++j)object.messageType[j]=$root.google.protobuf.DescriptorProto.toObject(message.messageType[j],options)}if(message.enumType&&message.enumType.length){object.enumType=[];for(var j=0;j<message.enumType.length;++j)object.enumType[j]=$root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j],options)}if(message.service&&message.service.length){object.service=[];for(var j=0;j<message.service.length;++j)object.service[j]=$root.google.protobuf.ServiceDescriptorProto.toObject(message.service[j],options)}if(message.extension&&message.extension.length){object.extension=[];for(var j=0;j<message.extension.length;++j)object.extension[j]=$root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j],options)}if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.FileOptions.toObject(message.options,options);if(message.sourceCodeInfo!=null&&message.hasOwnProperty("sourceCodeInfo"))object.sourceCodeInfo=$root.google.protobuf.SourceCodeInfo.toObject(message.sourceCodeInfo,options);if(message.publicDependency&&message.publicDependency.length){object.publicDependency=[];for(var j=0;j<message.publicDependency.length;++j)object.publicDependency[j]=message.publicDependency[j]}if(message.weakDependency&&message.weakDependency.length){object.weakDependency=[];for(var j=0;j<message.weakDependency.length;++j)object.weakDependency[j]=message.weakDependency[j]}if(message.syntax!=null&&message.hasOwnProperty("syntax"))object.syntax=message.syntax;if(message.edition!=null&&message.hasOwnProperty("edition"))object.edition=options.enums===String?$root.google.protobuf.Edition[message.edition]===undefined?message.edition:$root.google.protobuf.Edition[message.edition]:message.edition;if(message.optionDependency&&message.optionDependency.length){object.optionDependency=[];for(var j=0;j<message.optionDependency.length;++j)object.optionDependency[j]=message.optionDependency[j]}return object};FileDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FileDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FileDescriptorProto"};return FileDescriptorProto}();protobuf.DescriptorProto=function(){function DescriptorProto(properties){this.field=[];this.extension=[];this.nestedType=[];this.enumType=[];this.extensionRange=[];this.oneofDecl=[];this.reservedRange=[];this.reservedName=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}DescriptorProto.prototype.name="";DescriptorProto.prototype.field=$util.emptyArray;DescriptorProto.prototype.extension=$util.emptyArray;DescriptorProto.prototype.nestedType=$util.emptyArray;DescriptorProto.prototype.enumType=$util.emptyArray;DescriptorProto.prototype.extensionRange=$util.emptyArray;DescriptorProto.prototype.oneofDecl=$util.emptyArray;DescriptorProto.prototype.options=null;DescriptorProto.prototype.reservedRange=$util.emptyArray;DescriptorProto.prototype.reservedName=$util.emptyArray;DescriptorProto.prototype.visibility=0;DescriptorProto.create=function create(properties){return new DescriptorProto(properties)};DescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.field!=null&&message.field.length)for(var i=0;i<message.field.length;++i)$root.google.protobuf.FieldDescriptorProto.encode(message.field[i],writer.uint32(18).fork()).ldelim();if(message.nestedType!=null&&message.nestedType.length)for(var i=0;i<message.nestedType.length;++i)$root.google.protobuf.DescriptorProto.encode(message.nestedType[i],writer.uint32(26).fork()).ldelim();if(message.enumType!=null&&message.enumType.length)for(var i=0;i<message.enumType.length;++i)$root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i],writer.uint32(34).fork()).ldelim();if(message.extensionRange!=null&&message.extensionRange.length)for(var i=0;i<message.extensionRange.length;++i)$root.google.protobuf.DescriptorProto.ExtensionRange.encode(message.extensionRange[i],writer.uint32(42).fork()).ldelim();if(message.extension!=null&&message.extension.length)for(var i=0;i<message.extension.length;++i)$root.google.protobuf.FieldDescriptorProto.encode(message.extension[i],writer.uint32(50).fork()).ldelim();if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.MessageOptions.encode(message.options,writer.uint32(58).fork()).ldelim();if(message.oneofDecl!=null&&message.oneofDecl.length)for(var i=0;i<message.oneofDecl.length;++i)$root.google.protobuf.OneofDescriptorProto.encode(message.oneofDecl[i],writer.uint32(66).fork()).ldelim();if(message.reservedRange!=null&&message.reservedRange.length)for(var i=0;i<message.reservedRange.length;++i)$root.google.protobuf.DescriptorProto.ReservedRange.encode(message.reservedRange[i],writer.uint32(74).fork()).ldelim();if(message.reservedName!=null&&message.reservedName.length)for(var i=0;i<message.reservedName.length;++i)writer.uint32(82).string(message.reservedName[i]);if(message.visibility!=null&&Object.hasOwnProperty.call(message,"visibility"))writer.uint32(88).int32(message.visibility);return writer};DescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};DescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.DescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{if(!(message.field&&message.field.length))message.field=[];message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 6:{if(!(message.extension&&message.extension.length))message.extension=[];message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 3:{if(!(message.nestedType&&message.nestedType.length))message.nestedType=[];message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 4:{if(!(message.enumType&&message.enumType.length))message.enumType=[];message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 5:{if(!(message.extensionRange&&message.extensionRange.length))message.extensionRange=[];message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader,reader.uint32(),undefined,long+1));break}case 8:{if(!(message.oneofDecl&&message.oneofDecl.length))message.oneofDecl=[];message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 7:{message.options=$root.google.protobuf.MessageOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 9:{if(!(message.reservedRange&&message.reservedRange.length))message.reservedRange=[];message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader,reader.uint32(),undefined,long+1));break}case 10:{if(!(message.reservedName&&message.reservedName.length))message.reservedName=[];message.reservedName.push(reader.string());break}case 11:{message.visibility=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};DescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};DescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.field!=null&&message.hasOwnProperty("field")){if(!Array.isArray(message.field))return"field: array expected";for(var i=0;i<message.field.length;++i){var error=$root.google.protobuf.FieldDescriptorProto.verify(message.field[i],long+1);if(error)return"field."+error}}if(message.extension!=null&&message.hasOwnProperty("extension")){if(!Array.isArray(message.extension))return"extension: array expected";for(var i=0;i<message.extension.length;++i){var error=$root.google.protobuf.FieldDescriptorProto.verify(message.extension[i],long+1);if(error)return"extension."+error}}if(message.nestedType!=null&&message.hasOwnProperty("nestedType")){if(!Array.isArray(message.nestedType))return"nestedType: array expected";for(var i=0;i<message.nestedType.length;++i){var error=$root.google.protobuf.DescriptorProto.verify(message.nestedType[i],long+1);if(error)return"nestedType."+error}}if(message.enumType!=null&&message.hasOwnProperty("enumType")){if(!Array.isArray(message.enumType))return"enumType: array expected";for(var i=0;i<message.enumType.length;++i){var error=$root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i],long+1);if(error)return"enumType."+error}}if(message.extensionRange!=null&&message.hasOwnProperty("extensionRange")){if(!Array.isArray(message.extensionRange))return"extensionRange: array expected";for(var i=0;i<message.extensionRange.length;++i){var error=$root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i],long+1);if(error)return"extensionRange."+error}}if(message.oneofDecl!=null&&message.hasOwnProperty("oneofDecl")){if(!Array.isArray(message.oneofDecl))return"oneofDecl: array expected";for(var i=0;i<message.oneofDecl.length;++i){var error=$root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i],long+1);if(error)return"oneofDecl."+error}}if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.MessageOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.reservedRange!=null&&message.hasOwnProperty("reservedRange")){if(!Array.isArray(message.reservedRange))return"reservedRange: array expected";for(var i=0;i<message.reservedRange.length;++i){var error=$root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i],long+1);if(error)return"reservedRange."+error}}if(message.reservedName!=null&&message.hasOwnProperty("reservedName")){if(!Array.isArray(message.reservedName))return"reservedName: array expected";for(var i=0;i<message.reservedName.length;++i)if(!$util.isString(message.reservedName[i]))return"reservedName: string[] expected"}if(message.visibility!=null&&message.hasOwnProperty("visibility"))switch(message.visibility){default:return"visibility: enum value expected";case 0:case 1:case 2:break}return null};DescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.DescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.DescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.field){if(!Array.isArray(object.field))throw TypeError(".google.protobuf.DescriptorProto.field: array expected");message.field=[];for(var i=0;i<object.field.length;++i){if(typeof object.field[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.field: object expected");message.field[i]=$root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i],long+1)}}if(object.extension){if(!Array.isArray(object.extension))throw TypeError(".google.protobuf.DescriptorProto.extension: array expected");message.extension=[];for(var i=0;i<object.extension.length;++i){if(typeof object.extension[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.extension: object expected");message.extension[i]=$root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i],long+1)}}if(object.nestedType){if(!Array.isArray(object.nestedType))throw TypeError(".google.protobuf.DescriptorProto.nestedType: array expected");message.nestedType=[];for(var i=0;i<object.nestedType.length;++i){if(typeof object.nestedType[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected");message.nestedType[i]=$root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i],long+1)}}if(object.enumType){if(!Array.isArray(object.enumType))throw TypeError(".google.protobuf.DescriptorProto.enumType: array expected");message.enumType=[];for(var i=0;i<object.enumType.length;++i){if(typeof object.enumType[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected");message.enumType[i]=$root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i],long+1)}}if(object.extensionRange){if(!Array.isArray(object.extensionRange))throw TypeError(".google.protobuf.DescriptorProto.extensionRange: array expected");message.extensionRange=[];for(var i=0;i<object.extensionRange.length;++i){if(typeof object.extensionRange[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected");message.extensionRange[i]=$root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i],long+1)}}if(object.oneofDecl){if(!Array.isArray(object.oneofDecl))throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: array expected");message.oneofDecl=[];for(var i=0;i<object.oneofDecl.length;++i){if(typeof object.oneofDecl[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected");message.oneofDecl[i]=$root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i],long+1)}}if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.DescriptorProto.options: object expected");message.options=$root.google.protobuf.MessageOptions.fromObject(object.options,long+1)}if(object.reservedRange){if(!Array.isArray(object.reservedRange))throw TypeError(".google.protobuf.DescriptorProto.reservedRange: array expected");message.reservedRange=[];for(var i=0;i<object.reservedRange.length;++i){if(typeof object.reservedRange[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected");message.reservedRange[i]=$root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i],long+1)}}if(object.reservedName){if(!Array.isArray(object.reservedName))throw TypeError(".google.protobuf.DescriptorProto.reservedName: array expected");message.reservedName=[];for(var i=0;i<object.reservedName.length;++i)message.reservedName[i]=String(object.reservedName[i])}switch(object.visibility){default:if(typeof object.visibility==="number"){message.visibility=object.visibility;break}break;case"VISIBILITY_UNSET":case 0:message.visibility=0;break;case"VISIBILITY_LOCAL":case 1:message.visibility=1;break;case"VISIBILITY_EXPORT":case 2:message.visibility=2;break}return message};DescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.field=[];object.nestedType=[];object.enumType=[];object.extensionRange=[];object.extension=[];object.oneofDecl=[];object.reservedRange=[];object.reservedName=[]}if(options.defaults){object.name="";object.options=null;object.visibility=options.enums===String?"VISIBILITY_UNSET":0}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.field&&message.field.length){object.field=[];for(var j=0;j<message.field.length;++j)object.field[j]=$root.google.protobuf.FieldDescriptorProto.toObject(message.field[j],options)}if(message.nestedType&&message.nestedType.length){object.nestedType=[];for(var j=0;j<message.nestedType.length;++j)object.nestedType[j]=$root.google.protobuf.DescriptorProto.toObject(message.nestedType[j],options)}if(message.enumType&&message.enumType.length){object.enumType=[];for(var j=0;j<message.enumType.length;++j)object.enumType[j]=$root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j],options)}if(message.extensionRange&&message.extensionRange.length){object.extensionRange=[];for(var j=0;j<message.extensionRange.length;++j)object.extensionRange[j]=$root.google.protobuf.DescriptorProto.ExtensionRange.toObject(message.extensionRange[j],options)}if(message.extension&&message.extension.length){object.extension=[];for(var j=0;j<message.extension.length;++j)object.extension[j]=$root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j],options)}if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.MessageOptions.toObject(message.options,options);if(message.oneofDecl&&message.oneofDecl.length){object.oneofDecl=[];for(var j=0;j<message.oneofDecl.length;++j)object.oneofDecl[j]=$root.google.protobuf.OneofDescriptorProto.toObject(message.oneofDecl[j],options)}if(message.reservedRange&&message.reservedRange.length){object.reservedRange=[];for(var j=0;j<message.reservedRange.length;++j)object.reservedRange[j]=$root.google.protobuf.DescriptorProto.ReservedRange.toObject(message.reservedRange[j],options)}if(message.reservedName&&message.reservedName.length){object.reservedName=[];for(var j=0;j<message.reservedName.length;++j)object.reservedName[j]=message.reservedName[j]}if(message.visibility!=null&&message.hasOwnProperty("visibility"))object.visibility=options.enums===String?$root.google.protobuf.SymbolVisibility[message.visibility]===undefined?message.visibility:$root.google.protobuf.SymbolVisibility[message.visibility]:message.visibility;return object};DescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};DescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.DescriptorProto"};DescriptorProto.ExtensionRange=function(){function ExtensionRange(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ExtensionRange.prototype.start=0;ExtensionRange.prototype.end=0;ExtensionRange.prototype.options=null;ExtensionRange.create=function create(properties){return new ExtensionRange(properties)};ExtensionRange.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.start!=null&&Object.hasOwnProperty.call(message,"start"))writer.uint32(8).int32(message.start);if(message.end!=null&&Object.hasOwnProperty.call(message,"end"))writer.uint32(16).int32(message.end);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.ExtensionRangeOptions.encode(message.options,writer.uint32(26).fork()).ldelim();return writer};ExtensionRange.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ExtensionRange.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.DescriptorProto.ExtensionRange;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.start=reader.int32();break}case 2:{message.end=reader.int32();break}case 3:{message.options=$root.google.protobuf.ExtensionRangeOptions.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};ExtensionRange.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ExtensionRange.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.start!=null&&message.hasOwnProperty("start"))if(!$util.isInteger(message.start))return"start: integer expected";if(message.end!=null&&message.hasOwnProperty("end"))if(!$util.isInteger(message.end))return"end: integer expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.ExtensionRangeOptions.verify(message.options,long+1);if(error)return"options."+error}return null};ExtensionRange.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.DescriptorProto.ExtensionRange;if(object.start!=null)message.start=object.start|0;if(object.end!=null)message.end=object.end|0;if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected");message.options=$root.google.protobuf.ExtensionRangeOptions.fromObject(object.options,long+1)}return message};ExtensionRange.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.start=0;object.end=0;object.options=null}if(message.start!=null&&message.hasOwnProperty("start"))object.start=message.start;if(message.end!=null&&message.hasOwnProperty("end"))object.end=message.end;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.ExtensionRangeOptions.toObject(message.options,options);return object};ExtensionRange.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ExtensionRange.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.DescriptorProto.ExtensionRange"};return ExtensionRange}();DescriptorProto.ReservedRange=function(){function ReservedRange(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ReservedRange.prototype.start=0;ReservedRange.prototype.end=0;ReservedRange.create=function create(properties){return new ReservedRange(properties)};ReservedRange.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.start!=null&&Object.hasOwnProperty.call(message,"start"))writer.uint32(8).int32(message.start);if(message.end!=null&&Object.hasOwnProperty.call(message,"end"))writer.uint32(16).int32(message.end);return writer};ReservedRange.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ReservedRange.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.DescriptorProto.ReservedRange;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.start=reader.int32();break}case 2:{message.end=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};ReservedRange.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ReservedRange.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.start!=null&&message.hasOwnProperty("start"))if(!$util.isInteger(message.start))return"start: integer expected";if(message.end!=null&&message.hasOwnProperty("end"))if(!$util.isInteger(message.end))return"end: integer expected";return null};ReservedRange.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.DescriptorProto.ReservedRange)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.DescriptorProto.ReservedRange;if(object.start!=null)message.start=object.start|0;if(object.end!=null)message.end=object.end|0;return message};ReservedRange.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.start=0;object.end=0}if(message.start!=null&&message.hasOwnProperty("start"))object.start=message.start;if(message.end!=null&&message.hasOwnProperty("end"))object.end=message.end;return object};ReservedRange.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ReservedRange.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.DescriptorProto.ReservedRange"};return ReservedRange}();return DescriptorProto}();protobuf.ExtensionRangeOptions=function(){function ExtensionRangeOptions(properties){this.uninterpretedOption=[];this.declaration=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ExtensionRangeOptions.prototype.uninterpretedOption=$util.emptyArray;ExtensionRangeOptions.prototype.declaration=$util.emptyArray;ExtensionRangeOptions.prototype.features=null;ExtensionRangeOptions.prototype.verification=1;ExtensionRangeOptions.create=function create(properties){return new ExtensionRangeOptions(properties)};ExtensionRangeOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.declaration!=null&&message.declaration.length)for(var i=0;i<message.declaration.length;++i)$root.google.protobuf.ExtensionRangeOptions.Declaration.encode(message.declaration[i],writer.uint32(18).fork()).ldelim();if(message.verification!=null&&Object.hasOwnProperty.call(message,"verification"))writer.uint32(24).int32(message.verification);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(402).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();return writer};ExtensionRangeOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ExtensionRangeOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.ExtensionRangeOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 2:{if(!(message.declaration&&message.declaration.length))message.declaration=[];message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader,reader.uint32(),undefined,long+1));break}case 50:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.verification=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};ExtensionRangeOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ExtensionRangeOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message.declaration!=null&&message.hasOwnProperty("declaration")){if(!Array.isArray(message.declaration))return"declaration: array expected";for(var i=0;i<message.declaration.length;++i){var error=$root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i],long+1);if(error)return"declaration."+error}}if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.verification!=null&&message.hasOwnProperty("verification"))switch(message.verification){default:return"verification: enum value expected";case 0:case 1:break}return null};ExtensionRangeOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.ExtensionRangeOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.ExtensionRangeOptions;if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object.declaration){if(!Array.isArray(object.declaration))throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: array expected");message.declaration=[];for(var i=0;i<object.declaration.length;++i){if(typeof object.declaration[i]!=="object")throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected");message.declaration[i]=$root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i],long+1)}}if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}switch(object.verification){case"DECLARATION":case 0:message.verification=0;break;default:if(typeof object.verification==="number"){message.verification=object.verification;break}break;case"UNVERIFIED":case 1:message.verification=1;break}return message};ExtensionRangeOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.declaration=[];object.uninterpretedOption=[]}if(options.defaults){object.verification=options.enums===String?"UNVERIFIED":1;object.features=null}if(message.declaration&&message.declaration.length){object.declaration=[];for(var j=0;j<message.declaration.length;++j)object.declaration[j]=$root.google.protobuf.ExtensionRangeOptions.Declaration.toObject(message.declaration[j],options)}if(message.verification!=null&&message.hasOwnProperty("verification"))object.verification=options.enums===String?$root.google.protobuf.ExtensionRangeOptions.VerificationState[message.verification]===undefined?message.verification:$root.google.protobuf.ExtensionRangeOptions.VerificationState[message.verification]:message.verification;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}return object};ExtensionRangeOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ExtensionRangeOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.ExtensionRangeOptions"};ExtensionRangeOptions.Declaration=function(){function Declaration(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Declaration.prototype.number=0;Declaration.prototype.fullName="";Declaration.prototype.type="";Declaration.prototype.reserved=false;Declaration.prototype.repeated=false;Declaration.create=function create(properties){return new Declaration(properties)};Declaration.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.number!=null&&Object.hasOwnProperty.call(message,"number"))writer.uint32(8).int32(message.number);if(message.fullName!=null&&Object.hasOwnProperty.call(message,"fullName"))writer.uint32(18).string(message.fullName);if(message.type!=null&&Object.hasOwnProperty.call(message,"type"))writer.uint32(26).string(message.type);if(message.reserved!=null&&Object.hasOwnProperty.call(message,"reserved"))writer.uint32(40).bool(message.reserved);if(message.repeated!=null&&Object.hasOwnProperty.call(message,"repeated"))writer.uint32(48).bool(message.repeated);return writer};Declaration.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Declaration.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.ExtensionRangeOptions.Declaration;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.number=reader.int32();break}case 2:{message.fullName=reader.string();break}case 3:{message.type=reader.string();break}case 5:{message.reserved=reader.bool();break}case 6:{message.repeated=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};Declaration.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Declaration.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.number!=null&&message.hasOwnProperty("number"))if(!$util.isInteger(message.number))return"number: integer expected";if(message.fullName!=null&&message.hasOwnProperty("fullName"))if(!$util.isString(message.fullName))return"fullName: string expected";if(message.type!=null&&message.hasOwnProperty("type"))if(!$util.isString(message.type))return"type: string expected";if(message.reserved!=null&&message.hasOwnProperty("reserved"))if(typeof message.reserved!=="boolean")return"reserved: boolean expected";if(message.repeated!=null&&message.hasOwnProperty("repeated"))if(typeof message.repeated!=="boolean")return"repeated: boolean expected";return null};Declaration.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.ExtensionRangeOptions.Declaration;if(object.number!=null)message.number=object.number|0;if(object.fullName!=null)message.fullName=String(object.fullName);if(object.type!=null)message.type=String(object.type);if(object.reserved!=null)message.reserved=Boolean(object.reserved);if(object.repeated!=null)message.repeated=Boolean(object.repeated);return message};Declaration.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.number=0;object.fullName="";object.type="";object.reserved=false;object.repeated=false}if(message.number!=null&&message.hasOwnProperty("number"))object.number=message.number;if(message.fullName!=null&&message.hasOwnProperty("fullName"))object.fullName=message.fullName;if(message.type!=null&&message.hasOwnProperty("type"))object.type=message.type;if(message.reserved!=null&&message.hasOwnProperty("reserved"))object.reserved=message.reserved;if(message.repeated!=null&&message.hasOwnProperty("repeated"))object.repeated=message.repeated;return object};Declaration.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Declaration.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.ExtensionRangeOptions.Declaration"};return Declaration}();ExtensionRangeOptions.VerificationState=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="DECLARATION"]=0;values[valuesById[1]="UNVERIFIED"]=1;return values}();return ExtensionRangeOptions}();protobuf.FieldDescriptorProto=function(){function FieldDescriptorProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FieldDescriptorProto.prototype.name="";FieldDescriptorProto.prototype.number=0;FieldDescriptorProto.prototype.label=1;FieldDescriptorProto.prototype.type=1;FieldDescriptorProto.prototype.typeName="";FieldDescriptorProto.prototype.extendee="";FieldDescriptorProto.prototype.defaultValue="";FieldDescriptorProto.prototype.oneofIndex=0;FieldDescriptorProto.prototype.jsonName="";FieldDescriptorProto.prototype.options=null;FieldDescriptorProto.prototype.proto3Optional=false;FieldDescriptorProto.create=function create(properties){return new FieldDescriptorProto(properties)};FieldDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.extendee!=null&&Object.hasOwnProperty.call(message,"extendee"))writer.uint32(18).string(message.extendee);if(message.number!=null&&Object.hasOwnProperty.call(message,"number"))writer.uint32(24).int32(message.number);if(message.label!=null&&Object.hasOwnProperty.call(message,"label"))writer.uint32(32).int32(message.label);if(message.type!=null&&Object.hasOwnProperty.call(message,"type"))writer.uint32(40).int32(message.type);if(message.typeName!=null&&Object.hasOwnProperty.call(message,"typeName"))writer.uint32(50).string(message.typeName);if(message.defaultValue!=null&&Object.hasOwnProperty.call(message,"defaultValue"))writer.uint32(58).string(message.defaultValue);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.FieldOptions.encode(message.options,writer.uint32(66).fork()).ldelim();if(message.oneofIndex!=null&&Object.hasOwnProperty.call(message,"oneofIndex"))writer.uint32(72).int32(message.oneofIndex);if(message.jsonName!=null&&Object.hasOwnProperty.call(message,"jsonName"))writer.uint32(82).string(message.jsonName);if(message.proto3Optional!=null&&Object.hasOwnProperty.call(message,"proto3Optional"))writer.uint32(136).bool(message.proto3Optional);return writer};FieldDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FieldDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 3:{message.number=reader.int32();break}case 4:{message.label=reader.int32();break}case 5:{message.type=reader.int32();break}case 6:{message.typeName=reader.string();break}case 2:{message.extendee=reader.string();break}case 7:{message.defaultValue=reader.string();break}case 9:{message.oneofIndex=reader.int32();break}case 10:{message.jsonName=reader.string();break}case 8:{message.options=$root.google.protobuf.FieldOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 17:{message.proto3Optional=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};FieldDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FieldDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.number!=null&&message.hasOwnProperty("number"))if(!$util.isInteger(message.number))return"number: integer expected";if(message.label!=null&&message.hasOwnProperty("label"))switch(message.label){default:return"label: enum value expected";case 1:case 3:case 2:break}if(message.type!=null&&message.hasOwnProperty("type"))switch(message.type){default:return"type: enum value expected";case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:break}if(message.typeName!=null&&message.hasOwnProperty("typeName"))if(!$util.isString(message.typeName))return"typeName: string expected";if(message.extendee!=null&&message.hasOwnProperty("extendee"))if(!$util.isString(message.extendee))return"extendee: string expected";if(message.defaultValue!=null&&message.hasOwnProperty("defaultValue"))if(!$util.isString(message.defaultValue))return"defaultValue: string expected";if(message.oneofIndex!=null&&message.hasOwnProperty("oneofIndex"))if(!$util.isInteger(message.oneofIndex))return"oneofIndex: integer expected";if(message.jsonName!=null&&message.hasOwnProperty("jsonName"))if(!$util.isString(message.jsonName))return"jsonName: string expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.FieldOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.proto3Optional!=null&&message.hasOwnProperty("proto3Optional"))if(typeof message.proto3Optional!=="boolean")return"proto3Optional: boolean expected";return null};FieldDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.number!=null)message.number=object.number|0;switch(object.label){default:if(typeof object.label==="number"){message.label=object.label;break}break;case"LABEL_OPTIONAL":case 1:message.label=1;break;case"LABEL_REPEATED":case 3:message.label=3;break;case"LABEL_REQUIRED":case 2:message.label=2;break}switch(object.type){default:if(typeof object.type==="number"){message.type=object.type;break}break;case"TYPE_DOUBLE":case 1:message.type=1;break;case"TYPE_FLOAT":case 2:message.type=2;break;case"TYPE_INT64":case 3:message.type=3;break;case"TYPE_UINT64":case 4:message.type=4;break;case"TYPE_INT32":case 5:message.type=5;break;case"TYPE_FIXED64":case 6:message.type=6;break;case"TYPE_FIXED32":case 7:message.type=7;break;case"TYPE_BOOL":case 8:message.type=8;break;case"TYPE_STRING":case 9:message.type=9;break;case"TYPE_GROUP":case 10:message.type=10;break;case"TYPE_MESSAGE":case 11:message.type=11;break;case"TYPE_BYTES":case 12:message.type=12;break;case"TYPE_UINT32":case 13:message.type=13;break;case"TYPE_ENUM":case 14:message.type=14;break;case"TYPE_SFIXED32":case 15:message.type=15;break;case"TYPE_SFIXED64":case 16:message.type=16;break;case"TYPE_SINT32":case 17:message.type=17;break;case"TYPE_SINT64":case 18:message.type=18;break}if(object.typeName!=null)message.typeName=String(object.typeName);if(object.extendee!=null)message.extendee=String(object.extendee);if(object.defaultValue!=null)message.defaultValue=String(object.defaultValue);if(object.oneofIndex!=null)message.oneofIndex=object.oneofIndex|0;if(object.jsonName!=null)message.jsonName=String(object.jsonName);if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected");message.options=$root.google.protobuf.FieldOptions.fromObject(object.options,long+1)}if(object.proto3Optional!=null)message.proto3Optional=Boolean(object.proto3Optional);return message};FieldDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.extendee="";object.number=0;object.label=options.enums===String?"LABEL_OPTIONAL":1;object.type=options.enums===String?"TYPE_DOUBLE":1;object.typeName="";object.defaultValue="";object.options=null;object.oneofIndex=0;object.jsonName="";object.proto3Optional=false}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.extendee!=null&&message.hasOwnProperty("extendee"))object.extendee=message.extendee;if(message.number!=null&&message.hasOwnProperty("number"))object.number=message.number;if(message.label!=null&&message.hasOwnProperty("label"))object.label=options.enums===String?$root.google.protobuf.FieldDescriptorProto.Label[message.label]===undefined?message.label:$root.google.protobuf.FieldDescriptorProto.Label[message.label]:message.label;if(message.type!=null&&message.hasOwnProperty("type"))object.type=options.enums===String?$root.google.protobuf.FieldDescriptorProto.Type[message.type]===undefined?message.type:$root.google.protobuf.FieldDescriptorProto.Type[message.type]:message.type;if(message.typeName!=null&&message.hasOwnProperty("typeName"))object.typeName=message.typeName;if(message.defaultValue!=null&&message.hasOwnProperty("defaultValue"))object.defaultValue=message.defaultValue;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.FieldOptions.toObject(message.options,options);if(message.oneofIndex!=null&&message.hasOwnProperty("oneofIndex"))object.oneofIndex=message.oneofIndex;if(message.jsonName!=null&&message.hasOwnProperty("jsonName"))object.jsonName=message.jsonName;if(message.proto3Optional!=null&&message.hasOwnProperty("proto3Optional"))object.proto3Optional=message.proto3Optional;return object};FieldDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FieldDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldDescriptorProto"};FieldDescriptorProto.Type=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[1]="TYPE_DOUBLE"]=1;values[valuesById[2]="TYPE_FLOAT"]=2;values[valuesById[3]="TYPE_INT64"]=3;values[valuesById[4]="TYPE_UINT64"]=4;values[valuesById[5]="TYPE_INT32"]=5;values[valuesById[6]="TYPE_FIXED64"]=6;values[valuesById[7]="TYPE_FIXED32"]=7;values[valuesById[8]="TYPE_BOOL"]=8;values[valuesById[9]="TYPE_STRING"]=9;values[valuesById[10]="TYPE_GROUP"]=10;values[valuesById[11]="TYPE_MESSAGE"]=11;values[valuesById[12]="TYPE_BYTES"]=12;values[valuesById[13]="TYPE_UINT32"]=13;values[valuesById[14]="TYPE_ENUM"]=14;values[valuesById[15]="TYPE_SFIXED32"]=15;values[valuesById[16]="TYPE_SFIXED64"]=16;values[valuesById[17]="TYPE_SINT32"]=17;values[valuesById[18]="TYPE_SINT64"]=18;return values}();FieldDescriptorProto.Label=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[1]="LABEL_OPTIONAL"]=1;values[valuesById[3]="LABEL_REPEATED"]=3;values[valuesById[2]="LABEL_REQUIRED"]=2;return values}();return FieldDescriptorProto}();protobuf.OneofDescriptorProto=function(){function OneofDescriptorProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}OneofDescriptorProto.prototype.name="";OneofDescriptorProto.prototype.options=null;OneofDescriptorProto.create=function create(properties){return new OneofDescriptorProto(properties)};OneofDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.OneofOptions.encode(message.options,writer.uint32(18).fork()).ldelim();return writer};OneofDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};OneofDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.OneofDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.options=$root.google.protobuf.OneofOptions.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};OneofDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};OneofDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.OneofOptions.verify(message.options,long+1);if(error)return"options."+error}return null};OneofDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.OneofDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.OneofDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected");message.options=$root.google.protobuf.OneofOptions.fromObject(object.options,long+1)}return message};OneofDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.options=null}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.OneofOptions.toObject(message.options,options);return object};OneofDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};OneofDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.OneofDescriptorProto"};return OneofDescriptorProto}();protobuf.EnumDescriptorProto=function(){function EnumDescriptorProto(properties){this.value=[];this.reservedRange=[];this.reservedName=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumDescriptorProto.prototype.name="";EnumDescriptorProto.prototype.value=$util.emptyArray;EnumDescriptorProto.prototype.options=null;EnumDescriptorProto.prototype.reservedRange=$util.emptyArray;EnumDescriptorProto.prototype.reservedName=$util.emptyArray;EnumDescriptorProto.prototype.visibility=0;EnumDescriptorProto.create=function create(properties){return new EnumDescriptorProto(properties)};EnumDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.value!=null&&message.value.length)for(var i=0;i<message.value.length;++i)$root.google.protobuf.EnumValueDescriptorProto.encode(message.value[i],writer.uint32(18).fork()).ldelim();if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.EnumOptions.encode(message.options,writer.uint32(26).fork()).ldelim();if(message.reservedRange!=null&&message.reservedRange.length)for(var i=0;i<message.reservedRange.length;++i)$root.google.protobuf.EnumDescriptorProto.EnumReservedRange.encode(message.reservedRange[i],writer.uint32(34).fork()).ldelim();if(message.reservedName!=null&&message.reservedName.length)for(var i=0;i<message.reservedName.length;++i)writer.uint32(42).string(message.reservedName[i]);if(message.visibility!=null&&Object.hasOwnProperty.call(message,"visibility"))writer.uint32(48).int32(message.visibility);return writer};EnumDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{if(!(message.value&&message.value.length))message.value=[];message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 3:{message.options=$root.google.protobuf.EnumOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 4:{if(!(message.reservedRange&&message.reservedRange.length))message.reservedRange=[];message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader,reader.uint32(),undefined,long+1));break}case 5:{if(!(message.reservedName&&message.reservedName.length))message.reservedName=[];message.reservedName.push(reader.string());break}case 6:{message.visibility=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};EnumDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.value!=null&&message.hasOwnProperty("value")){if(!Array.isArray(message.value))return"value: array expected";for(var i=0;i<message.value.length;++i){var error=$root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i],long+1);if(error)return"value."+error}}if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.EnumOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.reservedRange!=null&&message.hasOwnProperty("reservedRange")){if(!Array.isArray(message.reservedRange))return"reservedRange: array expected";for(var i=0;i<message.reservedRange.length;++i){var error=$root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i],long+1);if(error)return"reservedRange."+error}}if(message.reservedName!=null&&message.hasOwnProperty("reservedName")){if(!Array.isArray(message.reservedName))return"reservedName: array expected";for(var i=0;i<message.reservedName.length;++i)if(!$util.isString(message.reservedName[i]))return"reservedName: string[] expected"}if(message.visibility!=null&&message.hasOwnProperty("visibility"))switch(message.visibility){default:return"visibility: enum value expected";case 0:case 1:case 2:break}return null};EnumDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.value){if(!Array.isArray(object.value))throw TypeError(".google.protobuf.EnumDescriptorProto.value: array expected");message.value=[];for(var i=0;i<object.value.length;++i){if(typeof object.value[i]!=="object")throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected");message.value[i]=$root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i],long+1)}}if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected");message.options=$root.google.protobuf.EnumOptions.fromObject(object.options,long+1)}if(object.reservedRange){if(!Array.isArray(object.reservedRange))throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: array expected");message.reservedRange=[];for(var i=0;i<object.reservedRange.length;++i){if(typeof object.reservedRange[i]!=="object")throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected");message.reservedRange[i]=$root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i],long+1)}}if(object.reservedName){if(!Array.isArray(object.reservedName))throw TypeError(".google.protobuf.EnumDescriptorProto.reservedName: array expected");message.reservedName=[];for(var i=0;i<object.reservedName.length;++i)message.reservedName[i]=String(object.reservedName[i])}switch(object.visibility){default:if(typeof object.visibility==="number"){message.visibility=object.visibility;break}break;case"VISIBILITY_UNSET":case 0:message.visibility=0;break;case"VISIBILITY_LOCAL":case 1:message.visibility=1;break;case"VISIBILITY_EXPORT":case 2:message.visibility=2;break}return message};EnumDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.value=[];object.reservedRange=[];object.reservedName=[]}if(options.defaults){object.name="";object.options=null;object.visibility=options.enums===String?"VISIBILITY_UNSET":0}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.value&&message.value.length){object.value=[];for(var j=0;j<message.value.length;++j)object.value[j]=$root.google.protobuf.EnumValueDescriptorProto.toObject(message.value[j],options)}if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.EnumOptions.toObject(message.options,options);if(message.reservedRange&&message.reservedRange.length){object.reservedRange=[];for(var j=0;j<message.reservedRange.length;++j)object.reservedRange[j]=$root.google.protobuf.EnumDescriptorProto.EnumReservedRange.toObject(message.reservedRange[j],options)}if(message.reservedName&&message.reservedName.length){object.reservedName=[];for(var j=0;j<message.reservedName.length;++j)object.reservedName[j]=message.reservedName[j]}if(message.visibility!=null&&message.hasOwnProperty("visibility"))object.visibility=options.enums===String?$root.google.protobuf.SymbolVisibility[message.visibility]===undefined?message.visibility:$root.google.protobuf.SymbolVisibility[message.visibility]:message.visibility;return object};EnumDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumDescriptorProto"};EnumDescriptorProto.EnumReservedRange=function(){function EnumReservedRange(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumReservedRange.prototype.start=0;EnumReservedRange.prototype.end=0;EnumReservedRange.create=function create(properties){return new EnumReservedRange(properties)};EnumReservedRange.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.start!=null&&Object.hasOwnProperty.call(message,"start"))writer.uint32(8).int32(message.start);if(message.end!=null&&Object.hasOwnProperty.call(message,"end"))writer.uint32(16).int32(message.end);return writer};EnumReservedRange.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumReservedRange.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.start=reader.int32();break}case 2:{message.end=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};EnumReservedRange.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumReservedRange.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.start!=null&&message.hasOwnProperty("start"))if(!$util.isInteger(message.start))return"start: integer expected";if(message.end!=null&&message.hasOwnProperty("end"))if(!$util.isInteger(message.end))return"end: integer expected";return null};EnumReservedRange.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange;if(object.start!=null)message.start=object.start|0;if(object.end!=null)message.end=object.end|0;return message};EnumReservedRange.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.start=0;object.end=0}if(message.start!=null&&message.hasOwnProperty("start"))object.start=message.start;if(message.end!=null&&message.hasOwnProperty("end"))object.end=message.end;return object};EnumReservedRange.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumReservedRange.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumDescriptorProto.EnumReservedRange"};return EnumReservedRange}();return EnumDescriptorProto}();protobuf.EnumValueDescriptorProto=function(){function EnumValueDescriptorProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumValueDescriptorProto.prototype.name="";EnumValueDescriptorProto.prototype.number=0;EnumValueDescriptorProto.prototype.options=null;EnumValueDescriptorProto.create=function create(properties){return new EnumValueDescriptorProto(properties)};EnumValueDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.number!=null&&Object.hasOwnProperty.call(message,"number"))writer.uint32(16).int32(message.number);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.EnumValueOptions.encode(message.options,writer.uint32(26).fork()).ldelim();return writer};EnumValueDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumValueDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumValueDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.number=reader.int32();break}case 3:{message.options=$root.google.protobuf.EnumValueOptions.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};EnumValueDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumValueDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.number!=null&&message.hasOwnProperty("number"))if(!$util.isInteger(message.number))return"number: integer expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.EnumValueOptions.verify(message.options,long+1);if(error)return"options."+error}return null};EnumValueDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumValueDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumValueDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.number!=null)message.number=object.number|0;if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected");message.options=$root.google.protobuf.EnumValueOptions.fromObject(object.options,long+1)}return message};EnumValueDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.number=0;object.options=null}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.number!=null&&message.hasOwnProperty("number"))object.number=message.number;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.EnumValueOptions.toObject(message.options,options);return object};EnumValueDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumValueDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumValueDescriptorProto"};return EnumValueDescriptorProto}();protobuf.ServiceDescriptorProto=function(){function ServiceDescriptorProto(properties){this.method=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ServiceDescriptorProto.prototype.name="";ServiceDescriptorProto.prototype.method=$util.emptyArray;ServiceDescriptorProto.prototype.options=null;ServiceDescriptorProto.create=function create(properties){return new ServiceDescriptorProto(properties)};ServiceDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.method!=null&&message.method.length)for(var i=0;i<message.method.length;++i)$root.google.protobuf.MethodDescriptorProto.encode(message.method[i],writer.uint32(18).fork()).ldelim();if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.ServiceOptions.encode(message.options,writer.uint32(26).fork()).ldelim();return writer};ServiceDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ServiceDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.ServiceDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{if(!(message.method&&message.method.length))message.method=[];message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 3:{message.options=$root.google.protobuf.ServiceOptions.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};ServiceDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ServiceDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.method!=null&&message.hasOwnProperty("method")){if(!Array.isArray(message.method))return"method: array expected";for(var i=0;i<message.method.length;++i){var error=$root.google.protobuf.MethodDescriptorProto.verify(message.method[i],long+1);if(error)return"method."+error}}if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.ServiceOptions.verify(message.options,long+1);if(error)return"options."+error}return null};ServiceDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.ServiceDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.ServiceDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.method){if(!Array.isArray(object.method))throw TypeError(".google.protobuf.ServiceDescriptorProto.method: array expected");message.method=[];for(var i=0;i<object.method.length;++i){if(typeof object.method[i]!=="object")throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected");message.method[i]=$root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i],long+1)}}if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected");message.options=$root.google.protobuf.ServiceOptions.fromObject(object.options,long+1)}return message};ServiceDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.method=[];if(options.defaults){object.name="";object.options=null}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.method&&message.method.length){object.method=[];for(var j=0;j<message.method.length;++j)object.method[j]=$root.google.protobuf.MethodDescriptorProto.toObject(message.method[j],options)}if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.ServiceOptions.toObject(message.options,options);return object};ServiceDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ServiceDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.ServiceDescriptorProto"};return ServiceDescriptorProto}();protobuf.MethodDescriptorProto=function(){function MethodDescriptorProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}MethodDescriptorProto.prototype.name="";MethodDescriptorProto.prototype.inputType="";MethodDescriptorProto.prototype.outputType="";MethodDescriptorProto.prototype.options=null;MethodDescriptorProto.prototype.clientStreaming=false;MethodDescriptorProto.prototype.serverStreaming=false;MethodDescriptorProto.create=function create(properties){return new MethodDescriptorProto(properties)};MethodDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.inputType!=null&&Object.hasOwnProperty.call(message,"inputType"))writer.uint32(18).string(message.inputType);if(message.outputType!=null&&Object.hasOwnProperty.call(message,"outputType"))writer.uint32(26).string(message.outputType);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.MethodOptions.encode(message.options,writer.uint32(34).fork()).ldelim();if(message.clientStreaming!=null&&Object.hasOwnProperty.call(message,"clientStreaming"))writer.uint32(40).bool(message.clientStreaming);if(message.serverStreaming!=null&&Object.hasOwnProperty.call(message,"serverStreaming"))writer.uint32(48).bool(message.serverStreaming);return writer};MethodDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};MethodDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.MethodDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.inputType=reader.string();break}case 3:{message.outputType=reader.string();break}case 4:{message.options=$root.google.protobuf.MethodOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 5:{message.clientStreaming=reader.bool();break}case 6:{message.serverStreaming=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};MethodDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};MethodDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.inputType!=null&&message.hasOwnProperty("inputType"))if(!$util.isString(message.inputType))return"inputType: string expected";if(message.outputType!=null&&message.hasOwnProperty("outputType"))if(!$util.isString(message.outputType))return"outputType: string expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.MethodOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.clientStreaming!=null&&message.hasOwnProperty("clientStreaming"))if(typeof message.clientStreaming!=="boolean")return"clientStreaming: boolean expected";if(message.serverStreaming!=null&&message.hasOwnProperty("serverStreaming"))if(typeof message.serverStreaming!=="boolean")return"serverStreaming: boolean expected";return null};MethodDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.MethodDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.MethodDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.inputType!=null)message.inputType=String(object.inputType);if(object.outputType!=null)message.outputType=String(object.outputType);if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected");message.options=$root.google.protobuf.MethodOptions.fromObject(object.options,long+1)}if(object.clientStreaming!=null)message.clientStreaming=Boolean(object.clientStreaming);if(object.serverStreaming!=null)message.serverStreaming=Boolean(object.serverStreaming);return message};MethodDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.inputType="";object.outputType="";object.options=null;object.clientStreaming=false;object.serverStreaming=false}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.inputType!=null&&message.hasOwnProperty("inputType"))object.inputType=message.inputType;if(message.outputType!=null&&message.hasOwnProperty("outputType"))object.outputType=message.outputType;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.MethodOptions.toObject(message.options,options);if(message.clientStreaming!=null&&message.hasOwnProperty("clientStreaming"))object.clientStreaming=message.clientStreaming;if(message.serverStreaming!=null&&message.hasOwnProperty("serverStreaming"))object.serverStreaming=message.serverStreaming;return object};MethodDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};MethodDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.MethodDescriptorProto"};return MethodDescriptorProto}();protobuf.FileOptions=function(){function FileOptions(properties){this.uninterpretedOption=[];this[".google.api.resourceDefinition"]=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FileOptions.prototype.javaPackage="";FileOptions.prototype.javaOuterClassname="";FileOptions.prototype.javaMultipleFiles=false;FileOptions.prototype.javaGenerateEqualsAndHash=false;FileOptions.prototype.javaStringCheckUtf8=false;FileOptions.prototype.optimizeFor=1;FileOptions.prototype.goPackage="";FileOptions.prototype.ccGenericServices=false;FileOptions.prototype.javaGenericServices=false;FileOptions.prototype.pyGenericServices=false;FileOptions.prototype.deprecated=false;FileOptions.prototype.ccEnableArenas=true;FileOptions.prototype.objcClassPrefix="";FileOptions.prototype.csharpNamespace="";FileOptions.prototype.swiftPrefix="";FileOptions.prototype.phpClassPrefix="";FileOptions.prototype.phpNamespace="";FileOptions.prototype.phpMetadataNamespace="";FileOptions.prototype.rubyPackage="";FileOptions.prototype.features=null;FileOptions.prototype.uninterpretedOption=$util.emptyArray;FileOptions.prototype[".google.api.resourceDefinition"]=$util.emptyArray;FileOptions.create=function create(properties){return new FileOptions(properties)};FileOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.javaPackage!=null&&Object.hasOwnProperty.call(message,"javaPackage"))writer.uint32(10).string(message.javaPackage);if(message.javaOuterClassname!=null&&Object.hasOwnProperty.call(message,"javaOuterClassname"))writer.uint32(66).string(message.javaOuterClassname);if(message.optimizeFor!=null&&Object.hasOwnProperty.call(message,"optimizeFor"))writer.uint32(72).int32(message.optimizeFor);if(message.javaMultipleFiles!=null&&Object.hasOwnProperty.call(message,"javaMultipleFiles"))writer.uint32(80).bool(message.javaMultipleFiles);if(message.goPackage!=null&&Object.hasOwnProperty.call(message,"goPackage"))writer.uint32(90).string(message.goPackage);if(message.ccGenericServices!=null&&Object.hasOwnProperty.call(message,"ccGenericServices"))writer.uint32(128).bool(message.ccGenericServices);if(message.javaGenericServices!=null&&Object.hasOwnProperty.call(message,"javaGenericServices"))writer.uint32(136).bool(message.javaGenericServices);if(message.pyGenericServices!=null&&Object.hasOwnProperty.call(message,"pyGenericServices"))writer.uint32(144).bool(message.pyGenericServices);if(message.javaGenerateEqualsAndHash!=null&&Object.hasOwnProperty.call(message,"javaGenerateEqualsAndHash"))writer.uint32(160).bool(message.javaGenerateEqualsAndHash);if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(184).bool(message.deprecated);if(message.javaStringCheckUtf8!=null&&Object.hasOwnProperty.call(message,"javaStringCheckUtf8"))writer.uint32(216).bool(message.javaStringCheckUtf8);if(message.ccEnableArenas!=null&&Object.hasOwnProperty.call(message,"ccEnableArenas"))writer.uint32(248).bool(message.ccEnableArenas);if(message.objcClassPrefix!=null&&Object.hasOwnProperty.call(message,"objcClassPrefix"))writer.uint32(290).string(message.objcClassPrefix);if(message.csharpNamespace!=null&&Object.hasOwnProperty.call(message,"csharpNamespace"))writer.uint32(298).string(message.csharpNamespace);if(message.swiftPrefix!=null&&Object.hasOwnProperty.call(message,"swiftPrefix"))writer.uint32(314).string(message.swiftPrefix);if(message.phpClassPrefix!=null&&Object.hasOwnProperty.call(message,"phpClassPrefix"))writer.uint32(322).string(message.phpClassPrefix);if(message.phpNamespace!=null&&Object.hasOwnProperty.call(message,"phpNamespace"))writer.uint32(330).string(message.phpNamespace);if(message.phpMetadataNamespace!=null&&Object.hasOwnProperty.call(message,"phpMetadataNamespace"))writer.uint32(354).string(message.phpMetadataNamespace);if(message.rubyPackage!=null&&Object.hasOwnProperty.call(message,"rubyPackage"))writer.uint32(362).string(message.rubyPackage);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(402).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.api.resourceDefinition"]!=null&&message[".google.api.resourceDefinition"].length)for(var i=0;i<message[".google.api.resourceDefinition"].length;++i)$root.google.api.ResourceDescriptor.encode(message[".google.api.resourceDefinition"][i],writer.uint32(8426).fork()).ldelim();return writer};FileOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FileOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FileOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.javaPackage=reader.string();break}case 8:{message.javaOuterClassname=reader.string();break}case 10:{message.javaMultipleFiles=reader.bool();break}case 20:{message.javaGenerateEqualsAndHash=reader.bool();break}case 27:{message.javaStringCheckUtf8=reader.bool();break}case 9:{message.optimizeFor=reader.int32();break}case 11:{message.goPackage=reader.string();break}case 16:{message.ccGenericServices=reader.bool();break}case 17:{message.javaGenericServices=reader.bool();break}case 18:{message.pyGenericServices=reader.bool();break}case 23:{message.deprecated=reader.bool();break}case 31:{message.ccEnableArenas=reader.bool();break}case 36:{message.objcClassPrefix=reader.string();break}case 37:{message.csharpNamespace=reader.string();break}case 39:{message.swiftPrefix=reader.string();break}case 40:{message.phpClassPrefix=reader.string();break}case 41:{message.phpNamespace=reader.string();break}case 44:{message.phpMetadataNamespace=reader.string();break}case 45:{message.rubyPackage=reader.string();break}case 50:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 1053:{if(!(message[".google.api.resourceDefinition"]&&message[".google.api.resourceDefinition"].length))message[".google.api.resourceDefinition"]=[];message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};FileOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FileOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.javaPackage!=null&&message.hasOwnProperty("javaPackage"))if(!$util.isString(message.javaPackage))return"javaPackage: string expected";if(message.javaOuterClassname!=null&&message.hasOwnProperty("javaOuterClassname"))if(!$util.isString(message.javaOuterClassname))return"javaOuterClassname: string expected";if(message.javaMultipleFiles!=null&&message.hasOwnProperty("javaMultipleFiles"))if(typeof message.javaMultipleFiles!=="boolean")return"javaMultipleFiles: boolean expected";if(message.javaGenerateEqualsAndHash!=null&&message.hasOwnProperty("javaGenerateEqualsAndHash"))if(typeof message.javaGenerateEqualsAndHash!=="boolean")return"javaGenerateEqualsAndHash: boolean expected";if(message.javaStringCheckUtf8!=null&&message.hasOwnProperty("javaStringCheckUtf8"))if(typeof message.javaStringCheckUtf8!=="boolean")return"javaStringCheckUtf8: boolean expected";if(message.optimizeFor!=null&&message.hasOwnProperty("optimizeFor"))switch(message.optimizeFor){default:return"optimizeFor: enum value expected";case 1:case 2:case 3:break}if(message.goPackage!=null&&message.hasOwnProperty("goPackage"))if(!$util.isString(message.goPackage))return"goPackage: string expected";if(message.ccGenericServices!=null&&message.hasOwnProperty("ccGenericServices"))if(typeof message.ccGenericServices!=="boolean")return"ccGenericServices: boolean expected";if(message.javaGenericServices!=null&&message.hasOwnProperty("javaGenericServices"))if(typeof message.javaGenericServices!=="boolean")return"javaGenericServices: boolean expected";if(message.pyGenericServices!=null&&message.hasOwnProperty("pyGenericServices"))if(typeof message.pyGenericServices!=="boolean")return"pyGenericServices: boolean expected";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.ccEnableArenas!=null&&message.hasOwnProperty("ccEnableArenas"))if(typeof message.ccEnableArenas!=="boolean")return"ccEnableArenas: boolean expected";if(message.objcClassPrefix!=null&&message.hasOwnProperty("objcClassPrefix"))if(!$util.isString(message.objcClassPrefix))return"objcClassPrefix: string expected";if(message.csharpNamespace!=null&&message.hasOwnProperty("csharpNamespace"))if(!$util.isString(message.csharpNamespace))return"csharpNamespace: string expected";if(message.swiftPrefix!=null&&message.hasOwnProperty("swiftPrefix"))if(!$util.isString(message.swiftPrefix))return"swiftPrefix: string expected";if(message.phpClassPrefix!=null&&message.hasOwnProperty("phpClassPrefix"))if(!$util.isString(message.phpClassPrefix))return"phpClassPrefix: string expected";if(message.phpNamespace!=null&&message.hasOwnProperty("phpNamespace"))if(!$util.isString(message.phpNamespace))return"phpNamespace: string expected";if(message.phpMetadataNamespace!=null&&message.hasOwnProperty("phpMetadataNamespace"))if(!$util.isString(message.phpMetadataNamespace))return"phpMetadataNamespace: string expected";if(message.rubyPackage!=null&&message.hasOwnProperty("rubyPackage"))if(!$util.isString(message.rubyPackage))return"rubyPackage: string expected";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.resourceDefinition"]!=null&&message.hasOwnProperty(".google.api.resourceDefinition")){if(!Array.isArray(message[".google.api.resourceDefinition"]))return".google.api.resourceDefinition: array expected";for(var i=0;i<message[".google.api.resourceDefinition"].length;++i){var error=$root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i],long+1);if(error)return".google.api.resourceDefinition."+error}}return null};FileOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FileOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FileOptions;if(object.javaPackage!=null)message.javaPackage=String(object.javaPackage);if(object.javaOuterClassname!=null)message.javaOuterClassname=String(object.javaOuterClassname);if(object.javaMultipleFiles!=null)message.javaMultipleFiles=Boolean(object.javaMultipleFiles);if(object.javaGenerateEqualsAndHash!=null)message.javaGenerateEqualsAndHash=Boolean(object.javaGenerateEqualsAndHash);if(object.javaStringCheckUtf8!=null)message.javaStringCheckUtf8=Boolean(object.javaStringCheckUtf8);switch(object.optimizeFor){default:if(typeof object.optimizeFor==="number"){message.optimizeFor=object.optimizeFor;break}break;case"SPEED":case 1:message.optimizeFor=1;break;case"CODE_SIZE":case 2:message.optimizeFor=2;break;case"LITE_RUNTIME":case 3:message.optimizeFor=3;break}if(object.goPackage!=null)message.goPackage=String(object.goPackage);if(object.ccGenericServices!=null)message.ccGenericServices=Boolean(object.ccGenericServices);if(object.javaGenericServices!=null)message.javaGenericServices=Boolean(object.javaGenericServices);if(object.pyGenericServices!=null)message.pyGenericServices=Boolean(object.pyGenericServices);if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.ccEnableArenas!=null)message.ccEnableArenas=Boolean(object.ccEnableArenas);if(object.objcClassPrefix!=null)message.objcClassPrefix=String(object.objcClassPrefix);if(object.csharpNamespace!=null)message.csharpNamespace=String(object.csharpNamespace);if(object.swiftPrefix!=null)message.swiftPrefix=String(object.swiftPrefix);if(object.phpClassPrefix!=null)message.phpClassPrefix=String(object.phpClassPrefix);if(object.phpNamespace!=null)message.phpNamespace=String(object.phpNamespace);if(object.phpMetadataNamespace!=null)message.phpMetadataNamespace=String(object.phpMetadataNamespace);if(object.rubyPackage!=null)message.rubyPackage=String(object.rubyPackage);if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.FileOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.resourceDefinition"]){if(!Array.isArray(object[".google.api.resourceDefinition"]))throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: array expected");message[".google.api.resourceDefinition"]=[];for(var i=0;i<object[".google.api.resourceDefinition"].length;++i){if(typeof object[".google.api.resourceDefinition"][i]!=="object")throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected");message[".google.api.resourceDefinition"][i]=$root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i],long+1)}}return message};FileOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.uninterpretedOption=[];object[".google.api.resourceDefinition"]=[]}if(options.defaults){object.javaPackage="";object.javaOuterClassname="";object.optimizeFor=options.enums===String?"SPEED":1;object.javaMultipleFiles=false;object.goPackage="";object.ccGenericServices=false;object.javaGenericServices=false;object.pyGenericServices=false;object.javaGenerateEqualsAndHash=false;object.deprecated=false;object.javaStringCheckUtf8=false;object.ccEnableArenas=true;object.objcClassPrefix="";object.csharpNamespace="";object.swiftPrefix="";object.phpClassPrefix="";object.phpNamespace="";object.phpMetadataNamespace="";object.rubyPackage="";object.features=null}if(message.javaPackage!=null&&message.hasOwnProperty("javaPackage"))object.javaPackage=message.javaPackage;if(message.javaOuterClassname!=null&&message.hasOwnProperty("javaOuterClassname"))object.javaOuterClassname=message.javaOuterClassname;if(message.optimizeFor!=null&&message.hasOwnProperty("optimizeFor"))object.optimizeFor=options.enums===String?$root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor]===undefined?message.optimizeFor:$root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor]:message.optimizeFor;if(message.javaMultipleFiles!=null&&message.hasOwnProperty("javaMultipleFiles"))object.javaMultipleFiles=message.javaMultipleFiles;if(message.goPackage!=null&&message.hasOwnProperty("goPackage"))object.goPackage=message.goPackage;if(message.ccGenericServices!=null&&message.hasOwnProperty("ccGenericServices"))object.ccGenericServices=message.ccGenericServices;if(message.javaGenericServices!=null&&message.hasOwnProperty("javaGenericServices"))object.javaGenericServices=message.javaGenericServices;if(message.pyGenericServices!=null&&message.hasOwnProperty("pyGenericServices"))object.pyGenericServices=message.pyGenericServices;if(message.javaGenerateEqualsAndHash!=null&&message.hasOwnProperty("javaGenerateEqualsAndHash"))object.javaGenerateEqualsAndHash=message.javaGenerateEqualsAndHash;if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.javaStringCheckUtf8!=null&&message.hasOwnProperty("javaStringCheckUtf8"))object.javaStringCheckUtf8=message.javaStringCheckUtf8;if(message.ccEnableArenas!=null&&message.hasOwnProperty("ccEnableArenas"))object.ccEnableArenas=message.ccEnableArenas;if(message.objcClassPrefix!=null&&message.hasOwnProperty("objcClassPrefix"))object.objcClassPrefix=message.objcClassPrefix;if(message.csharpNamespace!=null&&message.hasOwnProperty("csharpNamespace"))object.csharpNamespace=message.csharpNamespace;if(message.swiftPrefix!=null&&message.hasOwnProperty("swiftPrefix"))object.swiftPrefix=message.swiftPrefix;if(message.phpClassPrefix!=null&&message.hasOwnProperty("phpClassPrefix"))object.phpClassPrefix=message.phpClassPrefix;if(message.phpNamespace!=null&&message.hasOwnProperty("phpNamespace"))object.phpNamespace=message.phpNamespace;if(message.phpMetadataNamespace!=null&&message.hasOwnProperty("phpMetadataNamespace"))object.phpMetadataNamespace=message.phpMetadataNamespace;if(message.rubyPackage!=null&&message.hasOwnProperty("rubyPackage"))object.rubyPackage=message.rubyPackage;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.api.resourceDefinition"]&&message[".google.api.resourceDefinition"].length){object[".google.api.resourceDefinition"]=[];for(var j=0;j<message[".google.api.resourceDefinition"].length;++j)object[".google.api.resourceDefinition"][j]=$root.google.api.ResourceDescriptor.toObject(message[".google.api.resourceDefinition"][j],options)}return object};FileOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FileOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FileOptions"};FileOptions.OptimizeMode=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[1]="SPEED"]=1;values[valuesById[2]="CODE_SIZE"]=2;values[valuesById[3]="LITE_RUNTIME"]=3;return values}();return FileOptions}();protobuf.MessageOptions=function(){function MessageOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}MessageOptions.prototype.messageSetWireFormat=false;MessageOptions.prototype.noStandardDescriptorAccessor=false;MessageOptions.prototype.deprecated=false;MessageOptions.prototype.mapEntry=false;MessageOptions.prototype.deprecatedLegacyJsonFieldConflicts=false;MessageOptions.prototype.features=null;MessageOptions.prototype.uninterpretedOption=$util.emptyArray;MessageOptions.prototype[".google.api.resource"]=null;MessageOptions.create=function create(properties){return new MessageOptions(properties)};MessageOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.messageSetWireFormat!=null&&Object.hasOwnProperty.call(message,"messageSetWireFormat"))writer.uint32(8).bool(message.messageSetWireFormat);if(message.noStandardDescriptorAccessor!=null&&Object.hasOwnProperty.call(message,"noStandardDescriptorAccessor"))writer.uint32(16).bool(message.noStandardDescriptorAccessor);if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(24).bool(message.deprecated);if(message.mapEntry!=null&&Object.hasOwnProperty.call(message,"mapEntry"))writer.uint32(56).bool(message.mapEntry);if(message.deprecatedLegacyJsonFieldConflicts!=null&&Object.hasOwnProperty.call(message,"deprecatedLegacyJsonFieldConflicts"))writer.uint32(88).bool(message.deprecatedLegacyJsonFieldConflicts);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(98).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.api.resource"]!=null&&Object.hasOwnProperty.call(message,".google.api.resource"))$root.google.api.ResourceDescriptor.encode(message[".google.api.resource"],writer.uint32(8426).fork()).ldelim();return writer};MessageOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};MessageOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.MessageOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.messageSetWireFormat=reader.bool();break}case 2:{message.noStandardDescriptorAccessor=reader.bool();break}case 3:{message.deprecated=reader.bool();break}case 7:{message.mapEntry=reader.bool();break}case 11:{message.deprecatedLegacyJsonFieldConflicts=reader.bool();break}case 12:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 1053:{message[".google.api.resource"]=$root.google.api.ResourceDescriptor.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};MessageOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};MessageOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.messageSetWireFormat!=null&&message.hasOwnProperty("messageSetWireFormat"))if(typeof message.messageSetWireFormat!=="boolean")return"messageSetWireFormat: boolean expected";if(message.noStandardDescriptorAccessor!=null&&message.hasOwnProperty("noStandardDescriptorAccessor"))if(typeof message.noStandardDescriptorAccessor!=="boolean")return"noStandardDescriptorAccessor: boolean expected";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.mapEntry!=null&&message.hasOwnProperty("mapEntry"))if(typeof message.mapEntry!=="boolean")return"mapEntry: boolean expected";if(message.deprecatedLegacyJsonFieldConflicts!=null&&message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))if(typeof message.deprecatedLegacyJsonFieldConflicts!=="boolean")return"deprecatedLegacyJsonFieldConflicts: boolean expected";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.resource"]!=null&&message.hasOwnProperty(".google.api.resource")){var error=$root.google.api.ResourceDescriptor.verify(message[".google.api.resource"],long+1);if(error)return".google.api.resource."+error}return null};MessageOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.MessageOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.MessageOptions;if(object.messageSetWireFormat!=null)message.messageSetWireFormat=Boolean(object.messageSetWireFormat);if(object.noStandardDescriptorAccessor!=null)message.noStandardDescriptorAccessor=Boolean(object.noStandardDescriptorAccessor);if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.mapEntry!=null)message.mapEntry=Boolean(object.mapEntry);if(object.deprecatedLegacyJsonFieldConflicts!=null)message.deprecatedLegacyJsonFieldConflicts=Boolean(object.deprecatedLegacyJsonFieldConflicts);if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.MessageOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.resource"]!=null){if(typeof object[".google.api.resource"]!=="object")throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected");message[".google.api.resource"]=$root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"],long+1)}return message};MessageOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults){object.messageSetWireFormat=false;object.noStandardDescriptorAccessor=false;object.deprecated=false;object.mapEntry=false;object.deprecatedLegacyJsonFieldConflicts=false;object.features=null;object[".google.api.resource"]=null}if(message.messageSetWireFormat!=null&&message.hasOwnProperty("messageSetWireFormat"))object.messageSetWireFormat=message.messageSetWireFormat;if(message.noStandardDescriptorAccessor!=null&&message.hasOwnProperty("noStandardDescriptorAccessor"))object.noStandardDescriptorAccessor=message.noStandardDescriptorAccessor;if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.mapEntry!=null&&message.hasOwnProperty("mapEntry"))object.mapEntry=message.mapEntry;if(message.deprecatedLegacyJsonFieldConflicts!=null&&message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))object.deprecatedLegacyJsonFieldConflicts=message.deprecatedLegacyJsonFieldConflicts;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.api.resource"]!=null&&message.hasOwnProperty(".google.api.resource"))object[".google.api.resource"]=$root.google.api.ResourceDescriptor.toObject(message[".google.api.resource"],options);return object};MessageOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};MessageOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.MessageOptions"};return MessageOptions}();protobuf.FieldOptions=function(){function FieldOptions(properties){this.targets=[];this.editionDefaults=[];this.uninterpretedOption=[];this[".google.api.fieldBehavior"]=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FieldOptions.prototype.ctype=0;FieldOptions.prototype.packed=false;FieldOptions.prototype.jstype=0;FieldOptions.prototype.lazy=false;FieldOptions.prototype.unverifiedLazy=false;FieldOptions.prototype.deprecated=false;FieldOptions.prototype.weak=false;FieldOptions.prototype.debugRedact=false;FieldOptions.prototype.retention=0;FieldOptions.prototype.targets=$util.emptyArray;FieldOptions.prototype.editionDefaults=$util.emptyArray;FieldOptions.prototype.features=null;FieldOptions.prototype.featureSupport=null;FieldOptions.prototype.uninterpretedOption=$util.emptyArray;FieldOptions.prototype[".google.api.fieldBehavior"]=$util.emptyArray;FieldOptions.prototype[".google.api.resourceReference"]=null;FieldOptions.create=function create(properties){return new FieldOptions(properties)};FieldOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.ctype!=null&&Object.hasOwnProperty.call(message,"ctype"))writer.uint32(8).int32(message.ctype);if(message.packed!=null&&Object.hasOwnProperty.call(message,"packed"))writer.uint32(16).bool(message.packed);if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(24).bool(message.deprecated);if(message.lazy!=null&&Object.hasOwnProperty.call(message,"lazy"))writer.uint32(40).bool(message.lazy);if(message.jstype!=null&&Object.hasOwnProperty.call(message,"jstype"))writer.uint32(48).int32(message.jstype);if(message.weak!=null&&Object.hasOwnProperty.call(message,"weak"))writer.uint32(80).bool(message.weak);if(message.unverifiedLazy!=null&&Object.hasOwnProperty.call(message,"unverifiedLazy"))writer.uint32(120).bool(message.unverifiedLazy);if(message.debugRedact!=null&&Object.hasOwnProperty.call(message,"debugRedact"))writer.uint32(128).bool(message.debugRedact);if(message.retention!=null&&Object.hasOwnProperty.call(message,"retention"))writer.uint32(136).int32(message.retention);if(message.targets!=null&&message.targets.length)for(var i=0;i<message.targets.length;++i)writer.uint32(152).int32(message.targets[i]);if(message.editionDefaults!=null&&message.editionDefaults.length)for(var i=0;i<message.editionDefaults.length;++i)$root.google.protobuf.FieldOptions.EditionDefault.encode(message.editionDefaults[i],writer.uint32(162).fork()).ldelim();if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(170).fork()).ldelim();if(message.featureSupport!=null&&Object.hasOwnProperty.call(message,"featureSupport"))$root.google.protobuf.FieldOptions.FeatureSupport.encode(message.featureSupport,writer.uint32(178).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.api.fieldBehavior"]!=null&&message[".google.api.fieldBehavior"].length)for(var i=0;i<message[".google.api.fieldBehavior"].length;++i)writer.uint32(8416).int32(message[".google.api.fieldBehavior"][i]);if(message[".google.api.resourceReference"]!=null&&Object.hasOwnProperty.call(message,".google.api.resourceReference"))$root.google.api.ResourceReference.encode(message[".google.api.resourceReference"],writer.uint32(8442).fork()).ldelim();return writer};FieldOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FieldOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.ctype=reader.int32();break}case 2:{message.packed=reader.bool();break}case 6:{message.jstype=reader.int32();break}case 5:{message.lazy=reader.bool();break}case 15:{message.unverifiedLazy=reader.bool();break}case 3:{message.deprecated=reader.bool();break}case 10:{message.weak=reader.bool();break}case 16:{message.debugRedact=reader.bool();break}case 17:{message.retention=reader.int32();break}case 19:{if(!(message.targets&&message.targets.length))message.targets=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.targets.push(reader.int32())}else message.targets.push(reader.int32());break}case 20:{if(!(message.editionDefaults&&message.editionDefaults.length))message.editionDefaults=[];message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader,reader.uint32(),undefined,long+1));break}case 21:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 22:{message.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 1052:{if(!(message[".google.api.fieldBehavior"]&&message[".google.api.fieldBehavior"].length))message[".google.api.fieldBehavior"]=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message[".google.api.fieldBehavior"].push(reader.int32())}else message[".google.api.fieldBehavior"].push(reader.int32());break}case 1055:{message[".google.api.resourceReference"]=$root.google.api.ResourceReference.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};FieldOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FieldOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.ctype!=null&&message.hasOwnProperty("ctype"))switch(message.ctype){default:return"ctype: enum value expected";case 0:case 1:case 2:break}if(message.packed!=null&&message.hasOwnProperty("packed"))if(typeof message.packed!=="boolean")return"packed: boolean expected";if(message.jstype!=null&&message.hasOwnProperty("jstype"))switch(message.jstype){default:return"jstype: enum value expected";case 0:case 1:case 2:break}if(message.lazy!=null&&message.hasOwnProperty("lazy"))if(typeof message.lazy!=="boolean")return"lazy: boolean expected";if(message.unverifiedLazy!=null&&message.hasOwnProperty("unverifiedLazy"))if(typeof message.unverifiedLazy!=="boolean")return"unverifiedLazy: boolean expected";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.weak!=null&&message.hasOwnProperty("weak"))if(typeof message.weak!=="boolean")return"weak: boolean expected";if(message.debugRedact!=null&&message.hasOwnProperty("debugRedact"))if(typeof message.debugRedact!=="boolean")return"debugRedact: boolean expected";if(message.retention!=null&&message.hasOwnProperty("retention"))switch(message.retention){default:return"retention: enum value expected";case 0:case 1:case 2:break}if(message.targets!=null&&message.hasOwnProperty("targets")){if(!Array.isArray(message.targets))return"targets: array expected";for(var i=0;i<message.targets.length;++i)switch(message.targets[i]){default:return"targets: enum value[] expected";case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:break}}if(message.editionDefaults!=null&&message.hasOwnProperty("editionDefaults")){if(!Array.isArray(message.editionDefaults))return"editionDefaults: array expected";for(var i=0;i<message.editionDefaults.length;++i){var error=$root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i],long+1);if(error)return"editionDefaults."+error}}if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.featureSupport!=null&&message.hasOwnProperty("featureSupport")){var error=$root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport,long+1);if(error)return"featureSupport."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.fieldBehavior"]!=null&&message.hasOwnProperty(".google.api.fieldBehavior")){if(!Array.isArray(message[".google.api.fieldBehavior"]))return".google.api.fieldBehavior: array expected";for(var i=0;i<message[".google.api.fieldBehavior"].length;++i)switch(message[".google.api.fieldBehavior"][i]){default:return".google.api.fieldBehavior: enum value[] expected";case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:break}}if(message[".google.api.resourceReference"]!=null&&message.hasOwnProperty(".google.api.resourceReference")){var error=$root.google.api.ResourceReference.verify(message[".google.api.resourceReference"],long+1);if(error)return".google.api.resourceReference."+error}return null};FieldOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldOptions;switch(object.ctype){default:if(typeof object.ctype==="number"){message.ctype=object.ctype;break}break;case"STRING":case 0:message.ctype=0;break;case"CORD":case 1:message.ctype=1;break;case"STRING_PIECE":case 2:message.ctype=2;break}if(object.packed!=null)message.packed=Boolean(object.packed);switch(object.jstype){default:if(typeof object.jstype==="number"){message.jstype=object.jstype;break}break;case"JS_NORMAL":case 0:message.jstype=0;break;case"JS_STRING":case 1:message.jstype=1;break;case"JS_NUMBER":case 2:message.jstype=2;break}if(object.lazy!=null)message.lazy=Boolean(object.lazy);if(object.unverifiedLazy!=null)message.unverifiedLazy=Boolean(object.unverifiedLazy);if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.weak!=null)message.weak=Boolean(object.weak);if(object.debugRedact!=null)message.debugRedact=Boolean(object.debugRedact);switch(object.retention){default:if(typeof object.retention==="number"){message.retention=object.retention;break}break;case"RETENTION_UNKNOWN":case 0:message.retention=0;break;case"RETENTION_RUNTIME":case 1:message.retention=1;break;case"RETENTION_SOURCE":case 2:message.retention=2;break}if(object.targets){if(!Array.isArray(object.targets))throw TypeError(".google.protobuf.FieldOptions.targets: array expected");message.targets=[];for(var i=0;i<object.targets.length;++i)switch(object.targets[i]){default:if(typeof object.targets[i]==="number"){message.targets[i]=object.targets[i];break}case"TARGET_TYPE_UNKNOWN":case 0:message.targets[i]=0;break;case"TARGET_TYPE_FILE":case 1:message.targets[i]=1;break;case"TARGET_TYPE_EXTENSION_RANGE":case 2:message.targets[i]=2;break;case"TARGET_TYPE_MESSAGE":case 3:message.targets[i]=3;break;case"TARGET_TYPE_FIELD":case 4:message.targets[i]=4;break;case"TARGET_TYPE_ONEOF":case 5:message.targets[i]=5;break;case"TARGET_TYPE_ENUM":case 6:message.targets[i]=6;break;case"TARGET_TYPE_ENUM_ENTRY":case 7:message.targets[i]=7;break;case"TARGET_TYPE_SERVICE":case 8:message.targets[i]=8;break;case"TARGET_TYPE_METHOD":case 9:message.targets[i]=9;break}}if(object.editionDefaults){if(!Array.isArray(object.editionDefaults))throw TypeError(".google.protobuf.FieldOptions.editionDefaults: array expected");message.editionDefaults=[];for(var i=0;i<object.editionDefaults.length;++i){if(typeof object.editionDefaults[i]!=="object")throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected");message.editionDefaults[i]=$root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i],long+1)}}if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.FieldOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.featureSupport!=null){if(typeof object.featureSupport!=="object")throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected");message.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.fieldBehavior"]){if(!Array.isArray(object[".google.api.fieldBehavior"]))throw TypeError(".google.protobuf.FieldOptions..google.api.fieldBehavior: array expected");message[".google.api.fieldBehavior"]=[];for(var i=0;i<object[".google.api.fieldBehavior"].length;++i)switch(object[".google.api.fieldBehavior"][i]){default:if(typeof object[".google.api.fieldBehavior"][i]==="number"){message[".google.api.fieldBehavior"][i]=object[".google.api.fieldBehavior"][i];break}case"FIELD_BEHAVIOR_UNSPECIFIED":case 0:message[".google.api.fieldBehavior"][i]=0;break;case"OPTIONAL":case 1:message[".google.api.fieldBehavior"][i]=1;break;case"REQUIRED":case 2:message[".google.api.fieldBehavior"][i]=2;break;case"OUTPUT_ONLY":case 3:message[".google.api.fieldBehavior"][i]=3;break;case"INPUT_ONLY":case 4:message[".google.api.fieldBehavior"][i]=4;break;case"IMMUTABLE":case 5:message[".google.api.fieldBehavior"][i]=5;break;case"UNORDERED_LIST":case 6:message[".google.api.fieldBehavior"][i]=6;break;case"NON_EMPTY_DEFAULT":case 7:message[".google.api.fieldBehavior"][i]=7;break;case"IDENTIFIER":case 8:message[".google.api.fieldBehavior"][i]=8;break}}if(object[".google.api.resourceReference"]!=null){if(typeof object[".google.api.resourceReference"]!=="object")throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected");message[".google.api.resourceReference"]=$root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"],long+1)}return message};FieldOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.targets=[];object.editionDefaults=[];object.uninterpretedOption=[];object[".google.api.fieldBehavior"]=[]}if(options.defaults){object.ctype=options.enums===String?"STRING":0;object.packed=false;object.deprecated=false;object.lazy=false;object.jstype=options.enums===String?"JS_NORMAL":0;object.weak=false;object.unverifiedLazy=false;object.debugRedact=false;object.retention=options.enums===String?"RETENTION_UNKNOWN":0;object.features=null;object.featureSupport=null;object[".google.api.resourceReference"]=null}if(message.ctype!=null&&message.hasOwnProperty("ctype"))object.ctype=options.enums===String?$root.google.protobuf.FieldOptions.CType[message.ctype]===undefined?message.ctype:$root.google.protobuf.FieldOptions.CType[message.ctype]:message.ctype;if(message.packed!=null&&message.hasOwnProperty("packed"))object.packed=message.packed;if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.lazy!=null&&message.hasOwnProperty("lazy"))object.lazy=message.lazy;if(message.jstype!=null&&message.hasOwnProperty("jstype"))object.jstype=options.enums===String?$root.google.protobuf.FieldOptions.JSType[message.jstype]===undefined?message.jstype:$root.google.protobuf.FieldOptions.JSType[message.jstype]:message.jstype;if(message.weak!=null&&message.hasOwnProperty("weak"))object.weak=message.weak;if(message.unverifiedLazy!=null&&message.hasOwnProperty("unverifiedLazy"))object.unverifiedLazy=message.unverifiedLazy;if(message.debugRedact!=null&&message.hasOwnProperty("debugRedact"))object.debugRedact=message.debugRedact;if(message.retention!=null&&message.hasOwnProperty("retention"))object.retention=options.enums===String?$root.google.protobuf.FieldOptions.OptionRetention[message.retention]===undefined?message.retention:$root.google.protobuf.FieldOptions.OptionRetention[message.retention]:message.retention;if(message.targets&&message.targets.length){object.targets=[];for(var j=0;j<message.targets.length;++j)object.targets[j]=options.enums===String?$root.google.protobuf.FieldOptions.OptionTargetType[message.targets[j]]===undefined?message.targets[j]:$root.google.protobuf.FieldOptions.OptionTargetType[message.targets[j]]:message.targets[j]}if(message.editionDefaults&&message.editionDefaults.length){object.editionDefaults=[];for(var j=0;j<message.editionDefaults.length;++j)object.editionDefaults[j]=$root.google.protobuf.FieldOptions.EditionDefault.toObject(message.editionDefaults[j],options)}if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.featureSupport!=null&&message.hasOwnProperty("featureSupport"))object.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.toObject(message.featureSupport,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.api.fieldBehavior"]&&message[".google.api.fieldBehavior"].length){object[".google.api.fieldBehavior"]=[];for(var j=0;j<message[".google.api.fieldBehavior"].length;++j)object[".google.api.fieldBehavior"][j]=options.enums===String?$root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]]===undefined?message[".google.api.fieldBehavior"][j]:$root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]]:message[".google.api.fieldBehavior"][j]}if(message[".google.api.resourceReference"]!=null&&message.hasOwnProperty(".google.api.resourceReference"))object[".google.api.resourceReference"]=$root.google.api.ResourceReference.toObject(message[".google.api.resourceReference"],options);return object};FieldOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FieldOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldOptions"};FieldOptions.CType=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="STRING"]=0;values[valuesById[1]="CORD"]=1;values[valuesById[2]="STRING_PIECE"]=2;return values}();FieldOptions.JSType=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="JS_NORMAL"]=0;values[valuesById[1]="JS_STRING"]=1;values[valuesById[2]="JS_NUMBER"]=2;return values}();FieldOptions.OptionRetention=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="RETENTION_UNKNOWN"]=0;values[valuesById[1]="RETENTION_RUNTIME"]=1;values[valuesById[2]="RETENTION_SOURCE"]=2;return values}();FieldOptions.OptionTargetType=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="TARGET_TYPE_UNKNOWN"]=0;values[valuesById[1]="TARGET_TYPE_FILE"]=1;values[valuesById[2]="TARGET_TYPE_EXTENSION_RANGE"]=2;values[valuesById[3]="TARGET_TYPE_MESSAGE"]=3;values[valuesById[4]="TARGET_TYPE_FIELD"]=4;values[valuesById[5]="TARGET_TYPE_ONEOF"]=5;values[valuesById[6]="TARGET_TYPE_ENUM"]=6;values[valuesById[7]="TARGET_TYPE_ENUM_ENTRY"]=7;values[valuesById[8]="TARGET_TYPE_SERVICE"]=8;values[valuesById[9]="TARGET_TYPE_METHOD"]=9;return values}();FieldOptions.EditionDefault=function(){function EditionDefault(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EditionDefault.prototype.edition=0;EditionDefault.prototype.value="";EditionDefault.create=function create(properties){return new EditionDefault(properties)};EditionDefault.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.value!=null&&Object.hasOwnProperty.call(message,"value"))writer.uint32(18).string(message.value);if(message.edition!=null&&Object.hasOwnProperty.call(message,"edition"))writer.uint32(24).int32(message.edition);return writer};EditionDefault.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EditionDefault.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldOptions.EditionDefault;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 3:{message.edition=reader.int32();break}case 2:{message.value=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};EditionDefault.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EditionDefault.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.edition!=null&&message.hasOwnProperty("edition"))switch(message.edition){default:return"edition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.value!=null&&message.hasOwnProperty("value"))if(!$util.isString(message.value))return"value: string expected";return null};EditionDefault.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldOptions.EditionDefault)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldOptions.EditionDefault;switch(object.edition){default:if(typeof object.edition==="number"){message.edition=object.edition;break}break;case"EDITION_UNKNOWN":case 0:message.edition=0;break;case"EDITION_LEGACY":case 900:message.edition=900;break;case"EDITION_PROTO2":case 998:message.edition=998;break;case"EDITION_PROTO3":case 999:message.edition=999;break;case"EDITION_2023":case 1e3:message.edition=1e3;break;case"EDITION_2024":case 1001:message.edition=1001;break;case"EDITION_1_TEST_ONLY":case 1:message.edition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.edition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.edition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.edition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.edition=99999;break;case"EDITION_MAX":case 2147483647:message.edition=2147483647;break}if(object.value!=null)message.value=String(object.value);return message};EditionDefault.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.value="";object.edition=options.enums===String?"EDITION_UNKNOWN":0}if(message.value!=null&&message.hasOwnProperty("value"))object.value=message.value;if(message.edition!=null&&message.hasOwnProperty("edition"))object.edition=options.enums===String?$root.google.protobuf.Edition[message.edition]===undefined?message.edition:$root.google.protobuf.Edition[message.edition]:message.edition;return object};EditionDefault.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EditionDefault.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldOptions.EditionDefault"};return EditionDefault}();FieldOptions.FeatureSupport=function(){function FeatureSupport(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FeatureSupport.prototype.editionIntroduced=0;FeatureSupport.prototype.editionDeprecated=0;FeatureSupport.prototype.deprecationWarning="";FeatureSupport.prototype.editionRemoved=0;FeatureSupport.create=function create(properties){return new FeatureSupport(properties)};FeatureSupport.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.editionIntroduced!=null&&Object.hasOwnProperty.call(message,"editionIntroduced"))writer.uint32(8).int32(message.editionIntroduced);if(message.editionDeprecated!=null&&Object.hasOwnProperty.call(message,"editionDeprecated"))writer.uint32(16).int32(message.editionDeprecated);if(message.deprecationWarning!=null&&Object.hasOwnProperty.call(message,"deprecationWarning"))writer.uint32(26).string(message.deprecationWarning);if(message.editionRemoved!=null&&Object.hasOwnProperty.call(message,"editionRemoved"))writer.uint32(32).int32(message.editionRemoved);return writer};FeatureSupport.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FeatureSupport.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldOptions.FeatureSupport;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.editionIntroduced=reader.int32();break}case 2:{message.editionDeprecated=reader.int32();break}case 3:{message.deprecationWarning=reader.string();break}case 4:{message.editionRemoved=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};FeatureSupport.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FeatureSupport.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.editionIntroduced!=null&&message.hasOwnProperty("editionIntroduced"))switch(message.editionIntroduced){default:return"editionIntroduced: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.editionDeprecated!=null&&message.hasOwnProperty("editionDeprecated"))switch(message.editionDeprecated){default:return"editionDeprecated: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.deprecationWarning!=null&&message.hasOwnProperty("deprecationWarning"))if(!$util.isString(message.deprecationWarning))return"deprecationWarning: string expected";if(message.editionRemoved!=null&&message.hasOwnProperty("editionRemoved"))switch(message.editionRemoved){default:return"editionRemoved: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}return null};FeatureSupport.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldOptions.FeatureSupport)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldOptions.FeatureSupport;switch(object.editionIntroduced){default:if(typeof object.editionIntroduced==="number"){message.editionIntroduced=object.editionIntroduced;break}break;case"EDITION_UNKNOWN":case 0:message.editionIntroduced=0;break;case"EDITION_LEGACY":case 900:message.editionIntroduced=900;break;case"EDITION_PROTO2":case 998:message.editionIntroduced=998;break;case"EDITION_PROTO3":case 999:message.editionIntroduced=999;break;case"EDITION_2023":case 1e3:message.editionIntroduced=1e3;break;case"EDITION_2024":case 1001:message.editionIntroduced=1001;break;case"EDITION_1_TEST_ONLY":case 1:message.editionIntroduced=1;break;case"EDITION_2_TEST_ONLY":case 2:message.editionIntroduced=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.editionIntroduced=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.editionIntroduced=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.editionIntroduced=99999;break;case"EDITION_MAX":case 2147483647:message.editionIntroduced=2147483647;break}switch(object.editionDeprecated){default:if(typeof object.editionDeprecated==="number"){message.editionDeprecated=object.editionDeprecated;break}break;case"EDITION_UNKNOWN":case 0:message.editionDeprecated=0;break;case"EDITION_LEGACY":case 900:message.editionDeprecated=900;break;case"EDITION_PROTO2":case 998:message.editionDeprecated=998;break;case"EDITION_PROTO3":case 999:message.editionDeprecated=999;break;case"EDITION_2023":case 1e3:message.editionDeprecated=1e3;break;case"EDITION_2024":case 1001:message.editionDeprecated=1001;break;case"EDITION_1_TEST_ONLY":case 1:message.editionDeprecated=1;break;case"EDITION_2_TEST_ONLY":case 2:message.editionDeprecated=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.editionDeprecated=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.editionDeprecated=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.editionDeprecated=99999;break;case"EDITION_MAX":case 2147483647:message.editionDeprecated=2147483647;break}if(object.deprecationWarning!=null)message.deprecationWarning=String(object.deprecationWarning);switch(object.editionRemoved){default:if(typeof object.editionRemoved==="number"){message.editionRemoved=object.editionRemoved;break}break;case"EDITION_UNKNOWN":case 0:message.editionRemoved=0;break;case"EDITION_LEGACY":case 900:message.editionRemoved=900;break;case"EDITION_PROTO2":case 998:message.editionRemoved=998;break;case"EDITION_PROTO3":case 999:message.editionRemoved=999;break;case"EDITION_2023":case 1e3:message.editionRemoved=1e3;break;case"EDITION_2024":case 1001:message.editionRemoved=1001;break;case"EDITION_1_TEST_ONLY":case 1:message.editionRemoved=1;break;case"EDITION_2_TEST_ONLY":case 2:message.editionRemoved=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.editionRemoved=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.editionRemoved=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.editionRemoved=99999;break;case"EDITION_MAX":case 2147483647:message.editionRemoved=2147483647;break}return message};FeatureSupport.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.editionIntroduced=options.enums===String?"EDITION_UNKNOWN":0;object.editionDeprecated=options.enums===String?"EDITION_UNKNOWN":0;object.deprecationWarning="";object.editionRemoved=options.enums===String?"EDITION_UNKNOWN":0}if(message.editionIntroduced!=null&&message.hasOwnProperty("editionIntroduced"))object.editionIntroduced=options.enums===String?$root.google.protobuf.Edition[message.editionIntroduced]===undefined?message.editionIntroduced:$root.google.protobuf.Edition[message.editionIntroduced]:message.editionIntroduced;if(message.editionDeprecated!=null&&message.hasOwnProperty("editionDeprecated"))object.editionDeprecated=options.enums===String?$root.google.protobuf.Edition[message.editionDeprecated]===undefined?message.editionDeprecated:$root.google.protobuf.Edition[message.editionDeprecated]:message.editionDeprecated;if(message.deprecationWarning!=null&&message.hasOwnProperty("deprecationWarning"))object.deprecationWarning=message.deprecationWarning;if(message.editionRemoved!=null&&message.hasOwnProperty("editionRemoved"))object.editionRemoved=options.enums===String?$root.google.protobuf.Edition[message.editionRemoved]===undefined?message.editionRemoved:$root.google.protobuf.Edition[message.editionRemoved]:message.editionRemoved;return object};FeatureSupport.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FeatureSupport.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldOptions.FeatureSupport"};return FeatureSupport}();return FieldOptions}();protobuf.OneofOptions=function(){function OneofOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}OneofOptions.prototype.features=null;OneofOptions.prototype.uninterpretedOption=$util.emptyArray;OneofOptions.create=function create(properties){return new OneofOptions(properties)};OneofOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(10).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();return writer};OneofOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};OneofOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.OneofOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};OneofOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};OneofOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}return null};OneofOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.OneofOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.OneofOptions;if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.OneofOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}return message};OneofOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults)object.features=null;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}return object};OneofOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};OneofOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.OneofOptions"};return OneofOptions}();protobuf.EnumOptions=function(){function EnumOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumOptions.prototype.allowAlias=false;EnumOptions.prototype.deprecated=false;EnumOptions.prototype.deprecatedLegacyJsonFieldConflicts=false;EnumOptions.prototype.features=null;EnumOptions.prototype.uninterpretedOption=$util.emptyArray;EnumOptions.create=function create(properties){return new EnumOptions(properties)};EnumOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowAlias!=null&&Object.hasOwnProperty.call(message,"allowAlias"))writer.uint32(16).bool(message.allowAlias);if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(24).bool(message.deprecated);if(message.deprecatedLegacyJsonFieldConflicts!=null&&Object.hasOwnProperty.call(message,"deprecatedLegacyJsonFieldConflicts"))writer.uint32(48).bool(message.deprecatedLegacyJsonFieldConflicts);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(58).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();return writer};EnumOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 2:{message.allowAlias=reader.bool();break}case 3:{message.deprecated=reader.bool();break}case 6:{message.deprecatedLegacyJsonFieldConflicts=reader.bool();break}case 7:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};EnumOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowAlias!=null&&message.hasOwnProperty("allowAlias"))if(typeof message.allowAlias!=="boolean")return"allowAlias: boolean expected";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.deprecatedLegacyJsonFieldConflicts!=null&&message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))if(typeof message.deprecatedLegacyJsonFieldConflicts!=="boolean")return"deprecatedLegacyJsonFieldConflicts: boolean expected";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}return null};EnumOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumOptions;if(object.allowAlias!=null)message.allowAlias=Boolean(object.allowAlias);if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.deprecatedLegacyJsonFieldConflicts!=null)message.deprecatedLegacyJsonFieldConflicts=Boolean(object.deprecatedLegacyJsonFieldConflicts);if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.EnumOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}return message};EnumOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults){object.allowAlias=false;object.deprecated=false;object.deprecatedLegacyJsonFieldConflicts=false;object.features=null}if(message.allowAlias!=null&&message.hasOwnProperty("allowAlias"))object.allowAlias=message.allowAlias;if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.deprecatedLegacyJsonFieldConflicts!=null&&message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))object.deprecatedLegacyJsonFieldConflicts=message.deprecatedLegacyJsonFieldConflicts;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}return object};EnumOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumOptions"};return EnumOptions}();protobuf.EnumValueOptions=function(){function EnumValueOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumValueOptions.prototype.deprecated=false;EnumValueOptions.prototype.features=null;EnumValueOptions.prototype.debugRedact=false;EnumValueOptions.prototype.featureSupport=null;EnumValueOptions.prototype.uninterpretedOption=$util.emptyArray;EnumValueOptions.create=function create(properties){return new EnumValueOptions(properties)};EnumValueOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(8).bool(message.deprecated);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(18).fork()).ldelim();if(message.debugRedact!=null&&Object.hasOwnProperty.call(message,"debugRedact"))writer.uint32(24).bool(message.debugRedact);if(message.featureSupport!=null&&Object.hasOwnProperty.call(message,"featureSupport"))$root.google.protobuf.FieldOptions.FeatureSupport.encode(message.featureSupport,writer.uint32(34).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();return writer};EnumValueOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumValueOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumValueOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.deprecated=reader.bool();break}case 2:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.debugRedact=reader.bool();break}case 4:{message.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};EnumValueOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumValueOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.debugRedact!=null&&message.hasOwnProperty("debugRedact"))if(typeof message.debugRedact!=="boolean")return"debugRedact: boolean expected";if(message.featureSupport!=null&&message.hasOwnProperty("featureSupport")){var error=$root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport,long+1);if(error)return"featureSupport."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}return null};EnumValueOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumValueOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumValueOptions;if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.EnumValueOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.debugRedact!=null)message.debugRedact=Boolean(object.debugRedact);if(object.featureSupport!=null){if(typeof object.featureSupport!=="object")throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected");message.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}return message};EnumValueOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults){object.deprecated=false;object.features=null;object.debugRedact=false;object.featureSupport=null}if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.debugRedact!=null&&message.hasOwnProperty("debugRedact"))object.debugRedact=message.debugRedact;if(message.featureSupport!=null&&message.hasOwnProperty("featureSupport"))object.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.toObject(message.featureSupport,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}return object};EnumValueOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumValueOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumValueOptions"};return EnumValueOptions}();protobuf.ServiceOptions=function(){function ServiceOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ServiceOptions.prototype.features=null;ServiceOptions.prototype.deprecated=false;ServiceOptions.prototype.uninterpretedOption=$util.emptyArray;ServiceOptions.prototype[".google.api.defaultHost"]="";ServiceOptions.prototype[".google.api.oauthScopes"]="";ServiceOptions.prototype[".google.api.apiVersion"]="";ServiceOptions.create=function create(properties){return new ServiceOptions(properties)};ServiceOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(264).bool(message.deprecated);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(274).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.api.defaultHost"]!=null&&Object.hasOwnProperty.call(message,".google.api.defaultHost"))writer.uint32(8394).string(message[".google.api.defaultHost"]);if(message[".google.api.oauthScopes"]!=null&&Object.hasOwnProperty.call(message,".google.api.oauthScopes"))writer.uint32(8402).string(message[".google.api.oauthScopes"]);if(message[".google.api.apiVersion"]!=null&&Object.hasOwnProperty.call(message,".google.api.apiVersion"))writer.uint32(4200000010).string(message[".google.api.apiVersion"]);return writer};ServiceOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ServiceOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.ServiceOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 34:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 33:{message.deprecated=reader.bool();break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 1049:{message[".google.api.defaultHost"]=reader.string();break}case 1050:{message[".google.api.oauthScopes"]=reader.string();break}case 525000001:{message[".google.api.apiVersion"]=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};ServiceOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ServiceOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.defaultHost"]!=null&&message.hasOwnProperty(".google.api.defaultHost"))if(!$util.isString(message[".google.api.defaultHost"]))return".google.api.defaultHost: string expected";if(message[".google.api.oauthScopes"]!=null&&message.hasOwnProperty(".google.api.oauthScopes"))if(!$util.isString(message[".google.api.oauthScopes"]))return".google.api.oauthScopes: string expected";if(message[".google.api.apiVersion"]!=null&&message.hasOwnProperty(".google.api.apiVersion"))if(!$util.isString(message[".google.api.apiVersion"]))return".google.api.apiVersion: string expected";return null};ServiceOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.ServiceOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.ServiceOptions;if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.ServiceOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.defaultHost"]!=null)message[".google.api.defaultHost"]=String(object[".google.api.defaultHost"]);if(object[".google.api.oauthScopes"]!=null)message[".google.api.oauthScopes"]=String(object[".google.api.oauthScopes"]);if(object[".google.api.apiVersion"]!=null)message[".google.api.apiVersion"]=String(object[".google.api.apiVersion"]);return message};ServiceOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults){object.deprecated=false;object.features=null;object[".google.api.defaultHost"]="";object[".google.api.oauthScopes"]="";object[".google.api.apiVersion"]=""}if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.api.defaultHost"]!=null&&message.hasOwnProperty(".google.api.defaultHost"))object[".google.api.defaultHost"]=message[".google.api.defaultHost"];if(message[".google.api.oauthScopes"]!=null&&message.hasOwnProperty(".google.api.oauthScopes"))object[".google.api.oauthScopes"]=message[".google.api.oauthScopes"];if(message[".google.api.apiVersion"]!=null&&message.hasOwnProperty(".google.api.apiVersion"))object[".google.api.apiVersion"]=message[".google.api.apiVersion"];return object};ServiceOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ServiceOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.ServiceOptions"};return ServiceOptions}();protobuf.MethodOptions=function(){function MethodOptions(properties){this.uninterpretedOption=[];this[".google.api.methodSignature"]=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}MethodOptions.prototype.deprecated=false;MethodOptions.prototype.idempotencyLevel=0;MethodOptions.prototype.features=null;MethodOptions.prototype.uninterpretedOption=$util.emptyArray;MethodOptions.prototype[".google.api.http"]=null;MethodOptions.prototype[".google.api.methodSignature"]=$util.emptyArray;MethodOptions.prototype[".google.longrunning.operationInfo"]=null;MethodOptions.create=function create(properties){return new MethodOptions(properties)};MethodOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(264).bool(message.deprecated);if(message.idempotencyLevel!=null&&Object.hasOwnProperty.call(message,"idempotencyLevel"))writer.uint32(272).int32(message.idempotencyLevel);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(282).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.longrunning.operationInfo"]!=null&&Object.hasOwnProperty.call(message,".google.longrunning.operationInfo"))$root.google.longrunning.OperationInfo.encode(message[".google.longrunning.operationInfo"],writer.uint32(8394).fork()).ldelim();if(message[".google.api.methodSignature"]!=null&&message[".google.api.methodSignature"].length)for(var i=0;i<message[".google.api.methodSignature"].length;++i)writer.uint32(8410).string(message[".google.api.methodSignature"][i]);if(message[".google.api.http"]!=null&&Object.hasOwnProperty.call(message,".google.api.http"))$root.google.api.HttpRule.encode(message[".google.api.http"],writer.uint32(578365826).fork()).ldelim();return writer};MethodOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};MethodOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.MethodOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 33:{message.deprecated=reader.bool();break}case 34:{message.idempotencyLevel=reader.int32();break}case 35:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 72295728:{message[".google.api.http"]=$root.google.api.HttpRule.decode(reader,reader.uint32(),undefined,long+1);break}case 1051:{if(!(message[".google.api.methodSignature"]&&message[".google.api.methodSignature"].length))message[".google.api.methodSignature"]=[];message[".google.api.methodSignature"].push(reader.string());break}case 1049:{message[".google.longrunning.operationInfo"]=$root.google.longrunning.OperationInfo.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};MethodOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};MethodOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.idempotencyLevel!=null&&message.hasOwnProperty("idempotencyLevel"))switch(message.idempotencyLevel){default:return"idempotencyLevel: enum value expected";case 0:case 1:case 2:break}if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.http"]!=null&&message.hasOwnProperty(".google.api.http")){var error=$root.google.api.HttpRule.verify(message[".google.api.http"],long+1);if(error)return".google.api.http."+error}if(message[".google.api.methodSignature"]!=null&&message.hasOwnProperty(".google.api.methodSignature")){if(!Array.isArray(message[".google.api.methodSignature"]))return".google.api.methodSignature: array expected";for(var i=0;i<message[".google.api.methodSignature"].length;++i)if(!$util.isString(message[".google.api.methodSignature"][i]))return".google.api.methodSignature: string[] expected"}if(message[".google.longrunning.operationInfo"]!=null&&message.hasOwnProperty(".google.longrunning.operationInfo")){var error=$root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"],long+1);if(error)return".google.longrunning.operationInfo."+error}return null};MethodOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.MethodOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.MethodOptions;if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);switch(object.idempotencyLevel){default:if(typeof object.idempotencyLevel==="number"){message.idempotencyLevel=object.idempotencyLevel;break}break;case"IDEMPOTENCY_UNKNOWN":case 0:message.idempotencyLevel=0;break;case"NO_SIDE_EFFECTS":case 1:message.idempotencyLevel=1;break;case"IDEMPOTENT":case 2:message.idempotencyLevel=2;break}if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.MethodOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.http"]!=null){if(typeof object[".google.api.http"]!=="object")throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected");message[".google.api.http"]=$root.google.api.HttpRule.fromObject(object[".google.api.http"],long+1)}if(object[".google.api.methodSignature"]){if(!Array.isArray(object[".google.api.methodSignature"]))throw TypeError(".google.protobuf.MethodOptions..google.api.methodSignature: array expected");message[".google.api.methodSignature"]=[];for(var i=0;i<object[".google.api.methodSignature"].length;++i)message[".google.api.methodSignature"][i]=String(object[".google.api.methodSignature"][i])}if(object[".google.longrunning.operationInfo"]!=null){if(typeof object[".google.longrunning.operationInfo"]!=="object")throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected");message[".google.longrunning.operationInfo"]=$root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"],long+1)}return message};MethodOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.uninterpretedOption=[];object[".google.api.methodSignature"]=[]}if(options.defaults){object.deprecated=false;object.idempotencyLevel=options.enums===String?"IDEMPOTENCY_UNKNOWN":0;object.features=null;object[".google.longrunning.operationInfo"]=null;object[".google.api.http"]=null}if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.idempotencyLevel!=null&&message.hasOwnProperty("idempotencyLevel"))object.idempotencyLevel=options.enums===String?$root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel]===undefined?message.idempotencyLevel:$root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel]:message.idempotencyLevel;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.longrunning.operationInfo"]!=null&&message.hasOwnProperty(".google.longrunning.operationInfo"))object[".google.longrunning.operationInfo"]=$root.google.longrunning.OperationInfo.toObject(message[".google.longrunning.operationInfo"],options);if(message[".google.api.methodSignature"]&&message[".google.api.methodSignature"].length){object[".google.api.methodSignature"]=[];for(var j=0;j<message[".google.api.methodSignature"].length;++j)object[".google.api.methodSignature"][j]=message[".google.api.methodSignature"][j]}if(message[".google.api.http"]!=null&&message.hasOwnProperty(".google.api.http"))object[".google.api.http"]=$root.google.api.HttpRule.toObject(message[".google.api.http"],options);return object};MethodOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};MethodOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.MethodOptions"};MethodOptions.IdempotencyLevel=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="IDEMPOTENCY_UNKNOWN"]=0;values[valuesById[1]="NO_SIDE_EFFECTS"]=1;values[valuesById[2]="IDEMPOTENT"]=2;return values}();return MethodOptions}();protobuf.UninterpretedOption=function(){function UninterpretedOption(properties){this.name=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}UninterpretedOption.prototype.name=$util.emptyArray;UninterpretedOption.prototype.identifierValue="";UninterpretedOption.prototype.positiveIntValue=$util.Long?$util.Long.fromBits(0,0,true):0;UninterpretedOption.prototype.negativeIntValue=$util.Long?$util.Long.fromBits(0,0,false):0;UninterpretedOption.prototype.doubleValue=0;UninterpretedOption.prototype.stringValue=$util.newBuffer([]);UninterpretedOption.prototype.aggregateValue="";UninterpretedOption.create=function create(properties){return new UninterpretedOption(properties)};UninterpretedOption.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&message.name.length)for(var i=0;i<message.name.length;++i)$root.google.protobuf.UninterpretedOption.NamePart.encode(message.name[i],writer.uint32(18).fork()).ldelim();if(message.identifierValue!=null&&Object.hasOwnProperty.call(message,"identifierValue"))writer.uint32(26).string(message.identifierValue);if(message.positiveIntValue!=null&&Object.hasOwnProperty.call(message,"positiveIntValue"))writer.uint32(32).uint64(message.positiveIntValue);if(message.negativeIntValue!=null&&Object.hasOwnProperty.call(message,"negativeIntValue"))writer.uint32(40).int64(message.negativeIntValue);if(message.doubleValue!=null&&Object.hasOwnProperty.call(message,"doubleValue"))writer.uint32(49).double(message.doubleValue);if(message.stringValue!=null&&Object.hasOwnProperty.call(message,"stringValue"))writer.uint32(58).bytes(message.stringValue);if(message.aggregateValue!=null&&Object.hasOwnProperty.call(message,"aggregateValue"))writer.uint32(66).string(message.aggregateValue);return writer};UninterpretedOption.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};UninterpretedOption.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.UninterpretedOption;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 2:{if(!(message.name&&message.name.length))message.name=[];message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader,reader.uint32(),undefined,long+1));break}case 3:{message.identifierValue=reader.string();break}case 4:{message.positiveIntValue=reader.uint64();break}case 5:{message.negativeIntValue=reader.int64();break}case 6:{message.doubleValue=reader.double();break}case 7:{message.stringValue=reader.bytes();break}case 8:{message.aggregateValue=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};UninterpretedOption.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};UninterpretedOption.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name")){if(!Array.isArray(message.name))return"name: array expected";for(var i=0;i<message.name.length;++i){var error=$root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i],long+1);if(error)return"name."+error}}if(message.identifierValue!=null&&message.hasOwnProperty("identifierValue"))if(!$util.isString(message.identifierValue))return"identifierValue: string expected";if(message.positiveIntValue!=null&&message.hasOwnProperty("positiveIntValue"))if(!$util.isInteger(message.positiveIntValue)&&!(message.positiveIntValue&&$util.isInteger(message.positiveIntValue.low)&&$util.isInteger(message.positiveIntValue.high)))return"positiveIntValue: integer|Long expected";if(message.negativeIntValue!=null&&message.hasOwnProperty("negativeIntValue"))if(!$util.isInteger(message.negativeIntValue)&&!(message.negativeIntValue&&$util.isInteger(message.negativeIntValue.low)&&$util.isInteger(message.negativeIntValue.high)))return"negativeIntValue: integer|Long expected";if(message.doubleValue!=null&&message.hasOwnProperty("doubleValue"))if(typeof message.doubleValue!=="number")return"doubleValue: number expected";if(message.stringValue!=null&&message.hasOwnProperty("stringValue"))if(!(message.stringValue&&typeof message.stringValue.length==="number"||$util.isString(message.stringValue)))return"stringValue: buffer expected";if(message.aggregateValue!=null&&message.hasOwnProperty("aggregateValue"))if(!$util.isString(message.aggregateValue))return"aggregateValue: string expected";return null};UninterpretedOption.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.UninterpretedOption)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.UninterpretedOption;if(object.name){if(!Array.isArray(object.name))throw TypeError(".google.protobuf.UninterpretedOption.name: array expected");message.name=[];for(var i=0;i<object.name.length;++i){if(typeof object.name[i]!=="object")throw TypeError(".google.protobuf.UninterpretedOption.name: object expected");message.name[i]=$root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i],long+1)}}if(object.identifierValue!=null)message.identifierValue=String(object.identifierValue);if(object.positiveIntValue!=null)if($util.Long)(message.positiveIntValue=$util.Long.fromValue(object.positiveIntValue)).unsigned=true;else if(typeof object.positiveIntValue==="string")message.positiveIntValue=parseInt(object.positiveIntValue,10);else if(typeof object.positiveIntValue==="number")message.positiveIntValue=object.positiveIntValue;else if(typeof object.positiveIntValue==="object")message.positiveIntValue=new $util.LongBits(object.positiveIntValue.low>>>0,object.positiveIntValue.high>>>0).toNumber(true);if(object.negativeIntValue!=null)if($util.Long)(message.negativeIntValue=$util.Long.fromValue(object.negativeIntValue)).unsigned=false;else if(typeof object.negativeIntValue==="string")message.negativeIntValue=parseInt(object.negativeIntValue,10);else if(typeof object.negativeIntValue==="number")message.negativeIntValue=object.negativeIntValue;else if(typeof object.negativeIntValue==="object")message.negativeIntValue=new $util.LongBits(object.negativeIntValue.low>>>0,object.negativeIntValue.high>>>0).toNumber();if(object.doubleValue!=null)message.doubleValue=Number(object.doubleValue);if(object.stringValue!=null)if(typeof object.stringValue==="string")$util.base64.decode(object.stringValue,message.stringValue=$util.newBuffer($util.base64.length(object.stringValue)),0);else if(object.stringValue.length>=0)message.stringValue=object.stringValue;if(object.aggregateValue!=null)message.aggregateValue=String(object.aggregateValue);return message};UninterpretedOption.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.name=[];if(options.defaults){object.identifierValue="";if($util.Long){var long=new $util.Long(0,0,true);object.positiveIntValue=options.longs===String?long.toString():options.longs===Number?long.toNumber():long}else object.positiveIntValue=options.longs===String?"0":0;if($util.Long){var long=new $util.Long(0,0,false);object.negativeIntValue=options.longs===String?long.toString():options.longs===Number?long.toNumber():long}else object.negativeIntValue=options.longs===String?"0":0;object.doubleValue=0;if(options.bytes===String)object.stringValue="";else{object.stringValue=[];if(options.bytes!==Array)object.stringValue=$util.newBuffer(object.stringValue)}object.aggregateValue=""}if(message.name&&message.name.length){object.name=[];for(var j=0;j<message.name.length;++j)object.name[j]=$root.google.protobuf.UninterpretedOption.NamePart.toObject(message.name[j],options)}if(message.identifierValue!=null&&message.hasOwnProperty("identifierValue"))object.identifierValue=message.identifierValue;if(message.positiveIntValue!=null&&message.hasOwnProperty("positiveIntValue"))if(typeof message.positiveIntValue==="number")object.positiveIntValue=options.longs===String?String(message.positiveIntValue):message.positiveIntValue;else object.positiveIntValue=options.longs===String?$util.Long.prototype.toString.call(message.positiveIntValue):options.longs===Number?new $util.LongBits(message.positiveIntValue.low>>>0,message.positiveIntValue.high>>>0).toNumber(true):message.positiveIntValue;if(message.negativeIntValue!=null&&message.hasOwnProperty("negativeIntValue"))if(typeof message.negativeIntValue==="number")object.negativeIntValue=options.longs===String?String(message.negativeIntValue):message.negativeIntValue;else object.negativeIntValue=options.longs===String?$util.Long.prototype.toString.call(message.negativeIntValue):options.longs===Number?new $util.LongBits(message.negativeIntValue.low>>>0,message.negativeIntValue.high>>>0).toNumber():message.negativeIntValue;if(message.doubleValue!=null&&message.hasOwnProperty("doubleValue"))object.doubleValue=options.json&&!isFinite(message.doubleValue)?String(message.doubleValue):message.doubleValue;if(message.stringValue!=null&&message.hasOwnProperty("stringValue"))object.stringValue=options.bytes===String?$util.base64.encode(message.stringValue,0,message.stringValue.length):options.bytes===Array?Array.prototype.slice.call(message.stringValue):message.stringValue;if(message.aggregateValue!=null&&message.hasOwnProperty("aggregateValue"))object.aggregateValue=message.aggregateValue;return object};UninterpretedOption.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};UninterpretedOption.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.UninterpretedOption"};UninterpretedOption.NamePart=function(){function NamePart(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}NamePart.prototype.namePart="";NamePart.prototype.isExtension=false;NamePart.create=function create(properties){return new NamePart(properties)};NamePart.encode=function encode(message,writer){if(!writer)writer=$Writer.create();writer.uint32(10).string(message.namePart);writer.uint32(16).bool(message.isExtension);return writer};NamePart.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};NamePart.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.UninterpretedOption.NamePart;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.namePart=reader.string();break}case 2:{message.isExtension=reader.bool();break}default:reader.skipType(tag&7,long);break}}if(!message.hasOwnProperty("namePart"))throw $util.ProtocolError("missing required 'namePart'",{instance:message});if(!message.hasOwnProperty("isExtension"))throw $util.ProtocolError("missing required 'isExtension'",{instance:message});return message};NamePart.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};NamePart.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(!$util.isString(message.namePart))return"namePart: string expected";if(typeof message.isExtension!=="boolean")return"isExtension: boolean expected";return null};NamePart.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.UninterpretedOption.NamePart)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.UninterpretedOption.NamePart;if(object.namePart!=null)message.namePart=String(object.namePart);if(object.isExtension!=null)message.isExtension=Boolean(object.isExtension);return message};NamePart.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.namePart="";object.isExtension=false}if(message.namePart!=null&&message.hasOwnProperty("namePart"))object.namePart=message.namePart;if(message.isExtension!=null&&message.hasOwnProperty("isExtension"))object.isExtension=message.isExtension;return object};NamePart.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};NamePart.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.UninterpretedOption.NamePart"};return NamePart}();return UninterpretedOption}();protobuf.FeatureSet=function(){function FeatureSet(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FeatureSet.prototype.fieldPresence=0;FeatureSet.prototype.enumType=0;FeatureSet.prototype.repeatedFieldEncoding=0;FeatureSet.prototype.utf8Validation=0;FeatureSet.prototype.messageEncoding=0;FeatureSet.prototype.jsonFormat=0;FeatureSet.prototype.enforceNamingStyle=0;FeatureSet.prototype.defaultSymbolVisibility=0;FeatureSet.create=function create(properties){return new FeatureSet(properties)};FeatureSet.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.fieldPresence!=null&&Object.hasOwnProperty.call(message,"fieldPresence"))writer.uint32(8).int32(message.fieldPresence);if(message.enumType!=null&&Object.hasOwnProperty.call(message,"enumType"))writer.uint32(16).int32(message.enumType);if(message.repeatedFieldEncoding!=null&&Object.hasOwnProperty.call(message,"repeatedFieldEncoding"))writer.uint32(24).int32(message.repeatedFieldEncoding);if(message.utf8Validation!=null&&Object.hasOwnProperty.call(message,"utf8Validation"))writer.uint32(32).int32(message.utf8Validation);if(message.messageEncoding!=null&&Object.hasOwnProperty.call(message,"messageEncoding"))writer.uint32(40).int32(message.messageEncoding);if(message.jsonFormat!=null&&Object.hasOwnProperty.call(message,"jsonFormat"))writer.uint32(48).int32(message.jsonFormat);if(message.enforceNamingStyle!=null&&Object.hasOwnProperty.call(message,"enforceNamingStyle"))writer.uint32(56).int32(message.enforceNamingStyle);if(message.defaultSymbolVisibility!=null&&Object.hasOwnProperty.call(message,"defaultSymbolVisibility"))writer.uint32(64).int32(message.defaultSymbolVisibility);return writer};FeatureSet.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FeatureSet.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FeatureSet;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.fieldPresence=reader.int32();break}case 2:{message.enumType=reader.int32();break}case 3:{message.repeatedFieldEncoding=reader.int32();break}case 4:{message.utf8Validation=reader.int32();break}case 5:{message.messageEncoding=reader.int32();break}case 6:{message.jsonFormat=reader.int32();break}case 7:{message.enforceNamingStyle=reader.int32();break}case 8:{message.defaultSymbolVisibility=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};FeatureSet.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FeatureSet.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.fieldPresence!=null&&message.hasOwnProperty("fieldPresence"))switch(message.fieldPresence){default:return"fieldPresence: enum value expected";case 0:case 1:case 2:case 3:break}if(message.enumType!=null&&message.hasOwnProperty("enumType"))switch(message.enumType){default:return"enumType: enum value expected";case 0:case 1:case 2:break}if(message.repeatedFieldEncoding!=null&&message.hasOwnProperty("repeatedFieldEncoding"))switch(message.repeatedFieldEncoding){default:return"repeatedFieldEncoding: enum value expected";case 0:case 1:case 2:break}if(message.utf8Validation!=null&&message.hasOwnProperty("utf8Validation"))switch(message.utf8Validation){default:return"utf8Validation: enum value expected";case 0:case 2:case 3:break}if(message.messageEncoding!=null&&message.hasOwnProperty("messageEncoding"))switch(message.messageEncoding){default:return"messageEncoding: enum value expected";case 0:case 1:case 2:break}if(message.jsonFormat!=null&&message.hasOwnProperty("jsonFormat"))switch(message.jsonFormat){default:return"jsonFormat: enum value expected";case 0:case 1:case 2:break}if(message.enforceNamingStyle!=null&&message.hasOwnProperty("enforceNamingStyle"))switch(message.enforceNamingStyle){default:return"enforceNamingStyle: enum value expected";case 0:case 1:case 2:break}if(message.defaultSymbolVisibility!=null&&message.hasOwnProperty("defaultSymbolVisibility"))switch(message.defaultSymbolVisibility){default:return"defaultSymbolVisibility: enum value expected";case 0:case 1:case 2:case 3:case 4:break}return null};FeatureSet.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FeatureSet)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FeatureSet;switch(object.fieldPresence){default:if(typeof object.fieldPresence==="number"){message.fieldPresence=object.fieldPresence;break}break;case"FIELD_PRESENCE_UNKNOWN":case 0:message.fieldPresence=0;break;case"EXPLICIT":case 1:message.fieldPresence=1;break;case"IMPLICIT":case 2:message.fieldPresence=2;break;case"LEGACY_REQUIRED":case 3:message.fieldPresence=3;break}switch(object.enumType){default:if(typeof object.enumType==="number"){message.enumType=object.enumType;break}break;case"ENUM_TYPE_UNKNOWN":case 0:message.enumType=0;break;case"OPEN":case 1:message.enumType=1;break;case"CLOSED":case 2:message.enumType=2;break}switch(object.repeatedFieldEncoding){default:if(typeof object.repeatedFieldEncoding==="number"){message.repeatedFieldEncoding=object.repeatedFieldEncoding;break}break;case"REPEATED_FIELD_ENCODING_UNKNOWN":case 0:message.repeatedFieldEncoding=0;break;case"PACKED":case 1:message.repeatedFieldEncoding=1;break;case"EXPANDED":case 2:message.repeatedFieldEncoding=2;break}switch(object.utf8Validation){default:if(typeof object.utf8Validation==="number"){message.utf8Validation=object.utf8Validation;break}break;case"UTF8_VALIDATION_UNKNOWN":case 0:message.utf8Validation=0;break;case"VERIFY":case 2:message.utf8Validation=2;break;case"NONE":case 3:message.utf8Validation=3;break}switch(object.messageEncoding){default:if(typeof object.messageEncoding==="number"){message.messageEncoding=object.messageEncoding;break}break;case"MESSAGE_ENCODING_UNKNOWN":case 0:message.messageEncoding=0;break;case"LENGTH_PREFIXED":case 1:message.messageEncoding=1;break;case"DELIMITED":case 2:message.messageEncoding=2;break}switch(object.jsonFormat){default:if(typeof object.jsonFormat==="number"){message.jsonFormat=object.jsonFormat;break}break;case"JSON_FORMAT_UNKNOWN":case 0:message.jsonFormat=0;break;case"ALLOW":case 1:message.jsonFormat=1;break;case"LEGACY_BEST_EFFORT":case 2:message.jsonFormat=2;break}switch(object.enforceNamingStyle){default:if(typeof object.enforceNamingStyle==="number"){message.enforceNamingStyle=object.enforceNamingStyle;break}break;case"ENFORCE_NAMING_STYLE_UNKNOWN":case 0:message.enforceNamingStyle=0;break;case"STYLE2024":case 1:message.enforceNamingStyle=1;break;case"STYLE_LEGACY":case 2:message.enforceNamingStyle=2;break}switch(object.defaultSymbolVisibility){default:if(typeof object.defaultSymbolVisibility==="number"){message.defaultSymbolVisibility=object.defaultSymbolVisibility;break}break;case"DEFAULT_SYMBOL_VISIBILITY_UNKNOWN":case 0:message.defaultSymbolVisibility=0;break;case"EXPORT_ALL":case 1:message.defaultSymbolVisibility=1;break;case"EXPORT_TOP_LEVEL":case 2:message.defaultSymbolVisibility=2;break;case"LOCAL_ALL":case 3:message.defaultSymbolVisibility=3;break;case"STRICT":case 4:message.defaultSymbolVisibility=4;break}return message};FeatureSet.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.fieldPresence=options.enums===String?"FIELD_PRESENCE_UNKNOWN":0;object.enumType=options.enums===String?"ENUM_TYPE_UNKNOWN":0;object.repeatedFieldEncoding=options.enums===String?"REPEATED_FIELD_ENCODING_UNKNOWN":0;object.utf8Validation=options.enums===String?"UTF8_VALIDATION_UNKNOWN":0;object.messageEncoding=options.enums===String?"MESSAGE_ENCODING_UNKNOWN":0;object.jsonFormat=options.enums===String?"JSON_FORMAT_UNKNOWN":0;object.enforceNamingStyle=options.enums===String?"ENFORCE_NAMING_STYLE_UNKNOWN":0;object.defaultSymbolVisibility=options.enums===String?"DEFAULT_SYMBOL_VISIBILITY_UNKNOWN":0}if(message.fieldPresence!=null&&message.hasOwnProperty("fieldPresence"))object.fieldPresence=options.enums===String?$root.google.protobuf.FeatureSet.FieldPresence[message.fieldPresence]===undefined?message.fieldPresence:$root.google.protobuf.FeatureSet.FieldPresence[message.fieldPresence]:message.fieldPresence;if(message.enumType!=null&&message.hasOwnProperty("enumType"))object.enumType=options.enums===String?$root.google.protobuf.FeatureSet.EnumType[message.enumType]===undefined?message.enumType:$root.google.protobuf.FeatureSet.EnumType[message.enumType]:message.enumType;if(message.repeatedFieldEncoding!=null&&message.hasOwnProperty("repeatedFieldEncoding"))object.repeatedFieldEncoding=options.enums===String?$root.google.protobuf.FeatureSet.RepeatedFieldEncoding[message.repeatedFieldEncoding]===undefined?message.repeatedFieldEncoding:$root.google.protobuf.FeatureSet.RepeatedFieldEncoding[message.repeatedFieldEncoding]:message.repeatedFieldEncoding;if(message.utf8Validation!=null&&message.hasOwnProperty("utf8Validation"))object.utf8Validation=options.enums===String?$root.google.protobuf.FeatureSet.Utf8Validation[message.utf8Validation]===undefined?message.utf8Validation:$root.google.protobuf.FeatureSet.Utf8Validation[message.utf8Validation]:message.utf8Validation;if(message.messageEncoding!=null&&message.hasOwnProperty("messageEncoding"))object.messageEncoding=options.enums===String?$root.google.protobuf.FeatureSet.MessageEncoding[message.messageEncoding]===undefined?message.messageEncoding:$root.google.protobuf.FeatureSet.MessageEncoding[message.messageEncoding]:message.messageEncoding;if(message.jsonFormat!=null&&message.hasOwnProperty("jsonFormat"))object.jsonFormat=options.enums===String?$root.google.protobuf.FeatureSet.JsonFormat[message.jsonFormat]===undefined?message.jsonFormat:$root.google.protobuf.FeatureSet.JsonFormat[message.jsonFormat]:message.jsonFormat;if(message.enforceNamingStyle!=null&&message.hasOwnProperty("enforceNamingStyle"))object.enforceNamingStyle=options.enums===String?$root.google.protobuf.FeatureSet.EnforceNamingStyle[message.enforceNamingStyle]===undefined?message.enforceNamingStyle:$root.google.protobuf.FeatureSet.EnforceNamingStyle[message.enforceNamingStyle]:message.enforceNamingStyle;if(message.defaultSymbolVisibility!=null&&message.hasOwnProperty("defaultSymbolVisibility"))object.defaultSymbolVisibility=options.enums===String?$root.google.protobuf.FeatureSet.VisibilityFeature.DefaultSymbolVisibility[message.defaultSymbolVisibility]===undefined?message.defaultSymbolVisibility:$root.google.protobuf.FeatureSet.VisibilityFeature.DefaultSymbolVisibility[message.defaultSymbolVisibility]:message.defaultSymbolVisibility;return object};FeatureSet.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FeatureSet.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FeatureSet"};FeatureSet.FieldPresence=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="FIELD_PRESENCE_UNKNOWN"]=0;values[valuesById[1]="EXPLICIT"]=1;values[valuesById[2]="IMPLICIT"]=2;values[valuesById[3]="LEGACY_REQUIRED"]=3;return values}();FeatureSet.EnumType=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="ENUM_TYPE_UNKNOWN"]=0;values[valuesById[1]="OPEN"]=1;values[valuesById[2]="CLOSED"]=2;return values}();FeatureSet.RepeatedFieldEncoding=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="REPEATED_FIELD_ENCODING_UNKNOWN"]=0;values[valuesById[1]="PACKED"]=1;values[valuesById[2]="EXPANDED"]=2;return values}();FeatureSet.Utf8Validation=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="UTF8_VALIDATION_UNKNOWN"]=0;values[valuesById[2]="VERIFY"]=2;values[valuesById[3]="NONE"]=3;return values}();FeatureSet.MessageEncoding=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="MESSAGE_ENCODING_UNKNOWN"]=0;values[valuesById[1]="LENGTH_PREFIXED"]=1;values[valuesById[2]="DELIMITED"]=2;return values}();FeatureSet.JsonFormat=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="JSON_FORMAT_UNKNOWN"]=0;values[valuesById[1]="ALLOW"]=1;values[valuesById[2]="LEGACY_BEST_EFFORT"]=2;return values}();FeatureSet.EnforceNamingStyle=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="ENFORCE_NAMING_STYLE_UNKNOWN"]=0;values[valuesById[1]="STYLE2024"]=1;values[valuesById[2]="STYLE_LEGACY"]=2;return values}();FeatureSet.VisibilityFeature=function(){function VisibilityFeature(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}VisibilityFeature.create=function create(properties){return new VisibilityFeature(properties)};VisibilityFeature.encode=function encode(message,writer){if(!writer)writer=$Writer.create();return writer};VisibilityFeature.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};VisibilityFeature.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FeatureSet.VisibilityFeature;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){default:reader.skipType(tag&7,long);break}}return message};VisibilityFeature.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};VisibilityFeature.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";return null};VisibilityFeature.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FeatureSet.VisibilityFeature)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");return new $root.google.protobuf.FeatureSet.VisibilityFeature};VisibilityFeature.toObject=function toObject(){return{}};VisibilityFeature.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};VisibilityFeature.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FeatureSet.VisibilityFeature"};VisibilityFeature.DefaultSymbolVisibility=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="DEFAULT_SYMBOL_VISIBILITY_UNKNOWN"]=0;values[valuesById[1]="EXPORT_ALL"]=1;values[valuesById[2]="EXPORT_TOP_LEVEL"]=2;values[valuesById[3]="LOCAL_ALL"]=3;values[valuesById[4]="STRICT"]=4;return values}();return VisibilityFeature}();return FeatureSet}();protobuf.FeatureSetDefaults=function(){function FeatureSetDefaults(properties){this.defaults=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FeatureSetDefaults.prototype.defaults=$util.emptyArray;FeatureSetDefaults.prototype.minimumEdition=0;FeatureSetDefaults.prototype.maximumEdition=0;FeatureSetDefaults.create=function create(properties){return new FeatureSetDefaults(properties)};FeatureSetDefaults.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.defaults!=null&&message.defaults.length)for(var i=0;i<message.defaults.length;++i)$root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.encode(message.defaults[i],writer.uint32(10).fork()).ldelim();if(message.minimumEdition!=null&&Object.hasOwnProperty.call(message,"minimumEdition"))writer.uint32(32).int32(message.minimumEdition);if(message.maximumEdition!=null&&Object.hasOwnProperty.call(message,"maximumEdition"))writer.uint32(40).int32(message.maximumEdition);return writer};FeatureSetDefaults.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FeatureSetDefaults.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FeatureSetDefaults;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.defaults&&message.defaults.length))message.defaults=[];message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader,reader.uint32(),undefined,long+1));break}case 4:{message.minimumEdition=reader.int32();break}case 5:{message.maximumEdition=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};FeatureSetDefaults.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FeatureSetDefaults.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.defaults!=null&&message.hasOwnProperty("defaults")){if(!Array.isArray(message.defaults))return"defaults: array expected";for(var i=0;i<message.defaults.length;++i){var error=$root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i],long+1);if(error)return"defaults."+error}}if(message.minimumEdition!=null&&message.hasOwnProperty("minimumEdition"))switch(message.minimumEdition){default:return"minimumEdition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.maximumEdition!=null&&message.hasOwnProperty("maximumEdition"))switch(message.maximumEdition){default:return"maximumEdition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}return null};FeatureSetDefaults.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FeatureSetDefaults)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FeatureSetDefaults;if(object.defaults){if(!Array.isArray(object.defaults))throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: array expected");message.defaults=[];for(var i=0;i<object.defaults.length;++i){if(typeof object.defaults[i]!=="object")throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected");message.defaults[i]=$root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i],long+1)}}switch(object.minimumEdition){default:if(typeof object.minimumEdition==="number"){message.minimumEdition=object.minimumEdition;break}break;case"EDITION_UNKNOWN":case 0:message.minimumEdition=0;break;case"EDITION_LEGACY":case 900:message.minimumEdition=900;break;case"EDITION_PROTO2":case 998:message.minimumEdition=998;break;case"EDITION_PROTO3":case 999:message.minimumEdition=999;break;case"EDITION_2023":case 1e3:message.minimumEdition=1e3;break;case"EDITION_2024":case 1001:message.minimumEdition=1001;break;case"EDITION_1_TEST_ONLY":case 1:message.minimumEdition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.minimumEdition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.minimumEdition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.minimumEdition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.minimumEdition=99999;break;case"EDITION_MAX":case 2147483647:message.minimumEdition=2147483647;break}switch(object.maximumEdition){default:if(typeof object.maximumEdition==="number"){message.maximumEdition=object.maximumEdition;break}break;case"EDITION_UNKNOWN":case 0:message.maximumEdition=0;break;case"EDITION_LEGACY":case 900:message.maximumEdition=900;break;case"EDITION_PROTO2":case 998:message.maximumEdition=998;break;case"EDITION_PROTO3":case 999:message.maximumEdition=999;break;case"EDITION_2023":case 1e3:message.maximumEdition=1e3;break;case"EDITION_2024":case 1001:message.maximumEdition=1001;break;case"EDITION_1_TEST_ONLY":case 1:message.maximumEdition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.maximumEdition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.maximumEdition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.maximumEdition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.maximumEdition=99999;break;case"EDITION_MAX":case 2147483647:message.maximumEdition=2147483647;break}return message};FeatureSetDefaults.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.defaults=[];if(options.defaults){object.minimumEdition=options.enums===String?"EDITION_UNKNOWN":0;object.maximumEdition=options.enums===String?"EDITION_UNKNOWN":0}if(message.defaults&&message.defaults.length){object.defaults=[];for(var j=0;j<message.defaults.length;++j)object.defaults[j]=$root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.toObject(message.defaults[j],options)}if(message.minimumEdition!=null&&message.hasOwnProperty("minimumEdition"))object.minimumEdition=options.enums===String?$root.google.protobuf.Edition[message.minimumEdition]===undefined?message.minimumEdition:$root.google.protobuf.Edition[message.minimumEdition]:message.minimumEdition;if(message.maximumEdition!=null&&message.hasOwnProperty("maximumEdition"))object.maximumEdition=options.enums===String?$root.google.protobuf.Edition[message.maximumEdition]===undefined?message.maximumEdition:$root.google.protobuf.Edition[message.maximumEdition]:message.maximumEdition;return object};FeatureSetDefaults.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FeatureSetDefaults.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FeatureSetDefaults"};FeatureSetDefaults.FeatureSetEditionDefault=function(){function FeatureSetEditionDefault(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FeatureSetEditionDefault.prototype.edition=0;FeatureSetEditionDefault.prototype.overridableFeatures=null;FeatureSetEditionDefault.prototype.fixedFeatures=null;FeatureSetEditionDefault.create=function create(properties){return new FeatureSetEditionDefault(properties)};FeatureSetEditionDefault.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.edition!=null&&Object.hasOwnProperty.call(message,"edition"))writer.uint32(24).int32(message.edition);if(message.overridableFeatures!=null&&Object.hasOwnProperty.call(message,"overridableFeatures"))$root.google.protobuf.FeatureSet.encode(message.overridableFeatures,writer.uint32(34).fork()).ldelim();if(message.fixedFeatures!=null&&Object.hasOwnProperty.call(message,"fixedFeatures"))$root.google.protobuf.FeatureSet.encode(message.fixedFeatures,writer.uint32(42).fork()).ldelim();return writer};FeatureSetEditionDefault.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FeatureSetEditionDefault.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 3:{message.edition=reader.int32();break}case 4:{message.overridableFeatures=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 5:{message.fixedFeatures=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};FeatureSetEditionDefault.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FeatureSetEditionDefault.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.edition!=null&&message.hasOwnProperty("edition"))switch(message.edition){default:return"edition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.overridableFeatures!=null&&message.hasOwnProperty("overridableFeatures")){var error=$root.google.protobuf.FeatureSet.verify(message.overridableFeatures,long+1);if(error)return"overridableFeatures."+error}if(message.fixedFeatures!=null&&message.hasOwnProperty("fixedFeatures")){var error=$root.google.protobuf.FeatureSet.verify(message.fixedFeatures,long+1);if(error)return"fixedFeatures."+error}return null};FeatureSetEditionDefault.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault;switch(object.edition){default:if(typeof object.edition==="number"){message.edition=object.edition;break}break;case"EDITION_UNKNOWN":case 0:message.edition=0;break;case"EDITION_LEGACY":case 900:message.edition=900;break;case"EDITION_PROTO2":case 998:message.edition=998;break;case"EDITION_PROTO3":case 999:message.edition=999;break;case"EDITION_2023":case 1e3:message.edition=1e3;break;case"EDITION_2024":case 1001:message.edition=1001;break;case"EDITION_1_TEST_ONLY":case 1:message.edition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.edition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.edition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.edition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.edition=99999;break;case"EDITION_MAX":case 2147483647:message.edition=2147483647;break}if(object.overridableFeatures!=null){if(typeof object.overridableFeatures!=="object")throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected");message.overridableFeatures=$root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures,long+1)}if(object.fixedFeatures!=null){if(typeof object.fixedFeatures!=="object")throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected");message.fixedFeatures=$root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures,long+1)}return message};FeatureSetEditionDefault.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.edition=options.enums===String?"EDITION_UNKNOWN":0;object.overridableFeatures=null;object.fixedFeatures=null}if(message.edition!=null&&message.hasOwnProperty("edition"))object.edition=options.enums===String?$root.google.protobuf.Edition[message.edition]===undefined?message.edition:$root.google.protobuf.Edition[message.edition]:message.edition;if(message.overridableFeatures!=null&&message.hasOwnProperty("overridableFeatures"))object.overridableFeatures=$root.google.protobuf.FeatureSet.toObject(message.overridableFeatures,options);if(message.fixedFeatures!=null&&message.hasOwnProperty("fixedFeatures"))object.fixedFeatures=$root.google.protobuf.FeatureSet.toObject(message.fixedFeatures,options);return object};FeatureSetEditionDefault.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FeatureSetEditionDefault.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault"};return FeatureSetEditionDefault}();return FeatureSetDefaults}();protobuf.SourceCodeInfo=function(){function SourceCodeInfo(properties){this.location=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}SourceCodeInfo.prototype.location=$util.emptyArray;SourceCodeInfo.create=function create(properties){return new SourceCodeInfo(properties)};SourceCodeInfo.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.location!=null&&message.location.length)for(var i=0;i<message.location.length;++i)$root.google.protobuf.SourceCodeInfo.Location.encode(message.location[i],writer.uint32(10).fork()).ldelim();return writer};SourceCodeInfo.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};SourceCodeInfo.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.SourceCodeInfo;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.location&&message.location.length))message.location=[];message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};SourceCodeInfo.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};SourceCodeInfo.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.location!=null&&message.hasOwnProperty("location")){if(!Array.isArray(message.location))return"location: array expected";for(var i=0;i<message.location.length;++i){var error=$root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i],long+1);if(error)return"location."+error}}return null};SourceCodeInfo.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.SourceCodeInfo)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.SourceCodeInfo;if(object.location){if(!Array.isArray(object.location))throw TypeError(".google.protobuf.SourceCodeInfo.location: array expected");message.location=[];for(var i=0;i<object.location.length;++i){if(typeof object.location[i]!=="object")throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected");message.location[i]=$root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i],long+1)}}return message};SourceCodeInfo.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.location=[];if(message.location&&message.location.length){object.location=[];for(var j=0;j<message.location.length;++j)object.location[j]=$root.google.protobuf.SourceCodeInfo.Location.toObject(message.location[j],options)}return object};SourceCodeInfo.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};SourceCodeInfo.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.SourceCodeInfo"};SourceCodeInfo.Location=function(){function Location(properties){this.path=[];this.span=[];this.leadingDetachedComments=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Location.prototype.path=$util.emptyArray;Location.prototype.span=$util.emptyArray;Location.prototype.leadingComments="";Location.prototype.trailingComments="";Location.prototype.leadingDetachedComments=$util.emptyArray;Location.create=function create(properties){return new Location(properties)};Location.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.path!=null&&message.path.length){writer.uint32(10).fork();for(var i=0;i<message.path.length;++i)writer.int32(message.path[i]);writer.ldelim()}if(message.span!=null&&message.span.length){writer.uint32(18).fork();for(var i=0;i<message.span.length;++i)writer.int32(message.span[i]);writer.ldelim()}if(message.leadingComments!=null&&Object.hasOwnProperty.call(message,"leadingComments"))writer.uint32(26).string(message.leadingComments);if(message.trailingComments!=null&&Object.hasOwnProperty.call(message,"trailingComments"))writer.uint32(34).string(message.trailingComments);if(message.leadingDetachedComments!=null&&message.leadingDetachedComments.length)for(var i=0;i<message.leadingDetachedComments.length;++i)writer.uint32(50).string(message.leadingDetachedComments[i]);return writer};Location.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Location.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.SourceCodeInfo.Location;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.path&&message.path.length))message.path=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.path.push(reader.int32())}else message.path.push(reader.int32());break}case 2:{if(!(message.span&&message.span.length))message.span=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.span.push(reader.int32())}else message.span.push(reader.int32());break}case 3:{message.leadingComments=reader.string();break}case 4:{message.trailingComments=reader.string();break}case 6:{if(!(message.leadingDetachedComments&&message.leadingDetachedComments.length))message.leadingDetachedComments=[];message.leadingDetachedComments.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};Location.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Location.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.path!=null&&message.hasOwnProperty("path")){if(!Array.isArray(message.path))return"path: array expected";for(var i=0;i<message.path.length;++i)if(!$util.isInteger(message.path[i]))return"path: integer[] expected"}if(message.span!=null&&message.hasOwnProperty("span")){if(!Array.isArray(message.span))return"span: array expected";for(var i=0;i<message.span.length;++i)if(!$util.isInteger(message.span[i]))return"span: integer[] expected"}if(message.leadingComments!=null&&message.hasOwnProperty("leadingComments"))if(!$util.isString(message.leadingComments))return"leadingComments: string expected";if(message.trailingComments!=null&&message.hasOwnProperty("trailingComments"))if(!$util.isString(message.trailingComments))return"trailingComments: string expected";if(message.leadingDetachedComments!=null&&message.hasOwnProperty("leadingDetachedComments")){if(!Array.isArray(message.leadingDetachedComments))return"leadingDetachedComments: array expected";for(var i=0;i<message.leadingDetachedComments.length;++i)if(!$util.isString(message.leadingDetachedComments[i]))return"leadingDetachedComments: string[] expected"}return null};Location.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.SourceCodeInfo.Location)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.SourceCodeInfo.Location;if(object.path){if(!Array.isArray(object.path))throw TypeError(".google.protobuf.SourceCodeInfo.Location.path: array expected");message.path=[];for(var i=0;i<object.path.length;++i)message.path[i]=object.path[i]|0}if(object.span){if(!Array.isArray(object.span))throw TypeError(".google.protobuf.SourceCodeInfo.Location.span: array expected");message.span=[];for(var i=0;i<object.span.length;++i)message.span[i]=object.span[i]|0}if(object.leadingComments!=null)message.leadingComments=String(object.leadingComments);if(object.trailingComments!=null)message.trailingComments=String(object.trailingComments);if(object.leadingDetachedComments){if(!Array.isArray(object.leadingDetachedComments))throw TypeError(".google.protobuf.SourceCodeInfo.Location.leadingDetachedComments: array expected");message.leadingDetachedComments=[];for(var i=0;i<object.leadingDetachedComments.length;++i)message.leadingDetachedComments[i]=String(object.leadingDetachedComments[i])}return message};Location.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.path=[];object.span=[];object.leadingDetachedComments=[]}if(options.defaults){object.leadingComments="";object.trailingComments=""}if(message.path&&message.path.length){object.path=[];for(var j=0;j<message.path.length;++j)object.path[j]=message.path[j]}if(message.span&&message.span.length){object.span=[];for(var j=0;j<message.span.length;++j)object.span[j]=message.span[j]}if(message.leadingComments!=null&&message.hasOwnProperty("leadingComments"))object.leadingComments=message.leadingComments;if(message.trailingComments!=null&&message.hasOwnProperty("trailingComments"))object.trailingComments=message.trailingComments;if(message.leadingDetachedComments&&message.leadingDetachedComments.length){object.leadingDetachedComments=[];for(var j=0;j<message.leadingDetachedComments.length;++j)object.leadingDetachedComments[j]=message.leadingDetachedComments[j]}return object};Location.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Location.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.SourceCodeInfo.Location"};return Location}();return SourceCodeInfo}();protobuf.GeneratedCodeInfo=function(){function GeneratedCodeInfo(properties){this.annotation=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GeneratedCodeInfo.prototype.annotation=$util.emptyArray;GeneratedCodeInfo.create=function create(properties){return new GeneratedCodeInfo(properties)};GeneratedCodeInfo.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.annotation!=null&&message.annotation.length)for(var i=0;i<message.annotation.length;++i)$root.google.protobuf.GeneratedCodeInfo.Annotation.encode(message.annotation[i],writer.uint32(10).fork()).ldelim();return writer};GeneratedCodeInfo.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GeneratedCodeInfo.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.GeneratedCodeInfo;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.annotation&&message.annotation.length))message.annotation=[];message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};GeneratedCodeInfo.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GeneratedCodeInfo.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.annotation!=null&&message.hasOwnProperty("annotation")){if(!Array.isArray(message.annotation))return"annotation: array expected";for(var i=0;i<message.annotation.length;++i){var error=$root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i],long+1);if(error)return"annotation."+error}}return null};GeneratedCodeInfo.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.GeneratedCodeInfo)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.GeneratedCodeInfo;if(object.annotation){if(!Array.isArray(object.annotation))throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: array expected");message.annotation=[];for(var i=0;i<object.annotation.length;++i){if(typeof object.annotation[i]!=="object")throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected");message.annotation[i]=$root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i],long+1)}}return message};GeneratedCodeInfo.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.annotation=[];if(message.annotation&&message.annotation.length){object.annotation=[];for(var j=0;j<message.annotation.length;++j)object.annotation[j]=$root.google.protobuf.GeneratedCodeInfo.Annotation.toObject(message.annotation[j],options)}return object};GeneratedCodeInfo.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GeneratedCodeInfo.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.GeneratedCodeInfo"};GeneratedCodeInfo.Annotation=function(){function Annotation(properties){this.path=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Annotation.prototype.path=$util.emptyArray;Annotation.prototype.sourceFile="";Annotation.prototype.begin=0;Annotation.prototype.end=0;Annotation.prototype.semantic=0;Annotation.create=function create(properties){return new Annotation(properties)};Annotation.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.path!=null&&message.path.length){writer.uint32(10).fork();for(var i=0;i<message.path.length;++i)writer.int32(message.path[i]);writer.ldelim()}if(message.sourceFile!=null&&Object.hasOwnProperty.call(message,"sourceFile"))writer.uint32(18).string(message.sourceFile);if(message.begin!=null&&Object.hasOwnProperty.call(message,"begin"))writer.uint32(24).int32(message.begin);if(message.end!=null&&Object.hasOwnProperty.call(message,"end"))writer.uint32(32).int32(message.end);if(message.semantic!=null&&Object.hasOwnProperty.call(message,"semantic"))writer.uint32(40).int32(message.semantic);return writer};Annotation.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Annotation.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.GeneratedCodeInfo.Annotation;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.path&&message.path.length))message.path=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.path.push(reader.int32())}else message.path.push(reader.int32());break}case 2:{message.sourceFile=reader.string();break}case 3:{message.begin=reader.int32();break}case 4:{message.end=reader.int32();break}case 5:{message.semantic=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};Annotation.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Annotation.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.path!=null&&message.hasOwnProperty("path")){if(!Array.isArray(message.path))return"path: array expected";for(var i=0;i<message.path.length;++i)if(!$util.isInteger(message.path[i]))return"path: integer[] expected"}if(message.sourceFile!=null&&message.hasOwnProperty("sourceFile"))if(!$util.isString(message.sourceFile))return"sourceFile: string expected";if(message.begin!=null&&message.hasOwnProperty("begin"))if(!$util.isInteger(message.begin))return"begin: integer expected";if(message.end!=null&&message.hasOwnProperty("end"))if(!$util.isInteger(message.end))return"end: integer expected";if(message.semantic!=null&&message.hasOwnProperty("semantic"))switch(message.semantic){default:return"semantic: enum value expected";case 0:case 1:case 2:break}return null};Annotation.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.GeneratedCodeInfo.Annotation;if(object.path){if(!Array.isArray(object.path))throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation.path: array expected");message.path=[];for(var i=0;i<object.path.length;++i)message.path[i]=object.path[i]|0}if(object.sourceFile!=null)message.sourceFile=String(object.sourceFile);if(object.begin!=null)message.begin=object.begin|0;if(object.end!=null)message.end=object.end|0;switch(object.semantic){default:if(typeof object.semantic==="number"){message.semantic=object.semantic;break}break;case"NONE":case 0:message.semantic=0;break;case"SET":case 1:message.semantic=1;break;case"ALIAS":case 2:message.semantic=2;break}return message};Annotation.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.path=[];if(options.defaults){object.sourceFile="";object.begin=0;object.end=0;object.semantic=options.enums===String?"NONE":0}if(message.path&&message.path.length){object.path=[];for(var j=0;j<message.path.length;++j)object.path[j]=message.path[j]}if(message.sourceFile!=null&&message.hasOwnProperty("sourceFile"))object.sourceFile=message.sourceFile;if(message.begin!=null&&message.hasOwnProperty("begin"))object.begin=message.begin;if(message.end!=null&&message.hasOwnProperty("end"))object.end=message.end;if(message.semantic!=null&&message.hasOwnProperty("semantic"))object.semantic=options.enums===String?$root.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[message.semantic]===undefined?message.semantic:$root.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[message.semantic]:message.semantic;return object};Annotation.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Annotation.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.GeneratedCodeInfo.Annotation"};Annotation.Semantic=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="NONE"]=0;values[valuesById[1]="SET"]=1;values[valuesById[2]="ALIAS"]=2;return values}();return Annotation}();return GeneratedCodeInfo}();protobuf.SymbolVisibility=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="VISIBILITY_UNSET"]=0;values[valuesById[1]="VISIBILITY_LOCAL"]=1;values[valuesById[2]="VISIBILITY_EXPORT"]=2;return values}();protobuf.Timestamp=function(){function Timestamp(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Timestamp.prototype.seconds=$util.Long?$util.Long.fromBits(0,0,false):0;Timestamp.prototype.nanos=0;Timestamp.create=function create(properties){return new Timestamp(properties)};Timestamp.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.seconds!=null&&Object.hasOwnProperty.call(message,"seconds"))writer.uint32(8).int64(message.seconds);if(message.nanos!=null&&Object.hasOwnProperty.call(message,"nanos"))writer.uint32(16).int32(message.nanos);return writer};Timestamp.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Timestamp.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.Timestamp;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.seconds=reader.int64();break}case 2:{message.nanos=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};Timestamp.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Timestamp.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.seconds!=null&&message.hasOwnProperty("seconds"))if(!$util.isInteger(message.seconds)&&!(message.seconds&&$util.isInteger(message.seconds.low)&&$util.isInteger(message.seconds.high)))return"seconds: integer|Long expected";if(message.nanos!=null&&message.hasOwnProperty("nanos"))if(!$util.isInteger(message.nanos))return"nanos: integer expected";return null};Timestamp.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.Timestamp)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.Timestamp;if(object.seconds!=null)if($util.Long)(message.seconds=$util.Long.fromValue(object.seconds)).unsigned=false;else if(typeof object.seconds==="string")message.seconds=parseInt(object.seconds,10);else if(typeof object.seconds==="number")message.seconds=object.seconds;else if(typeof object.seconds==="object")message.seconds=new $util.LongBits(object.seconds.low>>>0,object.seconds.high>>>0).toNumber();if(object.nanos!=null)message.nanos=object.nanos|0;return message};Timestamp.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){if($util.Long){var long=new $util.Long(0,0,false);object.seconds=options.longs===String?long.toString():options.longs===Number?long.toNumber():long}else object.seconds=options.longs===String?"0":0;object.nanos=0}if(message.seconds!=null&&message.hasOwnProperty("seconds"))if(typeof message.seconds==="number")object.seconds=options.longs===String?String(message.seconds):message.seconds;else object.seconds=options.longs===String?$util.Long.prototype.toString.call(message.seconds):options.longs===Number?new $util.LongBits(message.seconds.low>>>0,message.seconds.high>>>0).toNumber():message.seconds;if(message.nanos!=null&&message.hasOwnProperty("nanos"))object.nanos=message.nanos;return object};Timestamp.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Timestamp.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.Timestamp"};return Timestamp}();protobuf.Duration=function(){function Duration(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Duration.prototype.seconds=$util.Long?$util.Long.fromBits(0,0,false):0;Duration.prototype.nanos=0;Duration.create=function create(properties){return new Duration(properties)};Duration.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.seconds!=null&&Object.hasOwnProperty.call(message,"seconds"))writer.uint32(8).int64(message.seconds);if(message.nanos!=null&&Object.hasOwnProperty.call(message,"nanos"))writer.uint32(16).int32(message.nanos);return writer};Duration.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Duration.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.Duration;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.seconds=reader.int64();break}case 2:{message.nanos=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};Duration.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Duration.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.seconds!=null&&message.hasOwnProperty("seconds"))if(!$util.isInteger(message.seconds)&&!(message.seconds&&$util.isInteger(message.seconds.low)&&$util.isInteger(message.seconds.high)))return"seconds: integer|Long expected";if(message.nanos!=null&&message.hasOwnProperty("nanos"))if(!$util.isInteger(message.nanos))return"nanos: integer expected";return null};Duration.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.Duration)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.Duration;if(object.seconds!=null)if($util.Long)(message.seconds=$util.Long.fromValue(object.seconds)).unsigned=false;else if(typeof object.seconds==="string")message.seconds=parseInt(object.seconds,10);else if(typeof object.seconds==="number")message.seconds=object.seconds;else if(typeof object.seconds==="object")message.seconds=new $util.LongBits(object.seconds.low>>>0,object.seconds.high>>>0).toNumber();if(object.nanos!=null)message.nanos=object.nanos|0;return message};Duration.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){if($util.Long){var long=new $util.Long(0,0,false);object.seconds=options.longs===String?long.toString():options.longs===Number?long.toNumber():long}else object.seconds=options.longs===String?"0":0;object.nanos=0}if(message.seconds!=null&&message.hasOwnProperty("seconds"))if(typeof message.seconds==="number")object.seconds=options.longs===String?String(message.seconds):message.seconds;else object.seconds=options.longs===String?$util.Long.prototype.toString.call(message.seconds):options.longs===Number?new $util.LongBits(message.seconds.low>>>0,message.seconds.high>>>0).toNumber():message.seconds;if(message.nanos!=null&&message.hasOwnProperty("nanos"))object.nanos=message.nanos;return object};Duration.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Duration.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.Duration"};return Duration}();protobuf.Any=function(){function Any(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Any.prototype.type_url="";Any.prototype.value=$util.newBuffer([]);Any.create=function create(properties){return new Any(properties)};Any.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.type_url!=null&&Object.hasOwnProperty.call(message,"type_url"))writer.uint32(10).string(message.type_url);if(message.value!=null&&Object.hasOwnProperty.call(message,"value"))writer.uint32(18).bytes(message.value);return writer};Any.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Any.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.Any;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.type_url=reader.string();break}case 2:{message.value=reader.bytes();break}default:reader.skipType(tag&7,long);break}}return message};Any.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Any.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.type_url!=null&&message.hasOwnProperty("type_url"))if(!$util.isString(message.type_url))return"type_url: string expected";if(message.value!=null&&message.hasOwnProperty("value"))if(!(message.value&&typeof message.value.length==="number"||$util.isString(message.value)))return"value: buffer expected";return null};Any.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.Any)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.Any;if(object.type_url!=null)message.type_url=String(object.type_url);if(object.value!=null)if(typeof object.value==="string")$util.base64.decode(object.value,message.value=$util.newBuffer($util.base64.length(object.value)),0);else if(object.value.length>=0)message.value=object.value;return message};Any.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.type_url="";if(options.bytes===String)object.value="";else{object.value=[];if(options.bytes!==Array)object.value=$util.newBuffer(object.value)}}if(message.type_url!=null&&message.hasOwnProperty("type_url"))object.type_url=message.type_url;if(message.value!=null&&message.hasOwnProperty("value"))object.value=options.bytes===String?$util.base64.encode(message.value,0,message.value.length):options.bytes===Array?Array.prototype.slice.call(message.value):message.value;return object};Any.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Any.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.Any"};return Any}();protobuf.Empty=function(){function Empty(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Empty.create=function create(properties){return new Empty(properties)};Empty.encode=function encode(message,writer){if(!writer)writer=$Writer.create();return writer};Empty.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Empty.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.Empty;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){default:reader.skipType(tag&7,long);break}}return message};Empty.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Empty.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";return null};Empty.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.Empty)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");return new $root.google.protobuf.Empty};Empty.toObject=function toObject(){return{}};Empty.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Empty.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.Empty"};return Empty}();protobuf.FieldMask=function(){function FieldMask(properties){this.paths=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FieldMask.prototype.paths=$util.emptyArray;FieldMask.create=function create(properties){return new FieldMask(properties)};FieldMask.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.paths!=null&&message.paths.length)for(var i=0;i<message.paths.length;++i)writer.uint32(10).string(message.paths[i]);return writer};FieldMask.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FieldMask.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldMask;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.paths&&message.paths.length))message.paths=[];message.paths.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};FieldMask.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FieldMask.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.paths!=null&&message.hasOwnProperty("paths")){if(!Array.isArray(message.paths))return"paths: array expected";for(var i=0;i<message.paths.length;++i)if(!$util.isString(message.paths[i]))return"paths: string[] expected"}return null};FieldMask.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldMask)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldMask;if(object.paths){if(!Array.isArray(object.paths))throw TypeError(".google.protobuf.FieldMask.paths: array expected");message.paths=[];for(var i=0;i<object.paths.length;++i)message.paths[i]=String(object.paths[i])}return message};FieldMask.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.paths=[];if(message.paths&&message.paths.length){object.paths=[];for(var j=0;j<message.paths.length;++j)object.paths[j]=message.paths[j]}return object};FieldMask.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FieldMask.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldMask"};return FieldMask}();return protobuf}();google.longrunning=function(){var longrunning={};longrunning.Operations=function(){function Operations(rpcImpl,requestDelimited,responseDelimited){$protobuf.rpc.Service.call(this,rpcImpl,requestDelimited,responseDelimited)}(Operations.prototype=Object.create($protobuf.rpc.Service.prototype)).constructor=Operations;Operations.create=function create(rpcImpl,requestDelimited,responseDelimited){return new this(rpcImpl,requestDelimited,responseDelimited)};Object.defineProperty(Operations.prototype.listOperations=function listOperations(request,callback){return this.rpcCall(listOperations,$root.google.longrunning.ListOperationsRequest,$root.google.longrunning.ListOperationsResponse,request,callback)},"name",{value:"ListOperations"});Object.defineProperty(Operations.prototype.getOperation=function getOperation(request,callback){return this.rpcCall(getOperation,$root.google.longrunning.GetOperationRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"GetOperation"});Object.defineProperty(Operations.prototype.deleteOperation=function deleteOperation(request,callback){return this.rpcCall(deleteOperation,$root.google.longrunning.DeleteOperationRequest,$root.google.protobuf.Empty,request,callback)},"name",{value:"DeleteOperation"});Object.defineProperty(Operations.prototype.cancelOperation=function cancelOperation(request,callback){return this.rpcCall(cancelOperation,$root.google.longrunning.CancelOperationRequest,$root.google.protobuf.Empty,request,callback)},"name",{value:"CancelOperation"});Object.defineProperty(Operations.prototype.waitOperation=function waitOperation(request,callback){return this.rpcCall(waitOperation,$root.google.longrunning.WaitOperationRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"WaitOperation"});return Operations}();longrunning.Operation=function(){function Operation(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Operation.prototype.name="";Operation.prototype.metadata=null;Operation.prototype.done=false;Operation.prototype.error=null;Operation.prototype.response=null;var $oneOfFields;Object.defineProperty(Operation.prototype,"result",{get:$util.oneOfGetter($oneOfFields=["error","response"]),set:$util.oneOfSetter($oneOfFields)});Operation.create=function create(properties){return new Operation(properties)};Operation.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.metadata!=null&&Object.hasOwnProperty.call(message,"metadata"))$root.google.protobuf.Any.encode(message.metadata,writer.uint32(18).fork()).ldelim();if(message.done!=null&&Object.hasOwnProperty.call(message,"done"))writer.uint32(24).bool(message.done);if(message.error!=null&&Object.hasOwnProperty.call(message,"error"))$root.google.rpc.Status.encode(message.error,writer.uint32(34).fork()).ldelim();if(message.response!=null&&Object.hasOwnProperty.call(message,"response"))$root.google.protobuf.Any.encode(message.response,writer.uint32(42).fork()).ldelim();return writer};Operation.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Operation.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.Operation;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.metadata=$root.google.protobuf.Any.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.done=reader.bool();break}case 4:{message.error=$root.google.rpc.Status.decode(reader,reader.uint32(),undefined,long+1);break}case 5:{message.response=$root.google.protobuf.Any.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};Operation.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Operation.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";var properties={};if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.metadata!=null&&message.hasOwnProperty("metadata")){var error=$root.google.protobuf.Any.verify(message.metadata,long+1);if(error)return"metadata."+error}if(message.done!=null&&message.hasOwnProperty("done"))if(typeof message.done!=="boolean")return"done: boolean expected";if(message.error!=null&&message.hasOwnProperty("error")){properties.result=1;{var error=$root.google.rpc.Status.verify(message.error,long+1);if(error)return"error."+error}}if(message.response!=null&&message.hasOwnProperty("response")){if(properties.result===1)return"result: multiple values";properties.result=1;{var error=$root.google.protobuf.Any.verify(message.response,long+1);if(error)return"response."+error}}return null};Operation.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.Operation)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.Operation;if(object.name!=null)message.name=String(object.name);if(object.metadata!=null){if(typeof object.metadata!=="object")throw TypeError(".google.longrunning.Operation.metadata: object expected");message.metadata=$root.google.protobuf.Any.fromObject(object.metadata,long+1)}if(object.done!=null)message.done=Boolean(object.done);if(object.error!=null){if(typeof object.error!=="object")throw TypeError(".google.longrunning.Operation.error: object expected");message.error=$root.google.rpc.Status.fromObject(object.error,long+1)}if(object.response!=null){if(typeof object.response!=="object")throw TypeError(".google.longrunning.Operation.response: object expected");message.response=$root.google.protobuf.Any.fromObject(object.response,long+1)}return message};Operation.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.metadata=null;object.done=false}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.metadata!=null&&message.hasOwnProperty("metadata"))object.metadata=$root.google.protobuf.Any.toObject(message.metadata,options);if(message.done!=null&&message.hasOwnProperty("done"))object.done=message.done;if(message.error!=null&&message.hasOwnProperty("error")){object.error=$root.google.rpc.Status.toObject(message.error,options);if(options.oneofs)object.result="error"}if(message.response!=null&&message.hasOwnProperty("response")){object.response=$root.google.protobuf.Any.toObject(message.response,options);if(options.oneofs)object.result="response"}return object};Operation.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Operation.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.Operation"};return Operation}();longrunning.GetOperationRequest=function(){function GetOperationRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GetOperationRequest.prototype.name="";GetOperationRequest.create=function create(properties){return new GetOperationRequest(properties)};GetOperationRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};GetOperationRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GetOperationRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.GetOperationRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};GetOperationRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GetOperationRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};GetOperationRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.GetOperationRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.GetOperationRequest;if(object.name!=null)message.name=String(object.name);return message};GetOperationRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};GetOperationRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GetOperationRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.GetOperationRequest"};return GetOperationRequest}();longrunning.ListOperationsRequest=function(){function ListOperationsRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ListOperationsRequest.prototype.name="";ListOperationsRequest.prototype.filter="";ListOperationsRequest.prototype.pageSize=0;ListOperationsRequest.prototype.pageToken="";ListOperationsRequest.create=function create(properties){return new ListOperationsRequest(properties)};ListOperationsRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.filter!=null&&Object.hasOwnProperty.call(message,"filter"))writer.uint32(10).string(message.filter);if(message.pageSize!=null&&Object.hasOwnProperty.call(message,"pageSize"))writer.uint32(16).int32(message.pageSize);if(message.pageToken!=null&&Object.hasOwnProperty.call(message,"pageToken"))writer.uint32(26).string(message.pageToken);if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(34).string(message.name);return writer};ListOperationsRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ListOperationsRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.ListOperationsRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 4:{message.name=reader.string();break}case 1:{message.filter=reader.string();break}case 2:{message.pageSize=reader.int32();break}case 3:{message.pageToken=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};ListOperationsRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ListOperationsRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.filter!=null&&message.hasOwnProperty("filter"))if(!$util.isString(message.filter))return"filter: string expected";if(message.pageSize!=null&&message.hasOwnProperty("pageSize"))if(!$util.isInteger(message.pageSize))return"pageSize: integer expected";if(message.pageToken!=null&&message.hasOwnProperty("pageToken"))if(!$util.isString(message.pageToken))return"pageToken: string expected";return null};ListOperationsRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.ListOperationsRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.ListOperationsRequest;if(object.name!=null)message.name=String(object.name);if(object.filter!=null)message.filter=String(object.filter);if(object.pageSize!=null)message.pageSize=object.pageSize|0;if(object.pageToken!=null)message.pageToken=String(object.pageToken);return message};ListOperationsRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.filter="";object.pageSize=0;object.pageToken="";object.name=""}if(message.filter!=null&&message.hasOwnProperty("filter"))object.filter=message.filter;if(message.pageSize!=null&&message.hasOwnProperty("pageSize"))object.pageSize=message.pageSize;if(message.pageToken!=null&&message.hasOwnProperty("pageToken"))object.pageToken=message.pageToken;if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};ListOperationsRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ListOperationsRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.ListOperationsRequest"};return ListOperationsRequest}();longrunning.ListOperationsResponse=function(){function ListOperationsResponse(properties){this.operations=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ListOperationsResponse.prototype.operations=$util.emptyArray;ListOperationsResponse.prototype.nextPageToken="";ListOperationsResponse.create=function create(properties){return new ListOperationsResponse(properties)};ListOperationsResponse.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.operations!=null&&message.operations.length)for(var i=0;i<message.operations.length;++i)$root.google.longrunning.Operation.encode(message.operations[i],writer.uint32(10).fork()).ldelim();if(message.nextPageToken!=null&&Object.hasOwnProperty.call(message,"nextPageToken"))writer.uint32(18).string(message.nextPageToken);return writer};ListOperationsResponse.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ListOperationsResponse.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.ListOperationsResponse;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.operations&&message.operations.length))message.operations=[];message.operations.push($root.google.longrunning.Operation.decode(reader,reader.uint32(),undefined,long+1));break}case 2:{message.nextPageToken=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};ListOperationsResponse.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ListOperationsResponse.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.operations!=null&&message.hasOwnProperty("operations")){if(!Array.isArray(message.operations))return"operations: array expected";for(var i=0;i<message.operations.length;++i){var error=$root.google.longrunning.Operation.verify(message.operations[i],long+1);if(error)return"operations."+error}}if(message.nextPageToken!=null&&message.hasOwnProperty("nextPageToken"))if(!$util.isString(message.nextPageToken))return"nextPageToken: string expected";return null};ListOperationsResponse.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.ListOperationsResponse)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.ListOperationsResponse;if(object.operations){if(!Array.isArray(object.operations))throw TypeError(".google.longrunning.ListOperationsResponse.operations: array expected");message.operations=[];for(var i=0;i<object.operations.length;++i){if(typeof object.operations[i]!=="object")throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected");message.operations[i]=$root.google.longrunning.Operation.fromObject(object.operations[i],long+1)}}if(object.nextPageToken!=null)message.nextPageToken=String(object.nextPageToken);return message};ListOperationsResponse.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.operations=[];if(options.defaults)object.nextPageToken="";if(message.operations&&message.operations.length){object.operations=[];for(var j=0;j<message.operations.length;++j)object.operations[j]=$root.google.longrunning.Operation.toObject(message.operations[j],options)}if(message.nextPageToken!=null&&message.hasOwnProperty("nextPageToken"))object.nextPageToken=message.nextPageToken;return object};ListOperationsResponse.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ListOperationsResponse.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.ListOperationsResponse"};return ListOperationsResponse}();longrunning.CancelOperationRequest=function(){function CancelOperationRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CancelOperationRequest.prototype.name="";CancelOperationRequest.create=function create(properties){return new CancelOperationRequest(properties)};CancelOperationRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};CancelOperationRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CancelOperationRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.CancelOperationRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};CancelOperationRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CancelOperationRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};CancelOperationRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.CancelOperationRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.CancelOperationRequest;if(object.name!=null)message.name=String(object.name);return message};CancelOperationRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};CancelOperationRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CancelOperationRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.CancelOperationRequest"};return CancelOperationRequest}();longrunning.DeleteOperationRequest=function(){function DeleteOperationRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}DeleteOperationRequest.prototype.name="";DeleteOperationRequest.create=function create(properties){return new DeleteOperationRequest(properties)};DeleteOperationRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};DeleteOperationRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};DeleteOperationRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.DeleteOperationRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};DeleteOperationRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};DeleteOperationRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};DeleteOperationRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.DeleteOperationRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.DeleteOperationRequest;if(object.name!=null)message.name=String(object.name);return message};DeleteOperationRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};DeleteOperationRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};DeleteOperationRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.DeleteOperationRequest"};return DeleteOperationRequest}();longrunning.WaitOperationRequest=function(){function WaitOperationRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}WaitOperationRequest.prototype.name="";WaitOperationRequest.prototype.timeout=null;WaitOperationRequest.create=function create(properties){return new WaitOperationRequest(properties)};WaitOperationRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.timeout!=null&&Object.hasOwnProperty.call(message,"timeout"))$root.google.protobuf.Duration.encode(message.timeout,writer.uint32(18).fork()).ldelim();return writer};WaitOperationRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};WaitOperationRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.WaitOperationRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.timeout=$root.google.protobuf.Duration.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};WaitOperationRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};WaitOperationRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.timeout!=null&&message.hasOwnProperty("timeout")){var error=$root.google.protobuf.Duration.verify(message.timeout,long+1);if(error)return"timeout."+error}return null};WaitOperationRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.WaitOperationRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.WaitOperationRequest;if(object.name!=null)message.name=String(object.name);if(object.timeout!=null){if(typeof object.timeout!=="object")throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected");message.timeout=$root.google.protobuf.Duration.fromObject(object.timeout,long+1)}return message};WaitOperationRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.timeout=null}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.timeout!=null&&message.hasOwnProperty("timeout"))object.timeout=$root.google.protobuf.Duration.toObject(message.timeout,options);return object};WaitOperationRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};WaitOperationRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.WaitOperationRequest"};return WaitOperationRequest}();longrunning.OperationInfo=function(){function OperationInfo(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}OperationInfo.prototype.responseType="";OperationInfo.prototype.metadataType="";OperationInfo.create=function create(properties){return new OperationInfo(properties)};OperationInfo.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.responseType!=null&&Object.hasOwnProperty.call(message,"responseType"))writer.uint32(10).string(message.responseType);if(message.metadataType!=null&&Object.hasOwnProperty.call(message,"metadataType"))writer.uint32(18).string(message.metadataType);return writer};OperationInfo.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};OperationInfo.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.OperationInfo;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.responseType=reader.string();break}case 2:{message.metadataType=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};OperationInfo.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};OperationInfo.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.responseType!=null&&message.hasOwnProperty("responseType"))if(!$util.isString(message.responseType))return"responseType: string expected";if(message.metadataType!=null&&message.hasOwnProperty("metadataType"))if(!$util.isString(message.metadataType))return"metadataType: string expected";return null};OperationInfo.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.OperationInfo)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.OperationInfo;if(object.responseType!=null)message.responseType=String(object.responseType);if(object.metadataType!=null)message.metadataType=String(object.metadataType);return message};OperationInfo.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.responseType="";object.metadataType=""}if(message.responseType!=null&&message.hasOwnProperty("responseType"))object.responseType=message.responseType;if(message.metadataType!=null&&message.hasOwnProperty("metadataType"))object.metadataType=message.metadataType;return object};OperationInfo.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};OperationInfo.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.OperationInfo"};return OperationInfo}();return longrunning}();google.rpc=function(){var rpc={};rpc.Status=function(){function Status(properties){this.details=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Status.prototype.code=0;Status.prototype.message="";Status.prototype.details=$util.emptyArray;Status.create=function create(properties){return new Status(properties)};Status.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.code!=null&&Object.hasOwnProperty.call(message,"code"))writer.uint32(8).int32(message.code);if(message.message!=null&&Object.hasOwnProperty.call(message,"message"))writer.uint32(18).string(message.message);if(message.details!=null&&message.details.length)for(var i=0;i<message.details.length;++i)$root.google.protobuf.Any.encode(message.details[i],writer.uint32(26).fork()).ldelim();return writer};Status.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Status.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.rpc.Status;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.code=reader.int32();break}case 2:{message.message=reader.string();break}case 3:{if(!(message.details&&message.details.length))message.details=[];message.details.push($root.google.protobuf.Any.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};Status.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Status.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.code!=null&&message.hasOwnProperty("code"))if(!$util.isInteger(message.code))return"code: integer expected";if(message.message!=null&&message.hasOwnProperty("message"))if(!$util.isString(message.message))return"message: string expected";if(message.details!=null&&message.hasOwnProperty("details")){if(!Array.isArray(message.details))return"details: array expected";for(var i=0;i<message.details.length;++i){var error=$root.google.protobuf.Any.verify(message.details[i],long+1);if(error)return"details."+error}}return null};Status.fromObject=function fromObject(object,long){if(object instanceof $root.google.rpc.Status)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.rpc.Status;if(object.code!=null)message.code=object.code|0;if(object.message!=null)message.message=String(object.message);if(object.details){if(!Array.isArray(object.details))throw TypeError(".google.rpc.Status.details: array expected");message.details=[];for(var i=0;i<object.details.length;++i){if(typeof object.details[i]!=="object")throw TypeError(".google.rpc.Status.details: object expected");message.details[i]=$root.google.protobuf.Any.fromObject(object.details[i],long+1)}}return message};Status.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.details=[];if(options.defaults){object.code=0;object.message=""}if(message.code!=null&&message.hasOwnProperty("code"))object.code=message.code;if(message.message!=null&&message.hasOwnProperty("message"))object.message=message.message;if(message.details&&message.details.length){object.details=[];for(var j=0;j<message.details.length;++j)object.details[j]=$root.google.protobuf.Any.toObject(message.details[j],options)}return object};Status.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Status.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.rpc.Status"};return Status}();return rpc}();return google}();return $root});
1
+ (function(global,factory){if(typeof define==="function"&&define.amd)define(["protobufjs/minimal"],factory);else if(typeof require==="function"&&typeof module==="object"&&module&&module.exports)module.exports=factory(require("google-gax/build/src/protobuf").protobufMinimal)})(this,function($protobuf){"use strict";var $Reader=$protobuf.Reader,$Writer=$protobuf.Writer,$util=$protobuf.util;var $root=$protobuf.roots._google_cloud_apikeys_protos||($protobuf.roots._google_cloud_apikeys_protos={});$root.google=function(){var google={};google.api=function(){var api={};api.apikeys=function(){var apikeys={};apikeys.v2=function(){var v2={};v2.ApiKeys=function(){function ApiKeys(rpcImpl,requestDelimited,responseDelimited){$protobuf.rpc.Service.call(this,rpcImpl,requestDelimited,responseDelimited)}(ApiKeys.prototype=Object.create($protobuf.rpc.Service.prototype)).constructor=ApiKeys;ApiKeys.create=function create(rpcImpl,requestDelimited,responseDelimited){return new this(rpcImpl,requestDelimited,responseDelimited)};Object.defineProperty(ApiKeys.prototype.createKey=function createKey(request,callback){return this.rpcCall(createKey,$root.google.api.apikeys.v2.CreateKeyRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"CreateKey"});Object.defineProperty(ApiKeys.prototype.listKeys=function listKeys(request,callback){return this.rpcCall(listKeys,$root.google.api.apikeys.v2.ListKeysRequest,$root.google.api.apikeys.v2.ListKeysResponse,request,callback)},"name",{value:"ListKeys"});Object.defineProperty(ApiKeys.prototype.getKey=function getKey(request,callback){return this.rpcCall(getKey,$root.google.api.apikeys.v2.GetKeyRequest,$root.google.api.apikeys.v2.Key,request,callback)},"name",{value:"GetKey"});Object.defineProperty(ApiKeys.prototype.getKeyString=function getKeyString(request,callback){return this.rpcCall(getKeyString,$root.google.api.apikeys.v2.GetKeyStringRequest,$root.google.api.apikeys.v2.GetKeyStringResponse,request,callback)},"name",{value:"GetKeyString"});Object.defineProperty(ApiKeys.prototype.updateKey=function updateKey(request,callback){return this.rpcCall(updateKey,$root.google.api.apikeys.v2.UpdateKeyRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"UpdateKey"});Object.defineProperty(ApiKeys.prototype.deleteKey=function deleteKey(request,callback){return this.rpcCall(deleteKey,$root.google.api.apikeys.v2.DeleteKeyRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"DeleteKey"});Object.defineProperty(ApiKeys.prototype.undeleteKey=function undeleteKey(request,callback){return this.rpcCall(undeleteKey,$root.google.api.apikeys.v2.UndeleteKeyRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"UndeleteKey"});Object.defineProperty(ApiKeys.prototype.lookupKey=function lookupKey(request,callback){return this.rpcCall(lookupKey,$root.google.api.apikeys.v2.LookupKeyRequest,$root.google.api.apikeys.v2.LookupKeyResponse,request,callback)},"name",{value:"LookupKey"});return ApiKeys}();v2.CreateKeyRequest=function(){function CreateKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CreateKeyRequest.prototype.parent="";CreateKeyRequest.prototype.key=null;CreateKeyRequest.prototype.keyId="";CreateKeyRequest.create=function create(properties){return new CreateKeyRequest(properties)};CreateKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.parent!=null&&Object.hasOwnProperty.call(message,"parent"))writer.uint32(10).string(message.parent);if(message.key!=null&&Object.hasOwnProperty.call(message,"key"))$root.google.api.apikeys.v2.Key.encode(message.key,writer.uint32(18).fork()).ldelim();if(message.keyId!=null&&Object.hasOwnProperty.call(message,"keyId"))writer.uint32(26).string(message.keyId);return writer};CreateKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CreateKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.CreateKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.parent=reader.string();break}case 2:{message.key=$root.google.api.apikeys.v2.Key.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.keyId=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};CreateKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CreateKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.parent!=null&&message.hasOwnProperty("parent"))if(!$util.isString(message.parent))return"parent: string expected";if(message.key!=null&&message.hasOwnProperty("key")){var error=$root.google.api.apikeys.v2.Key.verify(message.key,long+1);if(error)return"key."+error}if(message.keyId!=null&&message.hasOwnProperty("keyId"))if(!$util.isString(message.keyId))return"keyId: string expected";return null};CreateKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.CreateKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.CreateKeyRequest;if(object.parent!=null)message.parent=String(object.parent);if(object.key!=null){if(typeof object.key!=="object")throw TypeError(".google.api.apikeys.v2.CreateKeyRequest.key: object expected");message.key=$root.google.api.apikeys.v2.Key.fromObject(object.key,long+1)}if(object.keyId!=null)message.keyId=String(object.keyId);return message};CreateKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.parent="";object.key=null;object.keyId=""}if(message.parent!=null&&message.hasOwnProperty("parent"))object.parent=message.parent;if(message.key!=null&&message.hasOwnProperty("key"))object.key=$root.google.api.apikeys.v2.Key.toObject(message.key,options);if(message.keyId!=null&&message.hasOwnProperty("keyId"))object.keyId=message.keyId;return object};CreateKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CreateKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.CreateKeyRequest"};return CreateKeyRequest}();v2.ListKeysRequest=function(){function ListKeysRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ListKeysRequest.prototype.parent="";ListKeysRequest.prototype.pageSize=0;ListKeysRequest.prototype.pageToken="";ListKeysRequest.prototype.showDeleted=false;ListKeysRequest.create=function create(properties){return new ListKeysRequest(properties)};ListKeysRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.parent!=null&&Object.hasOwnProperty.call(message,"parent"))writer.uint32(10).string(message.parent);if(message.pageSize!=null&&Object.hasOwnProperty.call(message,"pageSize"))writer.uint32(16).int32(message.pageSize);if(message.pageToken!=null&&Object.hasOwnProperty.call(message,"pageToken"))writer.uint32(26).string(message.pageToken);if(message.showDeleted!=null&&Object.hasOwnProperty.call(message,"showDeleted"))writer.uint32(48).bool(message.showDeleted);return writer};ListKeysRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ListKeysRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.ListKeysRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.parent=reader.string();break}case 2:{message.pageSize=reader.int32();break}case 3:{message.pageToken=reader.string();break}case 6:{message.showDeleted=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};ListKeysRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ListKeysRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.parent!=null&&message.hasOwnProperty("parent"))if(!$util.isString(message.parent))return"parent: string expected";if(message.pageSize!=null&&message.hasOwnProperty("pageSize"))if(!$util.isInteger(message.pageSize))return"pageSize: integer expected";if(message.pageToken!=null&&message.hasOwnProperty("pageToken"))if(!$util.isString(message.pageToken))return"pageToken: string expected";if(message.showDeleted!=null&&message.hasOwnProperty("showDeleted"))if(typeof message.showDeleted!=="boolean")return"showDeleted: boolean expected";return null};ListKeysRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.ListKeysRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.ListKeysRequest;if(object.parent!=null)message.parent=String(object.parent);if(object.pageSize!=null)message.pageSize=object.pageSize|0;if(object.pageToken!=null)message.pageToken=String(object.pageToken);if(object.showDeleted!=null)message.showDeleted=Boolean(object.showDeleted);return message};ListKeysRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.parent="";object.pageSize=0;object.pageToken="";object.showDeleted=false}if(message.parent!=null&&message.hasOwnProperty("parent"))object.parent=message.parent;if(message.pageSize!=null&&message.hasOwnProperty("pageSize"))object.pageSize=message.pageSize;if(message.pageToken!=null&&message.hasOwnProperty("pageToken"))object.pageToken=message.pageToken;if(message.showDeleted!=null&&message.hasOwnProperty("showDeleted"))object.showDeleted=message.showDeleted;return object};ListKeysRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ListKeysRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.ListKeysRequest"};return ListKeysRequest}();v2.ListKeysResponse=function(){function ListKeysResponse(properties){this.keys=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ListKeysResponse.prototype.keys=$util.emptyArray;ListKeysResponse.prototype.nextPageToken="";ListKeysResponse.create=function create(properties){return new ListKeysResponse(properties)};ListKeysResponse.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.keys!=null&&message.keys.length)for(var i=0;i<message.keys.length;++i)$root.google.api.apikeys.v2.Key.encode(message.keys[i],writer.uint32(10).fork()).ldelim();if(message.nextPageToken!=null&&Object.hasOwnProperty.call(message,"nextPageToken"))writer.uint32(18).string(message.nextPageToken);return writer};ListKeysResponse.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ListKeysResponse.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.ListKeysResponse;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.keys&&message.keys.length))message.keys=[];message.keys.push($root.google.api.apikeys.v2.Key.decode(reader,reader.uint32(),undefined,long+1));break}case 2:{message.nextPageToken=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};ListKeysResponse.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ListKeysResponse.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.keys!=null&&message.hasOwnProperty("keys")){if(!Array.isArray(message.keys))return"keys: array expected";for(var i=0;i<message.keys.length;++i){var error=$root.google.api.apikeys.v2.Key.verify(message.keys[i],long+1);if(error)return"keys."+error}}if(message.nextPageToken!=null&&message.hasOwnProperty("nextPageToken"))if(!$util.isString(message.nextPageToken))return"nextPageToken: string expected";return null};ListKeysResponse.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.ListKeysResponse)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.ListKeysResponse;if(object.keys){if(!Array.isArray(object.keys))throw TypeError(".google.api.apikeys.v2.ListKeysResponse.keys: array expected");message.keys=[];for(var i=0;i<object.keys.length;++i){if(typeof object.keys[i]!=="object")throw TypeError(".google.api.apikeys.v2.ListKeysResponse.keys: object expected");message.keys[i]=$root.google.api.apikeys.v2.Key.fromObject(object.keys[i],long+1)}}if(object.nextPageToken!=null)message.nextPageToken=String(object.nextPageToken);return message};ListKeysResponse.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.keys=[];if(options.defaults)object.nextPageToken="";if(message.keys&&message.keys.length){object.keys=[];for(var j=0;j<message.keys.length;++j)object.keys[j]=$root.google.api.apikeys.v2.Key.toObject(message.keys[j],options)}if(message.nextPageToken!=null&&message.hasOwnProperty("nextPageToken"))object.nextPageToken=message.nextPageToken;return object};ListKeysResponse.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ListKeysResponse.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.ListKeysResponse"};return ListKeysResponse}();v2.GetKeyRequest=function(){function GetKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GetKeyRequest.prototype.name="";GetKeyRequest.create=function create(properties){return new GetKeyRequest(properties)};GetKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};GetKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GetKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.GetKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};GetKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GetKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};GetKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.GetKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.GetKeyRequest;if(object.name!=null)message.name=String(object.name);return message};GetKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};GetKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GetKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.GetKeyRequest"};return GetKeyRequest}();v2.GetKeyStringRequest=function(){function GetKeyStringRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GetKeyStringRequest.prototype.name="";GetKeyStringRequest.create=function create(properties){return new GetKeyStringRequest(properties)};GetKeyStringRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};GetKeyStringRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GetKeyStringRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.GetKeyStringRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};GetKeyStringRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GetKeyStringRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};GetKeyStringRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.GetKeyStringRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.GetKeyStringRequest;if(object.name!=null)message.name=String(object.name);return message};GetKeyStringRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};GetKeyStringRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GetKeyStringRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.GetKeyStringRequest"};return GetKeyStringRequest}();v2.GetKeyStringResponse=function(){function GetKeyStringResponse(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GetKeyStringResponse.prototype.keyString="";GetKeyStringResponse.create=function create(properties){return new GetKeyStringResponse(properties)};GetKeyStringResponse.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.keyString!=null&&Object.hasOwnProperty.call(message,"keyString"))writer.uint32(10).string(message.keyString);return writer};GetKeyStringResponse.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GetKeyStringResponse.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.GetKeyStringResponse;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.keyString=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};GetKeyStringResponse.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GetKeyStringResponse.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.keyString!=null&&message.hasOwnProperty("keyString"))if(!$util.isString(message.keyString))return"keyString: string expected";return null};GetKeyStringResponse.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.GetKeyStringResponse)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.GetKeyStringResponse;if(object.keyString!=null)message.keyString=String(object.keyString);return message};GetKeyStringResponse.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.keyString="";if(message.keyString!=null&&message.hasOwnProperty("keyString"))object.keyString=message.keyString;return object};GetKeyStringResponse.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GetKeyStringResponse.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.GetKeyStringResponse"};return GetKeyStringResponse}();v2.UpdateKeyRequest=function(){function UpdateKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}UpdateKeyRequest.prototype.key=null;UpdateKeyRequest.prototype.updateMask=null;UpdateKeyRequest.create=function create(properties){return new UpdateKeyRequest(properties)};UpdateKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.key!=null&&Object.hasOwnProperty.call(message,"key"))$root.google.api.apikeys.v2.Key.encode(message.key,writer.uint32(10).fork()).ldelim();if(message.updateMask!=null&&Object.hasOwnProperty.call(message,"updateMask"))$root.google.protobuf.FieldMask.encode(message.updateMask,writer.uint32(18).fork()).ldelim();return writer};UpdateKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};UpdateKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.UpdateKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.key=$root.google.api.apikeys.v2.Key.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.updateMask=$root.google.protobuf.FieldMask.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};UpdateKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};UpdateKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.key!=null&&message.hasOwnProperty("key")){var error=$root.google.api.apikeys.v2.Key.verify(message.key,long+1);if(error)return"key."+error}if(message.updateMask!=null&&message.hasOwnProperty("updateMask")){var error=$root.google.protobuf.FieldMask.verify(message.updateMask,long+1);if(error)return"updateMask."+error}return null};UpdateKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.UpdateKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.UpdateKeyRequest;if(object.key!=null){if(typeof object.key!=="object")throw TypeError(".google.api.apikeys.v2.UpdateKeyRequest.key: object expected");message.key=$root.google.api.apikeys.v2.Key.fromObject(object.key,long+1)}if(object.updateMask!=null){if(typeof object.updateMask!=="object")throw TypeError(".google.api.apikeys.v2.UpdateKeyRequest.updateMask: object expected");message.updateMask=$root.google.protobuf.FieldMask.fromObject(object.updateMask,long+1)}return message};UpdateKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.key=null;object.updateMask=null}if(message.key!=null&&message.hasOwnProperty("key"))object.key=$root.google.api.apikeys.v2.Key.toObject(message.key,options);if(message.updateMask!=null&&message.hasOwnProperty("updateMask"))object.updateMask=$root.google.protobuf.FieldMask.toObject(message.updateMask,options);return object};UpdateKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};UpdateKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.UpdateKeyRequest"};return UpdateKeyRequest}();v2.DeleteKeyRequest=function(){function DeleteKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}DeleteKeyRequest.prototype.name="";DeleteKeyRequest.prototype.etag="";DeleteKeyRequest.create=function create(properties){return new DeleteKeyRequest(properties)};DeleteKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.etag!=null&&Object.hasOwnProperty.call(message,"etag"))writer.uint32(18).string(message.etag);return writer};DeleteKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};DeleteKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.DeleteKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.etag=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};DeleteKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};DeleteKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.etag!=null&&message.hasOwnProperty("etag"))if(!$util.isString(message.etag))return"etag: string expected";return null};DeleteKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.DeleteKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.DeleteKeyRequest;if(object.name!=null)message.name=String(object.name);if(object.etag!=null)message.etag=String(object.etag);return message};DeleteKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.etag=""}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.etag!=null&&message.hasOwnProperty("etag"))object.etag=message.etag;return object};DeleteKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};DeleteKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.DeleteKeyRequest"};return DeleteKeyRequest}();v2.UndeleteKeyRequest=function(){function UndeleteKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}UndeleteKeyRequest.prototype.name="";UndeleteKeyRequest.create=function create(properties){return new UndeleteKeyRequest(properties)};UndeleteKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};UndeleteKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};UndeleteKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.UndeleteKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};UndeleteKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};UndeleteKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};UndeleteKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.UndeleteKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.UndeleteKeyRequest;if(object.name!=null)message.name=String(object.name);return message};UndeleteKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};UndeleteKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};UndeleteKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.UndeleteKeyRequest"};return UndeleteKeyRequest}();v2.LookupKeyRequest=function(){function LookupKeyRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}LookupKeyRequest.prototype.keyString="";LookupKeyRequest.create=function create(properties){return new LookupKeyRequest(properties)};LookupKeyRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.keyString!=null&&Object.hasOwnProperty.call(message,"keyString"))writer.uint32(10).string(message.keyString);return writer};LookupKeyRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};LookupKeyRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.LookupKeyRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.keyString=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};LookupKeyRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};LookupKeyRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.keyString!=null&&message.hasOwnProperty("keyString"))if(!$util.isString(message.keyString))return"keyString: string expected";return null};LookupKeyRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.LookupKeyRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.LookupKeyRequest;if(object.keyString!=null)message.keyString=String(object.keyString);return message};LookupKeyRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.keyString="";if(message.keyString!=null&&message.hasOwnProperty("keyString"))object.keyString=message.keyString;return object};LookupKeyRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};LookupKeyRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.LookupKeyRequest"};return LookupKeyRequest}();v2.LookupKeyResponse=function(){function LookupKeyResponse(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}LookupKeyResponse.prototype.parent="";LookupKeyResponse.prototype.name="";LookupKeyResponse.create=function create(properties){return new LookupKeyResponse(properties)};LookupKeyResponse.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.parent!=null&&Object.hasOwnProperty.call(message,"parent"))writer.uint32(10).string(message.parent);if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(18).string(message.name);return writer};LookupKeyResponse.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};LookupKeyResponse.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.LookupKeyResponse;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.parent=reader.string();break}case 2:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};LookupKeyResponse.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};LookupKeyResponse.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.parent!=null&&message.hasOwnProperty("parent"))if(!$util.isString(message.parent))return"parent: string expected";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};LookupKeyResponse.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.LookupKeyResponse)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.LookupKeyResponse;if(object.parent!=null)message.parent=String(object.parent);if(object.name!=null)message.name=String(object.name);return message};LookupKeyResponse.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.parent="";object.name=""}if(message.parent!=null&&message.hasOwnProperty("parent"))object.parent=message.parent;if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};LookupKeyResponse.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};LookupKeyResponse.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.LookupKeyResponse"};return LookupKeyResponse}();v2.Key=function(){function Key(properties){this.annotations={};if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Key.prototype.name="";Key.prototype.uid="";Key.prototype.displayName="";Key.prototype.keyString="";Key.prototype.createTime=null;Key.prototype.updateTime=null;Key.prototype.deleteTime=null;Key.prototype.annotations=$util.emptyObject;Key.prototype.restrictions=null;Key.prototype.etag="";Key.create=function create(properties){return new Key(properties)};Key.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.displayName!=null&&Object.hasOwnProperty.call(message,"displayName"))writer.uint32(18).string(message.displayName);if(message.keyString!=null&&Object.hasOwnProperty.call(message,"keyString"))writer.uint32(26).string(message.keyString);if(message.createTime!=null&&Object.hasOwnProperty.call(message,"createTime"))$root.google.protobuf.Timestamp.encode(message.createTime,writer.uint32(34).fork()).ldelim();if(message.uid!=null&&Object.hasOwnProperty.call(message,"uid"))writer.uint32(42).string(message.uid);if(message.updateTime!=null&&Object.hasOwnProperty.call(message,"updateTime"))$root.google.protobuf.Timestamp.encode(message.updateTime,writer.uint32(50).fork()).ldelim();if(message.deleteTime!=null&&Object.hasOwnProperty.call(message,"deleteTime"))$root.google.protobuf.Timestamp.encode(message.deleteTime,writer.uint32(58).fork()).ldelim();if(message.annotations!=null&&Object.hasOwnProperty.call(message,"annotations"))for(var keys=Object.keys(message.annotations),i=0;i<keys.length;++i)writer.uint32(66).fork().uint32(10).string(keys[i]).uint32(18).string(message.annotations[keys[i]]).ldelim();if(message.restrictions!=null&&Object.hasOwnProperty.call(message,"restrictions"))$root.google.api.apikeys.v2.Restrictions.encode(message.restrictions,writer.uint32(74).fork()).ldelim();if(message.etag!=null&&Object.hasOwnProperty.call(message,"etag"))writer.uint32(90).string(message.etag);return writer};Key.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Key.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.Key,key,value;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 5:{message.uid=reader.string();break}case 2:{message.displayName=reader.string();break}case 3:{message.keyString=reader.string();break}case 4:{message.createTime=$root.google.protobuf.Timestamp.decode(reader,reader.uint32(),undefined,long+1);break}case 6:{message.updateTime=$root.google.protobuf.Timestamp.decode(reader,reader.uint32(),undefined,long+1);break}case 7:{message.deleteTime=$root.google.protobuf.Timestamp.decode(reader,reader.uint32(),undefined,long+1);break}case 8:{if(message.annotations===$util.emptyObject)message.annotations={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.annotations,key);message.annotations[key]=value;break}case 9:{message.restrictions=$root.google.api.apikeys.v2.Restrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 11:{message.etag=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};Key.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Key.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.uid!=null&&message.hasOwnProperty("uid"))if(!$util.isString(message.uid))return"uid: string expected";if(message.displayName!=null&&message.hasOwnProperty("displayName"))if(!$util.isString(message.displayName))return"displayName: string expected";if(message.keyString!=null&&message.hasOwnProperty("keyString"))if(!$util.isString(message.keyString))return"keyString: string expected";if(message.createTime!=null&&message.hasOwnProperty("createTime")){var error=$root.google.protobuf.Timestamp.verify(message.createTime,long+1);if(error)return"createTime."+error}if(message.updateTime!=null&&message.hasOwnProperty("updateTime")){var error=$root.google.protobuf.Timestamp.verify(message.updateTime,long+1);if(error)return"updateTime."+error}if(message.deleteTime!=null&&message.hasOwnProperty("deleteTime")){var error=$root.google.protobuf.Timestamp.verify(message.deleteTime,long+1);if(error)return"deleteTime."+error}if(message.annotations!=null&&message.hasOwnProperty("annotations")){if(!$util.isObject(message.annotations))return"annotations: object expected";var key=Object.keys(message.annotations);for(var i=0;i<key.length;++i)if(!$util.isString(message.annotations[key[i]]))return"annotations: string{k:string} expected"}if(message.restrictions!=null&&message.hasOwnProperty("restrictions")){var error=$root.google.api.apikeys.v2.Restrictions.verify(message.restrictions,long+1);if(error)return"restrictions."+error}if(message.etag!=null&&message.hasOwnProperty("etag"))if(!$util.isString(message.etag))return"etag: string expected";return null};Key.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.Key)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.Key;if(object.name!=null)message.name=String(object.name);if(object.uid!=null)message.uid=String(object.uid);if(object.displayName!=null)message.displayName=String(object.displayName);if(object.keyString!=null)message.keyString=String(object.keyString);if(object.createTime!=null){if(typeof object.createTime!=="object")throw TypeError(".google.api.apikeys.v2.Key.createTime: object expected");message.createTime=$root.google.protobuf.Timestamp.fromObject(object.createTime,long+1)}if(object.updateTime!=null){if(typeof object.updateTime!=="object")throw TypeError(".google.api.apikeys.v2.Key.updateTime: object expected");message.updateTime=$root.google.protobuf.Timestamp.fromObject(object.updateTime,long+1)}if(object.deleteTime!=null){if(typeof object.deleteTime!=="object")throw TypeError(".google.api.apikeys.v2.Key.deleteTime: object expected");message.deleteTime=$root.google.protobuf.Timestamp.fromObject(object.deleteTime,long+1)}if(object.annotations){if(typeof object.annotations!=="object")throw TypeError(".google.api.apikeys.v2.Key.annotations: object expected");message.annotations={};for(var keys=Object.keys(object.annotations),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.annotations,keys[i]);message.annotations[keys[i]]=String(object.annotations[keys[i]])}}if(object.restrictions!=null){if(typeof object.restrictions!=="object")throw TypeError(".google.api.apikeys.v2.Key.restrictions: object expected");message.restrictions=$root.google.api.apikeys.v2.Restrictions.fromObject(object.restrictions,long+1)}if(object.etag!=null)message.etag=String(object.etag);return message};Key.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.objects||options.defaults)object.annotations={};if(options.defaults){object.name="";object.displayName="";object.keyString="";object.createTime=null;object.uid="";object.updateTime=null;object.deleteTime=null;object.restrictions=null;object.etag=""}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.displayName!=null&&message.hasOwnProperty("displayName"))object.displayName=message.displayName;if(message.keyString!=null&&message.hasOwnProperty("keyString"))object.keyString=message.keyString;if(message.createTime!=null&&message.hasOwnProperty("createTime"))object.createTime=$root.google.protobuf.Timestamp.toObject(message.createTime,options);if(message.uid!=null&&message.hasOwnProperty("uid"))object.uid=message.uid;if(message.updateTime!=null&&message.hasOwnProperty("updateTime"))object.updateTime=$root.google.protobuf.Timestamp.toObject(message.updateTime,options);if(message.deleteTime!=null&&message.hasOwnProperty("deleteTime"))object.deleteTime=$root.google.protobuf.Timestamp.toObject(message.deleteTime,options);var keys2;if(message.annotations&&(keys2=Object.keys(message.annotations)).length){object.annotations={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.annotations,keys2[j]);object.annotations[keys2[j]]=message.annotations[keys2[j]]}}if(message.restrictions!=null&&message.hasOwnProperty("restrictions"))object.restrictions=$root.google.api.apikeys.v2.Restrictions.toObject(message.restrictions,options);if(message.etag!=null&&message.hasOwnProperty("etag"))object.etag=message.etag;return object};Key.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Key.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.Key"};return Key}();v2.Restrictions=function(){function Restrictions(properties){this.apiTargets=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Restrictions.prototype.browserKeyRestrictions=null;Restrictions.prototype.serverKeyRestrictions=null;Restrictions.prototype.androidKeyRestrictions=null;Restrictions.prototype.iosKeyRestrictions=null;Restrictions.prototype.apiTargets=$util.emptyArray;var $oneOfFields;Object.defineProperty(Restrictions.prototype,"clientRestrictions",{get:$util.oneOfGetter($oneOfFields=["browserKeyRestrictions","serverKeyRestrictions","androidKeyRestrictions","iosKeyRestrictions"]),set:$util.oneOfSetter($oneOfFields)});Restrictions.create=function create(properties){return new Restrictions(properties)};Restrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.browserKeyRestrictions!=null&&Object.hasOwnProperty.call(message,"browserKeyRestrictions"))$root.google.api.apikeys.v2.BrowserKeyRestrictions.encode(message.browserKeyRestrictions,writer.uint32(10).fork()).ldelim();if(message.serverKeyRestrictions!=null&&Object.hasOwnProperty.call(message,"serverKeyRestrictions"))$root.google.api.apikeys.v2.ServerKeyRestrictions.encode(message.serverKeyRestrictions,writer.uint32(18).fork()).ldelim();if(message.androidKeyRestrictions!=null&&Object.hasOwnProperty.call(message,"androidKeyRestrictions"))$root.google.api.apikeys.v2.AndroidKeyRestrictions.encode(message.androidKeyRestrictions,writer.uint32(26).fork()).ldelim();if(message.iosKeyRestrictions!=null&&Object.hasOwnProperty.call(message,"iosKeyRestrictions"))$root.google.api.apikeys.v2.IosKeyRestrictions.encode(message.iosKeyRestrictions,writer.uint32(34).fork()).ldelim();if(message.apiTargets!=null&&message.apiTargets.length)for(var i=0;i<message.apiTargets.length;++i)$root.google.api.apikeys.v2.ApiTarget.encode(message.apiTargets[i],writer.uint32(42).fork()).ldelim();return writer};Restrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Restrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.Restrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.browserKeyRestrictions=$root.google.api.apikeys.v2.BrowserKeyRestrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.serverKeyRestrictions=$root.google.api.apikeys.v2.ServerKeyRestrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.androidKeyRestrictions=$root.google.api.apikeys.v2.AndroidKeyRestrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 4:{message.iosKeyRestrictions=$root.google.api.apikeys.v2.IosKeyRestrictions.decode(reader,reader.uint32(),undefined,long+1);break}case 5:{if(!(message.apiTargets&&message.apiTargets.length))message.apiTargets=[];message.apiTargets.push($root.google.api.apikeys.v2.ApiTarget.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};Restrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Restrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";var properties={};if(message.browserKeyRestrictions!=null&&message.hasOwnProperty("browserKeyRestrictions")){properties.clientRestrictions=1;{var error=$root.google.api.apikeys.v2.BrowserKeyRestrictions.verify(message.browserKeyRestrictions,long+1);if(error)return"browserKeyRestrictions."+error}}if(message.serverKeyRestrictions!=null&&message.hasOwnProperty("serverKeyRestrictions")){if(properties.clientRestrictions===1)return"clientRestrictions: multiple values";properties.clientRestrictions=1;{var error=$root.google.api.apikeys.v2.ServerKeyRestrictions.verify(message.serverKeyRestrictions,long+1);if(error)return"serverKeyRestrictions."+error}}if(message.androidKeyRestrictions!=null&&message.hasOwnProperty("androidKeyRestrictions")){if(properties.clientRestrictions===1)return"clientRestrictions: multiple values";properties.clientRestrictions=1;{var error=$root.google.api.apikeys.v2.AndroidKeyRestrictions.verify(message.androidKeyRestrictions,long+1);if(error)return"androidKeyRestrictions."+error}}if(message.iosKeyRestrictions!=null&&message.hasOwnProperty("iosKeyRestrictions")){if(properties.clientRestrictions===1)return"clientRestrictions: multiple values";properties.clientRestrictions=1;{var error=$root.google.api.apikeys.v2.IosKeyRestrictions.verify(message.iosKeyRestrictions,long+1);if(error)return"iosKeyRestrictions."+error}}if(message.apiTargets!=null&&message.hasOwnProperty("apiTargets")){if(!Array.isArray(message.apiTargets))return"apiTargets: array expected";for(var i=0;i<message.apiTargets.length;++i){var error=$root.google.api.apikeys.v2.ApiTarget.verify(message.apiTargets[i],long+1);if(error)return"apiTargets."+error}}return null};Restrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.Restrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.Restrictions;if(object.browserKeyRestrictions!=null){if(typeof object.browserKeyRestrictions!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.browserKeyRestrictions: object expected");message.browserKeyRestrictions=$root.google.api.apikeys.v2.BrowserKeyRestrictions.fromObject(object.browserKeyRestrictions,long+1)}if(object.serverKeyRestrictions!=null){if(typeof object.serverKeyRestrictions!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.serverKeyRestrictions: object expected");message.serverKeyRestrictions=$root.google.api.apikeys.v2.ServerKeyRestrictions.fromObject(object.serverKeyRestrictions,long+1)}if(object.androidKeyRestrictions!=null){if(typeof object.androidKeyRestrictions!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.androidKeyRestrictions: object expected");message.androidKeyRestrictions=$root.google.api.apikeys.v2.AndroidKeyRestrictions.fromObject(object.androidKeyRestrictions,long+1)}if(object.iosKeyRestrictions!=null){if(typeof object.iosKeyRestrictions!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.iosKeyRestrictions: object expected");message.iosKeyRestrictions=$root.google.api.apikeys.v2.IosKeyRestrictions.fromObject(object.iosKeyRestrictions,long+1)}if(object.apiTargets){if(!Array.isArray(object.apiTargets))throw TypeError(".google.api.apikeys.v2.Restrictions.apiTargets: array expected");message.apiTargets=[];for(var i=0;i<object.apiTargets.length;++i){if(typeof object.apiTargets[i]!=="object")throw TypeError(".google.api.apikeys.v2.Restrictions.apiTargets: object expected");message.apiTargets[i]=$root.google.api.apikeys.v2.ApiTarget.fromObject(object.apiTargets[i],long+1)}}return message};Restrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.apiTargets=[];if(message.browserKeyRestrictions!=null&&message.hasOwnProperty("browserKeyRestrictions")){object.browserKeyRestrictions=$root.google.api.apikeys.v2.BrowserKeyRestrictions.toObject(message.browserKeyRestrictions,options);if(options.oneofs)object.clientRestrictions="browserKeyRestrictions"}if(message.serverKeyRestrictions!=null&&message.hasOwnProperty("serverKeyRestrictions")){object.serverKeyRestrictions=$root.google.api.apikeys.v2.ServerKeyRestrictions.toObject(message.serverKeyRestrictions,options);if(options.oneofs)object.clientRestrictions="serverKeyRestrictions"}if(message.androidKeyRestrictions!=null&&message.hasOwnProperty("androidKeyRestrictions")){object.androidKeyRestrictions=$root.google.api.apikeys.v2.AndroidKeyRestrictions.toObject(message.androidKeyRestrictions,options);if(options.oneofs)object.clientRestrictions="androidKeyRestrictions"}if(message.iosKeyRestrictions!=null&&message.hasOwnProperty("iosKeyRestrictions")){object.iosKeyRestrictions=$root.google.api.apikeys.v2.IosKeyRestrictions.toObject(message.iosKeyRestrictions,options);if(options.oneofs)object.clientRestrictions="iosKeyRestrictions"}if(message.apiTargets&&message.apiTargets.length){object.apiTargets=[];for(var j=0;j<message.apiTargets.length;++j)object.apiTargets[j]=$root.google.api.apikeys.v2.ApiTarget.toObject(message.apiTargets[j],options)}return object};Restrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Restrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.Restrictions"};return Restrictions}();v2.BrowserKeyRestrictions=function(){function BrowserKeyRestrictions(properties){this.allowedReferrers=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}BrowserKeyRestrictions.prototype.allowedReferrers=$util.emptyArray;BrowserKeyRestrictions.create=function create(properties){return new BrowserKeyRestrictions(properties)};BrowserKeyRestrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowedReferrers!=null&&message.allowedReferrers.length)for(var i=0;i<message.allowedReferrers.length;++i)writer.uint32(10).string(message.allowedReferrers[i]);return writer};BrowserKeyRestrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};BrowserKeyRestrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.BrowserKeyRestrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.allowedReferrers&&message.allowedReferrers.length))message.allowedReferrers=[];message.allowedReferrers.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};BrowserKeyRestrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};BrowserKeyRestrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowedReferrers!=null&&message.hasOwnProperty("allowedReferrers")){if(!Array.isArray(message.allowedReferrers))return"allowedReferrers: array expected";for(var i=0;i<message.allowedReferrers.length;++i)if(!$util.isString(message.allowedReferrers[i]))return"allowedReferrers: string[] expected"}return null};BrowserKeyRestrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.BrowserKeyRestrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.BrowserKeyRestrictions;if(object.allowedReferrers){if(!Array.isArray(object.allowedReferrers))throw TypeError(".google.api.apikeys.v2.BrowserKeyRestrictions.allowedReferrers: array expected");message.allowedReferrers=[];for(var i=0;i<object.allowedReferrers.length;++i)message.allowedReferrers[i]=String(object.allowedReferrers[i])}return message};BrowserKeyRestrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.allowedReferrers=[];if(message.allowedReferrers&&message.allowedReferrers.length){object.allowedReferrers=[];for(var j=0;j<message.allowedReferrers.length;++j)object.allowedReferrers[j]=message.allowedReferrers[j]}return object};BrowserKeyRestrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};BrowserKeyRestrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.BrowserKeyRestrictions"};return BrowserKeyRestrictions}();v2.ServerKeyRestrictions=function(){function ServerKeyRestrictions(properties){this.allowedIps=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ServerKeyRestrictions.prototype.allowedIps=$util.emptyArray;ServerKeyRestrictions.create=function create(properties){return new ServerKeyRestrictions(properties)};ServerKeyRestrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowedIps!=null&&message.allowedIps.length)for(var i=0;i<message.allowedIps.length;++i)writer.uint32(10).string(message.allowedIps[i]);return writer};ServerKeyRestrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ServerKeyRestrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.ServerKeyRestrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.allowedIps&&message.allowedIps.length))message.allowedIps=[];message.allowedIps.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};ServerKeyRestrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ServerKeyRestrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowedIps!=null&&message.hasOwnProperty("allowedIps")){if(!Array.isArray(message.allowedIps))return"allowedIps: array expected";for(var i=0;i<message.allowedIps.length;++i)if(!$util.isString(message.allowedIps[i]))return"allowedIps: string[] expected"}return null};ServerKeyRestrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.ServerKeyRestrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.ServerKeyRestrictions;if(object.allowedIps){if(!Array.isArray(object.allowedIps))throw TypeError(".google.api.apikeys.v2.ServerKeyRestrictions.allowedIps: array expected");message.allowedIps=[];for(var i=0;i<object.allowedIps.length;++i)message.allowedIps[i]=String(object.allowedIps[i])}return message};ServerKeyRestrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.allowedIps=[];if(message.allowedIps&&message.allowedIps.length){object.allowedIps=[];for(var j=0;j<message.allowedIps.length;++j)object.allowedIps[j]=message.allowedIps[j]}return object};ServerKeyRestrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ServerKeyRestrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.ServerKeyRestrictions"};return ServerKeyRestrictions}();v2.AndroidKeyRestrictions=function(){function AndroidKeyRestrictions(properties){this.allowedApplications=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}AndroidKeyRestrictions.prototype.allowedApplications=$util.emptyArray;AndroidKeyRestrictions.create=function create(properties){return new AndroidKeyRestrictions(properties)};AndroidKeyRestrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowedApplications!=null&&message.allowedApplications.length)for(var i=0;i<message.allowedApplications.length;++i)$root.google.api.apikeys.v2.AndroidApplication.encode(message.allowedApplications[i],writer.uint32(10).fork()).ldelim();return writer};AndroidKeyRestrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};AndroidKeyRestrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.AndroidKeyRestrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.allowedApplications&&message.allowedApplications.length))message.allowedApplications=[];message.allowedApplications.push($root.google.api.apikeys.v2.AndroidApplication.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};AndroidKeyRestrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};AndroidKeyRestrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowedApplications!=null&&message.hasOwnProperty("allowedApplications")){if(!Array.isArray(message.allowedApplications))return"allowedApplications: array expected";for(var i=0;i<message.allowedApplications.length;++i){var error=$root.google.api.apikeys.v2.AndroidApplication.verify(message.allowedApplications[i],long+1);if(error)return"allowedApplications."+error}}return null};AndroidKeyRestrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.AndroidKeyRestrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.AndroidKeyRestrictions;if(object.allowedApplications){if(!Array.isArray(object.allowedApplications))throw TypeError(".google.api.apikeys.v2.AndroidKeyRestrictions.allowedApplications: array expected");message.allowedApplications=[];for(var i=0;i<object.allowedApplications.length;++i){if(typeof object.allowedApplications[i]!=="object")throw TypeError(".google.api.apikeys.v2.AndroidKeyRestrictions.allowedApplications: object expected");message.allowedApplications[i]=$root.google.api.apikeys.v2.AndroidApplication.fromObject(object.allowedApplications[i],long+1)}}return message};AndroidKeyRestrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.allowedApplications=[];if(message.allowedApplications&&message.allowedApplications.length){object.allowedApplications=[];for(var j=0;j<message.allowedApplications.length;++j)object.allowedApplications[j]=$root.google.api.apikeys.v2.AndroidApplication.toObject(message.allowedApplications[j],options)}return object};AndroidKeyRestrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};AndroidKeyRestrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.AndroidKeyRestrictions"};return AndroidKeyRestrictions}();v2.AndroidApplication=function(){function AndroidApplication(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}AndroidApplication.prototype.sha1Fingerprint="";AndroidApplication.prototype.packageName="";AndroidApplication.create=function create(properties){return new AndroidApplication(properties)};AndroidApplication.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.sha1Fingerprint!=null&&Object.hasOwnProperty.call(message,"sha1Fingerprint"))writer.uint32(10).string(message.sha1Fingerprint);if(message.packageName!=null&&Object.hasOwnProperty.call(message,"packageName"))writer.uint32(18).string(message.packageName);return writer};AndroidApplication.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};AndroidApplication.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.AndroidApplication;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.sha1Fingerprint=reader.string();break}case 2:{message.packageName=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};AndroidApplication.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};AndroidApplication.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.sha1Fingerprint!=null&&message.hasOwnProperty("sha1Fingerprint"))if(!$util.isString(message.sha1Fingerprint))return"sha1Fingerprint: string expected";if(message.packageName!=null&&message.hasOwnProperty("packageName"))if(!$util.isString(message.packageName))return"packageName: string expected";return null};AndroidApplication.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.AndroidApplication)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.AndroidApplication;if(object.sha1Fingerprint!=null)message.sha1Fingerprint=String(object.sha1Fingerprint);if(object.packageName!=null)message.packageName=String(object.packageName);return message};AndroidApplication.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.sha1Fingerprint="";object.packageName=""}if(message.sha1Fingerprint!=null&&message.hasOwnProperty("sha1Fingerprint"))object.sha1Fingerprint=message.sha1Fingerprint;if(message.packageName!=null&&message.hasOwnProperty("packageName"))object.packageName=message.packageName;return object};AndroidApplication.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};AndroidApplication.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.AndroidApplication"};return AndroidApplication}();v2.IosKeyRestrictions=function(){function IosKeyRestrictions(properties){this.allowedBundleIds=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}IosKeyRestrictions.prototype.allowedBundleIds=$util.emptyArray;IosKeyRestrictions.create=function create(properties){return new IosKeyRestrictions(properties)};IosKeyRestrictions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowedBundleIds!=null&&message.allowedBundleIds.length)for(var i=0;i<message.allowedBundleIds.length;++i)writer.uint32(10).string(message.allowedBundleIds[i]);return writer};IosKeyRestrictions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};IosKeyRestrictions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.IosKeyRestrictions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.allowedBundleIds&&message.allowedBundleIds.length))message.allowedBundleIds=[];message.allowedBundleIds.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};IosKeyRestrictions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};IosKeyRestrictions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowedBundleIds!=null&&message.hasOwnProperty("allowedBundleIds")){if(!Array.isArray(message.allowedBundleIds))return"allowedBundleIds: array expected";for(var i=0;i<message.allowedBundleIds.length;++i)if(!$util.isString(message.allowedBundleIds[i]))return"allowedBundleIds: string[] expected"}return null};IosKeyRestrictions.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.IosKeyRestrictions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.IosKeyRestrictions;if(object.allowedBundleIds){if(!Array.isArray(object.allowedBundleIds))throw TypeError(".google.api.apikeys.v2.IosKeyRestrictions.allowedBundleIds: array expected");message.allowedBundleIds=[];for(var i=0;i<object.allowedBundleIds.length;++i)message.allowedBundleIds[i]=String(object.allowedBundleIds[i])}return message};IosKeyRestrictions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.allowedBundleIds=[];if(message.allowedBundleIds&&message.allowedBundleIds.length){object.allowedBundleIds=[];for(var j=0;j<message.allowedBundleIds.length;++j)object.allowedBundleIds[j]=message.allowedBundleIds[j]}return object};IosKeyRestrictions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};IosKeyRestrictions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.IosKeyRestrictions"};return IosKeyRestrictions}();v2.ApiTarget=function(){function ApiTarget(properties){this.methods=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ApiTarget.prototype.service="";ApiTarget.prototype.methods=$util.emptyArray;ApiTarget.create=function create(properties){return new ApiTarget(properties)};ApiTarget.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.service!=null&&Object.hasOwnProperty.call(message,"service"))writer.uint32(10).string(message.service);if(message.methods!=null&&message.methods.length)for(var i=0;i<message.methods.length;++i)writer.uint32(18).string(message.methods[i]);return writer};ApiTarget.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ApiTarget.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.apikeys.v2.ApiTarget;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.service=reader.string();break}case 2:{if(!(message.methods&&message.methods.length))message.methods=[];message.methods.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};ApiTarget.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ApiTarget.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.service!=null&&message.hasOwnProperty("service"))if(!$util.isString(message.service))return"service: string expected";if(message.methods!=null&&message.hasOwnProperty("methods")){if(!Array.isArray(message.methods))return"methods: array expected";for(var i=0;i<message.methods.length;++i)if(!$util.isString(message.methods[i]))return"methods: string[] expected"}return null};ApiTarget.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.apikeys.v2.ApiTarget)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.apikeys.v2.ApiTarget;if(object.service!=null)message.service=String(object.service);if(object.methods){if(!Array.isArray(object.methods))throw TypeError(".google.api.apikeys.v2.ApiTarget.methods: array expected");message.methods=[];for(var i=0;i<object.methods.length;++i)message.methods[i]=String(object.methods[i])}return message};ApiTarget.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.methods=[];if(options.defaults)object.service="";if(message.service!=null&&message.hasOwnProperty("service"))object.service=message.service;if(message.methods&&message.methods.length){object.methods=[];for(var j=0;j<message.methods.length;++j)object.methods[j]=message.methods[j]}return object};ApiTarget.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ApiTarget.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.apikeys.v2.ApiTarget"};return ApiTarget}();return v2}();return apikeys}();api.Http=function(){function Http(properties){this.rules=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Http.prototype.rules=$util.emptyArray;Http.prototype.fullyDecodeReservedExpansion=false;Http.create=function create(properties){return new Http(properties)};Http.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.rules!=null&&message.rules.length)for(var i=0;i<message.rules.length;++i)$root.google.api.HttpRule.encode(message.rules[i],writer.uint32(10).fork()).ldelim();if(message.fullyDecodeReservedExpansion!=null&&Object.hasOwnProperty.call(message,"fullyDecodeReservedExpansion"))writer.uint32(16).bool(message.fullyDecodeReservedExpansion);return writer};Http.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Http.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.Http;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.rules&&message.rules.length))message.rules=[];message.rules.push($root.google.api.HttpRule.decode(reader,reader.uint32(),undefined,long+1));break}case 2:{message.fullyDecodeReservedExpansion=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};Http.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Http.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.rules!=null&&message.hasOwnProperty("rules")){if(!Array.isArray(message.rules))return"rules: array expected";for(var i=0;i<message.rules.length;++i){var error=$root.google.api.HttpRule.verify(message.rules[i],long+1);if(error)return"rules."+error}}if(message.fullyDecodeReservedExpansion!=null&&message.hasOwnProperty("fullyDecodeReservedExpansion"))if(typeof message.fullyDecodeReservedExpansion!=="boolean")return"fullyDecodeReservedExpansion: boolean expected";return null};Http.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.Http)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.Http;if(object.rules){if(!Array.isArray(object.rules))throw TypeError(".google.api.Http.rules: array expected");message.rules=[];for(var i=0;i<object.rules.length;++i){if(typeof object.rules[i]!=="object")throw TypeError(".google.api.Http.rules: object expected");message.rules[i]=$root.google.api.HttpRule.fromObject(object.rules[i],long+1)}}if(object.fullyDecodeReservedExpansion!=null)message.fullyDecodeReservedExpansion=Boolean(object.fullyDecodeReservedExpansion);return message};Http.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.rules=[];if(options.defaults)object.fullyDecodeReservedExpansion=false;if(message.rules&&message.rules.length){object.rules=[];for(var j=0;j<message.rules.length;++j)object.rules[j]=$root.google.api.HttpRule.toObject(message.rules[j],options)}if(message.fullyDecodeReservedExpansion!=null&&message.hasOwnProperty("fullyDecodeReservedExpansion"))object.fullyDecodeReservedExpansion=message.fullyDecodeReservedExpansion;return object};Http.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Http.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.Http"};return Http}();api.HttpRule=function(){function HttpRule(properties){this.additionalBindings=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}HttpRule.prototype.selector="";HttpRule.prototype.get=null;HttpRule.prototype.put=null;HttpRule.prototype.post=null;HttpRule.prototype["delete"]=null;HttpRule.prototype.patch=null;HttpRule.prototype.custom=null;HttpRule.prototype.body="";HttpRule.prototype.responseBody="";HttpRule.prototype.additionalBindings=$util.emptyArray;var $oneOfFields;Object.defineProperty(HttpRule.prototype,"pattern",{get:$util.oneOfGetter($oneOfFields=["get","put","post","delete","patch","custom"]),set:$util.oneOfSetter($oneOfFields)});HttpRule.create=function create(properties){return new HttpRule(properties)};HttpRule.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.selector!=null&&Object.hasOwnProperty.call(message,"selector"))writer.uint32(10).string(message.selector);if(message.get!=null&&Object.hasOwnProperty.call(message,"get"))writer.uint32(18).string(message.get);if(message.put!=null&&Object.hasOwnProperty.call(message,"put"))writer.uint32(26).string(message.put);if(message.post!=null&&Object.hasOwnProperty.call(message,"post"))writer.uint32(34).string(message.post);if(message["delete"]!=null&&Object.hasOwnProperty.call(message,"delete"))writer.uint32(42).string(message["delete"]);if(message.patch!=null&&Object.hasOwnProperty.call(message,"patch"))writer.uint32(50).string(message.patch);if(message.body!=null&&Object.hasOwnProperty.call(message,"body"))writer.uint32(58).string(message.body);if(message.custom!=null&&Object.hasOwnProperty.call(message,"custom"))$root.google.api.CustomHttpPattern.encode(message.custom,writer.uint32(66).fork()).ldelim();if(message.additionalBindings!=null&&message.additionalBindings.length)for(var i=0;i<message.additionalBindings.length;++i)$root.google.api.HttpRule.encode(message.additionalBindings[i],writer.uint32(90).fork()).ldelim();if(message.responseBody!=null&&Object.hasOwnProperty.call(message,"responseBody"))writer.uint32(98).string(message.responseBody);return writer};HttpRule.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};HttpRule.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.HttpRule;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.selector=reader.string();break}case 2:{message.get=reader.string();break}case 3:{message.put=reader.string();break}case 4:{message.post=reader.string();break}case 5:{message["delete"]=reader.string();break}case 6:{message.patch=reader.string();break}case 8:{message.custom=$root.google.api.CustomHttpPattern.decode(reader,reader.uint32(),undefined,long+1);break}case 7:{message.body=reader.string();break}case 12:{message.responseBody=reader.string();break}case 11:{if(!(message.additionalBindings&&message.additionalBindings.length))message.additionalBindings=[];message.additionalBindings.push($root.google.api.HttpRule.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};HttpRule.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};HttpRule.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";var properties={};if(message.selector!=null&&message.hasOwnProperty("selector"))if(!$util.isString(message.selector))return"selector: string expected";if(message.get!=null&&message.hasOwnProperty("get")){properties.pattern=1;if(!$util.isString(message.get))return"get: string expected"}if(message.put!=null&&message.hasOwnProperty("put")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;if(!$util.isString(message.put))return"put: string expected"}if(message.post!=null&&message.hasOwnProperty("post")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;if(!$util.isString(message.post))return"post: string expected"}if(message["delete"]!=null&&message.hasOwnProperty("delete")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;if(!$util.isString(message["delete"]))return"delete: string expected"}if(message.patch!=null&&message.hasOwnProperty("patch")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;if(!$util.isString(message.patch))return"patch: string expected"}if(message.custom!=null&&message.hasOwnProperty("custom")){if(properties.pattern===1)return"pattern: multiple values";properties.pattern=1;{var error=$root.google.api.CustomHttpPattern.verify(message.custom,long+1);if(error)return"custom."+error}}if(message.body!=null&&message.hasOwnProperty("body"))if(!$util.isString(message.body))return"body: string expected";if(message.responseBody!=null&&message.hasOwnProperty("responseBody"))if(!$util.isString(message.responseBody))return"responseBody: string expected";if(message.additionalBindings!=null&&message.hasOwnProperty("additionalBindings")){if(!Array.isArray(message.additionalBindings))return"additionalBindings: array expected";for(var i=0;i<message.additionalBindings.length;++i){var error=$root.google.api.HttpRule.verify(message.additionalBindings[i],long+1);if(error)return"additionalBindings."+error}}return null};HttpRule.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.HttpRule)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.HttpRule;if(object.selector!=null)message.selector=String(object.selector);if(object.get!=null)message.get=String(object.get);if(object.put!=null)message.put=String(object.put);if(object.post!=null)message.post=String(object.post);if(object["delete"]!=null)message["delete"]=String(object["delete"]);if(object.patch!=null)message.patch=String(object.patch);if(object.custom!=null){if(typeof object.custom!=="object")throw TypeError(".google.api.HttpRule.custom: object expected");message.custom=$root.google.api.CustomHttpPattern.fromObject(object.custom,long+1)}if(object.body!=null)message.body=String(object.body);if(object.responseBody!=null)message.responseBody=String(object.responseBody);if(object.additionalBindings){if(!Array.isArray(object.additionalBindings))throw TypeError(".google.api.HttpRule.additionalBindings: array expected");message.additionalBindings=[];for(var i=0;i<object.additionalBindings.length;++i){if(typeof object.additionalBindings[i]!=="object")throw TypeError(".google.api.HttpRule.additionalBindings: object expected");message.additionalBindings[i]=$root.google.api.HttpRule.fromObject(object.additionalBindings[i],long+1)}}return message};HttpRule.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.additionalBindings=[];if(options.defaults){object.selector="";object.body="";object.responseBody=""}if(message.selector!=null&&message.hasOwnProperty("selector"))object.selector=message.selector;if(message.get!=null&&message.hasOwnProperty("get")){object.get=message.get;if(options.oneofs)object.pattern="get"}if(message.put!=null&&message.hasOwnProperty("put")){object.put=message.put;if(options.oneofs)object.pattern="put"}if(message.post!=null&&message.hasOwnProperty("post")){object.post=message.post;if(options.oneofs)object.pattern="post"}if(message["delete"]!=null&&message.hasOwnProperty("delete")){object["delete"]=message["delete"];if(options.oneofs)object.pattern="delete"}if(message.patch!=null&&message.hasOwnProperty("patch")){object.patch=message.patch;if(options.oneofs)object.pattern="patch"}if(message.body!=null&&message.hasOwnProperty("body"))object.body=message.body;if(message.custom!=null&&message.hasOwnProperty("custom")){object.custom=$root.google.api.CustomHttpPattern.toObject(message.custom,options);if(options.oneofs)object.pattern="custom"}if(message.additionalBindings&&message.additionalBindings.length){object.additionalBindings=[];for(var j=0;j<message.additionalBindings.length;++j)object.additionalBindings[j]=$root.google.api.HttpRule.toObject(message.additionalBindings[j],options)}if(message.responseBody!=null&&message.hasOwnProperty("responseBody"))object.responseBody=message.responseBody;return object};HttpRule.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};HttpRule.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.HttpRule"};return HttpRule}();api.CustomHttpPattern=function(){function CustomHttpPattern(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CustomHttpPattern.prototype.kind="";CustomHttpPattern.prototype.path="";CustomHttpPattern.create=function create(properties){return new CustomHttpPattern(properties)};CustomHttpPattern.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.kind!=null&&Object.hasOwnProperty.call(message,"kind"))writer.uint32(10).string(message.kind);if(message.path!=null&&Object.hasOwnProperty.call(message,"path"))writer.uint32(18).string(message.path);return writer};CustomHttpPattern.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CustomHttpPattern.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.CustomHttpPattern;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.kind=reader.string();break}case 2:{message.path=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};CustomHttpPattern.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CustomHttpPattern.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.kind!=null&&message.hasOwnProperty("kind"))if(!$util.isString(message.kind))return"kind: string expected";if(message.path!=null&&message.hasOwnProperty("path"))if(!$util.isString(message.path))return"path: string expected";return null};CustomHttpPattern.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.CustomHttpPattern)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.CustomHttpPattern;if(object.kind!=null)message.kind=String(object.kind);if(object.path!=null)message.path=String(object.path);return message};CustomHttpPattern.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.kind="";object.path=""}if(message.kind!=null&&message.hasOwnProperty("kind"))object.kind=message.kind;if(message.path!=null&&message.hasOwnProperty("path"))object.path=message.path;return object};CustomHttpPattern.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CustomHttpPattern.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.CustomHttpPattern"};return CustomHttpPattern}();api.FieldBehavior=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="FIELD_BEHAVIOR_UNSPECIFIED"]=0;values[valuesById[1]="OPTIONAL"]=1;values[valuesById[2]="REQUIRED"]=2;values[valuesById[3]="OUTPUT_ONLY"]=3;values[valuesById[4]="INPUT_ONLY"]=4;values[valuesById[5]="IMMUTABLE"]=5;values[valuesById[6]="UNORDERED_LIST"]=6;values[valuesById[7]="NON_EMPTY_DEFAULT"]=7;values[valuesById[8]="IDENTIFIER"]=8;return values}();api.ResourceDescriptor=function(){function ResourceDescriptor(properties){this.pattern=[];this.style=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ResourceDescriptor.prototype.type="";ResourceDescriptor.prototype.pattern=$util.emptyArray;ResourceDescriptor.prototype.nameField="";ResourceDescriptor.prototype.history=0;ResourceDescriptor.prototype.plural="";ResourceDescriptor.prototype.singular="";ResourceDescriptor.prototype.style=$util.emptyArray;ResourceDescriptor.create=function create(properties){return new ResourceDescriptor(properties)};ResourceDescriptor.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.type!=null&&Object.hasOwnProperty.call(message,"type"))writer.uint32(10).string(message.type);if(message.pattern!=null&&message.pattern.length)for(var i=0;i<message.pattern.length;++i)writer.uint32(18).string(message.pattern[i]);if(message.nameField!=null&&Object.hasOwnProperty.call(message,"nameField"))writer.uint32(26).string(message.nameField);if(message.history!=null&&Object.hasOwnProperty.call(message,"history"))writer.uint32(32).int32(message.history);if(message.plural!=null&&Object.hasOwnProperty.call(message,"plural"))writer.uint32(42).string(message.plural);if(message.singular!=null&&Object.hasOwnProperty.call(message,"singular"))writer.uint32(50).string(message.singular);if(message.style!=null&&message.style.length){writer.uint32(82).fork();for(var i=0;i<message.style.length;++i)writer.int32(message.style[i]);writer.ldelim()}return writer};ResourceDescriptor.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ResourceDescriptor.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.ResourceDescriptor;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.type=reader.string();break}case 2:{if(!(message.pattern&&message.pattern.length))message.pattern=[];message.pattern.push(reader.string());break}case 3:{message.nameField=reader.string();break}case 4:{message.history=reader.int32();break}case 5:{message.plural=reader.string();break}case 6:{message.singular=reader.string();break}case 10:{if(!(message.style&&message.style.length))message.style=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.style.push(reader.int32())}else message.style.push(reader.int32());break}default:reader.skipType(tag&7,long);break}}return message};ResourceDescriptor.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ResourceDescriptor.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.type!=null&&message.hasOwnProperty("type"))if(!$util.isString(message.type))return"type: string expected";if(message.pattern!=null&&message.hasOwnProperty("pattern")){if(!Array.isArray(message.pattern))return"pattern: array expected";for(var i=0;i<message.pattern.length;++i)if(!$util.isString(message.pattern[i]))return"pattern: string[] expected"}if(message.nameField!=null&&message.hasOwnProperty("nameField"))if(!$util.isString(message.nameField))return"nameField: string expected";if(message.history!=null&&message.hasOwnProperty("history"))switch(message.history){default:return"history: enum value expected";case 0:case 1:case 2:break}if(message.plural!=null&&message.hasOwnProperty("plural"))if(!$util.isString(message.plural))return"plural: string expected";if(message.singular!=null&&message.hasOwnProperty("singular"))if(!$util.isString(message.singular))return"singular: string expected";if(message.style!=null&&message.hasOwnProperty("style")){if(!Array.isArray(message.style))return"style: array expected";for(var i=0;i<message.style.length;++i)switch(message.style[i]){default:return"style: enum value[] expected";case 0:case 1:break}}return null};ResourceDescriptor.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.ResourceDescriptor)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.ResourceDescriptor;if(object.type!=null)message.type=String(object.type);if(object.pattern){if(!Array.isArray(object.pattern))throw TypeError(".google.api.ResourceDescriptor.pattern: array expected");message.pattern=[];for(var i=0;i<object.pattern.length;++i)message.pattern[i]=String(object.pattern[i])}if(object.nameField!=null)message.nameField=String(object.nameField);switch(object.history){default:if(typeof object.history==="number"){message.history=object.history;break}break;case"HISTORY_UNSPECIFIED":case 0:message.history=0;break;case"ORIGINALLY_SINGLE_PATTERN":case 1:message.history=1;break;case"FUTURE_MULTI_PATTERN":case 2:message.history=2;break}if(object.plural!=null)message.plural=String(object.plural);if(object.singular!=null)message.singular=String(object.singular);if(object.style){if(!Array.isArray(object.style))throw TypeError(".google.api.ResourceDescriptor.style: array expected");message.style=[];for(var i=0;i<object.style.length;++i)switch(object.style[i]){default:if(typeof object.style[i]==="number"){message.style[i]=object.style[i];break}case"STYLE_UNSPECIFIED":case 0:message.style[i]=0;break;case"DECLARATIVE_FRIENDLY":case 1:message.style[i]=1;break}}return message};ResourceDescriptor.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.pattern=[];object.style=[]}if(options.defaults){object.type="";object.nameField="";object.history=options.enums===String?"HISTORY_UNSPECIFIED":0;object.plural="";object.singular=""}if(message.type!=null&&message.hasOwnProperty("type"))object.type=message.type;if(message.pattern&&message.pattern.length){object.pattern=[];for(var j=0;j<message.pattern.length;++j)object.pattern[j]=message.pattern[j]}if(message.nameField!=null&&message.hasOwnProperty("nameField"))object.nameField=message.nameField;if(message.history!=null&&message.hasOwnProperty("history"))object.history=options.enums===String?$root.google.api.ResourceDescriptor.History[message.history]===undefined?message.history:$root.google.api.ResourceDescriptor.History[message.history]:message.history;if(message.plural!=null&&message.hasOwnProperty("plural"))object.plural=message.plural;if(message.singular!=null&&message.hasOwnProperty("singular"))object.singular=message.singular;if(message.style&&message.style.length){object.style=[];for(var j=0;j<message.style.length;++j)object.style[j]=options.enums===String?$root.google.api.ResourceDescriptor.Style[message.style[j]]===undefined?message.style[j]:$root.google.api.ResourceDescriptor.Style[message.style[j]]:message.style[j]}return object};ResourceDescriptor.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ResourceDescriptor.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.ResourceDescriptor"};ResourceDescriptor.History=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="HISTORY_UNSPECIFIED"]=0;values[valuesById[1]="ORIGINALLY_SINGLE_PATTERN"]=1;values[valuesById[2]="FUTURE_MULTI_PATTERN"]=2;return values}();ResourceDescriptor.Style=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="STYLE_UNSPECIFIED"]=0;values[valuesById[1]="DECLARATIVE_FRIENDLY"]=1;return values}();return ResourceDescriptor}();api.ResourceReference=function(){function ResourceReference(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ResourceReference.prototype.type="";ResourceReference.prototype.childType="";ResourceReference.create=function create(properties){return new ResourceReference(properties)};ResourceReference.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.type!=null&&Object.hasOwnProperty.call(message,"type"))writer.uint32(10).string(message.type);if(message.childType!=null&&Object.hasOwnProperty.call(message,"childType"))writer.uint32(18).string(message.childType);return writer};ResourceReference.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ResourceReference.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.ResourceReference;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.type=reader.string();break}case 2:{message.childType=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};ResourceReference.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ResourceReference.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.type!=null&&message.hasOwnProperty("type"))if(!$util.isString(message.type))return"type: string expected";if(message.childType!=null&&message.hasOwnProperty("childType"))if(!$util.isString(message.childType))return"childType: string expected";return null};ResourceReference.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.ResourceReference)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.ResourceReference;if(object.type!=null)message.type=String(object.type);if(object.childType!=null)message.childType=String(object.childType);return message};ResourceReference.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.type="";object.childType=""}if(message.type!=null&&message.hasOwnProperty("type"))object.type=message.type;if(message.childType!=null&&message.hasOwnProperty("childType"))object.childType=message.childType;return object};ResourceReference.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ResourceReference.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.ResourceReference"};return ResourceReference}();api.CommonLanguageSettings=function(){function CommonLanguageSettings(properties){this.destinations=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CommonLanguageSettings.prototype.referenceDocsUri="";CommonLanguageSettings.prototype.destinations=$util.emptyArray;CommonLanguageSettings.prototype.selectiveGapicGeneration=null;CommonLanguageSettings.create=function create(properties){return new CommonLanguageSettings(properties)};CommonLanguageSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.referenceDocsUri!=null&&Object.hasOwnProperty.call(message,"referenceDocsUri"))writer.uint32(10).string(message.referenceDocsUri);if(message.destinations!=null&&message.destinations.length){writer.uint32(18).fork();for(var i=0;i<message.destinations.length;++i)writer.int32(message.destinations[i]);writer.ldelim()}if(message.selectiveGapicGeneration!=null&&Object.hasOwnProperty.call(message,"selectiveGapicGeneration"))$root.google.api.SelectiveGapicGeneration.encode(message.selectiveGapicGeneration,writer.uint32(26).fork()).ldelim();return writer};CommonLanguageSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CommonLanguageSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.CommonLanguageSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.referenceDocsUri=reader.string();break}case 2:{if(!(message.destinations&&message.destinations.length))message.destinations=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.destinations.push(reader.int32())}else message.destinations.push(reader.int32());break}case 3:{message.selectiveGapicGeneration=$root.google.api.SelectiveGapicGeneration.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};CommonLanguageSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CommonLanguageSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.referenceDocsUri!=null&&message.hasOwnProperty("referenceDocsUri"))if(!$util.isString(message.referenceDocsUri))return"referenceDocsUri: string expected";if(message.destinations!=null&&message.hasOwnProperty("destinations")){if(!Array.isArray(message.destinations))return"destinations: array expected";for(var i=0;i<message.destinations.length;++i)switch(message.destinations[i]){default:return"destinations: enum value[] expected";case 0:case 10:case 20:break}}if(message.selectiveGapicGeneration!=null&&message.hasOwnProperty("selectiveGapicGeneration")){var error=$root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration,long+1);if(error)return"selectiveGapicGeneration."+error}return null};CommonLanguageSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.CommonLanguageSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.CommonLanguageSettings;if(object.referenceDocsUri!=null)message.referenceDocsUri=String(object.referenceDocsUri);if(object.destinations){if(!Array.isArray(object.destinations))throw TypeError(".google.api.CommonLanguageSettings.destinations: array expected");message.destinations=[];for(var i=0;i<object.destinations.length;++i)switch(object.destinations[i]){default:if(typeof object.destinations[i]==="number"){message.destinations[i]=object.destinations[i];break}case"CLIENT_LIBRARY_DESTINATION_UNSPECIFIED":case 0:message.destinations[i]=0;break;case"GITHUB":case 10:message.destinations[i]=10;break;case"PACKAGE_MANAGER":case 20:message.destinations[i]=20;break}}if(object.selectiveGapicGeneration!=null){if(typeof object.selectiveGapicGeneration!=="object")throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected");message.selectiveGapicGeneration=$root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration,long+1)}return message};CommonLanguageSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.destinations=[];if(options.defaults){object.referenceDocsUri="";object.selectiveGapicGeneration=null}if(message.referenceDocsUri!=null&&message.hasOwnProperty("referenceDocsUri"))object.referenceDocsUri=message.referenceDocsUri;if(message.destinations&&message.destinations.length){object.destinations=[];for(var j=0;j<message.destinations.length;++j)object.destinations[j]=options.enums===String?$root.google.api.ClientLibraryDestination[message.destinations[j]]===undefined?message.destinations[j]:$root.google.api.ClientLibraryDestination[message.destinations[j]]:message.destinations[j]}if(message.selectiveGapicGeneration!=null&&message.hasOwnProperty("selectiveGapicGeneration"))object.selectiveGapicGeneration=$root.google.api.SelectiveGapicGeneration.toObject(message.selectiveGapicGeneration,options);return object};CommonLanguageSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CommonLanguageSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.CommonLanguageSettings"};return CommonLanguageSettings}();api.ClientLibrarySettings=function(){function ClientLibrarySettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ClientLibrarySettings.prototype.version="";ClientLibrarySettings.prototype.launchStage=0;ClientLibrarySettings.prototype.restNumericEnums=false;ClientLibrarySettings.prototype.javaSettings=null;ClientLibrarySettings.prototype.cppSettings=null;ClientLibrarySettings.prototype.phpSettings=null;ClientLibrarySettings.prototype.pythonSettings=null;ClientLibrarySettings.prototype.nodeSettings=null;ClientLibrarySettings.prototype.dotnetSettings=null;ClientLibrarySettings.prototype.rubySettings=null;ClientLibrarySettings.prototype.goSettings=null;ClientLibrarySettings.create=function create(properties){return new ClientLibrarySettings(properties)};ClientLibrarySettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.version!=null&&Object.hasOwnProperty.call(message,"version"))writer.uint32(10).string(message.version);if(message.launchStage!=null&&Object.hasOwnProperty.call(message,"launchStage"))writer.uint32(16).int32(message.launchStage);if(message.restNumericEnums!=null&&Object.hasOwnProperty.call(message,"restNumericEnums"))writer.uint32(24).bool(message.restNumericEnums);if(message.javaSettings!=null&&Object.hasOwnProperty.call(message,"javaSettings"))$root.google.api.JavaSettings.encode(message.javaSettings,writer.uint32(170).fork()).ldelim();if(message.cppSettings!=null&&Object.hasOwnProperty.call(message,"cppSettings"))$root.google.api.CppSettings.encode(message.cppSettings,writer.uint32(178).fork()).ldelim();if(message.phpSettings!=null&&Object.hasOwnProperty.call(message,"phpSettings"))$root.google.api.PhpSettings.encode(message.phpSettings,writer.uint32(186).fork()).ldelim();if(message.pythonSettings!=null&&Object.hasOwnProperty.call(message,"pythonSettings"))$root.google.api.PythonSettings.encode(message.pythonSettings,writer.uint32(194).fork()).ldelim();if(message.nodeSettings!=null&&Object.hasOwnProperty.call(message,"nodeSettings"))$root.google.api.NodeSettings.encode(message.nodeSettings,writer.uint32(202).fork()).ldelim();if(message.dotnetSettings!=null&&Object.hasOwnProperty.call(message,"dotnetSettings"))$root.google.api.DotnetSettings.encode(message.dotnetSettings,writer.uint32(210).fork()).ldelim();if(message.rubySettings!=null&&Object.hasOwnProperty.call(message,"rubySettings"))$root.google.api.RubySettings.encode(message.rubySettings,writer.uint32(218).fork()).ldelim();if(message.goSettings!=null&&Object.hasOwnProperty.call(message,"goSettings"))$root.google.api.GoSettings.encode(message.goSettings,writer.uint32(226).fork()).ldelim();return writer};ClientLibrarySettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ClientLibrarySettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.ClientLibrarySettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.version=reader.string();break}case 2:{message.launchStage=reader.int32();break}case 3:{message.restNumericEnums=reader.bool();break}case 21:{message.javaSettings=$root.google.api.JavaSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 22:{message.cppSettings=$root.google.api.CppSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 23:{message.phpSettings=$root.google.api.PhpSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 24:{message.pythonSettings=$root.google.api.PythonSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 25:{message.nodeSettings=$root.google.api.NodeSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 26:{message.dotnetSettings=$root.google.api.DotnetSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 27:{message.rubySettings=$root.google.api.RubySettings.decode(reader,reader.uint32(),undefined,long+1);break}case 28:{message.goSettings=$root.google.api.GoSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};ClientLibrarySettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ClientLibrarySettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.version!=null&&message.hasOwnProperty("version"))if(!$util.isString(message.version))return"version: string expected";if(message.launchStage!=null&&message.hasOwnProperty("launchStage"))switch(message.launchStage){default:return"launchStage: enum value expected";case 0:case 6:case 7:case 1:case 2:case 3:case 4:case 5:break}if(message.restNumericEnums!=null&&message.hasOwnProperty("restNumericEnums"))if(typeof message.restNumericEnums!=="boolean")return"restNumericEnums: boolean expected";if(message.javaSettings!=null&&message.hasOwnProperty("javaSettings")){var error=$root.google.api.JavaSettings.verify(message.javaSettings,long+1);if(error)return"javaSettings."+error}if(message.cppSettings!=null&&message.hasOwnProperty("cppSettings")){var error=$root.google.api.CppSettings.verify(message.cppSettings,long+1);if(error)return"cppSettings."+error}if(message.phpSettings!=null&&message.hasOwnProperty("phpSettings")){var error=$root.google.api.PhpSettings.verify(message.phpSettings,long+1);if(error)return"phpSettings."+error}if(message.pythonSettings!=null&&message.hasOwnProperty("pythonSettings")){var error=$root.google.api.PythonSettings.verify(message.pythonSettings,long+1);if(error)return"pythonSettings."+error}if(message.nodeSettings!=null&&message.hasOwnProperty("nodeSettings")){var error=$root.google.api.NodeSettings.verify(message.nodeSettings,long+1);if(error)return"nodeSettings."+error}if(message.dotnetSettings!=null&&message.hasOwnProperty("dotnetSettings")){var error=$root.google.api.DotnetSettings.verify(message.dotnetSettings,long+1);if(error)return"dotnetSettings."+error}if(message.rubySettings!=null&&message.hasOwnProperty("rubySettings")){var error=$root.google.api.RubySettings.verify(message.rubySettings,long+1);if(error)return"rubySettings."+error}if(message.goSettings!=null&&message.hasOwnProperty("goSettings")){var error=$root.google.api.GoSettings.verify(message.goSettings,long+1);if(error)return"goSettings."+error}return null};ClientLibrarySettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.ClientLibrarySettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.ClientLibrarySettings;if(object.version!=null)message.version=String(object.version);switch(object.launchStage){default:if(typeof object.launchStage==="number"){message.launchStage=object.launchStage;break}break;case"LAUNCH_STAGE_UNSPECIFIED":case 0:message.launchStage=0;break;case"UNIMPLEMENTED":case 6:message.launchStage=6;break;case"PRELAUNCH":case 7:message.launchStage=7;break;case"EARLY_ACCESS":case 1:message.launchStage=1;break;case"ALPHA":case 2:message.launchStage=2;break;case"BETA":case 3:message.launchStage=3;break;case"GA":case 4:message.launchStage=4;break;case"DEPRECATED":case 5:message.launchStage=5;break}if(object.restNumericEnums!=null)message.restNumericEnums=Boolean(object.restNumericEnums);if(object.javaSettings!=null){if(typeof object.javaSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected");message.javaSettings=$root.google.api.JavaSettings.fromObject(object.javaSettings,long+1)}if(object.cppSettings!=null){if(typeof object.cppSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected");message.cppSettings=$root.google.api.CppSettings.fromObject(object.cppSettings,long+1)}if(object.phpSettings!=null){if(typeof object.phpSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected");message.phpSettings=$root.google.api.PhpSettings.fromObject(object.phpSettings,long+1)}if(object.pythonSettings!=null){if(typeof object.pythonSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected");message.pythonSettings=$root.google.api.PythonSettings.fromObject(object.pythonSettings,long+1)}if(object.nodeSettings!=null){if(typeof object.nodeSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected");message.nodeSettings=$root.google.api.NodeSettings.fromObject(object.nodeSettings,long+1)}if(object.dotnetSettings!=null){if(typeof object.dotnetSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected");message.dotnetSettings=$root.google.api.DotnetSettings.fromObject(object.dotnetSettings,long+1)}if(object.rubySettings!=null){if(typeof object.rubySettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected");message.rubySettings=$root.google.api.RubySettings.fromObject(object.rubySettings,long+1)}if(object.goSettings!=null){if(typeof object.goSettings!=="object")throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected");message.goSettings=$root.google.api.GoSettings.fromObject(object.goSettings,long+1)}return message};ClientLibrarySettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.version="";object.launchStage=options.enums===String?"LAUNCH_STAGE_UNSPECIFIED":0;object.restNumericEnums=false;object.javaSettings=null;object.cppSettings=null;object.phpSettings=null;object.pythonSettings=null;object.nodeSettings=null;object.dotnetSettings=null;object.rubySettings=null;object.goSettings=null}if(message.version!=null&&message.hasOwnProperty("version"))object.version=message.version;if(message.launchStage!=null&&message.hasOwnProperty("launchStage"))object.launchStage=options.enums===String?$root.google.api.LaunchStage[message.launchStage]===undefined?message.launchStage:$root.google.api.LaunchStage[message.launchStage]:message.launchStage;if(message.restNumericEnums!=null&&message.hasOwnProperty("restNumericEnums"))object.restNumericEnums=message.restNumericEnums;if(message.javaSettings!=null&&message.hasOwnProperty("javaSettings"))object.javaSettings=$root.google.api.JavaSettings.toObject(message.javaSettings,options);if(message.cppSettings!=null&&message.hasOwnProperty("cppSettings"))object.cppSettings=$root.google.api.CppSettings.toObject(message.cppSettings,options);if(message.phpSettings!=null&&message.hasOwnProperty("phpSettings"))object.phpSettings=$root.google.api.PhpSettings.toObject(message.phpSettings,options);if(message.pythonSettings!=null&&message.hasOwnProperty("pythonSettings"))object.pythonSettings=$root.google.api.PythonSettings.toObject(message.pythonSettings,options);if(message.nodeSettings!=null&&message.hasOwnProperty("nodeSettings"))object.nodeSettings=$root.google.api.NodeSettings.toObject(message.nodeSettings,options);if(message.dotnetSettings!=null&&message.hasOwnProperty("dotnetSettings"))object.dotnetSettings=$root.google.api.DotnetSettings.toObject(message.dotnetSettings,options);if(message.rubySettings!=null&&message.hasOwnProperty("rubySettings"))object.rubySettings=$root.google.api.RubySettings.toObject(message.rubySettings,options);if(message.goSettings!=null&&message.hasOwnProperty("goSettings"))object.goSettings=$root.google.api.GoSettings.toObject(message.goSettings,options);return object};ClientLibrarySettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ClientLibrarySettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.ClientLibrarySettings"};return ClientLibrarySettings}();api.Publishing=function(){function Publishing(properties){this.methodSettings=[];this.codeownerGithubTeams=[];this.librarySettings=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Publishing.prototype.methodSettings=$util.emptyArray;Publishing.prototype.newIssueUri="";Publishing.prototype.documentationUri="";Publishing.prototype.apiShortName="";Publishing.prototype.githubLabel="";Publishing.prototype.codeownerGithubTeams=$util.emptyArray;Publishing.prototype.docTagPrefix="";Publishing.prototype.organization=0;Publishing.prototype.librarySettings=$util.emptyArray;Publishing.prototype.protoReferenceDocumentationUri="";Publishing.prototype.restReferenceDocumentationUri="";Publishing.create=function create(properties){return new Publishing(properties)};Publishing.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.methodSettings!=null&&message.methodSettings.length)for(var i=0;i<message.methodSettings.length;++i)$root.google.api.MethodSettings.encode(message.methodSettings[i],writer.uint32(18).fork()).ldelim();if(message.newIssueUri!=null&&Object.hasOwnProperty.call(message,"newIssueUri"))writer.uint32(810).string(message.newIssueUri);if(message.documentationUri!=null&&Object.hasOwnProperty.call(message,"documentationUri"))writer.uint32(818).string(message.documentationUri);if(message.apiShortName!=null&&Object.hasOwnProperty.call(message,"apiShortName"))writer.uint32(826).string(message.apiShortName);if(message.githubLabel!=null&&Object.hasOwnProperty.call(message,"githubLabel"))writer.uint32(834).string(message.githubLabel);if(message.codeownerGithubTeams!=null&&message.codeownerGithubTeams.length)for(var i=0;i<message.codeownerGithubTeams.length;++i)writer.uint32(842).string(message.codeownerGithubTeams[i]);if(message.docTagPrefix!=null&&Object.hasOwnProperty.call(message,"docTagPrefix"))writer.uint32(850).string(message.docTagPrefix);if(message.organization!=null&&Object.hasOwnProperty.call(message,"organization"))writer.uint32(856).int32(message.organization);if(message.librarySettings!=null&&message.librarySettings.length)for(var i=0;i<message.librarySettings.length;++i)$root.google.api.ClientLibrarySettings.encode(message.librarySettings[i],writer.uint32(874).fork()).ldelim();if(message.protoReferenceDocumentationUri!=null&&Object.hasOwnProperty.call(message,"protoReferenceDocumentationUri"))writer.uint32(882).string(message.protoReferenceDocumentationUri);if(message.restReferenceDocumentationUri!=null&&Object.hasOwnProperty.call(message,"restReferenceDocumentationUri"))writer.uint32(890).string(message.restReferenceDocumentationUri);return writer};Publishing.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Publishing.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.Publishing;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 2:{if(!(message.methodSettings&&message.methodSettings.length))message.methodSettings=[];message.methodSettings.push($root.google.api.MethodSettings.decode(reader,reader.uint32(),undefined,long+1));break}case 101:{message.newIssueUri=reader.string();break}case 102:{message.documentationUri=reader.string();break}case 103:{message.apiShortName=reader.string();break}case 104:{message.githubLabel=reader.string();break}case 105:{if(!(message.codeownerGithubTeams&&message.codeownerGithubTeams.length))message.codeownerGithubTeams=[];message.codeownerGithubTeams.push(reader.string());break}case 106:{message.docTagPrefix=reader.string();break}case 107:{message.organization=reader.int32();break}case 109:{if(!(message.librarySettings&&message.librarySettings.length))message.librarySettings=[];message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader,reader.uint32(),undefined,long+1));break}case 110:{message.protoReferenceDocumentationUri=reader.string();break}case 111:{message.restReferenceDocumentationUri=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};Publishing.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Publishing.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.methodSettings!=null&&message.hasOwnProperty("methodSettings")){if(!Array.isArray(message.methodSettings))return"methodSettings: array expected";for(var i=0;i<message.methodSettings.length;++i){var error=$root.google.api.MethodSettings.verify(message.methodSettings[i],long+1);if(error)return"methodSettings."+error}}if(message.newIssueUri!=null&&message.hasOwnProperty("newIssueUri"))if(!$util.isString(message.newIssueUri))return"newIssueUri: string expected";if(message.documentationUri!=null&&message.hasOwnProperty("documentationUri"))if(!$util.isString(message.documentationUri))return"documentationUri: string expected";if(message.apiShortName!=null&&message.hasOwnProperty("apiShortName"))if(!$util.isString(message.apiShortName))return"apiShortName: string expected";if(message.githubLabel!=null&&message.hasOwnProperty("githubLabel"))if(!$util.isString(message.githubLabel))return"githubLabel: string expected";if(message.codeownerGithubTeams!=null&&message.hasOwnProperty("codeownerGithubTeams")){if(!Array.isArray(message.codeownerGithubTeams))return"codeownerGithubTeams: array expected";for(var i=0;i<message.codeownerGithubTeams.length;++i)if(!$util.isString(message.codeownerGithubTeams[i]))return"codeownerGithubTeams: string[] expected"}if(message.docTagPrefix!=null&&message.hasOwnProperty("docTagPrefix"))if(!$util.isString(message.docTagPrefix))return"docTagPrefix: string expected";if(message.organization!=null&&message.hasOwnProperty("organization"))switch(message.organization){default:return"organization: enum value expected";case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:break}if(message.librarySettings!=null&&message.hasOwnProperty("librarySettings")){if(!Array.isArray(message.librarySettings))return"librarySettings: array expected";for(var i=0;i<message.librarySettings.length;++i){var error=$root.google.api.ClientLibrarySettings.verify(message.librarySettings[i],long+1);if(error)return"librarySettings."+error}}if(message.protoReferenceDocumentationUri!=null&&message.hasOwnProperty("protoReferenceDocumentationUri"))if(!$util.isString(message.protoReferenceDocumentationUri))return"protoReferenceDocumentationUri: string expected";if(message.restReferenceDocumentationUri!=null&&message.hasOwnProperty("restReferenceDocumentationUri"))if(!$util.isString(message.restReferenceDocumentationUri))return"restReferenceDocumentationUri: string expected";return null};Publishing.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.Publishing)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.Publishing;if(object.methodSettings){if(!Array.isArray(object.methodSettings))throw TypeError(".google.api.Publishing.methodSettings: array expected");message.methodSettings=[];for(var i=0;i<object.methodSettings.length;++i){if(typeof object.methodSettings[i]!=="object")throw TypeError(".google.api.Publishing.methodSettings: object expected");message.methodSettings[i]=$root.google.api.MethodSettings.fromObject(object.methodSettings[i],long+1)}}if(object.newIssueUri!=null)message.newIssueUri=String(object.newIssueUri);if(object.documentationUri!=null)message.documentationUri=String(object.documentationUri);if(object.apiShortName!=null)message.apiShortName=String(object.apiShortName);if(object.githubLabel!=null)message.githubLabel=String(object.githubLabel);if(object.codeownerGithubTeams){if(!Array.isArray(object.codeownerGithubTeams))throw TypeError(".google.api.Publishing.codeownerGithubTeams: array expected");message.codeownerGithubTeams=[];for(var i=0;i<object.codeownerGithubTeams.length;++i)message.codeownerGithubTeams[i]=String(object.codeownerGithubTeams[i])}if(object.docTagPrefix!=null)message.docTagPrefix=String(object.docTagPrefix);switch(object.organization){default:if(typeof object.organization==="number"){message.organization=object.organization;break}break;case"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":case 0:message.organization=0;break;case"CLOUD":case 1:message.organization=1;break;case"ADS":case 2:message.organization=2;break;case"PHOTOS":case 3:message.organization=3;break;case"STREET_VIEW":case 4:message.organization=4;break;case"SHOPPING":case 5:message.organization=5;break;case"GEO":case 6:message.organization=6;break;case"GENERATIVE_AI":case 7:message.organization=7;break}if(object.librarySettings){if(!Array.isArray(object.librarySettings))throw TypeError(".google.api.Publishing.librarySettings: array expected");message.librarySettings=[];for(var i=0;i<object.librarySettings.length;++i){if(typeof object.librarySettings[i]!=="object")throw TypeError(".google.api.Publishing.librarySettings: object expected");message.librarySettings[i]=$root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i],long+1)}}if(object.protoReferenceDocumentationUri!=null)message.protoReferenceDocumentationUri=String(object.protoReferenceDocumentationUri);if(object.restReferenceDocumentationUri!=null)message.restReferenceDocumentationUri=String(object.restReferenceDocumentationUri);return message};Publishing.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.methodSettings=[];object.codeownerGithubTeams=[];object.librarySettings=[]}if(options.defaults){object.newIssueUri="";object.documentationUri="";object.apiShortName="";object.githubLabel="";object.docTagPrefix="";object.organization=options.enums===String?"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":0;object.protoReferenceDocumentationUri="";object.restReferenceDocumentationUri=""}if(message.methodSettings&&message.methodSettings.length){object.methodSettings=[];for(var j=0;j<message.methodSettings.length;++j)object.methodSettings[j]=$root.google.api.MethodSettings.toObject(message.methodSettings[j],options)}if(message.newIssueUri!=null&&message.hasOwnProperty("newIssueUri"))object.newIssueUri=message.newIssueUri;if(message.documentationUri!=null&&message.hasOwnProperty("documentationUri"))object.documentationUri=message.documentationUri;if(message.apiShortName!=null&&message.hasOwnProperty("apiShortName"))object.apiShortName=message.apiShortName;if(message.githubLabel!=null&&message.hasOwnProperty("githubLabel"))object.githubLabel=message.githubLabel;if(message.codeownerGithubTeams&&message.codeownerGithubTeams.length){object.codeownerGithubTeams=[];for(var j=0;j<message.codeownerGithubTeams.length;++j)object.codeownerGithubTeams[j]=message.codeownerGithubTeams[j]}if(message.docTagPrefix!=null&&message.hasOwnProperty("docTagPrefix"))object.docTagPrefix=message.docTagPrefix;if(message.organization!=null&&message.hasOwnProperty("organization"))object.organization=options.enums===String?$root.google.api.ClientLibraryOrganization[message.organization]===undefined?message.organization:$root.google.api.ClientLibraryOrganization[message.organization]:message.organization;if(message.librarySettings&&message.librarySettings.length){object.librarySettings=[];for(var j=0;j<message.librarySettings.length;++j)object.librarySettings[j]=$root.google.api.ClientLibrarySettings.toObject(message.librarySettings[j],options)}if(message.protoReferenceDocumentationUri!=null&&message.hasOwnProperty("protoReferenceDocumentationUri"))object.protoReferenceDocumentationUri=message.protoReferenceDocumentationUri;if(message.restReferenceDocumentationUri!=null&&message.hasOwnProperty("restReferenceDocumentationUri"))object.restReferenceDocumentationUri=message.restReferenceDocumentationUri;return object};Publishing.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Publishing.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.Publishing"};return Publishing}();api.JavaSettings=function(){function JavaSettings(properties){this.serviceClassNames={};if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}JavaSettings.prototype.libraryPackage="";JavaSettings.prototype.serviceClassNames=$util.emptyObject;JavaSettings.prototype.common=null;JavaSettings.create=function create(properties){return new JavaSettings(properties)};JavaSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.libraryPackage!=null&&Object.hasOwnProperty.call(message,"libraryPackage"))writer.uint32(10).string(message.libraryPackage);if(message.serviceClassNames!=null&&Object.hasOwnProperty.call(message,"serviceClassNames"))for(var keys=Object.keys(message.serviceClassNames),i=0;i<keys.length;++i)writer.uint32(18).fork().uint32(10).string(keys[i]).uint32(18).string(message.serviceClassNames[keys[i]]).ldelim();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(26).fork()).ldelim();return writer};JavaSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};JavaSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.JavaSettings,key,value;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.libraryPackage=reader.string();break}case 2:{if(message.serviceClassNames===$util.emptyObject)message.serviceClassNames={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.serviceClassNames,key);message.serviceClassNames[key]=value;break}case 3:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};JavaSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};JavaSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.libraryPackage!=null&&message.hasOwnProperty("libraryPackage"))if(!$util.isString(message.libraryPackage))return"libraryPackage: string expected";if(message.serviceClassNames!=null&&message.hasOwnProperty("serviceClassNames")){if(!$util.isObject(message.serviceClassNames))return"serviceClassNames: object expected";var key=Object.keys(message.serviceClassNames);for(var i=0;i<key.length;++i)if(!$util.isString(message.serviceClassNames[key[i]]))return"serviceClassNames: string{k:string} expected"}if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}return null};JavaSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.JavaSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.JavaSettings;if(object.libraryPackage!=null)message.libraryPackage=String(object.libraryPackage);if(object.serviceClassNames){if(typeof object.serviceClassNames!=="object")throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected");message.serviceClassNames={};for(var keys=Object.keys(object.serviceClassNames),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.serviceClassNames,keys[i]);message.serviceClassNames[keys[i]]=String(object.serviceClassNames[keys[i]])}}if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.JavaSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}return message};JavaSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.objects||options.defaults)object.serviceClassNames={};if(options.defaults){object.libraryPackage="";object.common=null}if(message.libraryPackage!=null&&message.hasOwnProperty("libraryPackage"))object.libraryPackage=message.libraryPackage;var keys2;if(message.serviceClassNames&&(keys2=Object.keys(message.serviceClassNames)).length){object.serviceClassNames={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.serviceClassNames,keys2[j]);object.serviceClassNames[keys2[j]]=message.serviceClassNames[keys2[j]]}}if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);return object};JavaSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};JavaSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.JavaSettings"};return JavaSettings}();api.CppSettings=function(){function CppSettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CppSettings.prototype.common=null;CppSettings.create=function create(properties){return new CppSettings(properties)};CppSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();return writer};CppSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CppSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.CppSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};CppSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CppSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}return null};CppSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.CppSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.CppSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.CppSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}return message};CppSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);return object};CppSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CppSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.CppSettings"};return CppSettings}();api.PhpSettings=function(){function PhpSettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}PhpSettings.prototype.common=null;PhpSettings.prototype.libraryPackage="";PhpSettings.create=function create(properties){return new PhpSettings(properties)};PhpSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();if(message.libraryPackage!=null&&Object.hasOwnProperty.call(message,"libraryPackage"))writer.uint32(18).string(message.libraryPackage);return writer};PhpSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};PhpSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.PhpSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.libraryPackage=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};PhpSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};PhpSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}if(message.libraryPackage!=null&&message.hasOwnProperty("libraryPackage"))if(!$util.isString(message.libraryPackage))return"libraryPackage: string expected";return null};PhpSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.PhpSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.PhpSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.PhpSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}if(object.libraryPackage!=null)message.libraryPackage=String(object.libraryPackage);return message};PhpSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.common=null;object.libraryPackage=""}if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);if(message.libraryPackage!=null&&message.hasOwnProperty("libraryPackage"))object.libraryPackage=message.libraryPackage;return object};PhpSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};PhpSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.PhpSettings"};return PhpSettings}();api.PythonSettings=function(){function PythonSettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}PythonSettings.prototype.common=null;PythonSettings.prototype.experimentalFeatures=null;PythonSettings.create=function create(properties){return new PythonSettings(properties)};PythonSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();if(message.experimentalFeatures!=null&&Object.hasOwnProperty.call(message,"experimentalFeatures"))$root.google.api.PythonSettings.ExperimentalFeatures.encode(message.experimentalFeatures,writer.uint32(18).fork()).ldelim();return writer};PythonSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};PythonSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.PythonSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.experimentalFeatures=$root.google.api.PythonSettings.ExperimentalFeatures.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};PythonSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};PythonSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}if(message.experimentalFeatures!=null&&message.hasOwnProperty("experimentalFeatures")){var error=$root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures,long+1);if(error)return"experimentalFeatures."+error}return null};PythonSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.PythonSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.PythonSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.PythonSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}if(object.experimentalFeatures!=null){if(typeof object.experimentalFeatures!=="object")throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected");message.experimentalFeatures=$root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures,long+1)}return message};PythonSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.common=null;object.experimentalFeatures=null}if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);if(message.experimentalFeatures!=null&&message.hasOwnProperty("experimentalFeatures"))object.experimentalFeatures=$root.google.api.PythonSettings.ExperimentalFeatures.toObject(message.experimentalFeatures,options);return object};PythonSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};PythonSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.PythonSettings"};PythonSettings.ExperimentalFeatures=function(){function ExperimentalFeatures(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ExperimentalFeatures.prototype.restAsyncIoEnabled=false;ExperimentalFeatures.prototype.protobufPythonicTypesEnabled=false;ExperimentalFeatures.prototype.unversionedPackageDisabled=false;ExperimentalFeatures.create=function create(properties){return new ExperimentalFeatures(properties)};ExperimentalFeatures.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.restAsyncIoEnabled!=null&&Object.hasOwnProperty.call(message,"restAsyncIoEnabled"))writer.uint32(8).bool(message.restAsyncIoEnabled);if(message.protobufPythonicTypesEnabled!=null&&Object.hasOwnProperty.call(message,"protobufPythonicTypesEnabled"))writer.uint32(16).bool(message.protobufPythonicTypesEnabled);if(message.unversionedPackageDisabled!=null&&Object.hasOwnProperty.call(message,"unversionedPackageDisabled"))writer.uint32(24).bool(message.unversionedPackageDisabled);return writer};ExperimentalFeatures.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ExperimentalFeatures.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.PythonSettings.ExperimentalFeatures;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.restAsyncIoEnabled=reader.bool();break}case 2:{message.protobufPythonicTypesEnabled=reader.bool();break}case 3:{message.unversionedPackageDisabled=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};ExperimentalFeatures.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ExperimentalFeatures.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.restAsyncIoEnabled!=null&&message.hasOwnProperty("restAsyncIoEnabled"))if(typeof message.restAsyncIoEnabled!=="boolean")return"restAsyncIoEnabled: boolean expected";if(message.protobufPythonicTypesEnabled!=null&&message.hasOwnProperty("protobufPythonicTypesEnabled"))if(typeof message.protobufPythonicTypesEnabled!=="boolean")return"protobufPythonicTypesEnabled: boolean expected";if(message.unversionedPackageDisabled!=null&&message.hasOwnProperty("unversionedPackageDisabled"))if(typeof message.unversionedPackageDisabled!=="boolean")return"unversionedPackageDisabled: boolean expected";return null};ExperimentalFeatures.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.PythonSettings.ExperimentalFeatures)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.PythonSettings.ExperimentalFeatures;if(object.restAsyncIoEnabled!=null)message.restAsyncIoEnabled=Boolean(object.restAsyncIoEnabled);if(object.protobufPythonicTypesEnabled!=null)message.protobufPythonicTypesEnabled=Boolean(object.protobufPythonicTypesEnabled);if(object.unversionedPackageDisabled!=null)message.unversionedPackageDisabled=Boolean(object.unversionedPackageDisabled);return message};ExperimentalFeatures.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.restAsyncIoEnabled=false;object.protobufPythonicTypesEnabled=false;object.unversionedPackageDisabled=false}if(message.restAsyncIoEnabled!=null&&message.hasOwnProperty("restAsyncIoEnabled"))object.restAsyncIoEnabled=message.restAsyncIoEnabled;if(message.protobufPythonicTypesEnabled!=null&&message.hasOwnProperty("protobufPythonicTypesEnabled"))object.protobufPythonicTypesEnabled=message.protobufPythonicTypesEnabled;if(message.unversionedPackageDisabled!=null&&message.hasOwnProperty("unversionedPackageDisabled"))object.unversionedPackageDisabled=message.unversionedPackageDisabled;return object};ExperimentalFeatures.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ExperimentalFeatures.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.PythonSettings.ExperimentalFeatures"};return ExperimentalFeatures}();return PythonSettings}();api.NodeSettings=function(){function NodeSettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}NodeSettings.prototype.common=null;NodeSettings.create=function create(properties){return new NodeSettings(properties)};NodeSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();return writer};NodeSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};NodeSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.NodeSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};NodeSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};NodeSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}return null};NodeSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.NodeSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.NodeSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.NodeSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}return message};NodeSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);return object};NodeSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};NodeSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.NodeSettings"};return NodeSettings}();api.DotnetSettings=function(){function DotnetSettings(properties){this.renamedServices={};this.renamedResources={};this.ignoredResources=[];this.forcedNamespaceAliases=[];this.handwrittenSignatures=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}DotnetSettings.prototype.common=null;DotnetSettings.prototype.renamedServices=$util.emptyObject;DotnetSettings.prototype.renamedResources=$util.emptyObject;DotnetSettings.prototype.ignoredResources=$util.emptyArray;DotnetSettings.prototype.forcedNamespaceAliases=$util.emptyArray;DotnetSettings.prototype.handwrittenSignatures=$util.emptyArray;DotnetSettings.create=function create(properties){return new DotnetSettings(properties)};DotnetSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();if(message.renamedServices!=null&&Object.hasOwnProperty.call(message,"renamedServices"))for(var keys=Object.keys(message.renamedServices),i=0;i<keys.length;++i)writer.uint32(18).fork().uint32(10).string(keys[i]).uint32(18).string(message.renamedServices[keys[i]]).ldelim();if(message.renamedResources!=null&&Object.hasOwnProperty.call(message,"renamedResources"))for(var keys=Object.keys(message.renamedResources),i=0;i<keys.length;++i)writer.uint32(26).fork().uint32(10).string(keys[i]).uint32(18).string(message.renamedResources[keys[i]]).ldelim();if(message.ignoredResources!=null&&message.ignoredResources.length)for(var i=0;i<message.ignoredResources.length;++i)writer.uint32(34).string(message.ignoredResources[i]);if(message.forcedNamespaceAliases!=null&&message.forcedNamespaceAliases.length)for(var i=0;i<message.forcedNamespaceAliases.length;++i)writer.uint32(42).string(message.forcedNamespaceAliases[i]);if(message.handwrittenSignatures!=null&&message.handwrittenSignatures.length)for(var i=0;i<message.handwrittenSignatures.length;++i)writer.uint32(50).string(message.handwrittenSignatures[i]);return writer};DotnetSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};DotnetSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.DotnetSettings,key,value;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{if(message.renamedServices===$util.emptyObject)message.renamedServices={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.renamedServices,key);message.renamedServices[key]=value;break}case 3:{if(message.renamedResources===$util.emptyObject)message.renamedResources={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.renamedResources,key);message.renamedResources[key]=value;break}case 4:{if(!(message.ignoredResources&&message.ignoredResources.length))message.ignoredResources=[];message.ignoredResources.push(reader.string());break}case 5:{if(!(message.forcedNamespaceAliases&&message.forcedNamespaceAliases.length))message.forcedNamespaceAliases=[];message.forcedNamespaceAliases.push(reader.string());break}case 6:{if(!(message.handwrittenSignatures&&message.handwrittenSignatures.length))message.handwrittenSignatures=[];message.handwrittenSignatures.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};DotnetSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};DotnetSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}if(message.renamedServices!=null&&message.hasOwnProperty("renamedServices")){if(!$util.isObject(message.renamedServices))return"renamedServices: object expected";var key=Object.keys(message.renamedServices);for(var i=0;i<key.length;++i)if(!$util.isString(message.renamedServices[key[i]]))return"renamedServices: string{k:string} expected"}if(message.renamedResources!=null&&message.hasOwnProperty("renamedResources")){if(!$util.isObject(message.renamedResources))return"renamedResources: object expected";var key=Object.keys(message.renamedResources);for(var i=0;i<key.length;++i)if(!$util.isString(message.renamedResources[key[i]]))return"renamedResources: string{k:string} expected"}if(message.ignoredResources!=null&&message.hasOwnProperty("ignoredResources")){if(!Array.isArray(message.ignoredResources))return"ignoredResources: array expected";for(var i=0;i<message.ignoredResources.length;++i)if(!$util.isString(message.ignoredResources[i]))return"ignoredResources: string[] expected"}if(message.forcedNamespaceAliases!=null&&message.hasOwnProperty("forcedNamespaceAliases")){if(!Array.isArray(message.forcedNamespaceAliases))return"forcedNamespaceAliases: array expected";for(var i=0;i<message.forcedNamespaceAliases.length;++i)if(!$util.isString(message.forcedNamespaceAliases[i]))return"forcedNamespaceAliases: string[] expected"}if(message.handwrittenSignatures!=null&&message.hasOwnProperty("handwrittenSignatures")){if(!Array.isArray(message.handwrittenSignatures))return"handwrittenSignatures: array expected";for(var i=0;i<message.handwrittenSignatures.length;++i)if(!$util.isString(message.handwrittenSignatures[i]))return"handwrittenSignatures: string[] expected"}return null};DotnetSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.DotnetSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.DotnetSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.DotnetSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}if(object.renamedServices){if(typeof object.renamedServices!=="object")throw TypeError(".google.api.DotnetSettings.renamedServices: object expected");message.renamedServices={};for(var keys=Object.keys(object.renamedServices),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.renamedServices,keys[i]);message.renamedServices[keys[i]]=String(object.renamedServices[keys[i]])}}if(object.renamedResources){if(typeof object.renamedResources!=="object")throw TypeError(".google.api.DotnetSettings.renamedResources: object expected");message.renamedResources={};for(var keys=Object.keys(object.renamedResources),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.renamedResources,keys[i]);message.renamedResources[keys[i]]=String(object.renamedResources[keys[i]])}}if(object.ignoredResources){if(!Array.isArray(object.ignoredResources))throw TypeError(".google.api.DotnetSettings.ignoredResources: array expected");message.ignoredResources=[];for(var i=0;i<object.ignoredResources.length;++i)message.ignoredResources[i]=String(object.ignoredResources[i])}if(object.forcedNamespaceAliases){if(!Array.isArray(object.forcedNamespaceAliases))throw TypeError(".google.api.DotnetSettings.forcedNamespaceAliases: array expected");message.forcedNamespaceAliases=[];for(var i=0;i<object.forcedNamespaceAliases.length;++i)message.forcedNamespaceAliases[i]=String(object.forcedNamespaceAliases[i])}if(object.handwrittenSignatures){if(!Array.isArray(object.handwrittenSignatures))throw TypeError(".google.api.DotnetSettings.handwrittenSignatures: array expected");message.handwrittenSignatures=[];for(var i=0;i<object.handwrittenSignatures.length;++i)message.handwrittenSignatures[i]=String(object.handwrittenSignatures[i])}return message};DotnetSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.ignoredResources=[];object.forcedNamespaceAliases=[];object.handwrittenSignatures=[]}if(options.objects||options.defaults){object.renamedServices={};object.renamedResources={}}if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);var keys2;if(message.renamedServices&&(keys2=Object.keys(message.renamedServices)).length){object.renamedServices={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.renamedServices,keys2[j]);object.renamedServices[keys2[j]]=message.renamedServices[keys2[j]]}}if(message.renamedResources&&(keys2=Object.keys(message.renamedResources)).length){object.renamedResources={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.renamedResources,keys2[j]);object.renamedResources[keys2[j]]=message.renamedResources[keys2[j]]}}if(message.ignoredResources&&message.ignoredResources.length){object.ignoredResources=[];for(var j=0;j<message.ignoredResources.length;++j)object.ignoredResources[j]=message.ignoredResources[j]}if(message.forcedNamespaceAliases&&message.forcedNamespaceAliases.length){object.forcedNamespaceAliases=[];for(var j=0;j<message.forcedNamespaceAliases.length;++j)object.forcedNamespaceAliases[j]=message.forcedNamespaceAliases[j]}if(message.handwrittenSignatures&&message.handwrittenSignatures.length){object.handwrittenSignatures=[];for(var j=0;j<message.handwrittenSignatures.length;++j)object.handwrittenSignatures[j]=message.handwrittenSignatures[j]}return object};DotnetSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};DotnetSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.DotnetSettings"};return DotnetSettings}();api.RubySettings=function(){function RubySettings(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}RubySettings.prototype.common=null;RubySettings.create=function create(properties){return new RubySettings(properties)};RubySettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();return writer};RubySettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};RubySettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.RubySettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};RubySettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};RubySettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}return null};RubySettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.RubySettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.RubySettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.RubySettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}return message};RubySettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);return object};RubySettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};RubySettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.RubySettings"};return RubySettings}();api.GoSettings=function(){function GoSettings(properties){this.renamedServices={};if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GoSettings.prototype.common=null;GoSettings.prototype.renamedServices=$util.emptyObject;GoSettings.create=function create(properties){return new GoSettings(properties)};GoSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.common!=null&&Object.hasOwnProperty.call(message,"common"))$root.google.api.CommonLanguageSettings.encode(message.common,writer.uint32(10).fork()).ldelim();if(message.renamedServices!=null&&Object.hasOwnProperty.call(message,"renamedServices"))for(var keys=Object.keys(message.renamedServices),i=0;i<keys.length;++i)writer.uint32(18).fork().uint32(10).string(keys[i]).uint32(18).string(message.renamedServices[keys[i]]).ldelim();return writer};GoSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GoSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.GoSettings,key,value;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.common=$root.google.api.CommonLanguageSettings.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{if(message.renamedServices===$util.emptyObject)message.renamedServices={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.uint32();switch(tag2>>>3){case 1:key=reader.string();break;case 2:value=reader.string();break;default:reader.skipType(tag2&7,long);break}}if(key==="__proto__")$util.makeProp(message.renamedServices,key);message.renamedServices[key]=value;break}default:reader.skipType(tag&7,long);break}}return message};GoSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GoSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.common!=null&&message.hasOwnProperty("common")){var error=$root.google.api.CommonLanguageSettings.verify(message.common,long+1);if(error)return"common."+error}if(message.renamedServices!=null&&message.hasOwnProperty("renamedServices")){if(!$util.isObject(message.renamedServices))return"renamedServices: object expected";var key=Object.keys(message.renamedServices);for(var i=0;i<key.length;++i)if(!$util.isString(message.renamedServices[key[i]]))return"renamedServices: string{k:string} expected"}return null};GoSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.GoSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.GoSettings;if(object.common!=null){if(typeof object.common!=="object")throw TypeError(".google.api.GoSettings.common: object expected");message.common=$root.google.api.CommonLanguageSettings.fromObject(object.common,long+1)}if(object.renamedServices){if(typeof object.renamedServices!=="object")throw TypeError(".google.api.GoSettings.renamedServices: object expected");message.renamedServices={};for(var keys=Object.keys(object.renamedServices),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.renamedServices,keys[i]);message.renamedServices[keys[i]]=String(object.renamedServices[keys[i]])}}return message};GoSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.objects||options.defaults)object.renamedServices={};if(options.defaults)object.common=null;if(message.common!=null&&message.hasOwnProperty("common"))object.common=$root.google.api.CommonLanguageSettings.toObject(message.common,options);var keys2;if(message.renamedServices&&(keys2=Object.keys(message.renamedServices)).length){object.renamedServices={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.renamedServices,keys2[j]);object.renamedServices[keys2[j]]=message.renamedServices[keys2[j]]}}return object};GoSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GoSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.GoSettings"};return GoSettings}();api.MethodSettings=function(){function MethodSettings(properties){this.autoPopulatedFields=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}MethodSettings.prototype.selector="";MethodSettings.prototype.longRunning=null;MethodSettings.prototype.autoPopulatedFields=$util.emptyArray;MethodSettings.prototype.batching=null;MethodSettings.create=function create(properties){return new MethodSettings(properties)};MethodSettings.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.selector!=null&&Object.hasOwnProperty.call(message,"selector"))writer.uint32(10).string(message.selector);if(message.longRunning!=null&&Object.hasOwnProperty.call(message,"longRunning"))$root.google.api.MethodSettings.LongRunning.encode(message.longRunning,writer.uint32(18).fork()).ldelim();if(message.autoPopulatedFields!=null&&message.autoPopulatedFields.length)for(var i=0;i<message.autoPopulatedFields.length;++i)writer.uint32(26).string(message.autoPopulatedFields[i]);if(message.batching!=null&&Object.hasOwnProperty.call(message,"batching"))$root.google.api.BatchingConfigProto.encode(message.batching,writer.uint32(34).fork()).ldelim();return writer};MethodSettings.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};MethodSettings.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.MethodSettings;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.selector=reader.string();break}case 2:{message.longRunning=$root.google.api.MethodSettings.LongRunning.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{if(!(message.autoPopulatedFields&&message.autoPopulatedFields.length))message.autoPopulatedFields=[];message.autoPopulatedFields.push(reader.string());break}case 4:{message.batching=$root.google.api.BatchingConfigProto.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};MethodSettings.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};MethodSettings.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.selector!=null&&message.hasOwnProperty("selector"))if(!$util.isString(message.selector))return"selector: string expected";if(message.longRunning!=null&&message.hasOwnProperty("longRunning")){var error=$root.google.api.MethodSettings.LongRunning.verify(message.longRunning,long+1);if(error)return"longRunning."+error}if(message.autoPopulatedFields!=null&&message.hasOwnProperty("autoPopulatedFields")){if(!Array.isArray(message.autoPopulatedFields))return"autoPopulatedFields: array expected";for(var i=0;i<message.autoPopulatedFields.length;++i)if(!$util.isString(message.autoPopulatedFields[i]))return"autoPopulatedFields: string[] expected"}if(message.batching!=null&&message.hasOwnProperty("batching")){var error=$root.google.api.BatchingConfigProto.verify(message.batching,long+1);if(error)return"batching."+error}return null};MethodSettings.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.MethodSettings)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.MethodSettings;if(object.selector!=null)message.selector=String(object.selector);if(object.longRunning!=null){if(typeof object.longRunning!=="object")throw TypeError(".google.api.MethodSettings.longRunning: object expected");message.longRunning=$root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning,long+1)}if(object.autoPopulatedFields){if(!Array.isArray(object.autoPopulatedFields))throw TypeError(".google.api.MethodSettings.autoPopulatedFields: array expected");message.autoPopulatedFields=[];for(var i=0;i<object.autoPopulatedFields.length;++i)message.autoPopulatedFields[i]=String(object.autoPopulatedFields[i])}if(object.batching!=null){if(typeof object.batching!=="object")throw TypeError(".google.api.MethodSettings.batching: object expected");message.batching=$root.google.api.BatchingConfigProto.fromObject(object.batching,long+1)}return message};MethodSettings.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.autoPopulatedFields=[];if(options.defaults){object.selector="";object.longRunning=null;object.batching=null}if(message.selector!=null&&message.hasOwnProperty("selector"))object.selector=message.selector;if(message.longRunning!=null&&message.hasOwnProperty("longRunning"))object.longRunning=$root.google.api.MethodSettings.LongRunning.toObject(message.longRunning,options);if(message.autoPopulatedFields&&message.autoPopulatedFields.length){object.autoPopulatedFields=[];for(var j=0;j<message.autoPopulatedFields.length;++j)object.autoPopulatedFields[j]=message.autoPopulatedFields[j]}if(message.batching!=null&&message.hasOwnProperty("batching"))object.batching=$root.google.api.BatchingConfigProto.toObject(message.batching,options);return object};MethodSettings.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};MethodSettings.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.MethodSettings"};MethodSettings.LongRunning=function(){function LongRunning(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}LongRunning.prototype.initialPollDelay=null;LongRunning.prototype.pollDelayMultiplier=0;LongRunning.prototype.maxPollDelay=null;LongRunning.prototype.totalPollTimeout=null;LongRunning.create=function create(properties){return new LongRunning(properties)};LongRunning.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.initialPollDelay!=null&&Object.hasOwnProperty.call(message,"initialPollDelay"))$root.google.protobuf.Duration.encode(message.initialPollDelay,writer.uint32(10).fork()).ldelim();if(message.pollDelayMultiplier!=null&&Object.hasOwnProperty.call(message,"pollDelayMultiplier"))writer.uint32(21).float(message.pollDelayMultiplier);if(message.maxPollDelay!=null&&Object.hasOwnProperty.call(message,"maxPollDelay"))$root.google.protobuf.Duration.encode(message.maxPollDelay,writer.uint32(26).fork()).ldelim();if(message.totalPollTimeout!=null&&Object.hasOwnProperty.call(message,"totalPollTimeout"))$root.google.protobuf.Duration.encode(message.totalPollTimeout,writer.uint32(34).fork()).ldelim();return writer};LongRunning.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};LongRunning.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.MethodSettings.LongRunning;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.initialPollDelay=$root.google.protobuf.Duration.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.pollDelayMultiplier=reader.float();break}case 3:{message.maxPollDelay=$root.google.protobuf.Duration.decode(reader,reader.uint32(),undefined,long+1);break}case 4:{message.totalPollTimeout=$root.google.protobuf.Duration.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};LongRunning.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};LongRunning.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.initialPollDelay!=null&&message.hasOwnProperty("initialPollDelay")){var error=$root.google.protobuf.Duration.verify(message.initialPollDelay,long+1);if(error)return"initialPollDelay."+error}if(message.pollDelayMultiplier!=null&&message.hasOwnProperty("pollDelayMultiplier"))if(typeof message.pollDelayMultiplier!=="number")return"pollDelayMultiplier: number expected";if(message.maxPollDelay!=null&&message.hasOwnProperty("maxPollDelay")){var error=$root.google.protobuf.Duration.verify(message.maxPollDelay,long+1);if(error)return"maxPollDelay."+error}if(message.totalPollTimeout!=null&&message.hasOwnProperty("totalPollTimeout")){var error=$root.google.protobuf.Duration.verify(message.totalPollTimeout,long+1);if(error)return"totalPollTimeout."+error}return null};LongRunning.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.MethodSettings.LongRunning)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.MethodSettings.LongRunning;if(object.initialPollDelay!=null){if(typeof object.initialPollDelay!=="object")throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected");message.initialPollDelay=$root.google.protobuf.Duration.fromObject(object.initialPollDelay,long+1)}if(object.pollDelayMultiplier!=null)message.pollDelayMultiplier=Number(object.pollDelayMultiplier);if(object.maxPollDelay!=null){if(typeof object.maxPollDelay!=="object")throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected");message.maxPollDelay=$root.google.protobuf.Duration.fromObject(object.maxPollDelay,long+1)}if(object.totalPollTimeout!=null){if(typeof object.totalPollTimeout!=="object")throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected");message.totalPollTimeout=$root.google.protobuf.Duration.fromObject(object.totalPollTimeout,long+1)}return message};LongRunning.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.initialPollDelay=null;object.pollDelayMultiplier=0;object.maxPollDelay=null;object.totalPollTimeout=null}if(message.initialPollDelay!=null&&message.hasOwnProperty("initialPollDelay"))object.initialPollDelay=$root.google.protobuf.Duration.toObject(message.initialPollDelay,options);if(message.pollDelayMultiplier!=null&&message.hasOwnProperty("pollDelayMultiplier"))object.pollDelayMultiplier=options.json&&!isFinite(message.pollDelayMultiplier)?String(message.pollDelayMultiplier):message.pollDelayMultiplier;if(message.maxPollDelay!=null&&message.hasOwnProperty("maxPollDelay"))object.maxPollDelay=$root.google.protobuf.Duration.toObject(message.maxPollDelay,options);if(message.totalPollTimeout!=null&&message.hasOwnProperty("totalPollTimeout"))object.totalPollTimeout=$root.google.protobuf.Duration.toObject(message.totalPollTimeout,options);return object};LongRunning.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};LongRunning.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.MethodSettings.LongRunning"};return LongRunning}();return MethodSettings}();api.ClientLibraryOrganization=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED"]=0;values[valuesById[1]="CLOUD"]=1;values[valuesById[2]="ADS"]=2;values[valuesById[3]="PHOTOS"]=3;values[valuesById[4]="STREET_VIEW"]=4;values[valuesById[5]="SHOPPING"]=5;values[valuesById[6]="GEO"]=6;values[valuesById[7]="GENERATIVE_AI"]=7;return values}();api.ClientLibraryDestination=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="CLIENT_LIBRARY_DESTINATION_UNSPECIFIED"]=0;values[valuesById[10]="GITHUB"]=10;values[valuesById[20]="PACKAGE_MANAGER"]=20;return values}();api.SelectiveGapicGeneration=function(){function SelectiveGapicGeneration(properties){this.methods=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}SelectiveGapicGeneration.prototype.methods=$util.emptyArray;SelectiveGapicGeneration.prototype.generateOmittedAsInternal=false;SelectiveGapicGeneration.create=function create(properties){return new SelectiveGapicGeneration(properties)};SelectiveGapicGeneration.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.methods!=null&&message.methods.length)for(var i=0;i<message.methods.length;++i)writer.uint32(10).string(message.methods[i]);if(message.generateOmittedAsInternal!=null&&Object.hasOwnProperty.call(message,"generateOmittedAsInternal"))writer.uint32(16).bool(message.generateOmittedAsInternal);return writer};SelectiveGapicGeneration.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};SelectiveGapicGeneration.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.SelectiveGapicGeneration;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.methods&&message.methods.length))message.methods=[];message.methods.push(reader.string());break}case 2:{message.generateOmittedAsInternal=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};SelectiveGapicGeneration.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};SelectiveGapicGeneration.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.methods!=null&&message.hasOwnProperty("methods")){if(!Array.isArray(message.methods))return"methods: array expected";for(var i=0;i<message.methods.length;++i)if(!$util.isString(message.methods[i]))return"methods: string[] expected"}if(message.generateOmittedAsInternal!=null&&message.hasOwnProperty("generateOmittedAsInternal"))if(typeof message.generateOmittedAsInternal!=="boolean")return"generateOmittedAsInternal: boolean expected";return null};SelectiveGapicGeneration.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.SelectiveGapicGeneration)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.SelectiveGapicGeneration;if(object.methods){if(!Array.isArray(object.methods))throw TypeError(".google.api.SelectiveGapicGeneration.methods: array expected");message.methods=[];for(var i=0;i<object.methods.length;++i)message.methods[i]=String(object.methods[i])}if(object.generateOmittedAsInternal!=null)message.generateOmittedAsInternal=Boolean(object.generateOmittedAsInternal);return message};SelectiveGapicGeneration.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.methods=[];if(options.defaults)object.generateOmittedAsInternal=false;if(message.methods&&message.methods.length){object.methods=[];for(var j=0;j<message.methods.length;++j)object.methods[j]=message.methods[j]}if(message.generateOmittedAsInternal!=null&&message.hasOwnProperty("generateOmittedAsInternal"))object.generateOmittedAsInternal=message.generateOmittedAsInternal;return object};SelectiveGapicGeneration.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};SelectiveGapicGeneration.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.SelectiveGapicGeneration"};return SelectiveGapicGeneration}();api.BatchingConfigProto=function(){function BatchingConfigProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}BatchingConfigProto.prototype.thresholds=null;BatchingConfigProto.prototype.batchDescriptor=null;BatchingConfigProto.create=function create(properties){return new BatchingConfigProto(properties)};BatchingConfigProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.thresholds!=null&&Object.hasOwnProperty.call(message,"thresholds"))$root.google.api.BatchingSettingsProto.encode(message.thresholds,writer.uint32(10).fork()).ldelim();if(message.batchDescriptor!=null&&Object.hasOwnProperty.call(message,"batchDescriptor"))$root.google.api.BatchingDescriptorProto.encode(message.batchDescriptor,writer.uint32(18).fork()).ldelim();return writer};BatchingConfigProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};BatchingConfigProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.BatchingConfigProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.thresholds=$root.google.api.BatchingSettingsProto.decode(reader,reader.uint32(),undefined,long+1);break}case 2:{message.batchDescriptor=$root.google.api.BatchingDescriptorProto.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};BatchingConfigProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};BatchingConfigProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.thresholds!=null&&message.hasOwnProperty("thresholds")){var error=$root.google.api.BatchingSettingsProto.verify(message.thresholds,long+1);if(error)return"thresholds."+error}if(message.batchDescriptor!=null&&message.hasOwnProperty("batchDescriptor")){var error=$root.google.api.BatchingDescriptorProto.verify(message.batchDescriptor,long+1);if(error)return"batchDescriptor."+error}return null};BatchingConfigProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.BatchingConfigProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.BatchingConfigProto;if(object.thresholds!=null){if(typeof object.thresholds!=="object")throw TypeError(".google.api.BatchingConfigProto.thresholds: object expected");message.thresholds=$root.google.api.BatchingSettingsProto.fromObject(object.thresholds,long+1)}if(object.batchDescriptor!=null){if(typeof object.batchDescriptor!=="object")throw TypeError(".google.api.BatchingConfigProto.batchDescriptor: object expected");message.batchDescriptor=$root.google.api.BatchingDescriptorProto.fromObject(object.batchDescriptor,long+1)}return message};BatchingConfigProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.thresholds=null;object.batchDescriptor=null}if(message.thresholds!=null&&message.hasOwnProperty("thresholds"))object.thresholds=$root.google.api.BatchingSettingsProto.toObject(message.thresholds,options);if(message.batchDescriptor!=null&&message.hasOwnProperty("batchDescriptor"))object.batchDescriptor=$root.google.api.BatchingDescriptorProto.toObject(message.batchDescriptor,options);return object};BatchingConfigProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};BatchingConfigProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.BatchingConfigProto"};return BatchingConfigProto}();api.BatchingSettingsProto=function(){function BatchingSettingsProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}BatchingSettingsProto.prototype.elementCountThreshold=0;BatchingSettingsProto.prototype.requestByteThreshold=$util.Long?$util.Long.fromBits(0,0,false):0;BatchingSettingsProto.prototype.delayThreshold=null;BatchingSettingsProto.prototype.elementCountLimit=0;BatchingSettingsProto.prototype.requestByteLimit=0;BatchingSettingsProto.prototype.flowControlElementLimit=0;BatchingSettingsProto.prototype.flowControlByteLimit=0;BatchingSettingsProto.prototype.flowControlLimitExceededBehavior=0;BatchingSettingsProto.create=function create(properties){return new BatchingSettingsProto(properties)};BatchingSettingsProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.elementCountThreshold!=null&&Object.hasOwnProperty.call(message,"elementCountThreshold"))writer.uint32(8).int32(message.elementCountThreshold);if(message.requestByteThreshold!=null&&Object.hasOwnProperty.call(message,"requestByteThreshold"))writer.uint32(16).int64(message.requestByteThreshold);if(message.delayThreshold!=null&&Object.hasOwnProperty.call(message,"delayThreshold"))$root.google.protobuf.Duration.encode(message.delayThreshold,writer.uint32(26).fork()).ldelim();if(message.elementCountLimit!=null&&Object.hasOwnProperty.call(message,"elementCountLimit"))writer.uint32(32).int32(message.elementCountLimit);if(message.requestByteLimit!=null&&Object.hasOwnProperty.call(message,"requestByteLimit"))writer.uint32(40).int32(message.requestByteLimit);if(message.flowControlElementLimit!=null&&Object.hasOwnProperty.call(message,"flowControlElementLimit"))writer.uint32(48).int32(message.flowControlElementLimit);if(message.flowControlByteLimit!=null&&Object.hasOwnProperty.call(message,"flowControlByteLimit"))writer.uint32(56).int32(message.flowControlByteLimit);if(message.flowControlLimitExceededBehavior!=null&&Object.hasOwnProperty.call(message,"flowControlLimitExceededBehavior"))writer.uint32(64).int32(message.flowControlLimitExceededBehavior);return writer};BatchingSettingsProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};BatchingSettingsProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.BatchingSettingsProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.elementCountThreshold=reader.int32();break}case 2:{message.requestByteThreshold=reader.int64();break}case 3:{message.delayThreshold=$root.google.protobuf.Duration.decode(reader,reader.uint32(),undefined,long+1);break}case 4:{message.elementCountLimit=reader.int32();break}case 5:{message.requestByteLimit=reader.int32();break}case 6:{message.flowControlElementLimit=reader.int32();break}case 7:{message.flowControlByteLimit=reader.int32();break}case 8:{message.flowControlLimitExceededBehavior=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};BatchingSettingsProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};BatchingSettingsProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.elementCountThreshold!=null&&message.hasOwnProperty("elementCountThreshold"))if(!$util.isInteger(message.elementCountThreshold))return"elementCountThreshold: integer expected";if(message.requestByteThreshold!=null&&message.hasOwnProperty("requestByteThreshold"))if(!$util.isInteger(message.requestByteThreshold)&&!(message.requestByteThreshold&&$util.isInteger(message.requestByteThreshold.low)&&$util.isInteger(message.requestByteThreshold.high)))return"requestByteThreshold: integer|Long expected";if(message.delayThreshold!=null&&message.hasOwnProperty("delayThreshold")){var error=$root.google.protobuf.Duration.verify(message.delayThreshold,long+1);if(error)return"delayThreshold."+error}if(message.elementCountLimit!=null&&message.hasOwnProperty("elementCountLimit"))if(!$util.isInteger(message.elementCountLimit))return"elementCountLimit: integer expected";if(message.requestByteLimit!=null&&message.hasOwnProperty("requestByteLimit"))if(!$util.isInteger(message.requestByteLimit))return"requestByteLimit: integer expected";if(message.flowControlElementLimit!=null&&message.hasOwnProperty("flowControlElementLimit"))if(!$util.isInteger(message.flowControlElementLimit))return"flowControlElementLimit: integer expected";if(message.flowControlByteLimit!=null&&message.hasOwnProperty("flowControlByteLimit"))if(!$util.isInteger(message.flowControlByteLimit))return"flowControlByteLimit: integer expected";if(message.flowControlLimitExceededBehavior!=null&&message.hasOwnProperty("flowControlLimitExceededBehavior"))switch(message.flowControlLimitExceededBehavior){default:return"flowControlLimitExceededBehavior: enum value expected";case 0:case 1:case 2:case 3:break}return null};BatchingSettingsProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.BatchingSettingsProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.BatchingSettingsProto;if(object.elementCountThreshold!=null)message.elementCountThreshold=object.elementCountThreshold|0;if(object.requestByteThreshold!=null)if($util.Long)(message.requestByteThreshold=$util.Long.fromValue(object.requestByteThreshold)).unsigned=false;else if(typeof object.requestByteThreshold==="string")message.requestByteThreshold=parseInt(object.requestByteThreshold,10);else if(typeof object.requestByteThreshold==="number")message.requestByteThreshold=object.requestByteThreshold;else if(typeof object.requestByteThreshold==="object")message.requestByteThreshold=new $util.LongBits(object.requestByteThreshold.low>>>0,object.requestByteThreshold.high>>>0).toNumber();if(object.delayThreshold!=null){if(typeof object.delayThreshold!=="object")throw TypeError(".google.api.BatchingSettingsProto.delayThreshold: object expected");message.delayThreshold=$root.google.protobuf.Duration.fromObject(object.delayThreshold,long+1)}if(object.elementCountLimit!=null)message.elementCountLimit=object.elementCountLimit|0;if(object.requestByteLimit!=null)message.requestByteLimit=object.requestByteLimit|0;if(object.flowControlElementLimit!=null)message.flowControlElementLimit=object.flowControlElementLimit|0;if(object.flowControlByteLimit!=null)message.flowControlByteLimit=object.flowControlByteLimit|0;switch(object.flowControlLimitExceededBehavior){default:if(typeof object.flowControlLimitExceededBehavior==="number"){message.flowControlLimitExceededBehavior=object.flowControlLimitExceededBehavior;break}break;case"UNSET_BEHAVIOR":case 0:message.flowControlLimitExceededBehavior=0;break;case"THROW_EXCEPTION":case 1:message.flowControlLimitExceededBehavior=1;break;case"BLOCK":case 2:message.flowControlLimitExceededBehavior=2;break;case"IGNORE":case 3:message.flowControlLimitExceededBehavior=3;break}return message};BatchingSettingsProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.elementCountThreshold=0;if($util.Long){var long=new $util.Long(0,0,false);object.requestByteThreshold=options.longs===String?long.toString():options.longs===Number?long.toNumber():long}else object.requestByteThreshold=options.longs===String?"0":0;object.delayThreshold=null;object.elementCountLimit=0;object.requestByteLimit=0;object.flowControlElementLimit=0;object.flowControlByteLimit=0;object.flowControlLimitExceededBehavior=options.enums===String?"UNSET_BEHAVIOR":0}if(message.elementCountThreshold!=null&&message.hasOwnProperty("elementCountThreshold"))object.elementCountThreshold=message.elementCountThreshold;if(message.requestByteThreshold!=null&&message.hasOwnProperty("requestByteThreshold"))if(typeof message.requestByteThreshold==="number")object.requestByteThreshold=options.longs===String?String(message.requestByteThreshold):message.requestByteThreshold;else object.requestByteThreshold=options.longs===String?$util.Long.prototype.toString.call(message.requestByteThreshold):options.longs===Number?new $util.LongBits(message.requestByteThreshold.low>>>0,message.requestByteThreshold.high>>>0).toNumber():message.requestByteThreshold;if(message.delayThreshold!=null&&message.hasOwnProperty("delayThreshold"))object.delayThreshold=$root.google.protobuf.Duration.toObject(message.delayThreshold,options);if(message.elementCountLimit!=null&&message.hasOwnProperty("elementCountLimit"))object.elementCountLimit=message.elementCountLimit;if(message.requestByteLimit!=null&&message.hasOwnProperty("requestByteLimit"))object.requestByteLimit=message.requestByteLimit;if(message.flowControlElementLimit!=null&&message.hasOwnProperty("flowControlElementLimit"))object.flowControlElementLimit=message.flowControlElementLimit;if(message.flowControlByteLimit!=null&&message.hasOwnProperty("flowControlByteLimit"))object.flowControlByteLimit=message.flowControlByteLimit;if(message.flowControlLimitExceededBehavior!=null&&message.hasOwnProperty("flowControlLimitExceededBehavior"))object.flowControlLimitExceededBehavior=options.enums===String?$root.google.api.FlowControlLimitExceededBehaviorProto[message.flowControlLimitExceededBehavior]===undefined?message.flowControlLimitExceededBehavior:$root.google.api.FlowControlLimitExceededBehaviorProto[message.flowControlLimitExceededBehavior]:message.flowControlLimitExceededBehavior;return object};BatchingSettingsProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};BatchingSettingsProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.BatchingSettingsProto"};return BatchingSettingsProto}();api.FlowControlLimitExceededBehaviorProto=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="UNSET_BEHAVIOR"]=0;values[valuesById[1]="THROW_EXCEPTION"]=1;values[valuesById[2]="BLOCK"]=2;values[valuesById[3]="IGNORE"]=3;return values}();api.BatchingDescriptorProto=function(){function BatchingDescriptorProto(properties){this.discriminatorFields=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}BatchingDescriptorProto.prototype.batchedField="";BatchingDescriptorProto.prototype.discriminatorFields=$util.emptyArray;BatchingDescriptorProto.prototype.subresponseField="";BatchingDescriptorProto.create=function create(properties){return new BatchingDescriptorProto(properties)};BatchingDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.batchedField!=null&&Object.hasOwnProperty.call(message,"batchedField"))writer.uint32(10).string(message.batchedField);if(message.discriminatorFields!=null&&message.discriminatorFields.length)for(var i=0;i<message.discriminatorFields.length;++i)writer.uint32(18).string(message.discriminatorFields[i]);if(message.subresponseField!=null&&Object.hasOwnProperty.call(message,"subresponseField"))writer.uint32(26).string(message.subresponseField);return writer};BatchingDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};BatchingDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.api.BatchingDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.batchedField=reader.string();break}case 2:{if(!(message.discriminatorFields&&message.discriminatorFields.length))message.discriminatorFields=[];message.discriminatorFields.push(reader.string());break}case 3:{message.subresponseField=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};BatchingDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};BatchingDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.batchedField!=null&&message.hasOwnProperty("batchedField"))if(!$util.isString(message.batchedField))return"batchedField: string expected";if(message.discriminatorFields!=null&&message.hasOwnProperty("discriminatorFields")){if(!Array.isArray(message.discriminatorFields))return"discriminatorFields: array expected";for(var i=0;i<message.discriminatorFields.length;++i)if(!$util.isString(message.discriminatorFields[i]))return"discriminatorFields: string[] expected"}if(message.subresponseField!=null&&message.hasOwnProperty("subresponseField"))if(!$util.isString(message.subresponseField))return"subresponseField: string expected";return null};BatchingDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.api.BatchingDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.api.BatchingDescriptorProto;if(object.batchedField!=null)message.batchedField=String(object.batchedField);if(object.discriminatorFields){if(!Array.isArray(object.discriminatorFields))throw TypeError(".google.api.BatchingDescriptorProto.discriminatorFields: array expected");message.discriminatorFields=[];for(var i=0;i<object.discriminatorFields.length;++i)message.discriminatorFields[i]=String(object.discriminatorFields[i])}if(object.subresponseField!=null)message.subresponseField=String(object.subresponseField);return message};BatchingDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.discriminatorFields=[];if(options.defaults){object.batchedField="";object.subresponseField=""}if(message.batchedField!=null&&message.hasOwnProperty("batchedField"))object.batchedField=message.batchedField;if(message.discriminatorFields&&message.discriminatorFields.length){object.discriminatorFields=[];for(var j=0;j<message.discriminatorFields.length;++j)object.discriminatorFields[j]=message.discriminatorFields[j]}if(message.subresponseField!=null&&message.hasOwnProperty("subresponseField"))object.subresponseField=message.subresponseField;return object};BatchingDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};BatchingDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.api.BatchingDescriptorProto"};return BatchingDescriptorProto}();api.LaunchStage=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="LAUNCH_STAGE_UNSPECIFIED"]=0;values[valuesById[6]="UNIMPLEMENTED"]=6;values[valuesById[7]="PRELAUNCH"]=7;values[valuesById[1]="EARLY_ACCESS"]=1;values[valuesById[2]="ALPHA"]=2;values[valuesById[3]="BETA"]=3;values[valuesById[4]="GA"]=4;values[valuesById[5]="DEPRECATED"]=5;return values}();return api}();google.protobuf=function(){var protobuf={};protobuf.FileDescriptorSet=function(){function FileDescriptorSet(properties){this.file=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FileDescriptorSet.prototype.file=$util.emptyArray;FileDescriptorSet.create=function create(properties){return new FileDescriptorSet(properties)};FileDescriptorSet.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.file!=null&&message.file.length)for(var i=0;i<message.file.length;++i)$root.google.protobuf.FileDescriptorProto.encode(message.file[i],writer.uint32(10).fork()).ldelim();return writer};FileDescriptorSet.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FileDescriptorSet.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FileDescriptorSet;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.file&&message.file.length))message.file=[];message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};FileDescriptorSet.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FileDescriptorSet.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.file!=null&&message.hasOwnProperty("file")){if(!Array.isArray(message.file))return"file: array expected";for(var i=0;i<message.file.length;++i){var error=$root.google.protobuf.FileDescriptorProto.verify(message.file[i],long+1);if(error)return"file."+error}}return null};FileDescriptorSet.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FileDescriptorSet)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FileDescriptorSet;if(object.file){if(!Array.isArray(object.file))throw TypeError(".google.protobuf.FileDescriptorSet.file: array expected");message.file=[];for(var i=0;i<object.file.length;++i){if(typeof object.file[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected");message.file[i]=$root.google.protobuf.FileDescriptorProto.fromObject(object.file[i],long+1)}}return message};FileDescriptorSet.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.file=[];if(message.file&&message.file.length){object.file=[];for(var j=0;j<message.file.length;++j)object.file[j]=$root.google.protobuf.FileDescriptorProto.toObject(message.file[j],options)}return object};FileDescriptorSet.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FileDescriptorSet.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FileDescriptorSet"};return FileDescriptorSet}();protobuf.Edition=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="EDITION_UNKNOWN"]=0;values[valuesById[900]="EDITION_LEGACY"]=900;values[valuesById[998]="EDITION_PROTO2"]=998;values[valuesById[999]="EDITION_PROTO3"]=999;values[valuesById[1e3]="EDITION_2023"]=1e3;values[valuesById[1001]="EDITION_2024"]=1001;values[valuesById[1002]="EDITION_2026"]=1002;values[valuesById[9999]="EDITION_UNSTABLE"]=9999;values[valuesById[1]="EDITION_1_TEST_ONLY"]=1;values[valuesById[2]="EDITION_2_TEST_ONLY"]=2;values[valuesById[99997]="EDITION_99997_TEST_ONLY"]=99997;values[valuesById[99998]="EDITION_99998_TEST_ONLY"]=99998;values[valuesById[99999]="EDITION_99999_TEST_ONLY"]=99999;values[valuesById[2147483647]="EDITION_MAX"]=2147483647;return values}();protobuf.FileDescriptorProto=function(){function FileDescriptorProto(properties){this.dependency=[];this.publicDependency=[];this.weakDependency=[];this.optionDependency=[];this.messageType=[];this.enumType=[];this.service=[];this.extension=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FileDescriptorProto.prototype.name="";FileDescriptorProto.prototype["package"]="";FileDescriptorProto.prototype.dependency=$util.emptyArray;FileDescriptorProto.prototype.publicDependency=$util.emptyArray;FileDescriptorProto.prototype.weakDependency=$util.emptyArray;FileDescriptorProto.prototype.optionDependency=$util.emptyArray;FileDescriptorProto.prototype.messageType=$util.emptyArray;FileDescriptorProto.prototype.enumType=$util.emptyArray;FileDescriptorProto.prototype.service=$util.emptyArray;FileDescriptorProto.prototype.extension=$util.emptyArray;FileDescriptorProto.prototype.options=null;FileDescriptorProto.prototype.sourceCodeInfo=null;FileDescriptorProto.prototype.syntax="";FileDescriptorProto.prototype.edition=0;FileDescriptorProto.create=function create(properties){return new FileDescriptorProto(properties)};FileDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message["package"]!=null&&Object.hasOwnProperty.call(message,"package"))writer.uint32(18).string(message["package"]);if(message.dependency!=null&&message.dependency.length)for(var i=0;i<message.dependency.length;++i)writer.uint32(26).string(message.dependency[i]);if(message.messageType!=null&&message.messageType.length)for(var i=0;i<message.messageType.length;++i)$root.google.protobuf.DescriptorProto.encode(message.messageType[i],writer.uint32(34).fork()).ldelim();if(message.enumType!=null&&message.enumType.length)for(var i=0;i<message.enumType.length;++i)$root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i],writer.uint32(42).fork()).ldelim();if(message.service!=null&&message.service.length)for(var i=0;i<message.service.length;++i)$root.google.protobuf.ServiceDescriptorProto.encode(message.service[i],writer.uint32(50).fork()).ldelim();if(message.extension!=null&&message.extension.length)for(var i=0;i<message.extension.length;++i)$root.google.protobuf.FieldDescriptorProto.encode(message.extension[i],writer.uint32(58).fork()).ldelim();if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.FileOptions.encode(message.options,writer.uint32(66).fork()).ldelim();if(message.sourceCodeInfo!=null&&Object.hasOwnProperty.call(message,"sourceCodeInfo"))$root.google.protobuf.SourceCodeInfo.encode(message.sourceCodeInfo,writer.uint32(74).fork()).ldelim();if(message.publicDependency!=null&&message.publicDependency.length)for(var i=0;i<message.publicDependency.length;++i)writer.uint32(80).int32(message.publicDependency[i]);if(message.weakDependency!=null&&message.weakDependency.length)for(var i=0;i<message.weakDependency.length;++i)writer.uint32(88).int32(message.weakDependency[i]);if(message.syntax!=null&&Object.hasOwnProperty.call(message,"syntax"))writer.uint32(98).string(message.syntax);if(message.edition!=null&&Object.hasOwnProperty.call(message,"edition"))writer.uint32(112).int32(message.edition);if(message.optionDependency!=null&&message.optionDependency.length)for(var i=0;i<message.optionDependency.length;++i)writer.uint32(122).string(message.optionDependency[i]);return writer};FileDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FileDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FileDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message["package"]=reader.string();break}case 3:{if(!(message.dependency&&message.dependency.length))message.dependency=[];message.dependency.push(reader.string());break}case 10:{if(!(message.publicDependency&&message.publicDependency.length))message.publicDependency=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.publicDependency.push(reader.int32())}else message.publicDependency.push(reader.int32());break}case 11:{if(!(message.weakDependency&&message.weakDependency.length))message.weakDependency=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.weakDependency.push(reader.int32())}else message.weakDependency.push(reader.int32());break}case 15:{if(!(message.optionDependency&&message.optionDependency.length))message.optionDependency=[];message.optionDependency.push(reader.string());break}case 4:{if(!(message.messageType&&message.messageType.length))message.messageType=[];message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 5:{if(!(message.enumType&&message.enumType.length))message.enumType=[];message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 6:{if(!(message.service&&message.service.length))message.service=[];message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 7:{if(!(message.extension&&message.extension.length))message.extension=[];message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 8:{message.options=$root.google.protobuf.FileOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 9:{message.sourceCodeInfo=$root.google.protobuf.SourceCodeInfo.decode(reader,reader.uint32(),undefined,long+1);break}case 12:{message.syntax=reader.string();break}case 14:{message.edition=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};FileDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FileDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message["package"]!=null&&message.hasOwnProperty("package"))if(!$util.isString(message["package"]))return"package: string expected";if(message.dependency!=null&&message.hasOwnProperty("dependency")){if(!Array.isArray(message.dependency))return"dependency: array expected";for(var i=0;i<message.dependency.length;++i)if(!$util.isString(message.dependency[i]))return"dependency: string[] expected"}if(message.publicDependency!=null&&message.hasOwnProperty("publicDependency")){if(!Array.isArray(message.publicDependency))return"publicDependency: array expected";for(var i=0;i<message.publicDependency.length;++i)if(!$util.isInteger(message.publicDependency[i]))return"publicDependency: integer[] expected"}if(message.weakDependency!=null&&message.hasOwnProperty("weakDependency")){if(!Array.isArray(message.weakDependency))return"weakDependency: array expected";for(var i=0;i<message.weakDependency.length;++i)if(!$util.isInteger(message.weakDependency[i]))return"weakDependency: integer[] expected"}if(message.optionDependency!=null&&message.hasOwnProperty("optionDependency")){if(!Array.isArray(message.optionDependency))return"optionDependency: array expected";for(var i=0;i<message.optionDependency.length;++i)if(!$util.isString(message.optionDependency[i]))return"optionDependency: string[] expected"}if(message.messageType!=null&&message.hasOwnProperty("messageType")){if(!Array.isArray(message.messageType))return"messageType: array expected";for(var i=0;i<message.messageType.length;++i){var error=$root.google.protobuf.DescriptorProto.verify(message.messageType[i],long+1);if(error)return"messageType."+error}}if(message.enumType!=null&&message.hasOwnProperty("enumType")){if(!Array.isArray(message.enumType))return"enumType: array expected";for(var i=0;i<message.enumType.length;++i){var error=$root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i],long+1);if(error)return"enumType."+error}}if(message.service!=null&&message.hasOwnProperty("service")){if(!Array.isArray(message.service))return"service: array expected";for(var i=0;i<message.service.length;++i){var error=$root.google.protobuf.ServiceDescriptorProto.verify(message.service[i],long+1);if(error)return"service."+error}}if(message.extension!=null&&message.hasOwnProperty("extension")){if(!Array.isArray(message.extension))return"extension: array expected";for(var i=0;i<message.extension.length;++i){var error=$root.google.protobuf.FieldDescriptorProto.verify(message.extension[i],long+1);if(error)return"extension."+error}}if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.FileOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.sourceCodeInfo!=null&&message.hasOwnProperty("sourceCodeInfo")){var error=$root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo,long+1);if(error)return"sourceCodeInfo."+error}if(message.syntax!=null&&message.hasOwnProperty("syntax"))if(!$util.isString(message.syntax))return"syntax: string expected";if(message.edition!=null&&message.hasOwnProperty("edition"))switch(message.edition){default:return"edition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1002:case 9999:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}return null};FileDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FileDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FileDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object["package"]!=null)message["package"]=String(object["package"]);if(object.dependency){if(!Array.isArray(object.dependency))throw TypeError(".google.protobuf.FileDescriptorProto.dependency: array expected");message.dependency=[];for(var i=0;i<object.dependency.length;++i)message.dependency[i]=String(object.dependency[i])}if(object.publicDependency){if(!Array.isArray(object.publicDependency))throw TypeError(".google.protobuf.FileDescriptorProto.publicDependency: array expected");message.publicDependency=[];for(var i=0;i<object.publicDependency.length;++i)message.publicDependency[i]=object.publicDependency[i]|0}if(object.weakDependency){if(!Array.isArray(object.weakDependency))throw TypeError(".google.protobuf.FileDescriptorProto.weakDependency: array expected");message.weakDependency=[];for(var i=0;i<object.weakDependency.length;++i)message.weakDependency[i]=object.weakDependency[i]|0}if(object.optionDependency){if(!Array.isArray(object.optionDependency))throw TypeError(".google.protobuf.FileDescriptorProto.optionDependency: array expected");message.optionDependency=[];for(var i=0;i<object.optionDependency.length;++i)message.optionDependency[i]=String(object.optionDependency[i])}if(object.messageType){if(!Array.isArray(object.messageType))throw TypeError(".google.protobuf.FileDescriptorProto.messageType: array expected");message.messageType=[];for(var i=0;i<object.messageType.length;++i){if(typeof object.messageType[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected");message.messageType[i]=$root.google.protobuf.DescriptorProto.fromObject(object.messageType[i],long+1)}}if(object.enumType){if(!Array.isArray(object.enumType))throw TypeError(".google.protobuf.FileDescriptorProto.enumType: array expected");message.enumType=[];for(var i=0;i<object.enumType.length;++i){if(typeof object.enumType[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected");message.enumType[i]=$root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i],long+1)}}if(object.service){if(!Array.isArray(object.service))throw TypeError(".google.protobuf.FileDescriptorProto.service: array expected");message.service=[];for(var i=0;i<object.service.length;++i){if(typeof object.service[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected");message.service[i]=$root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i],long+1)}}if(object.extension){if(!Array.isArray(object.extension))throw TypeError(".google.protobuf.FileDescriptorProto.extension: array expected");message.extension=[];for(var i=0;i<object.extension.length;++i){if(typeof object.extension[i]!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected");message.extension[i]=$root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i],long+1)}}if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected");message.options=$root.google.protobuf.FileOptions.fromObject(object.options,long+1)}if(object.sourceCodeInfo!=null){if(typeof object.sourceCodeInfo!=="object")throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected");message.sourceCodeInfo=$root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo,long+1)}if(object.syntax!=null)message.syntax=String(object.syntax);switch(object.edition){default:if(typeof object.edition==="number"){message.edition=object.edition;break}break;case"EDITION_UNKNOWN":case 0:message.edition=0;break;case"EDITION_LEGACY":case 900:message.edition=900;break;case"EDITION_PROTO2":case 998:message.edition=998;break;case"EDITION_PROTO3":case 999:message.edition=999;break;case"EDITION_2023":case 1e3:message.edition=1e3;break;case"EDITION_2024":case 1001:message.edition=1001;break;case"EDITION_2026":case 1002:message.edition=1002;break;case"EDITION_UNSTABLE":case 9999:message.edition=9999;break;case"EDITION_1_TEST_ONLY":case 1:message.edition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.edition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.edition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.edition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.edition=99999;break;case"EDITION_MAX":case 2147483647:message.edition=2147483647;break}return message};FileDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.dependency=[];object.messageType=[];object.enumType=[];object.service=[];object.extension=[];object.publicDependency=[];object.weakDependency=[];object.optionDependency=[]}if(options.defaults){object.name="";object["package"]="";object.options=null;object.sourceCodeInfo=null;object.syntax="";object.edition=options.enums===String?"EDITION_UNKNOWN":0}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message["package"]!=null&&message.hasOwnProperty("package"))object["package"]=message["package"];if(message.dependency&&message.dependency.length){object.dependency=[];for(var j=0;j<message.dependency.length;++j)object.dependency[j]=message.dependency[j]}if(message.messageType&&message.messageType.length){object.messageType=[];for(var j=0;j<message.messageType.length;++j)object.messageType[j]=$root.google.protobuf.DescriptorProto.toObject(message.messageType[j],options)}if(message.enumType&&message.enumType.length){object.enumType=[];for(var j=0;j<message.enumType.length;++j)object.enumType[j]=$root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j],options)}if(message.service&&message.service.length){object.service=[];for(var j=0;j<message.service.length;++j)object.service[j]=$root.google.protobuf.ServiceDescriptorProto.toObject(message.service[j],options)}if(message.extension&&message.extension.length){object.extension=[];for(var j=0;j<message.extension.length;++j)object.extension[j]=$root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j],options)}if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.FileOptions.toObject(message.options,options);if(message.sourceCodeInfo!=null&&message.hasOwnProperty("sourceCodeInfo"))object.sourceCodeInfo=$root.google.protobuf.SourceCodeInfo.toObject(message.sourceCodeInfo,options);if(message.publicDependency&&message.publicDependency.length){object.publicDependency=[];for(var j=0;j<message.publicDependency.length;++j)object.publicDependency[j]=message.publicDependency[j]}if(message.weakDependency&&message.weakDependency.length){object.weakDependency=[];for(var j=0;j<message.weakDependency.length;++j)object.weakDependency[j]=message.weakDependency[j]}if(message.syntax!=null&&message.hasOwnProperty("syntax"))object.syntax=message.syntax;if(message.edition!=null&&message.hasOwnProperty("edition"))object.edition=options.enums===String?$root.google.protobuf.Edition[message.edition]===undefined?message.edition:$root.google.protobuf.Edition[message.edition]:message.edition;if(message.optionDependency&&message.optionDependency.length){object.optionDependency=[];for(var j=0;j<message.optionDependency.length;++j)object.optionDependency[j]=message.optionDependency[j]}return object};FileDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FileDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FileDescriptorProto"};return FileDescriptorProto}();protobuf.DescriptorProto=function(){function DescriptorProto(properties){this.field=[];this.extension=[];this.nestedType=[];this.enumType=[];this.extensionRange=[];this.oneofDecl=[];this.reservedRange=[];this.reservedName=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}DescriptorProto.prototype.name="";DescriptorProto.prototype.field=$util.emptyArray;DescriptorProto.prototype.extension=$util.emptyArray;DescriptorProto.prototype.nestedType=$util.emptyArray;DescriptorProto.prototype.enumType=$util.emptyArray;DescriptorProto.prototype.extensionRange=$util.emptyArray;DescriptorProto.prototype.oneofDecl=$util.emptyArray;DescriptorProto.prototype.options=null;DescriptorProto.prototype.reservedRange=$util.emptyArray;DescriptorProto.prototype.reservedName=$util.emptyArray;DescriptorProto.prototype.visibility=0;DescriptorProto.create=function create(properties){return new DescriptorProto(properties)};DescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.field!=null&&message.field.length)for(var i=0;i<message.field.length;++i)$root.google.protobuf.FieldDescriptorProto.encode(message.field[i],writer.uint32(18).fork()).ldelim();if(message.nestedType!=null&&message.nestedType.length)for(var i=0;i<message.nestedType.length;++i)$root.google.protobuf.DescriptorProto.encode(message.nestedType[i],writer.uint32(26).fork()).ldelim();if(message.enumType!=null&&message.enumType.length)for(var i=0;i<message.enumType.length;++i)$root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i],writer.uint32(34).fork()).ldelim();if(message.extensionRange!=null&&message.extensionRange.length)for(var i=0;i<message.extensionRange.length;++i)$root.google.protobuf.DescriptorProto.ExtensionRange.encode(message.extensionRange[i],writer.uint32(42).fork()).ldelim();if(message.extension!=null&&message.extension.length)for(var i=0;i<message.extension.length;++i)$root.google.protobuf.FieldDescriptorProto.encode(message.extension[i],writer.uint32(50).fork()).ldelim();if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.MessageOptions.encode(message.options,writer.uint32(58).fork()).ldelim();if(message.oneofDecl!=null&&message.oneofDecl.length)for(var i=0;i<message.oneofDecl.length;++i)$root.google.protobuf.OneofDescriptorProto.encode(message.oneofDecl[i],writer.uint32(66).fork()).ldelim();if(message.reservedRange!=null&&message.reservedRange.length)for(var i=0;i<message.reservedRange.length;++i)$root.google.protobuf.DescriptorProto.ReservedRange.encode(message.reservedRange[i],writer.uint32(74).fork()).ldelim();if(message.reservedName!=null&&message.reservedName.length)for(var i=0;i<message.reservedName.length;++i)writer.uint32(82).string(message.reservedName[i]);if(message.visibility!=null&&Object.hasOwnProperty.call(message,"visibility"))writer.uint32(88).int32(message.visibility);return writer};DescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};DescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.DescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{if(!(message.field&&message.field.length))message.field=[];message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 6:{if(!(message.extension&&message.extension.length))message.extension=[];message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 3:{if(!(message.nestedType&&message.nestedType.length))message.nestedType=[];message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 4:{if(!(message.enumType&&message.enumType.length))message.enumType=[];message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 5:{if(!(message.extensionRange&&message.extensionRange.length))message.extensionRange=[];message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader,reader.uint32(),undefined,long+1));break}case 8:{if(!(message.oneofDecl&&message.oneofDecl.length))message.oneofDecl=[];message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 7:{message.options=$root.google.protobuf.MessageOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 9:{if(!(message.reservedRange&&message.reservedRange.length))message.reservedRange=[];message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader,reader.uint32(),undefined,long+1));break}case 10:{if(!(message.reservedName&&message.reservedName.length))message.reservedName=[];message.reservedName.push(reader.string());break}case 11:{message.visibility=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};DescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};DescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.field!=null&&message.hasOwnProperty("field")){if(!Array.isArray(message.field))return"field: array expected";for(var i=0;i<message.field.length;++i){var error=$root.google.protobuf.FieldDescriptorProto.verify(message.field[i],long+1);if(error)return"field."+error}}if(message.extension!=null&&message.hasOwnProperty("extension")){if(!Array.isArray(message.extension))return"extension: array expected";for(var i=0;i<message.extension.length;++i){var error=$root.google.protobuf.FieldDescriptorProto.verify(message.extension[i],long+1);if(error)return"extension."+error}}if(message.nestedType!=null&&message.hasOwnProperty("nestedType")){if(!Array.isArray(message.nestedType))return"nestedType: array expected";for(var i=0;i<message.nestedType.length;++i){var error=$root.google.protobuf.DescriptorProto.verify(message.nestedType[i],long+1);if(error)return"nestedType."+error}}if(message.enumType!=null&&message.hasOwnProperty("enumType")){if(!Array.isArray(message.enumType))return"enumType: array expected";for(var i=0;i<message.enumType.length;++i){var error=$root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i],long+1);if(error)return"enumType."+error}}if(message.extensionRange!=null&&message.hasOwnProperty("extensionRange")){if(!Array.isArray(message.extensionRange))return"extensionRange: array expected";for(var i=0;i<message.extensionRange.length;++i){var error=$root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i],long+1);if(error)return"extensionRange."+error}}if(message.oneofDecl!=null&&message.hasOwnProperty("oneofDecl")){if(!Array.isArray(message.oneofDecl))return"oneofDecl: array expected";for(var i=0;i<message.oneofDecl.length;++i){var error=$root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i],long+1);if(error)return"oneofDecl."+error}}if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.MessageOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.reservedRange!=null&&message.hasOwnProperty("reservedRange")){if(!Array.isArray(message.reservedRange))return"reservedRange: array expected";for(var i=0;i<message.reservedRange.length;++i){var error=$root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i],long+1);if(error)return"reservedRange."+error}}if(message.reservedName!=null&&message.hasOwnProperty("reservedName")){if(!Array.isArray(message.reservedName))return"reservedName: array expected";for(var i=0;i<message.reservedName.length;++i)if(!$util.isString(message.reservedName[i]))return"reservedName: string[] expected"}if(message.visibility!=null&&message.hasOwnProperty("visibility"))switch(message.visibility){default:return"visibility: enum value expected";case 0:case 1:case 2:break}return null};DescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.DescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.DescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.field){if(!Array.isArray(object.field))throw TypeError(".google.protobuf.DescriptorProto.field: array expected");message.field=[];for(var i=0;i<object.field.length;++i){if(typeof object.field[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.field: object expected");message.field[i]=$root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i],long+1)}}if(object.extension){if(!Array.isArray(object.extension))throw TypeError(".google.protobuf.DescriptorProto.extension: array expected");message.extension=[];for(var i=0;i<object.extension.length;++i){if(typeof object.extension[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.extension: object expected");message.extension[i]=$root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i],long+1)}}if(object.nestedType){if(!Array.isArray(object.nestedType))throw TypeError(".google.protobuf.DescriptorProto.nestedType: array expected");message.nestedType=[];for(var i=0;i<object.nestedType.length;++i){if(typeof object.nestedType[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected");message.nestedType[i]=$root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i],long+1)}}if(object.enumType){if(!Array.isArray(object.enumType))throw TypeError(".google.protobuf.DescriptorProto.enumType: array expected");message.enumType=[];for(var i=0;i<object.enumType.length;++i){if(typeof object.enumType[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected");message.enumType[i]=$root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i],long+1)}}if(object.extensionRange){if(!Array.isArray(object.extensionRange))throw TypeError(".google.protobuf.DescriptorProto.extensionRange: array expected");message.extensionRange=[];for(var i=0;i<object.extensionRange.length;++i){if(typeof object.extensionRange[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected");message.extensionRange[i]=$root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i],long+1)}}if(object.oneofDecl){if(!Array.isArray(object.oneofDecl))throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: array expected");message.oneofDecl=[];for(var i=0;i<object.oneofDecl.length;++i){if(typeof object.oneofDecl[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected");message.oneofDecl[i]=$root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i],long+1)}}if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.DescriptorProto.options: object expected");message.options=$root.google.protobuf.MessageOptions.fromObject(object.options,long+1)}if(object.reservedRange){if(!Array.isArray(object.reservedRange))throw TypeError(".google.protobuf.DescriptorProto.reservedRange: array expected");message.reservedRange=[];for(var i=0;i<object.reservedRange.length;++i){if(typeof object.reservedRange[i]!=="object")throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected");message.reservedRange[i]=$root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i],long+1)}}if(object.reservedName){if(!Array.isArray(object.reservedName))throw TypeError(".google.protobuf.DescriptorProto.reservedName: array expected");message.reservedName=[];for(var i=0;i<object.reservedName.length;++i)message.reservedName[i]=String(object.reservedName[i])}switch(object.visibility){default:if(typeof object.visibility==="number"){message.visibility=object.visibility;break}break;case"VISIBILITY_UNSET":case 0:message.visibility=0;break;case"VISIBILITY_LOCAL":case 1:message.visibility=1;break;case"VISIBILITY_EXPORT":case 2:message.visibility=2;break}return message};DescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.field=[];object.nestedType=[];object.enumType=[];object.extensionRange=[];object.extension=[];object.oneofDecl=[];object.reservedRange=[];object.reservedName=[]}if(options.defaults){object.name="";object.options=null;object.visibility=options.enums===String?"VISIBILITY_UNSET":0}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.field&&message.field.length){object.field=[];for(var j=0;j<message.field.length;++j)object.field[j]=$root.google.protobuf.FieldDescriptorProto.toObject(message.field[j],options)}if(message.nestedType&&message.nestedType.length){object.nestedType=[];for(var j=0;j<message.nestedType.length;++j)object.nestedType[j]=$root.google.protobuf.DescriptorProto.toObject(message.nestedType[j],options)}if(message.enumType&&message.enumType.length){object.enumType=[];for(var j=0;j<message.enumType.length;++j)object.enumType[j]=$root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j],options)}if(message.extensionRange&&message.extensionRange.length){object.extensionRange=[];for(var j=0;j<message.extensionRange.length;++j)object.extensionRange[j]=$root.google.protobuf.DescriptorProto.ExtensionRange.toObject(message.extensionRange[j],options)}if(message.extension&&message.extension.length){object.extension=[];for(var j=0;j<message.extension.length;++j)object.extension[j]=$root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j],options)}if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.MessageOptions.toObject(message.options,options);if(message.oneofDecl&&message.oneofDecl.length){object.oneofDecl=[];for(var j=0;j<message.oneofDecl.length;++j)object.oneofDecl[j]=$root.google.protobuf.OneofDescriptorProto.toObject(message.oneofDecl[j],options)}if(message.reservedRange&&message.reservedRange.length){object.reservedRange=[];for(var j=0;j<message.reservedRange.length;++j)object.reservedRange[j]=$root.google.protobuf.DescriptorProto.ReservedRange.toObject(message.reservedRange[j],options)}if(message.reservedName&&message.reservedName.length){object.reservedName=[];for(var j=0;j<message.reservedName.length;++j)object.reservedName[j]=message.reservedName[j]}if(message.visibility!=null&&message.hasOwnProperty("visibility"))object.visibility=options.enums===String?$root.google.protobuf.SymbolVisibility[message.visibility]===undefined?message.visibility:$root.google.protobuf.SymbolVisibility[message.visibility]:message.visibility;return object};DescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};DescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.DescriptorProto"};DescriptorProto.ExtensionRange=function(){function ExtensionRange(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ExtensionRange.prototype.start=0;ExtensionRange.prototype.end=0;ExtensionRange.prototype.options=null;ExtensionRange.create=function create(properties){return new ExtensionRange(properties)};ExtensionRange.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.start!=null&&Object.hasOwnProperty.call(message,"start"))writer.uint32(8).int32(message.start);if(message.end!=null&&Object.hasOwnProperty.call(message,"end"))writer.uint32(16).int32(message.end);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.ExtensionRangeOptions.encode(message.options,writer.uint32(26).fork()).ldelim();return writer};ExtensionRange.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ExtensionRange.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.DescriptorProto.ExtensionRange;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.start=reader.int32();break}case 2:{message.end=reader.int32();break}case 3:{message.options=$root.google.protobuf.ExtensionRangeOptions.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};ExtensionRange.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ExtensionRange.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.start!=null&&message.hasOwnProperty("start"))if(!$util.isInteger(message.start))return"start: integer expected";if(message.end!=null&&message.hasOwnProperty("end"))if(!$util.isInteger(message.end))return"end: integer expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.ExtensionRangeOptions.verify(message.options,long+1);if(error)return"options."+error}return null};ExtensionRange.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.DescriptorProto.ExtensionRange;if(object.start!=null)message.start=object.start|0;if(object.end!=null)message.end=object.end|0;if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected");message.options=$root.google.protobuf.ExtensionRangeOptions.fromObject(object.options,long+1)}return message};ExtensionRange.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.start=0;object.end=0;object.options=null}if(message.start!=null&&message.hasOwnProperty("start"))object.start=message.start;if(message.end!=null&&message.hasOwnProperty("end"))object.end=message.end;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.ExtensionRangeOptions.toObject(message.options,options);return object};ExtensionRange.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ExtensionRange.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.DescriptorProto.ExtensionRange"};return ExtensionRange}();DescriptorProto.ReservedRange=function(){function ReservedRange(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ReservedRange.prototype.start=0;ReservedRange.prototype.end=0;ReservedRange.create=function create(properties){return new ReservedRange(properties)};ReservedRange.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.start!=null&&Object.hasOwnProperty.call(message,"start"))writer.uint32(8).int32(message.start);if(message.end!=null&&Object.hasOwnProperty.call(message,"end"))writer.uint32(16).int32(message.end);return writer};ReservedRange.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ReservedRange.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.DescriptorProto.ReservedRange;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.start=reader.int32();break}case 2:{message.end=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};ReservedRange.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ReservedRange.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.start!=null&&message.hasOwnProperty("start"))if(!$util.isInteger(message.start))return"start: integer expected";if(message.end!=null&&message.hasOwnProperty("end"))if(!$util.isInteger(message.end))return"end: integer expected";return null};ReservedRange.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.DescriptorProto.ReservedRange)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.DescriptorProto.ReservedRange;if(object.start!=null)message.start=object.start|0;if(object.end!=null)message.end=object.end|0;return message};ReservedRange.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.start=0;object.end=0}if(message.start!=null&&message.hasOwnProperty("start"))object.start=message.start;if(message.end!=null&&message.hasOwnProperty("end"))object.end=message.end;return object};ReservedRange.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ReservedRange.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.DescriptorProto.ReservedRange"};return ReservedRange}();return DescriptorProto}();protobuf.ExtensionRangeOptions=function(){function ExtensionRangeOptions(properties){this.uninterpretedOption=[];this.declaration=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ExtensionRangeOptions.prototype.uninterpretedOption=$util.emptyArray;ExtensionRangeOptions.prototype.declaration=$util.emptyArray;ExtensionRangeOptions.prototype.features=null;ExtensionRangeOptions.prototype.verification=1;ExtensionRangeOptions.create=function create(properties){return new ExtensionRangeOptions(properties)};ExtensionRangeOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.declaration!=null&&message.declaration.length)for(var i=0;i<message.declaration.length;++i)$root.google.protobuf.ExtensionRangeOptions.Declaration.encode(message.declaration[i],writer.uint32(18).fork()).ldelim();if(message.verification!=null&&Object.hasOwnProperty.call(message,"verification"))writer.uint32(24).int32(message.verification);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(402).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();return writer};ExtensionRangeOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ExtensionRangeOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.ExtensionRangeOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 2:{if(!(message.declaration&&message.declaration.length))message.declaration=[];message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader,reader.uint32(),undefined,long+1));break}case 50:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.verification=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};ExtensionRangeOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ExtensionRangeOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message.declaration!=null&&message.hasOwnProperty("declaration")){if(!Array.isArray(message.declaration))return"declaration: array expected";for(var i=0;i<message.declaration.length;++i){var error=$root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i],long+1);if(error)return"declaration."+error}}if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.verification!=null&&message.hasOwnProperty("verification"))switch(message.verification){default:return"verification: enum value expected";case 0:case 1:break}return null};ExtensionRangeOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.ExtensionRangeOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.ExtensionRangeOptions;if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object.declaration){if(!Array.isArray(object.declaration))throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: array expected");message.declaration=[];for(var i=0;i<object.declaration.length;++i){if(typeof object.declaration[i]!=="object")throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected");message.declaration[i]=$root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i],long+1)}}if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}switch(object.verification){case"DECLARATION":case 0:message.verification=0;break;default:if(typeof object.verification==="number"){message.verification=object.verification;break}break;case"UNVERIFIED":case 1:message.verification=1;break}return message};ExtensionRangeOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.declaration=[];object.uninterpretedOption=[]}if(options.defaults){object.verification=options.enums===String?"UNVERIFIED":1;object.features=null}if(message.declaration&&message.declaration.length){object.declaration=[];for(var j=0;j<message.declaration.length;++j)object.declaration[j]=$root.google.protobuf.ExtensionRangeOptions.Declaration.toObject(message.declaration[j],options)}if(message.verification!=null&&message.hasOwnProperty("verification"))object.verification=options.enums===String?$root.google.protobuf.ExtensionRangeOptions.VerificationState[message.verification]===undefined?message.verification:$root.google.protobuf.ExtensionRangeOptions.VerificationState[message.verification]:message.verification;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}return object};ExtensionRangeOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ExtensionRangeOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.ExtensionRangeOptions"};ExtensionRangeOptions.Declaration=function(){function Declaration(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Declaration.prototype.number=0;Declaration.prototype.fullName="";Declaration.prototype.type="";Declaration.prototype.reserved=false;Declaration.prototype.repeated=false;Declaration.create=function create(properties){return new Declaration(properties)};Declaration.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.number!=null&&Object.hasOwnProperty.call(message,"number"))writer.uint32(8).int32(message.number);if(message.fullName!=null&&Object.hasOwnProperty.call(message,"fullName"))writer.uint32(18).string(message.fullName);if(message.type!=null&&Object.hasOwnProperty.call(message,"type"))writer.uint32(26).string(message.type);if(message.reserved!=null&&Object.hasOwnProperty.call(message,"reserved"))writer.uint32(40).bool(message.reserved);if(message.repeated!=null&&Object.hasOwnProperty.call(message,"repeated"))writer.uint32(48).bool(message.repeated);return writer};Declaration.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Declaration.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.ExtensionRangeOptions.Declaration;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.number=reader.int32();break}case 2:{message.fullName=reader.string();break}case 3:{message.type=reader.string();break}case 5:{message.reserved=reader.bool();break}case 6:{message.repeated=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};Declaration.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Declaration.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.number!=null&&message.hasOwnProperty("number"))if(!$util.isInteger(message.number))return"number: integer expected";if(message.fullName!=null&&message.hasOwnProperty("fullName"))if(!$util.isString(message.fullName))return"fullName: string expected";if(message.type!=null&&message.hasOwnProperty("type"))if(!$util.isString(message.type))return"type: string expected";if(message.reserved!=null&&message.hasOwnProperty("reserved"))if(typeof message.reserved!=="boolean")return"reserved: boolean expected";if(message.repeated!=null&&message.hasOwnProperty("repeated"))if(typeof message.repeated!=="boolean")return"repeated: boolean expected";return null};Declaration.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.ExtensionRangeOptions.Declaration;if(object.number!=null)message.number=object.number|0;if(object.fullName!=null)message.fullName=String(object.fullName);if(object.type!=null)message.type=String(object.type);if(object.reserved!=null)message.reserved=Boolean(object.reserved);if(object.repeated!=null)message.repeated=Boolean(object.repeated);return message};Declaration.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.number=0;object.fullName="";object.type="";object.reserved=false;object.repeated=false}if(message.number!=null&&message.hasOwnProperty("number"))object.number=message.number;if(message.fullName!=null&&message.hasOwnProperty("fullName"))object.fullName=message.fullName;if(message.type!=null&&message.hasOwnProperty("type"))object.type=message.type;if(message.reserved!=null&&message.hasOwnProperty("reserved"))object.reserved=message.reserved;if(message.repeated!=null&&message.hasOwnProperty("repeated"))object.repeated=message.repeated;return object};Declaration.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Declaration.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.ExtensionRangeOptions.Declaration"};return Declaration}();ExtensionRangeOptions.VerificationState=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="DECLARATION"]=0;values[valuesById[1]="UNVERIFIED"]=1;return values}();return ExtensionRangeOptions}();protobuf.FieldDescriptorProto=function(){function FieldDescriptorProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FieldDescriptorProto.prototype.name="";FieldDescriptorProto.prototype.number=0;FieldDescriptorProto.prototype.label=1;FieldDescriptorProto.prototype.type=1;FieldDescriptorProto.prototype.typeName="";FieldDescriptorProto.prototype.extendee="";FieldDescriptorProto.prototype.defaultValue="";FieldDescriptorProto.prototype.oneofIndex=0;FieldDescriptorProto.prototype.jsonName="";FieldDescriptorProto.prototype.options=null;FieldDescriptorProto.prototype.proto3Optional=false;FieldDescriptorProto.create=function create(properties){return new FieldDescriptorProto(properties)};FieldDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.extendee!=null&&Object.hasOwnProperty.call(message,"extendee"))writer.uint32(18).string(message.extendee);if(message.number!=null&&Object.hasOwnProperty.call(message,"number"))writer.uint32(24).int32(message.number);if(message.label!=null&&Object.hasOwnProperty.call(message,"label"))writer.uint32(32).int32(message.label);if(message.type!=null&&Object.hasOwnProperty.call(message,"type"))writer.uint32(40).int32(message.type);if(message.typeName!=null&&Object.hasOwnProperty.call(message,"typeName"))writer.uint32(50).string(message.typeName);if(message.defaultValue!=null&&Object.hasOwnProperty.call(message,"defaultValue"))writer.uint32(58).string(message.defaultValue);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.FieldOptions.encode(message.options,writer.uint32(66).fork()).ldelim();if(message.oneofIndex!=null&&Object.hasOwnProperty.call(message,"oneofIndex"))writer.uint32(72).int32(message.oneofIndex);if(message.jsonName!=null&&Object.hasOwnProperty.call(message,"jsonName"))writer.uint32(82).string(message.jsonName);if(message.proto3Optional!=null&&Object.hasOwnProperty.call(message,"proto3Optional"))writer.uint32(136).bool(message.proto3Optional);return writer};FieldDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FieldDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 3:{message.number=reader.int32();break}case 4:{message.label=reader.int32();break}case 5:{message.type=reader.int32();break}case 6:{message.typeName=reader.string();break}case 2:{message.extendee=reader.string();break}case 7:{message.defaultValue=reader.string();break}case 9:{message.oneofIndex=reader.int32();break}case 10:{message.jsonName=reader.string();break}case 8:{message.options=$root.google.protobuf.FieldOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 17:{message.proto3Optional=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};FieldDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FieldDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.number!=null&&message.hasOwnProperty("number"))if(!$util.isInteger(message.number))return"number: integer expected";if(message.label!=null&&message.hasOwnProperty("label"))switch(message.label){default:return"label: enum value expected";case 1:case 3:case 2:break}if(message.type!=null&&message.hasOwnProperty("type"))switch(message.type){default:return"type: enum value expected";case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:break}if(message.typeName!=null&&message.hasOwnProperty("typeName"))if(!$util.isString(message.typeName))return"typeName: string expected";if(message.extendee!=null&&message.hasOwnProperty("extendee"))if(!$util.isString(message.extendee))return"extendee: string expected";if(message.defaultValue!=null&&message.hasOwnProperty("defaultValue"))if(!$util.isString(message.defaultValue))return"defaultValue: string expected";if(message.oneofIndex!=null&&message.hasOwnProperty("oneofIndex"))if(!$util.isInteger(message.oneofIndex))return"oneofIndex: integer expected";if(message.jsonName!=null&&message.hasOwnProperty("jsonName"))if(!$util.isString(message.jsonName))return"jsonName: string expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.FieldOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.proto3Optional!=null&&message.hasOwnProperty("proto3Optional"))if(typeof message.proto3Optional!=="boolean")return"proto3Optional: boolean expected";return null};FieldDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.number!=null)message.number=object.number|0;switch(object.label){default:if(typeof object.label==="number"){message.label=object.label;break}break;case"LABEL_OPTIONAL":case 1:message.label=1;break;case"LABEL_REPEATED":case 3:message.label=3;break;case"LABEL_REQUIRED":case 2:message.label=2;break}switch(object.type){default:if(typeof object.type==="number"){message.type=object.type;break}break;case"TYPE_DOUBLE":case 1:message.type=1;break;case"TYPE_FLOAT":case 2:message.type=2;break;case"TYPE_INT64":case 3:message.type=3;break;case"TYPE_UINT64":case 4:message.type=4;break;case"TYPE_INT32":case 5:message.type=5;break;case"TYPE_FIXED64":case 6:message.type=6;break;case"TYPE_FIXED32":case 7:message.type=7;break;case"TYPE_BOOL":case 8:message.type=8;break;case"TYPE_STRING":case 9:message.type=9;break;case"TYPE_GROUP":case 10:message.type=10;break;case"TYPE_MESSAGE":case 11:message.type=11;break;case"TYPE_BYTES":case 12:message.type=12;break;case"TYPE_UINT32":case 13:message.type=13;break;case"TYPE_ENUM":case 14:message.type=14;break;case"TYPE_SFIXED32":case 15:message.type=15;break;case"TYPE_SFIXED64":case 16:message.type=16;break;case"TYPE_SINT32":case 17:message.type=17;break;case"TYPE_SINT64":case 18:message.type=18;break}if(object.typeName!=null)message.typeName=String(object.typeName);if(object.extendee!=null)message.extendee=String(object.extendee);if(object.defaultValue!=null)message.defaultValue=String(object.defaultValue);if(object.oneofIndex!=null)message.oneofIndex=object.oneofIndex|0;if(object.jsonName!=null)message.jsonName=String(object.jsonName);if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected");message.options=$root.google.protobuf.FieldOptions.fromObject(object.options,long+1)}if(object.proto3Optional!=null)message.proto3Optional=Boolean(object.proto3Optional);return message};FieldDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.extendee="";object.number=0;object.label=options.enums===String?"LABEL_OPTIONAL":1;object.type=options.enums===String?"TYPE_DOUBLE":1;object.typeName="";object.defaultValue="";object.options=null;object.oneofIndex=0;object.jsonName="";object.proto3Optional=false}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.extendee!=null&&message.hasOwnProperty("extendee"))object.extendee=message.extendee;if(message.number!=null&&message.hasOwnProperty("number"))object.number=message.number;if(message.label!=null&&message.hasOwnProperty("label"))object.label=options.enums===String?$root.google.protobuf.FieldDescriptorProto.Label[message.label]===undefined?message.label:$root.google.protobuf.FieldDescriptorProto.Label[message.label]:message.label;if(message.type!=null&&message.hasOwnProperty("type"))object.type=options.enums===String?$root.google.protobuf.FieldDescriptorProto.Type[message.type]===undefined?message.type:$root.google.protobuf.FieldDescriptorProto.Type[message.type]:message.type;if(message.typeName!=null&&message.hasOwnProperty("typeName"))object.typeName=message.typeName;if(message.defaultValue!=null&&message.hasOwnProperty("defaultValue"))object.defaultValue=message.defaultValue;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.FieldOptions.toObject(message.options,options);if(message.oneofIndex!=null&&message.hasOwnProperty("oneofIndex"))object.oneofIndex=message.oneofIndex;if(message.jsonName!=null&&message.hasOwnProperty("jsonName"))object.jsonName=message.jsonName;if(message.proto3Optional!=null&&message.hasOwnProperty("proto3Optional"))object.proto3Optional=message.proto3Optional;return object};FieldDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FieldDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldDescriptorProto"};FieldDescriptorProto.Type=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[1]="TYPE_DOUBLE"]=1;values[valuesById[2]="TYPE_FLOAT"]=2;values[valuesById[3]="TYPE_INT64"]=3;values[valuesById[4]="TYPE_UINT64"]=4;values[valuesById[5]="TYPE_INT32"]=5;values[valuesById[6]="TYPE_FIXED64"]=6;values[valuesById[7]="TYPE_FIXED32"]=7;values[valuesById[8]="TYPE_BOOL"]=8;values[valuesById[9]="TYPE_STRING"]=9;values[valuesById[10]="TYPE_GROUP"]=10;values[valuesById[11]="TYPE_MESSAGE"]=11;values[valuesById[12]="TYPE_BYTES"]=12;values[valuesById[13]="TYPE_UINT32"]=13;values[valuesById[14]="TYPE_ENUM"]=14;values[valuesById[15]="TYPE_SFIXED32"]=15;values[valuesById[16]="TYPE_SFIXED64"]=16;values[valuesById[17]="TYPE_SINT32"]=17;values[valuesById[18]="TYPE_SINT64"]=18;return values}();FieldDescriptorProto.Label=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[1]="LABEL_OPTIONAL"]=1;values[valuesById[3]="LABEL_REPEATED"]=3;values[valuesById[2]="LABEL_REQUIRED"]=2;return values}();return FieldDescriptorProto}();protobuf.OneofDescriptorProto=function(){function OneofDescriptorProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}OneofDescriptorProto.prototype.name="";OneofDescriptorProto.prototype.options=null;OneofDescriptorProto.create=function create(properties){return new OneofDescriptorProto(properties)};OneofDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.OneofOptions.encode(message.options,writer.uint32(18).fork()).ldelim();return writer};OneofDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};OneofDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.OneofDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.options=$root.google.protobuf.OneofOptions.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};OneofDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};OneofDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.OneofOptions.verify(message.options,long+1);if(error)return"options."+error}return null};OneofDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.OneofDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.OneofDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected");message.options=$root.google.protobuf.OneofOptions.fromObject(object.options,long+1)}return message};OneofDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.options=null}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.OneofOptions.toObject(message.options,options);return object};OneofDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};OneofDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.OneofDescriptorProto"};return OneofDescriptorProto}();protobuf.EnumDescriptorProto=function(){function EnumDescriptorProto(properties){this.value=[];this.reservedRange=[];this.reservedName=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumDescriptorProto.prototype.name="";EnumDescriptorProto.prototype.value=$util.emptyArray;EnumDescriptorProto.prototype.options=null;EnumDescriptorProto.prototype.reservedRange=$util.emptyArray;EnumDescriptorProto.prototype.reservedName=$util.emptyArray;EnumDescriptorProto.prototype.visibility=0;EnumDescriptorProto.create=function create(properties){return new EnumDescriptorProto(properties)};EnumDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.value!=null&&message.value.length)for(var i=0;i<message.value.length;++i)$root.google.protobuf.EnumValueDescriptorProto.encode(message.value[i],writer.uint32(18).fork()).ldelim();if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.EnumOptions.encode(message.options,writer.uint32(26).fork()).ldelim();if(message.reservedRange!=null&&message.reservedRange.length)for(var i=0;i<message.reservedRange.length;++i)$root.google.protobuf.EnumDescriptorProto.EnumReservedRange.encode(message.reservedRange[i],writer.uint32(34).fork()).ldelim();if(message.reservedName!=null&&message.reservedName.length)for(var i=0;i<message.reservedName.length;++i)writer.uint32(42).string(message.reservedName[i]);if(message.visibility!=null&&Object.hasOwnProperty.call(message,"visibility"))writer.uint32(48).int32(message.visibility);return writer};EnumDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{if(!(message.value&&message.value.length))message.value=[];message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 3:{message.options=$root.google.protobuf.EnumOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 4:{if(!(message.reservedRange&&message.reservedRange.length))message.reservedRange=[];message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader,reader.uint32(),undefined,long+1));break}case 5:{if(!(message.reservedName&&message.reservedName.length))message.reservedName=[];message.reservedName.push(reader.string());break}case 6:{message.visibility=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};EnumDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.value!=null&&message.hasOwnProperty("value")){if(!Array.isArray(message.value))return"value: array expected";for(var i=0;i<message.value.length;++i){var error=$root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i],long+1);if(error)return"value."+error}}if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.EnumOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.reservedRange!=null&&message.hasOwnProperty("reservedRange")){if(!Array.isArray(message.reservedRange))return"reservedRange: array expected";for(var i=0;i<message.reservedRange.length;++i){var error=$root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i],long+1);if(error)return"reservedRange."+error}}if(message.reservedName!=null&&message.hasOwnProperty("reservedName")){if(!Array.isArray(message.reservedName))return"reservedName: array expected";for(var i=0;i<message.reservedName.length;++i)if(!$util.isString(message.reservedName[i]))return"reservedName: string[] expected"}if(message.visibility!=null&&message.hasOwnProperty("visibility"))switch(message.visibility){default:return"visibility: enum value expected";case 0:case 1:case 2:break}return null};EnumDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.value){if(!Array.isArray(object.value))throw TypeError(".google.protobuf.EnumDescriptorProto.value: array expected");message.value=[];for(var i=0;i<object.value.length;++i){if(typeof object.value[i]!=="object")throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected");message.value[i]=$root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i],long+1)}}if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected");message.options=$root.google.protobuf.EnumOptions.fromObject(object.options,long+1)}if(object.reservedRange){if(!Array.isArray(object.reservedRange))throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: array expected");message.reservedRange=[];for(var i=0;i<object.reservedRange.length;++i){if(typeof object.reservedRange[i]!=="object")throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected");message.reservedRange[i]=$root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i],long+1)}}if(object.reservedName){if(!Array.isArray(object.reservedName))throw TypeError(".google.protobuf.EnumDescriptorProto.reservedName: array expected");message.reservedName=[];for(var i=0;i<object.reservedName.length;++i)message.reservedName[i]=String(object.reservedName[i])}switch(object.visibility){default:if(typeof object.visibility==="number"){message.visibility=object.visibility;break}break;case"VISIBILITY_UNSET":case 0:message.visibility=0;break;case"VISIBILITY_LOCAL":case 1:message.visibility=1;break;case"VISIBILITY_EXPORT":case 2:message.visibility=2;break}return message};EnumDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.value=[];object.reservedRange=[];object.reservedName=[]}if(options.defaults){object.name="";object.options=null;object.visibility=options.enums===String?"VISIBILITY_UNSET":0}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.value&&message.value.length){object.value=[];for(var j=0;j<message.value.length;++j)object.value[j]=$root.google.protobuf.EnumValueDescriptorProto.toObject(message.value[j],options)}if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.EnumOptions.toObject(message.options,options);if(message.reservedRange&&message.reservedRange.length){object.reservedRange=[];for(var j=0;j<message.reservedRange.length;++j)object.reservedRange[j]=$root.google.protobuf.EnumDescriptorProto.EnumReservedRange.toObject(message.reservedRange[j],options)}if(message.reservedName&&message.reservedName.length){object.reservedName=[];for(var j=0;j<message.reservedName.length;++j)object.reservedName[j]=message.reservedName[j]}if(message.visibility!=null&&message.hasOwnProperty("visibility"))object.visibility=options.enums===String?$root.google.protobuf.SymbolVisibility[message.visibility]===undefined?message.visibility:$root.google.protobuf.SymbolVisibility[message.visibility]:message.visibility;return object};EnumDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumDescriptorProto"};EnumDescriptorProto.EnumReservedRange=function(){function EnumReservedRange(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumReservedRange.prototype.start=0;EnumReservedRange.prototype.end=0;EnumReservedRange.create=function create(properties){return new EnumReservedRange(properties)};EnumReservedRange.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.start!=null&&Object.hasOwnProperty.call(message,"start"))writer.uint32(8).int32(message.start);if(message.end!=null&&Object.hasOwnProperty.call(message,"end"))writer.uint32(16).int32(message.end);return writer};EnumReservedRange.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumReservedRange.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.start=reader.int32();break}case 2:{message.end=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};EnumReservedRange.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumReservedRange.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.start!=null&&message.hasOwnProperty("start"))if(!$util.isInteger(message.start))return"start: integer expected";if(message.end!=null&&message.hasOwnProperty("end"))if(!$util.isInteger(message.end))return"end: integer expected";return null};EnumReservedRange.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange;if(object.start!=null)message.start=object.start|0;if(object.end!=null)message.end=object.end|0;return message};EnumReservedRange.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.start=0;object.end=0}if(message.start!=null&&message.hasOwnProperty("start"))object.start=message.start;if(message.end!=null&&message.hasOwnProperty("end"))object.end=message.end;return object};EnumReservedRange.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumReservedRange.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumDescriptorProto.EnumReservedRange"};return EnumReservedRange}();return EnumDescriptorProto}();protobuf.EnumValueDescriptorProto=function(){function EnumValueDescriptorProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumValueDescriptorProto.prototype.name="";EnumValueDescriptorProto.prototype.number=0;EnumValueDescriptorProto.prototype.options=null;EnumValueDescriptorProto.create=function create(properties){return new EnumValueDescriptorProto(properties)};EnumValueDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.number!=null&&Object.hasOwnProperty.call(message,"number"))writer.uint32(16).int32(message.number);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.EnumValueOptions.encode(message.options,writer.uint32(26).fork()).ldelim();return writer};EnumValueDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumValueDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumValueDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.number=reader.int32();break}case 3:{message.options=$root.google.protobuf.EnumValueOptions.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};EnumValueDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumValueDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.number!=null&&message.hasOwnProperty("number"))if(!$util.isInteger(message.number))return"number: integer expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.EnumValueOptions.verify(message.options,long+1);if(error)return"options."+error}return null};EnumValueDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumValueDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumValueDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.number!=null)message.number=object.number|0;if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected");message.options=$root.google.protobuf.EnumValueOptions.fromObject(object.options,long+1)}return message};EnumValueDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.number=0;object.options=null}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.number!=null&&message.hasOwnProperty("number"))object.number=message.number;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.EnumValueOptions.toObject(message.options,options);return object};EnumValueDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumValueDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumValueDescriptorProto"};return EnumValueDescriptorProto}();protobuf.ServiceDescriptorProto=function(){function ServiceDescriptorProto(properties){this.method=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ServiceDescriptorProto.prototype.name="";ServiceDescriptorProto.prototype.method=$util.emptyArray;ServiceDescriptorProto.prototype.options=null;ServiceDescriptorProto.create=function create(properties){return new ServiceDescriptorProto(properties)};ServiceDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.method!=null&&message.method.length)for(var i=0;i<message.method.length;++i)$root.google.protobuf.MethodDescriptorProto.encode(message.method[i],writer.uint32(18).fork()).ldelim();if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.ServiceOptions.encode(message.options,writer.uint32(26).fork()).ldelim();return writer};ServiceDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ServiceDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.ServiceDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{if(!(message.method&&message.method.length))message.method=[];message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader,reader.uint32(),undefined,long+1));break}case 3:{message.options=$root.google.protobuf.ServiceOptions.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};ServiceDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ServiceDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.method!=null&&message.hasOwnProperty("method")){if(!Array.isArray(message.method))return"method: array expected";for(var i=0;i<message.method.length;++i){var error=$root.google.protobuf.MethodDescriptorProto.verify(message.method[i],long+1);if(error)return"method."+error}}if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.ServiceOptions.verify(message.options,long+1);if(error)return"options."+error}return null};ServiceDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.ServiceDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.ServiceDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.method){if(!Array.isArray(object.method))throw TypeError(".google.protobuf.ServiceDescriptorProto.method: array expected");message.method=[];for(var i=0;i<object.method.length;++i){if(typeof object.method[i]!=="object")throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected");message.method[i]=$root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i],long+1)}}if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected");message.options=$root.google.protobuf.ServiceOptions.fromObject(object.options,long+1)}return message};ServiceDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.method=[];if(options.defaults){object.name="";object.options=null}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.method&&message.method.length){object.method=[];for(var j=0;j<message.method.length;++j)object.method[j]=$root.google.protobuf.MethodDescriptorProto.toObject(message.method[j],options)}if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.ServiceOptions.toObject(message.options,options);return object};ServiceDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ServiceDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.ServiceDescriptorProto"};return ServiceDescriptorProto}();protobuf.MethodDescriptorProto=function(){function MethodDescriptorProto(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}MethodDescriptorProto.prototype.name="";MethodDescriptorProto.prototype.inputType="";MethodDescriptorProto.prototype.outputType="";MethodDescriptorProto.prototype.options=null;MethodDescriptorProto.prototype.clientStreaming=false;MethodDescriptorProto.prototype.serverStreaming=false;MethodDescriptorProto.create=function create(properties){return new MethodDescriptorProto(properties)};MethodDescriptorProto.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.inputType!=null&&Object.hasOwnProperty.call(message,"inputType"))writer.uint32(18).string(message.inputType);if(message.outputType!=null&&Object.hasOwnProperty.call(message,"outputType"))writer.uint32(26).string(message.outputType);if(message.options!=null&&Object.hasOwnProperty.call(message,"options"))$root.google.protobuf.MethodOptions.encode(message.options,writer.uint32(34).fork()).ldelim();if(message.clientStreaming!=null&&Object.hasOwnProperty.call(message,"clientStreaming"))writer.uint32(40).bool(message.clientStreaming);if(message.serverStreaming!=null&&Object.hasOwnProperty.call(message,"serverStreaming"))writer.uint32(48).bool(message.serverStreaming);return writer};MethodDescriptorProto.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};MethodDescriptorProto.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.MethodDescriptorProto;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.inputType=reader.string();break}case 3:{message.outputType=reader.string();break}case 4:{message.options=$root.google.protobuf.MethodOptions.decode(reader,reader.uint32(),undefined,long+1);break}case 5:{message.clientStreaming=reader.bool();break}case 6:{message.serverStreaming=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};MethodDescriptorProto.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};MethodDescriptorProto.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.inputType!=null&&message.hasOwnProperty("inputType"))if(!$util.isString(message.inputType))return"inputType: string expected";if(message.outputType!=null&&message.hasOwnProperty("outputType"))if(!$util.isString(message.outputType))return"outputType: string expected";if(message.options!=null&&message.hasOwnProperty("options")){var error=$root.google.protobuf.MethodOptions.verify(message.options,long+1);if(error)return"options."+error}if(message.clientStreaming!=null&&message.hasOwnProperty("clientStreaming"))if(typeof message.clientStreaming!=="boolean")return"clientStreaming: boolean expected";if(message.serverStreaming!=null&&message.hasOwnProperty("serverStreaming"))if(typeof message.serverStreaming!=="boolean")return"serverStreaming: boolean expected";return null};MethodDescriptorProto.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.MethodDescriptorProto)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.MethodDescriptorProto;if(object.name!=null)message.name=String(object.name);if(object.inputType!=null)message.inputType=String(object.inputType);if(object.outputType!=null)message.outputType=String(object.outputType);if(object.options!=null){if(typeof object.options!=="object")throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected");message.options=$root.google.protobuf.MethodOptions.fromObject(object.options,long+1)}if(object.clientStreaming!=null)message.clientStreaming=Boolean(object.clientStreaming);if(object.serverStreaming!=null)message.serverStreaming=Boolean(object.serverStreaming);return message};MethodDescriptorProto.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.inputType="";object.outputType="";object.options=null;object.clientStreaming=false;object.serverStreaming=false}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.inputType!=null&&message.hasOwnProperty("inputType"))object.inputType=message.inputType;if(message.outputType!=null&&message.hasOwnProperty("outputType"))object.outputType=message.outputType;if(message.options!=null&&message.hasOwnProperty("options"))object.options=$root.google.protobuf.MethodOptions.toObject(message.options,options);if(message.clientStreaming!=null&&message.hasOwnProperty("clientStreaming"))object.clientStreaming=message.clientStreaming;if(message.serverStreaming!=null&&message.hasOwnProperty("serverStreaming"))object.serverStreaming=message.serverStreaming;return object};MethodDescriptorProto.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};MethodDescriptorProto.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.MethodDescriptorProto"};return MethodDescriptorProto}();protobuf.FileOptions=function(){function FileOptions(properties){this.uninterpretedOption=[];this[".google.api.resourceDefinition"]=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FileOptions.prototype.javaPackage="";FileOptions.prototype.javaOuterClassname="";FileOptions.prototype.javaMultipleFiles=false;FileOptions.prototype.javaGenerateEqualsAndHash=false;FileOptions.prototype.javaStringCheckUtf8=false;FileOptions.prototype.optimizeFor=1;FileOptions.prototype.goPackage="";FileOptions.prototype.ccGenericServices=false;FileOptions.prototype.javaGenericServices=false;FileOptions.prototype.pyGenericServices=false;FileOptions.prototype.deprecated=false;FileOptions.prototype.ccEnableArenas=true;FileOptions.prototype.objcClassPrefix="";FileOptions.prototype.csharpNamespace="";FileOptions.prototype.swiftPrefix="";FileOptions.prototype.phpClassPrefix="";FileOptions.prototype.phpNamespace="";FileOptions.prototype.phpMetadataNamespace="";FileOptions.prototype.rubyPackage="";FileOptions.prototype.features=null;FileOptions.prototype.uninterpretedOption=$util.emptyArray;FileOptions.prototype[".google.api.resourceDefinition"]=$util.emptyArray;FileOptions.create=function create(properties){return new FileOptions(properties)};FileOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.javaPackage!=null&&Object.hasOwnProperty.call(message,"javaPackage"))writer.uint32(10).string(message.javaPackage);if(message.javaOuterClassname!=null&&Object.hasOwnProperty.call(message,"javaOuterClassname"))writer.uint32(66).string(message.javaOuterClassname);if(message.optimizeFor!=null&&Object.hasOwnProperty.call(message,"optimizeFor"))writer.uint32(72).int32(message.optimizeFor);if(message.javaMultipleFiles!=null&&Object.hasOwnProperty.call(message,"javaMultipleFiles"))writer.uint32(80).bool(message.javaMultipleFiles);if(message.goPackage!=null&&Object.hasOwnProperty.call(message,"goPackage"))writer.uint32(90).string(message.goPackage);if(message.ccGenericServices!=null&&Object.hasOwnProperty.call(message,"ccGenericServices"))writer.uint32(128).bool(message.ccGenericServices);if(message.javaGenericServices!=null&&Object.hasOwnProperty.call(message,"javaGenericServices"))writer.uint32(136).bool(message.javaGenericServices);if(message.pyGenericServices!=null&&Object.hasOwnProperty.call(message,"pyGenericServices"))writer.uint32(144).bool(message.pyGenericServices);if(message.javaGenerateEqualsAndHash!=null&&Object.hasOwnProperty.call(message,"javaGenerateEqualsAndHash"))writer.uint32(160).bool(message.javaGenerateEqualsAndHash);if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(184).bool(message.deprecated);if(message.javaStringCheckUtf8!=null&&Object.hasOwnProperty.call(message,"javaStringCheckUtf8"))writer.uint32(216).bool(message.javaStringCheckUtf8);if(message.ccEnableArenas!=null&&Object.hasOwnProperty.call(message,"ccEnableArenas"))writer.uint32(248).bool(message.ccEnableArenas);if(message.objcClassPrefix!=null&&Object.hasOwnProperty.call(message,"objcClassPrefix"))writer.uint32(290).string(message.objcClassPrefix);if(message.csharpNamespace!=null&&Object.hasOwnProperty.call(message,"csharpNamespace"))writer.uint32(298).string(message.csharpNamespace);if(message.swiftPrefix!=null&&Object.hasOwnProperty.call(message,"swiftPrefix"))writer.uint32(314).string(message.swiftPrefix);if(message.phpClassPrefix!=null&&Object.hasOwnProperty.call(message,"phpClassPrefix"))writer.uint32(322).string(message.phpClassPrefix);if(message.phpNamespace!=null&&Object.hasOwnProperty.call(message,"phpNamespace"))writer.uint32(330).string(message.phpNamespace);if(message.phpMetadataNamespace!=null&&Object.hasOwnProperty.call(message,"phpMetadataNamespace"))writer.uint32(354).string(message.phpMetadataNamespace);if(message.rubyPackage!=null&&Object.hasOwnProperty.call(message,"rubyPackage"))writer.uint32(362).string(message.rubyPackage);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(402).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.api.resourceDefinition"]!=null&&message[".google.api.resourceDefinition"].length)for(var i=0;i<message[".google.api.resourceDefinition"].length;++i)$root.google.api.ResourceDescriptor.encode(message[".google.api.resourceDefinition"][i],writer.uint32(8426).fork()).ldelim();return writer};FileOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FileOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FileOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.javaPackage=reader.string();break}case 8:{message.javaOuterClassname=reader.string();break}case 10:{message.javaMultipleFiles=reader.bool();break}case 20:{message.javaGenerateEqualsAndHash=reader.bool();break}case 27:{message.javaStringCheckUtf8=reader.bool();break}case 9:{message.optimizeFor=reader.int32();break}case 11:{message.goPackage=reader.string();break}case 16:{message.ccGenericServices=reader.bool();break}case 17:{message.javaGenericServices=reader.bool();break}case 18:{message.pyGenericServices=reader.bool();break}case 23:{message.deprecated=reader.bool();break}case 31:{message.ccEnableArenas=reader.bool();break}case 36:{message.objcClassPrefix=reader.string();break}case 37:{message.csharpNamespace=reader.string();break}case 39:{message.swiftPrefix=reader.string();break}case 40:{message.phpClassPrefix=reader.string();break}case 41:{message.phpNamespace=reader.string();break}case 44:{message.phpMetadataNamespace=reader.string();break}case 45:{message.rubyPackage=reader.string();break}case 50:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 1053:{if(!(message[".google.api.resourceDefinition"]&&message[".google.api.resourceDefinition"].length))message[".google.api.resourceDefinition"]=[];message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};FileOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FileOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.javaPackage!=null&&message.hasOwnProperty("javaPackage"))if(!$util.isString(message.javaPackage))return"javaPackage: string expected";if(message.javaOuterClassname!=null&&message.hasOwnProperty("javaOuterClassname"))if(!$util.isString(message.javaOuterClassname))return"javaOuterClassname: string expected";if(message.javaMultipleFiles!=null&&message.hasOwnProperty("javaMultipleFiles"))if(typeof message.javaMultipleFiles!=="boolean")return"javaMultipleFiles: boolean expected";if(message.javaGenerateEqualsAndHash!=null&&message.hasOwnProperty("javaGenerateEqualsAndHash"))if(typeof message.javaGenerateEqualsAndHash!=="boolean")return"javaGenerateEqualsAndHash: boolean expected";if(message.javaStringCheckUtf8!=null&&message.hasOwnProperty("javaStringCheckUtf8"))if(typeof message.javaStringCheckUtf8!=="boolean")return"javaStringCheckUtf8: boolean expected";if(message.optimizeFor!=null&&message.hasOwnProperty("optimizeFor"))switch(message.optimizeFor){default:return"optimizeFor: enum value expected";case 1:case 2:case 3:break}if(message.goPackage!=null&&message.hasOwnProperty("goPackage"))if(!$util.isString(message.goPackage))return"goPackage: string expected";if(message.ccGenericServices!=null&&message.hasOwnProperty("ccGenericServices"))if(typeof message.ccGenericServices!=="boolean")return"ccGenericServices: boolean expected";if(message.javaGenericServices!=null&&message.hasOwnProperty("javaGenericServices"))if(typeof message.javaGenericServices!=="boolean")return"javaGenericServices: boolean expected";if(message.pyGenericServices!=null&&message.hasOwnProperty("pyGenericServices"))if(typeof message.pyGenericServices!=="boolean")return"pyGenericServices: boolean expected";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.ccEnableArenas!=null&&message.hasOwnProperty("ccEnableArenas"))if(typeof message.ccEnableArenas!=="boolean")return"ccEnableArenas: boolean expected";if(message.objcClassPrefix!=null&&message.hasOwnProperty("objcClassPrefix"))if(!$util.isString(message.objcClassPrefix))return"objcClassPrefix: string expected";if(message.csharpNamespace!=null&&message.hasOwnProperty("csharpNamespace"))if(!$util.isString(message.csharpNamespace))return"csharpNamespace: string expected";if(message.swiftPrefix!=null&&message.hasOwnProperty("swiftPrefix"))if(!$util.isString(message.swiftPrefix))return"swiftPrefix: string expected";if(message.phpClassPrefix!=null&&message.hasOwnProperty("phpClassPrefix"))if(!$util.isString(message.phpClassPrefix))return"phpClassPrefix: string expected";if(message.phpNamespace!=null&&message.hasOwnProperty("phpNamespace"))if(!$util.isString(message.phpNamespace))return"phpNamespace: string expected";if(message.phpMetadataNamespace!=null&&message.hasOwnProperty("phpMetadataNamespace"))if(!$util.isString(message.phpMetadataNamespace))return"phpMetadataNamespace: string expected";if(message.rubyPackage!=null&&message.hasOwnProperty("rubyPackage"))if(!$util.isString(message.rubyPackage))return"rubyPackage: string expected";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.resourceDefinition"]!=null&&message.hasOwnProperty(".google.api.resourceDefinition")){if(!Array.isArray(message[".google.api.resourceDefinition"]))return".google.api.resourceDefinition: array expected";for(var i=0;i<message[".google.api.resourceDefinition"].length;++i){var error=$root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i],long+1);if(error)return".google.api.resourceDefinition."+error}}return null};FileOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FileOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FileOptions;if(object.javaPackage!=null)message.javaPackage=String(object.javaPackage);if(object.javaOuterClassname!=null)message.javaOuterClassname=String(object.javaOuterClassname);if(object.javaMultipleFiles!=null)message.javaMultipleFiles=Boolean(object.javaMultipleFiles);if(object.javaGenerateEqualsAndHash!=null)message.javaGenerateEqualsAndHash=Boolean(object.javaGenerateEqualsAndHash);if(object.javaStringCheckUtf8!=null)message.javaStringCheckUtf8=Boolean(object.javaStringCheckUtf8);switch(object.optimizeFor){default:if(typeof object.optimizeFor==="number"){message.optimizeFor=object.optimizeFor;break}break;case"SPEED":case 1:message.optimizeFor=1;break;case"CODE_SIZE":case 2:message.optimizeFor=2;break;case"LITE_RUNTIME":case 3:message.optimizeFor=3;break}if(object.goPackage!=null)message.goPackage=String(object.goPackage);if(object.ccGenericServices!=null)message.ccGenericServices=Boolean(object.ccGenericServices);if(object.javaGenericServices!=null)message.javaGenericServices=Boolean(object.javaGenericServices);if(object.pyGenericServices!=null)message.pyGenericServices=Boolean(object.pyGenericServices);if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.ccEnableArenas!=null)message.ccEnableArenas=Boolean(object.ccEnableArenas);if(object.objcClassPrefix!=null)message.objcClassPrefix=String(object.objcClassPrefix);if(object.csharpNamespace!=null)message.csharpNamespace=String(object.csharpNamespace);if(object.swiftPrefix!=null)message.swiftPrefix=String(object.swiftPrefix);if(object.phpClassPrefix!=null)message.phpClassPrefix=String(object.phpClassPrefix);if(object.phpNamespace!=null)message.phpNamespace=String(object.phpNamespace);if(object.phpMetadataNamespace!=null)message.phpMetadataNamespace=String(object.phpMetadataNamespace);if(object.rubyPackage!=null)message.rubyPackage=String(object.rubyPackage);if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.FileOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.resourceDefinition"]){if(!Array.isArray(object[".google.api.resourceDefinition"]))throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: array expected");message[".google.api.resourceDefinition"]=[];for(var i=0;i<object[".google.api.resourceDefinition"].length;++i){if(typeof object[".google.api.resourceDefinition"][i]!=="object")throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected");message[".google.api.resourceDefinition"][i]=$root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i],long+1)}}return message};FileOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.uninterpretedOption=[];object[".google.api.resourceDefinition"]=[]}if(options.defaults){object.javaPackage="";object.javaOuterClassname="";object.optimizeFor=options.enums===String?"SPEED":1;object.javaMultipleFiles=false;object.goPackage="";object.ccGenericServices=false;object.javaGenericServices=false;object.pyGenericServices=false;object.javaGenerateEqualsAndHash=false;object.deprecated=false;object.javaStringCheckUtf8=false;object.ccEnableArenas=true;object.objcClassPrefix="";object.csharpNamespace="";object.swiftPrefix="";object.phpClassPrefix="";object.phpNamespace="";object.phpMetadataNamespace="";object.rubyPackage="";object.features=null}if(message.javaPackage!=null&&message.hasOwnProperty("javaPackage"))object.javaPackage=message.javaPackage;if(message.javaOuterClassname!=null&&message.hasOwnProperty("javaOuterClassname"))object.javaOuterClassname=message.javaOuterClassname;if(message.optimizeFor!=null&&message.hasOwnProperty("optimizeFor"))object.optimizeFor=options.enums===String?$root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor]===undefined?message.optimizeFor:$root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor]:message.optimizeFor;if(message.javaMultipleFiles!=null&&message.hasOwnProperty("javaMultipleFiles"))object.javaMultipleFiles=message.javaMultipleFiles;if(message.goPackage!=null&&message.hasOwnProperty("goPackage"))object.goPackage=message.goPackage;if(message.ccGenericServices!=null&&message.hasOwnProperty("ccGenericServices"))object.ccGenericServices=message.ccGenericServices;if(message.javaGenericServices!=null&&message.hasOwnProperty("javaGenericServices"))object.javaGenericServices=message.javaGenericServices;if(message.pyGenericServices!=null&&message.hasOwnProperty("pyGenericServices"))object.pyGenericServices=message.pyGenericServices;if(message.javaGenerateEqualsAndHash!=null&&message.hasOwnProperty("javaGenerateEqualsAndHash"))object.javaGenerateEqualsAndHash=message.javaGenerateEqualsAndHash;if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.javaStringCheckUtf8!=null&&message.hasOwnProperty("javaStringCheckUtf8"))object.javaStringCheckUtf8=message.javaStringCheckUtf8;if(message.ccEnableArenas!=null&&message.hasOwnProperty("ccEnableArenas"))object.ccEnableArenas=message.ccEnableArenas;if(message.objcClassPrefix!=null&&message.hasOwnProperty("objcClassPrefix"))object.objcClassPrefix=message.objcClassPrefix;if(message.csharpNamespace!=null&&message.hasOwnProperty("csharpNamespace"))object.csharpNamespace=message.csharpNamespace;if(message.swiftPrefix!=null&&message.hasOwnProperty("swiftPrefix"))object.swiftPrefix=message.swiftPrefix;if(message.phpClassPrefix!=null&&message.hasOwnProperty("phpClassPrefix"))object.phpClassPrefix=message.phpClassPrefix;if(message.phpNamespace!=null&&message.hasOwnProperty("phpNamespace"))object.phpNamespace=message.phpNamespace;if(message.phpMetadataNamespace!=null&&message.hasOwnProperty("phpMetadataNamespace"))object.phpMetadataNamespace=message.phpMetadataNamespace;if(message.rubyPackage!=null&&message.hasOwnProperty("rubyPackage"))object.rubyPackage=message.rubyPackage;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.api.resourceDefinition"]&&message[".google.api.resourceDefinition"].length){object[".google.api.resourceDefinition"]=[];for(var j=0;j<message[".google.api.resourceDefinition"].length;++j)object[".google.api.resourceDefinition"][j]=$root.google.api.ResourceDescriptor.toObject(message[".google.api.resourceDefinition"][j],options)}return object};FileOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FileOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FileOptions"};FileOptions.OptimizeMode=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[1]="SPEED"]=1;values[valuesById[2]="CODE_SIZE"]=2;values[valuesById[3]="LITE_RUNTIME"]=3;return values}();return FileOptions}();protobuf.MessageOptions=function(){function MessageOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}MessageOptions.prototype.messageSetWireFormat=false;MessageOptions.prototype.noStandardDescriptorAccessor=false;MessageOptions.prototype.deprecated=false;MessageOptions.prototype.mapEntry=false;MessageOptions.prototype.deprecatedLegacyJsonFieldConflicts=false;MessageOptions.prototype.features=null;MessageOptions.prototype.uninterpretedOption=$util.emptyArray;MessageOptions.prototype[".google.api.resource"]=null;MessageOptions.create=function create(properties){return new MessageOptions(properties)};MessageOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.messageSetWireFormat!=null&&Object.hasOwnProperty.call(message,"messageSetWireFormat"))writer.uint32(8).bool(message.messageSetWireFormat);if(message.noStandardDescriptorAccessor!=null&&Object.hasOwnProperty.call(message,"noStandardDescriptorAccessor"))writer.uint32(16).bool(message.noStandardDescriptorAccessor);if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(24).bool(message.deprecated);if(message.mapEntry!=null&&Object.hasOwnProperty.call(message,"mapEntry"))writer.uint32(56).bool(message.mapEntry);if(message.deprecatedLegacyJsonFieldConflicts!=null&&Object.hasOwnProperty.call(message,"deprecatedLegacyJsonFieldConflicts"))writer.uint32(88).bool(message.deprecatedLegacyJsonFieldConflicts);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(98).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.api.resource"]!=null&&Object.hasOwnProperty.call(message,".google.api.resource"))$root.google.api.ResourceDescriptor.encode(message[".google.api.resource"],writer.uint32(8426).fork()).ldelim();return writer};MessageOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};MessageOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.MessageOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.messageSetWireFormat=reader.bool();break}case 2:{message.noStandardDescriptorAccessor=reader.bool();break}case 3:{message.deprecated=reader.bool();break}case 7:{message.mapEntry=reader.bool();break}case 11:{message.deprecatedLegacyJsonFieldConflicts=reader.bool();break}case 12:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 1053:{message[".google.api.resource"]=$root.google.api.ResourceDescriptor.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};MessageOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};MessageOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.messageSetWireFormat!=null&&message.hasOwnProperty("messageSetWireFormat"))if(typeof message.messageSetWireFormat!=="boolean")return"messageSetWireFormat: boolean expected";if(message.noStandardDescriptorAccessor!=null&&message.hasOwnProperty("noStandardDescriptorAccessor"))if(typeof message.noStandardDescriptorAccessor!=="boolean")return"noStandardDescriptorAccessor: boolean expected";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.mapEntry!=null&&message.hasOwnProperty("mapEntry"))if(typeof message.mapEntry!=="boolean")return"mapEntry: boolean expected";if(message.deprecatedLegacyJsonFieldConflicts!=null&&message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))if(typeof message.deprecatedLegacyJsonFieldConflicts!=="boolean")return"deprecatedLegacyJsonFieldConflicts: boolean expected";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.resource"]!=null&&message.hasOwnProperty(".google.api.resource")){var error=$root.google.api.ResourceDescriptor.verify(message[".google.api.resource"],long+1);if(error)return".google.api.resource."+error}return null};MessageOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.MessageOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.MessageOptions;if(object.messageSetWireFormat!=null)message.messageSetWireFormat=Boolean(object.messageSetWireFormat);if(object.noStandardDescriptorAccessor!=null)message.noStandardDescriptorAccessor=Boolean(object.noStandardDescriptorAccessor);if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.mapEntry!=null)message.mapEntry=Boolean(object.mapEntry);if(object.deprecatedLegacyJsonFieldConflicts!=null)message.deprecatedLegacyJsonFieldConflicts=Boolean(object.deprecatedLegacyJsonFieldConflicts);if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.MessageOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.resource"]!=null){if(typeof object[".google.api.resource"]!=="object")throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected");message[".google.api.resource"]=$root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"],long+1)}return message};MessageOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults){object.messageSetWireFormat=false;object.noStandardDescriptorAccessor=false;object.deprecated=false;object.mapEntry=false;object.deprecatedLegacyJsonFieldConflicts=false;object.features=null;object[".google.api.resource"]=null}if(message.messageSetWireFormat!=null&&message.hasOwnProperty("messageSetWireFormat"))object.messageSetWireFormat=message.messageSetWireFormat;if(message.noStandardDescriptorAccessor!=null&&message.hasOwnProperty("noStandardDescriptorAccessor"))object.noStandardDescriptorAccessor=message.noStandardDescriptorAccessor;if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.mapEntry!=null&&message.hasOwnProperty("mapEntry"))object.mapEntry=message.mapEntry;if(message.deprecatedLegacyJsonFieldConflicts!=null&&message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))object.deprecatedLegacyJsonFieldConflicts=message.deprecatedLegacyJsonFieldConflicts;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.api.resource"]!=null&&message.hasOwnProperty(".google.api.resource"))object[".google.api.resource"]=$root.google.api.ResourceDescriptor.toObject(message[".google.api.resource"],options);return object};MessageOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};MessageOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.MessageOptions"};return MessageOptions}();protobuf.FieldOptions=function(){function FieldOptions(properties){this.targets=[];this.editionDefaults=[];this.uninterpretedOption=[];this[".google.api.fieldBehavior"]=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FieldOptions.prototype.ctype=0;FieldOptions.prototype.packed=false;FieldOptions.prototype.jstype=0;FieldOptions.prototype.lazy=false;FieldOptions.prototype.unverifiedLazy=false;FieldOptions.prototype.deprecated=false;FieldOptions.prototype.weak=false;FieldOptions.prototype.debugRedact=false;FieldOptions.prototype.retention=0;FieldOptions.prototype.targets=$util.emptyArray;FieldOptions.prototype.editionDefaults=$util.emptyArray;FieldOptions.prototype.features=null;FieldOptions.prototype.featureSupport=null;FieldOptions.prototype.uninterpretedOption=$util.emptyArray;FieldOptions.prototype[".google.api.fieldBehavior"]=$util.emptyArray;FieldOptions.prototype[".google.api.resourceReference"]=null;FieldOptions.create=function create(properties){return new FieldOptions(properties)};FieldOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.ctype!=null&&Object.hasOwnProperty.call(message,"ctype"))writer.uint32(8).int32(message.ctype);if(message.packed!=null&&Object.hasOwnProperty.call(message,"packed"))writer.uint32(16).bool(message.packed);if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(24).bool(message.deprecated);if(message.lazy!=null&&Object.hasOwnProperty.call(message,"lazy"))writer.uint32(40).bool(message.lazy);if(message.jstype!=null&&Object.hasOwnProperty.call(message,"jstype"))writer.uint32(48).int32(message.jstype);if(message.weak!=null&&Object.hasOwnProperty.call(message,"weak"))writer.uint32(80).bool(message.weak);if(message.unverifiedLazy!=null&&Object.hasOwnProperty.call(message,"unverifiedLazy"))writer.uint32(120).bool(message.unverifiedLazy);if(message.debugRedact!=null&&Object.hasOwnProperty.call(message,"debugRedact"))writer.uint32(128).bool(message.debugRedact);if(message.retention!=null&&Object.hasOwnProperty.call(message,"retention"))writer.uint32(136).int32(message.retention);if(message.targets!=null&&message.targets.length)for(var i=0;i<message.targets.length;++i)writer.uint32(152).int32(message.targets[i]);if(message.editionDefaults!=null&&message.editionDefaults.length)for(var i=0;i<message.editionDefaults.length;++i)$root.google.protobuf.FieldOptions.EditionDefault.encode(message.editionDefaults[i],writer.uint32(162).fork()).ldelim();if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(170).fork()).ldelim();if(message.featureSupport!=null&&Object.hasOwnProperty.call(message,"featureSupport"))$root.google.protobuf.FieldOptions.FeatureSupport.encode(message.featureSupport,writer.uint32(178).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.api.fieldBehavior"]!=null&&message[".google.api.fieldBehavior"].length)for(var i=0;i<message[".google.api.fieldBehavior"].length;++i)writer.uint32(8416).int32(message[".google.api.fieldBehavior"][i]);if(message[".google.api.resourceReference"]!=null&&Object.hasOwnProperty.call(message,".google.api.resourceReference"))$root.google.api.ResourceReference.encode(message[".google.api.resourceReference"],writer.uint32(8442).fork()).ldelim();return writer};FieldOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FieldOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.ctype=reader.int32();break}case 2:{message.packed=reader.bool();break}case 6:{message.jstype=reader.int32();break}case 5:{message.lazy=reader.bool();break}case 15:{message.unverifiedLazy=reader.bool();break}case 3:{message.deprecated=reader.bool();break}case 10:{message.weak=reader.bool();break}case 16:{message.debugRedact=reader.bool();break}case 17:{message.retention=reader.int32();break}case 19:{if(!(message.targets&&message.targets.length))message.targets=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.targets.push(reader.int32())}else message.targets.push(reader.int32());break}case 20:{if(!(message.editionDefaults&&message.editionDefaults.length))message.editionDefaults=[];message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader,reader.uint32(),undefined,long+1));break}case 21:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 22:{message.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 1052:{if(!(message[".google.api.fieldBehavior"]&&message[".google.api.fieldBehavior"].length))message[".google.api.fieldBehavior"]=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message[".google.api.fieldBehavior"].push(reader.int32())}else message[".google.api.fieldBehavior"].push(reader.int32());break}case 1055:{message[".google.api.resourceReference"]=$root.google.api.ResourceReference.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};FieldOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FieldOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.ctype!=null&&message.hasOwnProperty("ctype"))switch(message.ctype){default:return"ctype: enum value expected";case 0:case 1:case 2:break}if(message.packed!=null&&message.hasOwnProperty("packed"))if(typeof message.packed!=="boolean")return"packed: boolean expected";if(message.jstype!=null&&message.hasOwnProperty("jstype"))switch(message.jstype){default:return"jstype: enum value expected";case 0:case 1:case 2:break}if(message.lazy!=null&&message.hasOwnProperty("lazy"))if(typeof message.lazy!=="boolean")return"lazy: boolean expected";if(message.unverifiedLazy!=null&&message.hasOwnProperty("unverifiedLazy"))if(typeof message.unverifiedLazy!=="boolean")return"unverifiedLazy: boolean expected";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.weak!=null&&message.hasOwnProperty("weak"))if(typeof message.weak!=="boolean")return"weak: boolean expected";if(message.debugRedact!=null&&message.hasOwnProperty("debugRedact"))if(typeof message.debugRedact!=="boolean")return"debugRedact: boolean expected";if(message.retention!=null&&message.hasOwnProperty("retention"))switch(message.retention){default:return"retention: enum value expected";case 0:case 1:case 2:break}if(message.targets!=null&&message.hasOwnProperty("targets")){if(!Array.isArray(message.targets))return"targets: array expected";for(var i=0;i<message.targets.length;++i)switch(message.targets[i]){default:return"targets: enum value[] expected";case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:break}}if(message.editionDefaults!=null&&message.hasOwnProperty("editionDefaults")){if(!Array.isArray(message.editionDefaults))return"editionDefaults: array expected";for(var i=0;i<message.editionDefaults.length;++i){var error=$root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i],long+1);if(error)return"editionDefaults."+error}}if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.featureSupport!=null&&message.hasOwnProperty("featureSupport")){var error=$root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport,long+1);if(error)return"featureSupport."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.fieldBehavior"]!=null&&message.hasOwnProperty(".google.api.fieldBehavior")){if(!Array.isArray(message[".google.api.fieldBehavior"]))return".google.api.fieldBehavior: array expected";for(var i=0;i<message[".google.api.fieldBehavior"].length;++i)switch(message[".google.api.fieldBehavior"][i]){default:return".google.api.fieldBehavior: enum value[] expected";case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:break}}if(message[".google.api.resourceReference"]!=null&&message.hasOwnProperty(".google.api.resourceReference")){var error=$root.google.api.ResourceReference.verify(message[".google.api.resourceReference"],long+1);if(error)return".google.api.resourceReference."+error}return null};FieldOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldOptions;switch(object.ctype){default:if(typeof object.ctype==="number"){message.ctype=object.ctype;break}break;case"STRING":case 0:message.ctype=0;break;case"CORD":case 1:message.ctype=1;break;case"STRING_PIECE":case 2:message.ctype=2;break}if(object.packed!=null)message.packed=Boolean(object.packed);switch(object.jstype){default:if(typeof object.jstype==="number"){message.jstype=object.jstype;break}break;case"JS_NORMAL":case 0:message.jstype=0;break;case"JS_STRING":case 1:message.jstype=1;break;case"JS_NUMBER":case 2:message.jstype=2;break}if(object.lazy!=null)message.lazy=Boolean(object.lazy);if(object.unverifiedLazy!=null)message.unverifiedLazy=Boolean(object.unverifiedLazy);if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.weak!=null)message.weak=Boolean(object.weak);if(object.debugRedact!=null)message.debugRedact=Boolean(object.debugRedact);switch(object.retention){default:if(typeof object.retention==="number"){message.retention=object.retention;break}break;case"RETENTION_UNKNOWN":case 0:message.retention=0;break;case"RETENTION_RUNTIME":case 1:message.retention=1;break;case"RETENTION_SOURCE":case 2:message.retention=2;break}if(object.targets){if(!Array.isArray(object.targets))throw TypeError(".google.protobuf.FieldOptions.targets: array expected");message.targets=[];for(var i=0;i<object.targets.length;++i)switch(object.targets[i]){default:if(typeof object.targets[i]==="number"){message.targets[i]=object.targets[i];break}case"TARGET_TYPE_UNKNOWN":case 0:message.targets[i]=0;break;case"TARGET_TYPE_FILE":case 1:message.targets[i]=1;break;case"TARGET_TYPE_EXTENSION_RANGE":case 2:message.targets[i]=2;break;case"TARGET_TYPE_MESSAGE":case 3:message.targets[i]=3;break;case"TARGET_TYPE_FIELD":case 4:message.targets[i]=4;break;case"TARGET_TYPE_ONEOF":case 5:message.targets[i]=5;break;case"TARGET_TYPE_ENUM":case 6:message.targets[i]=6;break;case"TARGET_TYPE_ENUM_ENTRY":case 7:message.targets[i]=7;break;case"TARGET_TYPE_SERVICE":case 8:message.targets[i]=8;break;case"TARGET_TYPE_METHOD":case 9:message.targets[i]=9;break}}if(object.editionDefaults){if(!Array.isArray(object.editionDefaults))throw TypeError(".google.protobuf.FieldOptions.editionDefaults: array expected");message.editionDefaults=[];for(var i=0;i<object.editionDefaults.length;++i){if(typeof object.editionDefaults[i]!=="object")throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected");message.editionDefaults[i]=$root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i],long+1)}}if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.FieldOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.featureSupport!=null){if(typeof object.featureSupport!=="object")throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected");message.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.fieldBehavior"]){if(!Array.isArray(object[".google.api.fieldBehavior"]))throw TypeError(".google.protobuf.FieldOptions..google.api.fieldBehavior: array expected");message[".google.api.fieldBehavior"]=[];for(var i=0;i<object[".google.api.fieldBehavior"].length;++i)switch(object[".google.api.fieldBehavior"][i]){default:if(typeof object[".google.api.fieldBehavior"][i]==="number"){message[".google.api.fieldBehavior"][i]=object[".google.api.fieldBehavior"][i];break}case"FIELD_BEHAVIOR_UNSPECIFIED":case 0:message[".google.api.fieldBehavior"][i]=0;break;case"OPTIONAL":case 1:message[".google.api.fieldBehavior"][i]=1;break;case"REQUIRED":case 2:message[".google.api.fieldBehavior"][i]=2;break;case"OUTPUT_ONLY":case 3:message[".google.api.fieldBehavior"][i]=3;break;case"INPUT_ONLY":case 4:message[".google.api.fieldBehavior"][i]=4;break;case"IMMUTABLE":case 5:message[".google.api.fieldBehavior"][i]=5;break;case"UNORDERED_LIST":case 6:message[".google.api.fieldBehavior"][i]=6;break;case"NON_EMPTY_DEFAULT":case 7:message[".google.api.fieldBehavior"][i]=7;break;case"IDENTIFIER":case 8:message[".google.api.fieldBehavior"][i]=8;break}}if(object[".google.api.resourceReference"]!=null){if(typeof object[".google.api.resourceReference"]!=="object")throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected");message[".google.api.resourceReference"]=$root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"],long+1)}return message};FieldOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.targets=[];object.editionDefaults=[];object.uninterpretedOption=[];object[".google.api.fieldBehavior"]=[]}if(options.defaults){object.ctype=options.enums===String?"STRING":0;object.packed=false;object.deprecated=false;object.lazy=false;object.jstype=options.enums===String?"JS_NORMAL":0;object.weak=false;object.unverifiedLazy=false;object.debugRedact=false;object.retention=options.enums===String?"RETENTION_UNKNOWN":0;object.features=null;object.featureSupport=null;object[".google.api.resourceReference"]=null}if(message.ctype!=null&&message.hasOwnProperty("ctype"))object.ctype=options.enums===String?$root.google.protobuf.FieldOptions.CType[message.ctype]===undefined?message.ctype:$root.google.protobuf.FieldOptions.CType[message.ctype]:message.ctype;if(message.packed!=null&&message.hasOwnProperty("packed"))object.packed=message.packed;if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.lazy!=null&&message.hasOwnProperty("lazy"))object.lazy=message.lazy;if(message.jstype!=null&&message.hasOwnProperty("jstype"))object.jstype=options.enums===String?$root.google.protobuf.FieldOptions.JSType[message.jstype]===undefined?message.jstype:$root.google.protobuf.FieldOptions.JSType[message.jstype]:message.jstype;if(message.weak!=null&&message.hasOwnProperty("weak"))object.weak=message.weak;if(message.unverifiedLazy!=null&&message.hasOwnProperty("unverifiedLazy"))object.unverifiedLazy=message.unverifiedLazy;if(message.debugRedact!=null&&message.hasOwnProperty("debugRedact"))object.debugRedact=message.debugRedact;if(message.retention!=null&&message.hasOwnProperty("retention"))object.retention=options.enums===String?$root.google.protobuf.FieldOptions.OptionRetention[message.retention]===undefined?message.retention:$root.google.protobuf.FieldOptions.OptionRetention[message.retention]:message.retention;if(message.targets&&message.targets.length){object.targets=[];for(var j=0;j<message.targets.length;++j)object.targets[j]=options.enums===String?$root.google.protobuf.FieldOptions.OptionTargetType[message.targets[j]]===undefined?message.targets[j]:$root.google.protobuf.FieldOptions.OptionTargetType[message.targets[j]]:message.targets[j]}if(message.editionDefaults&&message.editionDefaults.length){object.editionDefaults=[];for(var j=0;j<message.editionDefaults.length;++j)object.editionDefaults[j]=$root.google.protobuf.FieldOptions.EditionDefault.toObject(message.editionDefaults[j],options)}if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.featureSupport!=null&&message.hasOwnProperty("featureSupport"))object.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.toObject(message.featureSupport,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.api.fieldBehavior"]&&message[".google.api.fieldBehavior"].length){object[".google.api.fieldBehavior"]=[];for(var j=0;j<message[".google.api.fieldBehavior"].length;++j)object[".google.api.fieldBehavior"][j]=options.enums===String?$root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]]===undefined?message[".google.api.fieldBehavior"][j]:$root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]]:message[".google.api.fieldBehavior"][j]}if(message[".google.api.resourceReference"]!=null&&message.hasOwnProperty(".google.api.resourceReference"))object[".google.api.resourceReference"]=$root.google.api.ResourceReference.toObject(message[".google.api.resourceReference"],options);return object};FieldOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FieldOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldOptions"};FieldOptions.CType=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="STRING"]=0;values[valuesById[1]="CORD"]=1;values[valuesById[2]="STRING_PIECE"]=2;return values}();FieldOptions.JSType=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="JS_NORMAL"]=0;values[valuesById[1]="JS_STRING"]=1;values[valuesById[2]="JS_NUMBER"]=2;return values}();FieldOptions.OptionRetention=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="RETENTION_UNKNOWN"]=0;values[valuesById[1]="RETENTION_RUNTIME"]=1;values[valuesById[2]="RETENTION_SOURCE"]=2;return values}();FieldOptions.OptionTargetType=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="TARGET_TYPE_UNKNOWN"]=0;values[valuesById[1]="TARGET_TYPE_FILE"]=1;values[valuesById[2]="TARGET_TYPE_EXTENSION_RANGE"]=2;values[valuesById[3]="TARGET_TYPE_MESSAGE"]=3;values[valuesById[4]="TARGET_TYPE_FIELD"]=4;values[valuesById[5]="TARGET_TYPE_ONEOF"]=5;values[valuesById[6]="TARGET_TYPE_ENUM"]=6;values[valuesById[7]="TARGET_TYPE_ENUM_ENTRY"]=7;values[valuesById[8]="TARGET_TYPE_SERVICE"]=8;values[valuesById[9]="TARGET_TYPE_METHOD"]=9;return values}();FieldOptions.EditionDefault=function(){function EditionDefault(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EditionDefault.prototype.edition=0;EditionDefault.prototype.value="";EditionDefault.create=function create(properties){return new EditionDefault(properties)};EditionDefault.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.value!=null&&Object.hasOwnProperty.call(message,"value"))writer.uint32(18).string(message.value);if(message.edition!=null&&Object.hasOwnProperty.call(message,"edition"))writer.uint32(24).int32(message.edition);return writer};EditionDefault.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EditionDefault.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldOptions.EditionDefault;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 3:{message.edition=reader.int32();break}case 2:{message.value=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};EditionDefault.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EditionDefault.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.edition!=null&&message.hasOwnProperty("edition"))switch(message.edition){default:return"edition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1002:case 9999:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.value!=null&&message.hasOwnProperty("value"))if(!$util.isString(message.value))return"value: string expected";return null};EditionDefault.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldOptions.EditionDefault)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldOptions.EditionDefault;switch(object.edition){default:if(typeof object.edition==="number"){message.edition=object.edition;break}break;case"EDITION_UNKNOWN":case 0:message.edition=0;break;case"EDITION_LEGACY":case 900:message.edition=900;break;case"EDITION_PROTO2":case 998:message.edition=998;break;case"EDITION_PROTO3":case 999:message.edition=999;break;case"EDITION_2023":case 1e3:message.edition=1e3;break;case"EDITION_2024":case 1001:message.edition=1001;break;case"EDITION_2026":case 1002:message.edition=1002;break;case"EDITION_UNSTABLE":case 9999:message.edition=9999;break;case"EDITION_1_TEST_ONLY":case 1:message.edition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.edition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.edition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.edition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.edition=99999;break;case"EDITION_MAX":case 2147483647:message.edition=2147483647;break}if(object.value!=null)message.value=String(object.value);return message};EditionDefault.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.value="";object.edition=options.enums===String?"EDITION_UNKNOWN":0}if(message.value!=null&&message.hasOwnProperty("value"))object.value=message.value;if(message.edition!=null&&message.hasOwnProperty("edition"))object.edition=options.enums===String?$root.google.protobuf.Edition[message.edition]===undefined?message.edition:$root.google.protobuf.Edition[message.edition]:message.edition;return object};EditionDefault.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EditionDefault.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldOptions.EditionDefault"};return EditionDefault}();FieldOptions.FeatureSupport=function(){function FeatureSupport(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FeatureSupport.prototype.editionIntroduced=0;FeatureSupport.prototype.editionDeprecated=0;FeatureSupport.prototype.deprecationWarning="";FeatureSupport.prototype.editionRemoved=0;FeatureSupport.prototype.removalError="";FeatureSupport.create=function create(properties){return new FeatureSupport(properties)};FeatureSupport.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.editionIntroduced!=null&&Object.hasOwnProperty.call(message,"editionIntroduced"))writer.uint32(8).int32(message.editionIntroduced);if(message.editionDeprecated!=null&&Object.hasOwnProperty.call(message,"editionDeprecated"))writer.uint32(16).int32(message.editionDeprecated);if(message.deprecationWarning!=null&&Object.hasOwnProperty.call(message,"deprecationWarning"))writer.uint32(26).string(message.deprecationWarning);if(message.editionRemoved!=null&&Object.hasOwnProperty.call(message,"editionRemoved"))writer.uint32(32).int32(message.editionRemoved);if(message.removalError!=null&&Object.hasOwnProperty.call(message,"removalError"))writer.uint32(42).string(message.removalError);return writer};FeatureSupport.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FeatureSupport.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldOptions.FeatureSupport;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.editionIntroduced=reader.int32();break}case 2:{message.editionDeprecated=reader.int32();break}case 3:{message.deprecationWarning=reader.string();break}case 4:{message.editionRemoved=reader.int32();break}case 5:{message.removalError=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};FeatureSupport.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FeatureSupport.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.editionIntroduced!=null&&message.hasOwnProperty("editionIntroduced"))switch(message.editionIntroduced){default:return"editionIntroduced: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1002:case 9999:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.editionDeprecated!=null&&message.hasOwnProperty("editionDeprecated"))switch(message.editionDeprecated){default:return"editionDeprecated: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1002:case 9999:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.deprecationWarning!=null&&message.hasOwnProperty("deprecationWarning"))if(!$util.isString(message.deprecationWarning))return"deprecationWarning: string expected";if(message.editionRemoved!=null&&message.hasOwnProperty("editionRemoved"))switch(message.editionRemoved){default:return"editionRemoved: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1002:case 9999:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.removalError!=null&&message.hasOwnProperty("removalError"))if(!$util.isString(message.removalError))return"removalError: string expected";return null};FeatureSupport.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldOptions.FeatureSupport)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldOptions.FeatureSupport;switch(object.editionIntroduced){default:if(typeof object.editionIntroduced==="number"){message.editionIntroduced=object.editionIntroduced;break}break;case"EDITION_UNKNOWN":case 0:message.editionIntroduced=0;break;case"EDITION_LEGACY":case 900:message.editionIntroduced=900;break;case"EDITION_PROTO2":case 998:message.editionIntroduced=998;break;case"EDITION_PROTO3":case 999:message.editionIntroduced=999;break;case"EDITION_2023":case 1e3:message.editionIntroduced=1e3;break;case"EDITION_2024":case 1001:message.editionIntroduced=1001;break;case"EDITION_2026":case 1002:message.editionIntroduced=1002;break;case"EDITION_UNSTABLE":case 9999:message.editionIntroduced=9999;break;case"EDITION_1_TEST_ONLY":case 1:message.editionIntroduced=1;break;case"EDITION_2_TEST_ONLY":case 2:message.editionIntroduced=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.editionIntroduced=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.editionIntroduced=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.editionIntroduced=99999;break;case"EDITION_MAX":case 2147483647:message.editionIntroduced=2147483647;break}switch(object.editionDeprecated){default:if(typeof object.editionDeprecated==="number"){message.editionDeprecated=object.editionDeprecated;break}break;case"EDITION_UNKNOWN":case 0:message.editionDeprecated=0;break;case"EDITION_LEGACY":case 900:message.editionDeprecated=900;break;case"EDITION_PROTO2":case 998:message.editionDeprecated=998;break;case"EDITION_PROTO3":case 999:message.editionDeprecated=999;break;case"EDITION_2023":case 1e3:message.editionDeprecated=1e3;break;case"EDITION_2024":case 1001:message.editionDeprecated=1001;break;case"EDITION_2026":case 1002:message.editionDeprecated=1002;break;case"EDITION_UNSTABLE":case 9999:message.editionDeprecated=9999;break;case"EDITION_1_TEST_ONLY":case 1:message.editionDeprecated=1;break;case"EDITION_2_TEST_ONLY":case 2:message.editionDeprecated=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.editionDeprecated=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.editionDeprecated=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.editionDeprecated=99999;break;case"EDITION_MAX":case 2147483647:message.editionDeprecated=2147483647;break}if(object.deprecationWarning!=null)message.deprecationWarning=String(object.deprecationWarning);switch(object.editionRemoved){default:if(typeof object.editionRemoved==="number"){message.editionRemoved=object.editionRemoved;break}break;case"EDITION_UNKNOWN":case 0:message.editionRemoved=0;break;case"EDITION_LEGACY":case 900:message.editionRemoved=900;break;case"EDITION_PROTO2":case 998:message.editionRemoved=998;break;case"EDITION_PROTO3":case 999:message.editionRemoved=999;break;case"EDITION_2023":case 1e3:message.editionRemoved=1e3;break;case"EDITION_2024":case 1001:message.editionRemoved=1001;break;case"EDITION_2026":case 1002:message.editionRemoved=1002;break;case"EDITION_UNSTABLE":case 9999:message.editionRemoved=9999;break;case"EDITION_1_TEST_ONLY":case 1:message.editionRemoved=1;break;case"EDITION_2_TEST_ONLY":case 2:message.editionRemoved=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.editionRemoved=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.editionRemoved=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.editionRemoved=99999;break;case"EDITION_MAX":case 2147483647:message.editionRemoved=2147483647;break}if(object.removalError!=null)message.removalError=String(object.removalError);return message};FeatureSupport.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.editionIntroduced=options.enums===String?"EDITION_UNKNOWN":0;object.editionDeprecated=options.enums===String?"EDITION_UNKNOWN":0;object.deprecationWarning="";object.editionRemoved=options.enums===String?"EDITION_UNKNOWN":0;object.removalError=""}if(message.editionIntroduced!=null&&message.hasOwnProperty("editionIntroduced"))object.editionIntroduced=options.enums===String?$root.google.protobuf.Edition[message.editionIntroduced]===undefined?message.editionIntroduced:$root.google.protobuf.Edition[message.editionIntroduced]:message.editionIntroduced;if(message.editionDeprecated!=null&&message.hasOwnProperty("editionDeprecated"))object.editionDeprecated=options.enums===String?$root.google.protobuf.Edition[message.editionDeprecated]===undefined?message.editionDeprecated:$root.google.protobuf.Edition[message.editionDeprecated]:message.editionDeprecated;if(message.deprecationWarning!=null&&message.hasOwnProperty("deprecationWarning"))object.deprecationWarning=message.deprecationWarning;if(message.editionRemoved!=null&&message.hasOwnProperty("editionRemoved"))object.editionRemoved=options.enums===String?$root.google.protobuf.Edition[message.editionRemoved]===undefined?message.editionRemoved:$root.google.protobuf.Edition[message.editionRemoved]:message.editionRemoved;if(message.removalError!=null&&message.hasOwnProperty("removalError"))object.removalError=message.removalError;return object};FeatureSupport.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FeatureSupport.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldOptions.FeatureSupport"};return FeatureSupport}();return FieldOptions}();protobuf.OneofOptions=function(){function OneofOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}OneofOptions.prototype.features=null;OneofOptions.prototype.uninterpretedOption=$util.emptyArray;OneofOptions.create=function create(properties){return new OneofOptions(properties)};OneofOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(10).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();return writer};OneofOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};OneofOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.OneofOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};OneofOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};OneofOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}return null};OneofOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.OneofOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.OneofOptions;if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.OneofOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}return message};OneofOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults)object.features=null;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}return object};OneofOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};OneofOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.OneofOptions"};return OneofOptions}();protobuf.EnumOptions=function(){function EnumOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumOptions.prototype.allowAlias=false;EnumOptions.prototype.deprecated=false;EnumOptions.prototype.deprecatedLegacyJsonFieldConflicts=false;EnumOptions.prototype.features=null;EnumOptions.prototype.uninterpretedOption=$util.emptyArray;EnumOptions.create=function create(properties){return new EnumOptions(properties)};EnumOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.allowAlias!=null&&Object.hasOwnProperty.call(message,"allowAlias"))writer.uint32(16).bool(message.allowAlias);if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(24).bool(message.deprecated);if(message.deprecatedLegacyJsonFieldConflicts!=null&&Object.hasOwnProperty.call(message,"deprecatedLegacyJsonFieldConflicts"))writer.uint32(48).bool(message.deprecatedLegacyJsonFieldConflicts);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(58).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();return writer};EnumOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 2:{message.allowAlias=reader.bool();break}case 3:{message.deprecated=reader.bool();break}case 6:{message.deprecatedLegacyJsonFieldConflicts=reader.bool();break}case 7:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};EnumOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.allowAlias!=null&&message.hasOwnProperty("allowAlias"))if(typeof message.allowAlias!=="boolean")return"allowAlias: boolean expected";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.deprecatedLegacyJsonFieldConflicts!=null&&message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))if(typeof message.deprecatedLegacyJsonFieldConflicts!=="boolean")return"deprecatedLegacyJsonFieldConflicts: boolean expected";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}return null};EnumOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumOptions;if(object.allowAlias!=null)message.allowAlias=Boolean(object.allowAlias);if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.deprecatedLegacyJsonFieldConflicts!=null)message.deprecatedLegacyJsonFieldConflicts=Boolean(object.deprecatedLegacyJsonFieldConflicts);if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.EnumOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}return message};EnumOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults){object.allowAlias=false;object.deprecated=false;object.deprecatedLegacyJsonFieldConflicts=false;object.features=null}if(message.allowAlias!=null&&message.hasOwnProperty("allowAlias"))object.allowAlias=message.allowAlias;if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.deprecatedLegacyJsonFieldConflicts!=null&&message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))object.deprecatedLegacyJsonFieldConflicts=message.deprecatedLegacyJsonFieldConflicts;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}return object};EnumOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumOptions"};return EnumOptions}();protobuf.EnumValueOptions=function(){function EnumValueOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}EnumValueOptions.prototype.deprecated=false;EnumValueOptions.prototype.features=null;EnumValueOptions.prototype.debugRedact=false;EnumValueOptions.prototype.featureSupport=null;EnumValueOptions.prototype.uninterpretedOption=$util.emptyArray;EnumValueOptions.create=function create(properties){return new EnumValueOptions(properties)};EnumValueOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(8).bool(message.deprecated);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(18).fork()).ldelim();if(message.debugRedact!=null&&Object.hasOwnProperty.call(message,"debugRedact"))writer.uint32(24).bool(message.debugRedact);if(message.featureSupport!=null&&Object.hasOwnProperty.call(message,"featureSupport"))$root.google.protobuf.FieldOptions.FeatureSupport.encode(message.featureSupport,writer.uint32(34).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();return writer};EnumValueOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};EnumValueOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.EnumValueOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.deprecated=reader.bool();break}case 2:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.debugRedact=reader.bool();break}case 4:{message.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};EnumValueOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};EnumValueOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.debugRedact!=null&&message.hasOwnProperty("debugRedact"))if(typeof message.debugRedact!=="boolean")return"debugRedact: boolean expected";if(message.featureSupport!=null&&message.hasOwnProperty("featureSupport")){var error=$root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport,long+1);if(error)return"featureSupport."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}return null};EnumValueOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.EnumValueOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.EnumValueOptions;if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.EnumValueOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.debugRedact!=null)message.debugRedact=Boolean(object.debugRedact);if(object.featureSupport!=null){if(typeof object.featureSupport!=="object")throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected");message.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}return message};EnumValueOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults){object.deprecated=false;object.features=null;object.debugRedact=false;object.featureSupport=null}if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.debugRedact!=null&&message.hasOwnProperty("debugRedact"))object.debugRedact=message.debugRedact;if(message.featureSupport!=null&&message.hasOwnProperty("featureSupport"))object.featureSupport=$root.google.protobuf.FieldOptions.FeatureSupport.toObject(message.featureSupport,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}return object};EnumValueOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};EnumValueOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.EnumValueOptions"};return EnumValueOptions}();protobuf.ServiceOptions=function(){function ServiceOptions(properties){this.uninterpretedOption=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ServiceOptions.prototype.features=null;ServiceOptions.prototype.deprecated=false;ServiceOptions.prototype.uninterpretedOption=$util.emptyArray;ServiceOptions.prototype[".google.api.defaultHost"]="";ServiceOptions.prototype[".google.api.oauthScopes"]="";ServiceOptions.prototype[".google.api.apiVersion"]="";ServiceOptions.create=function create(properties){return new ServiceOptions(properties)};ServiceOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(264).bool(message.deprecated);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(274).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.api.defaultHost"]!=null&&Object.hasOwnProperty.call(message,".google.api.defaultHost"))writer.uint32(8394).string(message[".google.api.defaultHost"]);if(message[".google.api.oauthScopes"]!=null&&Object.hasOwnProperty.call(message,".google.api.oauthScopes"))writer.uint32(8402).string(message[".google.api.oauthScopes"]);if(message[".google.api.apiVersion"]!=null&&Object.hasOwnProperty.call(message,".google.api.apiVersion"))writer.uint32(4200000010).string(message[".google.api.apiVersion"]);return writer};ServiceOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ServiceOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.ServiceOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 34:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 33:{message.deprecated=reader.bool();break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 1049:{message[".google.api.defaultHost"]=reader.string();break}case 1050:{message[".google.api.oauthScopes"]=reader.string();break}case 525000001:{message[".google.api.apiVersion"]=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};ServiceOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ServiceOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.defaultHost"]!=null&&message.hasOwnProperty(".google.api.defaultHost"))if(!$util.isString(message[".google.api.defaultHost"]))return".google.api.defaultHost: string expected";if(message[".google.api.oauthScopes"]!=null&&message.hasOwnProperty(".google.api.oauthScopes"))if(!$util.isString(message[".google.api.oauthScopes"]))return".google.api.oauthScopes: string expected";if(message[".google.api.apiVersion"]!=null&&message.hasOwnProperty(".google.api.apiVersion"))if(!$util.isString(message[".google.api.apiVersion"]))return".google.api.apiVersion: string expected";return null};ServiceOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.ServiceOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.ServiceOptions;if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.ServiceOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.defaultHost"]!=null)message[".google.api.defaultHost"]=String(object[".google.api.defaultHost"]);if(object[".google.api.oauthScopes"]!=null)message[".google.api.oauthScopes"]=String(object[".google.api.oauthScopes"]);if(object[".google.api.apiVersion"]!=null)message[".google.api.apiVersion"]=String(object[".google.api.apiVersion"]);return message};ServiceOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.uninterpretedOption=[];if(options.defaults){object.deprecated=false;object.features=null;object[".google.api.defaultHost"]="";object[".google.api.oauthScopes"]="";object[".google.api.apiVersion"]=""}if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.api.defaultHost"]!=null&&message.hasOwnProperty(".google.api.defaultHost"))object[".google.api.defaultHost"]=message[".google.api.defaultHost"];if(message[".google.api.oauthScopes"]!=null&&message.hasOwnProperty(".google.api.oauthScopes"))object[".google.api.oauthScopes"]=message[".google.api.oauthScopes"];if(message[".google.api.apiVersion"]!=null&&message.hasOwnProperty(".google.api.apiVersion"))object[".google.api.apiVersion"]=message[".google.api.apiVersion"];return object};ServiceOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ServiceOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.ServiceOptions"};return ServiceOptions}();protobuf.MethodOptions=function(){function MethodOptions(properties){this.uninterpretedOption=[];this[".google.api.methodSignature"]=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}MethodOptions.prototype.deprecated=false;MethodOptions.prototype.idempotencyLevel=0;MethodOptions.prototype.features=null;MethodOptions.prototype.uninterpretedOption=$util.emptyArray;MethodOptions.prototype[".google.api.http"]=null;MethodOptions.prototype[".google.api.methodSignature"]=$util.emptyArray;MethodOptions.prototype[".google.longrunning.operationInfo"]=null;MethodOptions.create=function create(properties){return new MethodOptions(properties)};MethodOptions.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.deprecated!=null&&Object.hasOwnProperty.call(message,"deprecated"))writer.uint32(264).bool(message.deprecated);if(message.idempotencyLevel!=null&&Object.hasOwnProperty.call(message,"idempotencyLevel"))writer.uint32(272).int32(message.idempotencyLevel);if(message.features!=null&&Object.hasOwnProperty.call(message,"features"))$root.google.protobuf.FeatureSet.encode(message.features,writer.uint32(282).fork()).ldelim();if(message.uninterpretedOption!=null&&message.uninterpretedOption.length)for(var i=0;i<message.uninterpretedOption.length;++i)$root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i],writer.uint32(7994).fork()).ldelim();if(message[".google.longrunning.operationInfo"]!=null&&Object.hasOwnProperty.call(message,".google.longrunning.operationInfo"))$root.google.longrunning.OperationInfo.encode(message[".google.longrunning.operationInfo"],writer.uint32(8394).fork()).ldelim();if(message[".google.api.methodSignature"]!=null&&message[".google.api.methodSignature"].length)for(var i=0;i<message[".google.api.methodSignature"].length;++i)writer.uint32(8410).string(message[".google.api.methodSignature"][i]);if(message[".google.api.http"]!=null&&Object.hasOwnProperty.call(message,".google.api.http"))$root.google.api.HttpRule.encode(message[".google.api.http"],writer.uint32(578365826).fork()).ldelim();return writer};MethodOptions.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};MethodOptions.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.MethodOptions;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 33:{message.deprecated=reader.bool();break}case 34:{message.idempotencyLevel=reader.int32();break}case 35:{message.features=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 999:{if(!(message.uninterpretedOption&&message.uninterpretedOption.length))message.uninterpretedOption=[];message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader,reader.uint32(),undefined,long+1));break}case 72295728:{message[".google.api.http"]=$root.google.api.HttpRule.decode(reader,reader.uint32(),undefined,long+1);break}case 1051:{if(!(message[".google.api.methodSignature"]&&message[".google.api.methodSignature"].length))message[".google.api.methodSignature"]=[];message[".google.api.methodSignature"].push(reader.string());break}case 1049:{message[".google.longrunning.operationInfo"]=$root.google.longrunning.OperationInfo.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};MethodOptions.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};MethodOptions.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))if(typeof message.deprecated!=="boolean")return"deprecated: boolean expected";if(message.idempotencyLevel!=null&&message.hasOwnProperty("idempotencyLevel"))switch(message.idempotencyLevel){default:return"idempotencyLevel: enum value expected";case 0:case 1:case 2:break}if(message.features!=null&&message.hasOwnProperty("features")){var error=$root.google.protobuf.FeatureSet.verify(message.features,long+1);if(error)return"features."+error}if(message.uninterpretedOption!=null&&message.hasOwnProperty("uninterpretedOption")){if(!Array.isArray(message.uninterpretedOption))return"uninterpretedOption: array expected";for(var i=0;i<message.uninterpretedOption.length;++i){var error=$root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i],long+1);if(error)return"uninterpretedOption."+error}}if(message[".google.api.http"]!=null&&message.hasOwnProperty(".google.api.http")){var error=$root.google.api.HttpRule.verify(message[".google.api.http"],long+1);if(error)return".google.api.http."+error}if(message[".google.api.methodSignature"]!=null&&message.hasOwnProperty(".google.api.methodSignature")){if(!Array.isArray(message[".google.api.methodSignature"]))return".google.api.methodSignature: array expected";for(var i=0;i<message[".google.api.methodSignature"].length;++i)if(!$util.isString(message[".google.api.methodSignature"][i]))return".google.api.methodSignature: string[] expected"}if(message[".google.longrunning.operationInfo"]!=null&&message.hasOwnProperty(".google.longrunning.operationInfo")){var error=$root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"],long+1);if(error)return".google.longrunning.operationInfo."+error}return null};MethodOptions.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.MethodOptions)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.MethodOptions;if(object.deprecated!=null)message.deprecated=Boolean(object.deprecated);switch(object.idempotencyLevel){default:if(typeof object.idempotencyLevel==="number"){message.idempotencyLevel=object.idempotencyLevel;break}break;case"IDEMPOTENCY_UNKNOWN":case 0:message.idempotencyLevel=0;break;case"NO_SIDE_EFFECTS":case 1:message.idempotencyLevel=1;break;case"IDEMPOTENT":case 2:message.idempotencyLevel=2;break}if(object.features!=null){if(typeof object.features!=="object")throw TypeError(".google.protobuf.MethodOptions.features: object expected");message.features=$root.google.protobuf.FeatureSet.fromObject(object.features,long+1)}if(object.uninterpretedOption){if(!Array.isArray(object.uninterpretedOption))throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected");message.uninterpretedOption=[];for(var i=0;i<object.uninterpretedOption.length;++i){if(typeof object.uninterpretedOption[i]!=="object")throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected");message.uninterpretedOption[i]=$root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i],long+1)}}if(object[".google.api.http"]!=null){if(typeof object[".google.api.http"]!=="object")throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected");message[".google.api.http"]=$root.google.api.HttpRule.fromObject(object[".google.api.http"],long+1)}if(object[".google.api.methodSignature"]){if(!Array.isArray(object[".google.api.methodSignature"]))throw TypeError(".google.protobuf.MethodOptions..google.api.methodSignature: array expected");message[".google.api.methodSignature"]=[];for(var i=0;i<object[".google.api.methodSignature"].length;++i)message[".google.api.methodSignature"][i]=String(object[".google.api.methodSignature"][i])}if(object[".google.longrunning.operationInfo"]!=null){if(typeof object[".google.longrunning.operationInfo"]!=="object")throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected");message[".google.longrunning.operationInfo"]=$root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"],long+1)}return message};MethodOptions.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.uninterpretedOption=[];object[".google.api.methodSignature"]=[]}if(options.defaults){object.deprecated=false;object.idempotencyLevel=options.enums===String?"IDEMPOTENCY_UNKNOWN":0;object.features=null;object[".google.longrunning.operationInfo"]=null;object[".google.api.http"]=null}if(message.deprecated!=null&&message.hasOwnProperty("deprecated"))object.deprecated=message.deprecated;if(message.idempotencyLevel!=null&&message.hasOwnProperty("idempotencyLevel"))object.idempotencyLevel=options.enums===String?$root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel]===undefined?message.idempotencyLevel:$root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel]:message.idempotencyLevel;if(message.features!=null&&message.hasOwnProperty("features"))object.features=$root.google.protobuf.FeatureSet.toObject(message.features,options);if(message.uninterpretedOption&&message.uninterpretedOption.length){object.uninterpretedOption=[];for(var j=0;j<message.uninterpretedOption.length;++j)object.uninterpretedOption[j]=$root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j],options)}if(message[".google.longrunning.operationInfo"]!=null&&message.hasOwnProperty(".google.longrunning.operationInfo"))object[".google.longrunning.operationInfo"]=$root.google.longrunning.OperationInfo.toObject(message[".google.longrunning.operationInfo"],options);if(message[".google.api.methodSignature"]&&message[".google.api.methodSignature"].length){object[".google.api.methodSignature"]=[];for(var j=0;j<message[".google.api.methodSignature"].length;++j)object[".google.api.methodSignature"][j]=message[".google.api.methodSignature"][j]}if(message[".google.api.http"]!=null&&message.hasOwnProperty(".google.api.http"))object[".google.api.http"]=$root.google.api.HttpRule.toObject(message[".google.api.http"],options);return object};MethodOptions.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};MethodOptions.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.MethodOptions"};MethodOptions.IdempotencyLevel=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="IDEMPOTENCY_UNKNOWN"]=0;values[valuesById[1]="NO_SIDE_EFFECTS"]=1;values[valuesById[2]="IDEMPOTENT"]=2;return values}();return MethodOptions}();protobuf.UninterpretedOption=function(){function UninterpretedOption(properties){this.name=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}UninterpretedOption.prototype.name=$util.emptyArray;UninterpretedOption.prototype.identifierValue="";UninterpretedOption.prototype.positiveIntValue=$util.Long?$util.Long.fromBits(0,0,true):0;UninterpretedOption.prototype.negativeIntValue=$util.Long?$util.Long.fromBits(0,0,false):0;UninterpretedOption.prototype.doubleValue=0;UninterpretedOption.prototype.stringValue=$util.newBuffer([]);UninterpretedOption.prototype.aggregateValue="";UninterpretedOption.create=function create(properties){return new UninterpretedOption(properties)};UninterpretedOption.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&message.name.length)for(var i=0;i<message.name.length;++i)$root.google.protobuf.UninterpretedOption.NamePart.encode(message.name[i],writer.uint32(18).fork()).ldelim();if(message.identifierValue!=null&&Object.hasOwnProperty.call(message,"identifierValue"))writer.uint32(26).string(message.identifierValue);if(message.positiveIntValue!=null&&Object.hasOwnProperty.call(message,"positiveIntValue"))writer.uint32(32).uint64(message.positiveIntValue);if(message.negativeIntValue!=null&&Object.hasOwnProperty.call(message,"negativeIntValue"))writer.uint32(40).int64(message.negativeIntValue);if(message.doubleValue!=null&&Object.hasOwnProperty.call(message,"doubleValue"))writer.uint32(49).double(message.doubleValue);if(message.stringValue!=null&&Object.hasOwnProperty.call(message,"stringValue"))writer.uint32(58).bytes(message.stringValue);if(message.aggregateValue!=null&&Object.hasOwnProperty.call(message,"aggregateValue"))writer.uint32(66).string(message.aggregateValue);return writer};UninterpretedOption.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};UninterpretedOption.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.UninterpretedOption;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 2:{if(!(message.name&&message.name.length))message.name=[];message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader,reader.uint32(),undefined,long+1));break}case 3:{message.identifierValue=reader.string();break}case 4:{message.positiveIntValue=reader.uint64();break}case 5:{message.negativeIntValue=reader.int64();break}case 6:{message.doubleValue=reader.double();break}case 7:{message.stringValue=reader.bytes();break}case 8:{message.aggregateValue=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};UninterpretedOption.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};UninterpretedOption.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name")){if(!Array.isArray(message.name))return"name: array expected";for(var i=0;i<message.name.length;++i){var error=$root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i],long+1);if(error)return"name."+error}}if(message.identifierValue!=null&&message.hasOwnProperty("identifierValue"))if(!$util.isString(message.identifierValue))return"identifierValue: string expected";if(message.positiveIntValue!=null&&message.hasOwnProperty("positiveIntValue"))if(!$util.isInteger(message.positiveIntValue)&&!(message.positiveIntValue&&$util.isInteger(message.positiveIntValue.low)&&$util.isInteger(message.positiveIntValue.high)))return"positiveIntValue: integer|Long expected";if(message.negativeIntValue!=null&&message.hasOwnProperty("negativeIntValue"))if(!$util.isInteger(message.negativeIntValue)&&!(message.negativeIntValue&&$util.isInteger(message.negativeIntValue.low)&&$util.isInteger(message.negativeIntValue.high)))return"negativeIntValue: integer|Long expected";if(message.doubleValue!=null&&message.hasOwnProperty("doubleValue"))if(typeof message.doubleValue!=="number")return"doubleValue: number expected";if(message.stringValue!=null&&message.hasOwnProperty("stringValue"))if(!(message.stringValue&&typeof message.stringValue.length==="number"||$util.isString(message.stringValue)))return"stringValue: buffer expected";if(message.aggregateValue!=null&&message.hasOwnProperty("aggregateValue"))if(!$util.isString(message.aggregateValue))return"aggregateValue: string expected";return null};UninterpretedOption.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.UninterpretedOption)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.UninterpretedOption;if(object.name){if(!Array.isArray(object.name))throw TypeError(".google.protobuf.UninterpretedOption.name: array expected");message.name=[];for(var i=0;i<object.name.length;++i){if(typeof object.name[i]!=="object")throw TypeError(".google.protobuf.UninterpretedOption.name: object expected");message.name[i]=$root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i],long+1)}}if(object.identifierValue!=null)message.identifierValue=String(object.identifierValue);if(object.positiveIntValue!=null)if($util.Long)(message.positiveIntValue=$util.Long.fromValue(object.positiveIntValue)).unsigned=true;else if(typeof object.positiveIntValue==="string")message.positiveIntValue=parseInt(object.positiveIntValue,10);else if(typeof object.positiveIntValue==="number")message.positiveIntValue=object.positiveIntValue;else if(typeof object.positiveIntValue==="object")message.positiveIntValue=new $util.LongBits(object.positiveIntValue.low>>>0,object.positiveIntValue.high>>>0).toNumber(true);if(object.negativeIntValue!=null)if($util.Long)(message.negativeIntValue=$util.Long.fromValue(object.negativeIntValue)).unsigned=false;else if(typeof object.negativeIntValue==="string")message.negativeIntValue=parseInt(object.negativeIntValue,10);else if(typeof object.negativeIntValue==="number")message.negativeIntValue=object.negativeIntValue;else if(typeof object.negativeIntValue==="object")message.negativeIntValue=new $util.LongBits(object.negativeIntValue.low>>>0,object.negativeIntValue.high>>>0).toNumber();if(object.doubleValue!=null)message.doubleValue=Number(object.doubleValue);if(object.stringValue!=null)if(typeof object.stringValue==="string")$util.base64.decode(object.stringValue,message.stringValue=$util.newBuffer($util.base64.length(object.stringValue)),0);else if(object.stringValue.length>=0)message.stringValue=object.stringValue;if(object.aggregateValue!=null)message.aggregateValue=String(object.aggregateValue);return message};UninterpretedOption.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.name=[];if(options.defaults){object.identifierValue="";if($util.Long){var long=new $util.Long(0,0,true);object.positiveIntValue=options.longs===String?long.toString():options.longs===Number?long.toNumber():long}else object.positiveIntValue=options.longs===String?"0":0;if($util.Long){var long=new $util.Long(0,0,false);object.negativeIntValue=options.longs===String?long.toString():options.longs===Number?long.toNumber():long}else object.negativeIntValue=options.longs===String?"0":0;object.doubleValue=0;if(options.bytes===String)object.stringValue="";else{object.stringValue=[];if(options.bytes!==Array)object.stringValue=$util.newBuffer(object.stringValue)}object.aggregateValue=""}if(message.name&&message.name.length){object.name=[];for(var j=0;j<message.name.length;++j)object.name[j]=$root.google.protobuf.UninterpretedOption.NamePart.toObject(message.name[j],options)}if(message.identifierValue!=null&&message.hasOwnProperty("identifierValue"))object.identifierValue=message.identifierValue;if(message.positiveIntValue!=null&&message.hasOwnProperty("positiveIntValue"))if(typeof message.positiveIntValue==="number")object.positiveIntValue=options.longs===String?String(message.positiveIntValue):message.positiveIntValue;else object.positiveIntValue=options.longs===String?$util.Long.prototype.toString.call(message.positiveIntValue):options.longs===Number?new $util.LongBits(message.positiveIntValue.low>>>0,message.positiveIntValue.high>>>0).toNumber(true):message.positiveIntValue;if(message.negativeIntValue!=null&&message.hasOwnProperty("negativeIntValue"))if(typeof message.negativeIntValue==="number")object.negativeIntValue=options.longs===String?String(message.negativeIntValue):message.negativeIntValue;else object.negativeIntValue=options.longs===String?$util.Long.prototype.toString.call(message.negativeIntValue):options.longs===Number?new $util.LongBits(message.negativeIntValue.low>>>0,message.negativeIntValue.high>>>0).toNumber():message.negativeIntValue;if(message.doubleValue!=null&&message.hasOwnProperty("doubleValue"))object.doubleValue=options.json&&!isFinite(message.doubleValue)?String(message.doubleValue):message.doubleValue;if(message.stringValue!=null&&message.hasOwnProperty("stringValue"))object.stringValue=options.bytes===String?$util.base64.encode(message.stringValue,0,message.stringValue.length):options.bytes===Array?Array.prototype.slice.call(message.stringValue):message.stringValue;if(message.aggregateValue!=null&&message.hasOwnProperty("aggregateValue"))object.aggregateValue=message.aggregateValue;return object};UninterpretedOption.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};UninterpretedOption.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.UninterpretedOption"};UninterpretedOption.NamePart=function(){function NamePart(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}NamePart.prototype.namePart="";NamePart.prototype.isExtension=false;NamePart.create=function create(properties){return new NamePart(properties)};NamePart.encode=function encode(message,writer){if(!writer)writer=$Writer.create();writer.uint32(10).string(message.namePart);writer.uint32(16).bool(message.isExtension);return writer};NamePart.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};NamePart.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.UninterpretedOption.NamePart;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.namePart=reader.string();break}case 2:{message.isExtension=reader.bool();break}default:reader.skipType(tag&7,long);break}}if(!message.hasOwnProperty("namePart"))throw $util.ProtocolError("missing required 'namePart'",{instance:message});if(!message.hasOwnProperty("isExtension"))throw $util.ProtocolError("missing required 'isExtension'",{instance:message});return message};NamePart.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};NamePart.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(!$util.isString(message.namePart))return"namePart: string expected";if(typeof message.isExtension!=="boolean")return"isExtension: boolean expected";return null};NamePart.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.UninterpretedOption.NamePart)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.UninterpretedOption.NamePart;if(object.namePart!=null)message.namePart=String(object.namePart);if(object.isExtension!=null)message.isExtension=Boolean(object.isExtension);return message};NamePart.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.namePart="";object.isExtension=false}if(message.namePart!=null&&message.hasOwnProperty("namePart"))object.namePart=message.namePart;if(message.isExtension!=null&&message.hasOwnProperty("isExtension"))object.isExtension=message.isExtension;return object};NamePart.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};NamePart.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.UninterpretedOption.NamePart"};return NamePart}();return UninterpretedOption}();protobuf.FeatureSet=function(){function FeatureSet(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FeatureSet.prototype.fieldPresence=0;FeatureSet.prototype.enumType=0;FeatureSet.prototype.repeatedFieldEncoding=0;FeatureSet.prototype.utf8Validation=0;FeatureSet.prototype.messageEncoding=0;FeatureSet.prototype.jsonFormat=0;FeatureSet.prototype.enforceNamingStyle=0;FeatureSet.prototype.defaultSymbolVisibility=0;FeatureSet.prototype.enforceProtoLimits=0;FeatureSet.create=function create(properties){return new FeatureSet(properties)};FeatureSet.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.fieldPresence!=null&&Object.hasOwnProperty.call(message,"fieldPresence"))writer.uint32(8).int32(message.fieldPresence);if(message.enumType!=null&&Object.hasOwnProperty.call(message,"enumType"))writer.uint32(16).int32(message.enumType);if(message.repeatedFieldEncoding!=null&&Object.hasOwnProperty.call(message,"repeatedFieldEncoding"))writer.uint32(24).int32(message.repeatedFieldEncoding);if(message.utf8Validation!=null&&Object.hasOwnProperty.call(message,"utf8Validation"))writer.uint32(32).int32(message.utf8Validation);if(message.messageEncoding!=null&&Object.hasOwnProperty.call(message,"messageEncoding"))writer.uint32(40).int32(message.messageEncoding);if(message.jsonFormat!=null&&Object.hasOwnProperty.call(message,"jsonFormat"))writer.uint32(48).int32(message.jsonFormat);if(message.enforceNamingStyle!=null&&Object.hasOwnProperty.call(message,"enforceNamingStyle"))writer.uint32(56).int32(message.enforceNamingStyle);if(message.defaultSymbolVisibility!=null&&Object.hasOwnProperty.call(message,"defaultSymbolVisibility"))writer.uint32(64).int32(message.defaultSymbolVisibility);if(message.enforceProtoLimits!=null&&Object.hasOwnProperty.call(message,"enforceProtoLimits"))writer.uint32(72).int32(message.enforceProtoLimits);return writer};FeatureSet.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FeatureSet.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FeatureSet;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.fieldPresence=reader.int32();break}case 2:{message.enumType=reader.int32();break}case 3:{message.repeatedFieldEncoding=reader.int32();break}case 4:{message.utf8Validation=reader.int32();break}case 5:{message.messageEncoding=reader.int32();break}case 6:{message.jsonFormat=reader.int32();break}case 7:{message.enforceNamingStyle=reader.int32();break}case 8:{message.defaultSymbolVisibility=reader.int32();break}case 9:{message.enforceProtoLimits=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};FeatureSet.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FeatureSet.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.fieldPresence!=null&&message.hasOwnProperty("fieldPresence"))switch(message.fieldPresence){default:return"fieldPresence: enum value expected";case 0:case 1:case 2:case 3:break}if(message.enumType!=null&&message.hasOwnProperty("enumType"))switch(message.enumType){default:return"enumType: enum value expected";case 0:case 1:case 2:break}if(message.repeatedFieldEncoding!=null&&message.hasOwnProperty("repeatedFieldEncoding"))switch(message.repeatedFieldEncoding){default:return"repeatedFieldEncoding: enum value expected";case 0:case 1:case 2:break}if(message.utf8Validation!=null&&message.hasOwnProperty("utf8Validation"))switch(message.utf8Validation){default:return"utf8Validation: enum value expected";case 0:case 2:case 3:break}if(message.messageEncoding!=null&&message.hasOwnProperty("messageEncoding"))switch(message.messageEncoding){default:return"messageEncoding: enum value expected";case 0:case 1:case 2:break}if(message.jsonFormat!=null&&message.hasOwnProperty("jsonFormat"))switch(message.jsonFormat){default:return"jsonFormat: enum value expected";case 0:case 1:case 2:break}if(message.enforceNamingStyle!=null&&message.hasOwnProperty("enforceNamingStyle"))switch(message.enforceNamingStyle){default:return"enforceNamingStyle: enum value expected";case 0:case 1:case 2:case 3:break}if(message.defaultSymbolVisibility!=null&&message.hasOwnProperty("defaultSymbolVisibility"))switch(message.defaultSymbolVisibility){default:return"defaultSymbolVisibility: enum value expected";case 0:case 1:case 2:case 3:case 4:break}if(message.enforceProtoLimits!=null&&message.hasOwnProperty("enforceProtoLimits"))switch(message.enforceProtoLimits){default:return"enforceProtoLimits: enum value expected";case 0:case 1:case 2:break}return null};FeatureSet.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FeatureSet)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FeatureSet;switch(object.fieldPresence){default:if(typeof object.fieldPresence==="number"){message.fieldPresence=object.fieldPresence;break}break;case"FIELD_PRESENCE_UNKNOWN":case 0:message.fieldPresence=0;break;case"EXPLICIT":case 1:message.fieldPresence=1;break;case"IMPLICIT":case 2:message.fieldPresence=2;break;case"LEGACY_REQUIRED":case 3:message.fieldPresence=3;break}switch(object.enumType){default:if(typeof object.enumType==="number"){message.enumType=object.enumType;break}break;case"ENUM_TYPE_UNKNOWN":case 0:message.enumType=0;break;case"OPEN":case 1:message.enumType=1;break;case"CLOSED":case 2:message.enumType=2;break}switch(object.repeatedFieldEncoding){default:if(typeof object.repeatedFieldEncoding==="number"){message.repeatedFieldEncoding=object.repeatedFieldEncoding;break}break;case"REPEATED_FIELD_ENCODING_UNKNOWN":case 0:message.repeatedFieldEncoding=0;break;case"PACKED":case 1:message.repeatedFieldEncoding=1;break;case"EXPANDED":case 2:message.repeatedFieldEncoding=2;break}switch(object.utf8Validation){default:if(typeof object.utf8Validation==="number"){message.utf8Validation=object.utf8Validation;break}break;case"UTF8_VALIDATION_UNKNOWN":case 0:message.utf8Validation=0;break;case"VERIFY":case 2:message.utf8Validation=2;break;case"NONE":case 3:message.utf8Validation=3;break}switch(object.messageEncoding){default:if(typeof object.messageEncoding==="number"){message.messageEncoding=object.messageEncoding;break}break;case"MESSAGE_ENCODING_UNKNOWN":case 0:message.messageEncoding=0;break;case"LENGTH_PREFIXED":case 1:message.messageEncoding=1;break;case"DELIMITED":case 2:message.messageEncoding=2;break}switch(object.jsonFormat){default:if(typeof object.jsonFormat==="number"){message.jsonFormat=object.jsonFormat;break}break;case"JSON_FORMAT_UNKNOWN":case 0:message.jsonFormat=0;break;case"ALLOW":case 1:message.jsonFormat=1;break;case"LEGACY_BEST_EFFORT":case 2:message.jsonFormat=2;break}switch(object.enforceNamingStyle){default:if(typeof object.enforceNamingStyle==="number"){message.enforceNamingStyle=object.enforceNamingStyle;break}break;case"ENFORCE_NAMING_STYLE_UNKNOWN":case 0:message.enforceNamingStyle=0;break;case"STYLE2024":case 1:message.enforceNamingStyle=1;break;case"STYLE_LEGACY":case 2:message.enforceNamingStyle=2;break;case"STYLE2026":case 3:message.enforceNamingStyle=3;break}switch(object.defaultSymbolVisibility){default:if(typeof object.defaultSymbolVisibility==="number"){message.defaultSymbolVisibility=object.defaultSymbolVisibility;break}break;case"DEFAULT_SYMBOL_VISIBILITY_UNKNOWN":case 0:message.defaultSymbolVisibility=0;break;case"EXPORT_ALL":case 1:message.defaultSymbolVisibility=1;break;case"EXPORT_TOP_LEVEL":case 2:message.defaultSymbolVisibility=2;break;case"LOCAL_ALL":case 3:message.defaultSymbolVisibility=3;break;case"STRICT":case 4:message.defaultSymbolVisibility=4;break}switch(object.enforceProtoLimits){default:if(typeof object.enforceProtoLimits==="number"){message.enforceProtoLimits=object.enforceProtoLimits;break}break;case"PROTO_LIMITS_UNKNOWN":case 0:message.enforceProtoLimits=0;break;case"LEGACY_NO_EXPLICIT_LIMITS":case 1:message.enforceProtoLimits=1;break;case"PROTO_LIMITS2026":case 2:message.enforceProtoLimits=2;break}return message};FeatureSet.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.fieldPresence=options.enums===String?"FIELD_PRESENCE_UNKNOWN":0;object.enumType=options.enums===String?"ENUM_TYPE_UNKNOWN":0;object.repeatedFieldEncoding=options.enums===String?"REPEATED_FIELD_ENCODING_UNKNOWN":0;object.utf8Validation=options.enums===String?"UTF8_VALIDATION_UNKNOWN":0;object.messageEncoding=options.enums===String?"MESSAGE_ENCODING_UNKNOWN":0;object.jsonFormat=options.enums===String?"JSON_FORMAT_UNKNOWN":0;object.enforceNamingStyle=options.enums===String?"ENFORCE_NAMING_STYLE_UNKNOWN":0;object.defaultSymbolVisibility=options.enums===String?"DEFAULT_SYMBOL_VISIBILITY_UNKNOWN":0;object.enforceProtoLimits=options.enums===String?"PROTO_LIMITS_UNKNOWN":0}if(message.fieldPresence!=null&&message.hasOwnProperty("fieldPresence"))object.fieldPresence=options.enums===String?$root.google.protobuf.FeatureSet.FieldPresence[message.fieldPresence]===undefined?message.fieldPresence:$root.google.protobuf.FeatureSet.FieldPresence[message.fieldPresence]:message.fieldPresence;if(message.enumType!=null&&message.hasOwnProperty("enumType"))object.enumType=options.enums===String?$root.google.protobuf.FeatureSet.EnumType[message.enumType]===undefined?message.enumType:$root.google.protobuf.FeatureSet.EnumType[message.enumType]:message.enumType;if(message.repeatedFieldEncoding!=null&&message.hasOwnProperty("repeatedFieldEncoding"))object.repeatedFieldEncoding=options.enums===String?$root.google.protobuf.FeatureSet.RepeatedFieldEncoding[message.repeatedFieldEncoding]===undefined?message.repeatedFieldEncoding:$root.google.protobuf.FeatureSet.RepeatedFieldEncoding[message.repeatedFieldEncoding]:message.repeatedFieldEncoding;if(message.utf8Validation!=null&&message.hasOwnProperty("utf8Validation"))object.utf8Validation=options.enums===String?$root.google.protobuf.FeatureSet.Utf8Validation[message.utf8Validation]===undefined?message.utf8Validation:$root.google.protobuf.FeatureSet.Utf8Validation[message.utf8Validation]:message.utf8Validation;if(message.messageEncoding!=null&&message.hasOwnProperty("messageEncoding"))object.messageEncoding=options.enums===String?$root.google.protobuf.FeatureSet.MessageEncoding[message.messageEncoding]===undefined?message.messageEncoding:$root.google.protobuf.FeatureSet.MessageEncoding[message.messageEncoding]:message.messageEncoding;if(message.jsonFormat!=null&&message.hasOwnProperty("jsonFormat"))object.jsonFormat=options.enums===String?$root.google.protobuf.FeatureSet.JsonFormat[message.jsonFormat]===undefined?message.jsonFormat:$root.google.protobuf.FeatureSet.JsonFormat[message.jsonFormat]:message.jsonFormat;if(message.enforceNamingStyle!=null&&message.hasOwnProperty("enforceNamingStyle"))object.enforceNamingStyle=options.enums===String?$root.google.protobuf.FeatureSet.EnforceNamingStyle[message.enforceNamingStyle]===undefined?message.enforceNamingStyle:$root.google.protobuf.FeatureSet.EnforceNamingStyle[message.enforceNamingStyle]:message.enforceNamingStyle;if(message.defaultSymbolVisibility!=null&&message.hasOwnProperty("defaultSymbolVisibility"))object.defaultSymbolVisibility=options.enums===String?$root.google.protobuf.FeatureSet.VisibilityFeature.DefaultSymbolVisibility[message.defaultSymbolVisibility]===undefined?message.defaultSymbolVisibility:$root.google.protobuf.FeatureSet.VisibilityFeature.DefaultSymbolVisibility[message.defaultSymbolVisibility]:message.defaultSymbolVisibility;if(message.enforceProtoLimits!=null&&message.hasOwnProperty("enforceProtoLimits"))object.enforceProtoLimits=options.enums===String?$root.google.protobuf.FeatureSet.ProtoLimitsFeature.EnforceProtoLimits[message.enforceProtoLimits]===undefined?message.enforceProtoLimits:$root.google.protobuf.FeatureSet.ProtoLimitsFeature.EnforceProtoLimits[message.enforceProtoLimits]:message.enforceProtoLimits;return object};FeatureSet.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FeatureSet.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FeatureSet"};FeatureSet.FieldPresence=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="FIELD_PRESENCE_UNKNOWN"]=0;values[valuesById[1]="EXPLICIT"]=1;values[valuesById[2]="IMPLICIT"]=2;values[valuesById[3]="LEGACY_REQUIRED"]=3;return values}();FeatureSet.EnumType=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="ENUM_TYPE_UNKNOWN"]=0;values[valuesById[1]="OPEN"]=1;values[valuesById[2]="CLOSED"]=2;return values}();FeatureSet.RepeatedFieldEncoding=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="REPEATED_FIELD_ENCODING_UNKNOWN"]=0;values[valuesById[1]="PACKED"]=1;values[valuesById[2]="EXPANDED"]=2;return values}();FeatureSet.Utf8Validation=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="UTF8_VALIDATION_UNKNOWN"]=0;values[valuesById[2]="VERIFY"]=2;values[valuesById[3]="NONE"]=3;return values}();FeatureSet.MessageEncoding=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="MESSAGE_ENCODING_UNKNOWN"]=0;values[valuesById[1]="LENGTH_PREFIXED"]=1;values[valuesById[2]="DELIMITED"]=2;return values}();FeatureSet.JsonFormat=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="JSON_FORMAT_UNKNOWN"]=0;values[valuesById[1]="ALLOW"]=1;values[valuesById[2]="LEGACY_BEST_EFFORT"]=2;return values}();FeatureSet.EnforceNamingStyle=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="ENFORCE_NAMING_STYLE_UNKNOWN"]=0;values[valuesById[1]="STYLE2024"]=1;values[valuesById[2]="STYLE_LEGACY"]=2;values[valuesById[3]="STYLE2026"]=3;return values}();FeatureSet.VisibilityFeature=function(){function VisibilityFeature(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}VisibilityFeature.create=function create(properties){return new VisibilityFeature(properties)};VisibilityFeature.encode=function encode(message,writer){if(!writer)writer=$Writer.create();return writer};VisibilityFeature.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};VisibilityFeature.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FeatureSet.VisibilityFeature;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){default:reader.skipType(tag&7,long);break}}return message};VisibilityFeature.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};VisibilityFeature.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";return null};VisibilityFeature.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FeatureSet.VisibilityFeature)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");return new $root.google.protobuf.FeatureSet.VisibilityFeature};VisibilityFeature.toObject=function toObject(){return{}};VisibilityFeature.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};VisibilityFeature.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FeatureSet.VisibilityFeature"};VisibilityFeature.DefaultSymbolVisibility=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="DEFAULT_SYMBOL_VISIBILITY_UNKNOWN"]=0;values[valuesById[1]="EXPORT_ALL"]=1;values[valuesById[2]="EXPORT_TOP_LEVEL"]=2;values[valuesById[3]="LOCAL_ALL"]=3;values[valuesById[4]="STRICT"]=4;return values}();return VisibilityFeature}();FeatureSet.ProtoLimitsFeature=function(){function ProtoLimitsFeature(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ProtoLimitsFeature.create=function create(properties){return new ProtoLimitsFeature(properties)};ProtoLimitsFeature.encode=function encode(message,writer){if(!writer)writer=$Writer.create();return writer};ProtoLimitsFeature.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ProtoLimitsFeature.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FeatureSet.ProtoLimitsFeature;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){default:reader.skipType(tag&7,long);break}}return message};ProtoLimitsFeature.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ProtoLimitsFeature.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";return null};ProtoLimitsFeature.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FeatureSet.ProtoLimitsFeature)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");return new $root.google.protobuf.FeatureSet.ProtoLimitsFeature};ProtoLimitsFeature.toObject=function toObject(){return{}};ProtoLimitsFeature.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ProtoLimitsFeature.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FeatureSet.ProtoLimitsFeature"};ProtoLimitsFeature.EnforceProtoLimits=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="PROTO_LIMITS_UNKNOWN"]=0;values[valuesById[1]="LEGACY_NO_EXPLICIT_LIMITS"]=1;values[valuesById[2]="PROTO_LIMITS2026"]=2;return values}();return ProtoLimitsFeature}();return FeatureSet}();protobuf.FeatureSetDefaults=function(){function FeatureSetDefaults(properties){this.defaults=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FeatureSetDefaults.prototype.defaults=$util.emptyArray;FeatureSetDefaults.prototype.minimumEdition=0;FeatureSetDefaults.prototype.maximumEdition=0;FeatureSetDefaults.create=function create(properties){return new FeatureSetDefaults(properties)};FeatureSetDefaults.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.defaults!=null&&message.defaults.length)for(var i=0;i<message.defaults.length;++i)$root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.encode(message.defaults[i],writer.uint32(10).fork()).ldelim();if(message.minimumEdition!=null&&Object.hasOwnProperty.call(message,"minimumEdition"))writer.uint32(32).int32(message.minimumEdition);if(message.maximumEdition!=null&&Object.hasOwnProperty.call(message,"maximumEdition"))writer.uint32(40).int32(message.maximumEdition);return writer};FeatureSetDefaults.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FeatureSetDefaults.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FeatureSetDefaults;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.defaults&&message.defaults.length))message.defaults=[];message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader,reader.uint32(),undefined,long+1));break}case 4:{message.minimumEdition=reader.int32();break}case 5:{message.maximumEdition=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};FeatureSetDefaults.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FeatureSetDefaults.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.defaults!=null&&message.hasOwnProperty("defaults")){if(!Array.isArray(message.defaults))return"defaults: array expected";for(var i=0;i<message.defaults.length;++i){var error=$root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i],long+1);if(error)return"defaults."+error}}if(message.minimumEdition!=null&&message.hasOwnProperty("minimumEdition"))switch(message.minimumEdition){default:return"minimumEdition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1002:case 9999:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.maximumEdition!=null&&message.hasOwnProperty("maximumEdition"))switch(message.maximumEdition){default:return"maximumEdition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1002:case 9999:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}return null};FeatureSetDefaults.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FeatureSetDefaults)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FeatureSetDefaults;if(object.defaults){if(!Array.isArray(object.defaults))throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: array expected");message.defaults=[];for(var i=0;i<object.defaults.length;++i){if(typeof object.defaults[i]!=="object")throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected");message.defaults[i]=$root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i],long+1)}}switch(object.minimumEdition){default:if(typeof object.minimumEdition==="number"){message.minimumEdition=object.minimumEdition;break}break;case"EDITION_UNKNOWN":case 0:message.minimumEdition=0;break;case"EDITION_LEGACY":case 900:message.minimumEdition=900;break;case"EDITION_PROTO2":case 998:message.minimumEdition=998;break;case"EDITION_PROTO3":case 999:message.minimumEdition=999;break;case"EDITION_2023":case 1e3:message.minimumEdition=1e3;break;case"EDITION_2024":case 1001:message.minimumEdition=1001;break;case"EDITION_2026":case 1002:message.minimumEdition=1002;break;case"EDITION_UNSTABLE":case 9999:message.minimumEdition=9999;break;case"EDITION_1_TEST_ONLY":case 1:message.minimumEdition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.minimumEdition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.minimumEdition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.minimumEdition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.minimumEdition=99999;break;case"EDITION_MAX":case 2147483647:message.minimumEdition=2147483647;break}switch(object.maximumEdition){default:if(typeof object.maximumEdition==="number"){message.maximumEdition=object.maximumEdition;break}break;case"EDITION_UNKNOWN":case 0:message.maximumEdition=0;break;case"EDITION_LEGACY":case 900:message.maximumEdition=900;break;case"EDITION_PROTO2":case 998:message.maximumEdition=998;break;case"EDITION_PROTO3":case 999:message.maximumEdition=999;break;case"EDITION_2023":case 1e3:message.maximumEdition=1e3;break;case"EDITION_2024":case 1001:message.maximumEdition=1001;break;case"EDITION_2026":case 1002:message.maximumEdition=1002;break;case"EDITION_UNSTABLE":case 9999:message.maximumEdition=9999;break;case"EDITION_1_TEST_ONLY":case 1:message.maximumEdition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.maximumEdition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.maximumEdition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.maximumEdition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.maximumEdition=99999;break;case"EDITION_MAX":case 2147483647:message.maximumEdition=2147483647;break}return message};FeatureSetDefaults.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.defaults=[];if(options.defaults){object.minimumEdition=options.enums===String?"EDITION_UNKNOWN":0;object.maximumEdition=options.enums===String?"EDITION_UNKNOWN":0}if(message.defaults&&message.defaults.length){object.defaults=[];for(var j=0;j<message.defaults.length;++j)object.defaults[j]=$root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.toObject(message.defaults[j],options)}if(message.minimumEdition!=null&&message.hasOwnProperty("minimumEdition"))object.minimumEdition=options.enums===String?$root.google.protobuf.Edition[message.minimumEdition]===undefined?message.minimumEdition:$root.google.protobuf.Edition[message.minimumEdition]:message.minimumEdition;if(message.maximumEdition!=null&&message.hasOwnProperty("maximumEdition"))object.maximumEdition=options.enums===String?$root.google.protobuf.Edition[message.maximumEdition]===undefined?message.maximumEdition:$root.google.protobuf.Edition[message.maximumEdition]:message.maximumEdition;return object};FeatureSetDefaults.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FeatureSetDefaults.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FeatureSetDefaults"};FeatureSetDefaults.FeatureSetEditionDefault=function(){function FeatureSetEditionDefault(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FeatureSetEditionDefault.prototype.edition=0;FeatureSetEditionDefault.prototype.overridableFeatures=null;FeatureSetEditionDefault.prototype.fixedFeatures=null;FeatureSetEditionDefault.create=function create(properties){return new FeatureSetEditionDefault(properties)};FeatureSetEditionDefault.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.edition!=null&&Object.hasOwnProperty.call(message,"edition"))writer.uint32(24).int32(message.edition);if(message.overridableFeatures!=null&&Object.hasOwnProperty.call(message,"overridableFeatures"))$root.google.protobuf.FeatureSet.encode(message.overridableFeatures,writer.uint32(34).fork()).ldelim();if(message.fixedFeatures!=null&&Object.hasOwnProperty.call(message,"fixedFeatures"))$root.google.protobuf.FeatureSet.encode(message.fixedFeatures,writer.uint32(42).fork()).ldelim();return writer};FeatureSetEditionDefault.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FeatureSetEditionDefault.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 3:{message.edition=reader.int32();break}case 4:{message.overridableFeatures=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}case 5:{message.fixedFeatures=$root.google.protobuf.FeatureSet.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};FeatureSetEditionDefault.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FeatureSetEditionDefault.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.edition!=null&&message.hasOwnProperty("edition"))switch(message.edition){default:return"edition: enum value expected";case 0:case 900:case 998:case 999:case 1e3:case 1001:case 1002:case 9999:case 1:case 2:case 99997:case 99998:case 99999:case 2147483647:break}if(message.overridableFeatures!=null&&message.hasOwnProperty("overridableFeatures")){var error=$root.google.protobuf.FeatureSet.verify(message.overridableFeatures,long+1);if(error)return"overridableFeatures."+error}if(message.fixedFeatures!=null&&message.hasOwnProperty("fixedFeatures")){var error=$root.google.protobuf.FeatureSet.verify(message.fixedFeatures,long+1);if(error)return"fixedFeatures."+error}return null};FeatureSetEditionDefault.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault;switch(object.edition){default:if(typeof object.edition==="number"){message.edition=object.edition;break}break;case"EDITION_UNKNOWN":case 0:message.edition=0;break;case"EDITION_LEGACY":case 900:message.edition=900;break;case"EDITION_PROTO2":case 998:message.edition=998;break;case"EDITION_PROTO3":case 999:message.edition=999;break;case"EDITION_2023":case 1e3:message.edition=1e3;break;case"EDITION_2024":case 1001:message.edition=1001;break;case"EDITION_2026":case 1002:message.edition=1002;break;case"EDITION_UNSTABLE":case 9999:message.edition=9999;break;case"EDITION_1_TEST_ONLY":case 1:message.edition=1;break;case"EDITION_2_TEST_ONLY":case 2:message.edition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:message.edition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:message.edition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:message.edition=99999;break;case"EDITION_MAX":case 2147483647:message.edition=2147483647;break}if(object.overridableFeatures!=null){if(typeof object.overridableFeatures!=="object")throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected");message.overridableFeatures=$root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures,long+1)}if(object.fixedFeatures!=null){if(typeof object.fixedFeatures!=="object")throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected");message.fixedFeatures=$root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures,long+1)}return message};FeatureSetEditionDefault.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.edition=options.enums===String?"EDITION_UNKNOWN":0;object.overridableFeatures=null;object.fixedFeatures=null}if(message.edition!=null&&message.hasOwnProperty("edition"))object.edition=options.enums===String?$root.google.protobuf.Edition[message.edition]===undefined?message.edition:$root.google.protobuf.Edition[message.edition]:message.edition;if(message.overridableFeatures!=null&&message.hasOwnProperty("overridableFeatures"))object.overridableFeatures=$root.google.protobuf.FeatureSet.toObject(message.overridableFeatures,options);if(message.fixedFeatures!=null&&message.hasOwnProperty("fixedFeatures"))object.fixedFeatures=$root.google.protobuf.FeatureSet.toObject(message.fixedFeatures,options);return object};FeatureSetEditionDefault.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FeatureSetEditionDefault.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault"};return FeatureSetEditionDefault}();return FeatureSetDefaults}();protobuf.SourceCodeInfo=function(){function SourceCodeInfo(properties){this.location=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}SourceCodeInfo.prototype.location=$util.emptyArray;SourceCodeInfo.create=function create(properties){return new SourceCodeInfo(properties)};SourceCodeInfo.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.location!=null&&message.location.length)for(var i=0;i<message.location.length;++i)$root.google.protobuf.SourceCodeInfo.Location.encode(message.location[i],writer.uint32(10).fork()).ldelim();return writer};SourceCodeInfo.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};SourceCodeInfo.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.SourceCodeInfo;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.location&&message.location.length))message.location=[];message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};SourceCodeInfo.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};SourceCodeInfo.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.location!=null&&message.hasOwnProperty("location")){if(!Array.isArray(message.location))return"location: array expected";for(var i=0;i<message.location.length;++i){var error=$root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i],long+1);if(error)return"location."+error}}return null};SourceCodeInfo.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.SourceCodeInfo)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.SourceCodeInfo;if(object.location){if(!Array.isArray(object.location))throw TypeError(".google.protobuf.SourceCodeInfo.location: array expected");message.location=[];for(var i=0;i<object.location.length;++i){if(typeof object.location[i]!=="object")throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected");message.location[i]=$root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i],long+1)}}return message};SourceCodeInfo.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.location=[];if(message.location&&message.location.length){object.location=[];for(var j=0;j<message.location.length;++j)object.location[j]=$root.google.protobuf.SourceCodeInfo.Location.toObject(message.location[j],options)}return object};SourceCodeInfo.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};SourceCodeInfo.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.SourceCodeInfo"};SourceCodeInfo.Location=function(){function Location(properties){this.path=[];this.span=[];this.leadingDetachedComments=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Location.prototype.path=$util.emptyArray;Location.prototype.span=$util.emptyArray;Location.prototype.leadingComments="";Location.prototype.trailingComments="";Location.prototype.leadingDetachedComments=$util.emptyArray;Location.create=function create(properties){return new Location(properties)};Location.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.path!=null&&message.path.length){writer.uint32(10).fork();for(var i=0;i<message.path.length;++i)writer.int32(message.path[i]);writer.ldelim()}if(message.span!=null&&message.span.length){writer.uint32(18).fork();for(var i=0;i<message.span.length;++i)writer.int32(message.span[i]);writer.ldelim()}if(message.leadingComments!=null&&Object.hasOwnProperty.call(message,"leadingComments"))writer.uint32(26).string(message.leadingComments);if(message.trailingComments!=null&&Object.hasOwnProperty.call(message,"trailingComments"))writer.uint32(34).string(message.trailingComments);if(message.leadingDetachedComments!=null&&message.leadingDetachedComments.length)for(var i=0;i<message.leadingDetachedComments.length;++i)writer.uint32(50).string(message.leadingDetachedComments[i]);return writer};Location.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Location.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.SourceCodeInfo.Location;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.path&&message.path.length))message.path=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.path.push(reader.int32())}else message.path.push(reader.int32());break}case 2:{if(!(message.span&&message.span.length))message.span=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.span.push(reader.int32())}else message.span.push(reader.int32());break}case 3:{message.leadingComments=reader.string();break}case 4:{message.trailingComments=reader.string();break}case 6:{if(!(message.leadingDetachedComments&&message.leadingDetachedComments.length))message.leadingDetachedComments=[];message.leadingDetachedComments.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};Location.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Location.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.path!=null&&message.hasOwnProperty("path")){if(!Array.isArray(message.path))return"path: array expected";for(var i=0;i<message.path.length;++i)if(!$util.isInteger(message.path[i]))return"path: integer[] expected"}if(message.span!=null&&message.hasOwnProperty("span")){if(!Array.isArray(message.span))return"span: array expected";for(var i=0;i<message.span.length;++i)if(!$util.isInteger(message.span[i]))return"span: integer[] expected"}if(message.leadingComments!=null&&message.hasOwnProperty("leadingComments"))if(!$util.isString(message.leadingComments))return"leadingComments: string expected";if(message.trailingComments!=null&&message.hasOwnProperty("trailingComments"))if(!$util.isString(message.trailingComments))return"trailingComments: string expected";if(message.leadingDetachedComments!=null&&message.hasOwnProperty("leadingDetachedComments")){if(!Array.isArray(message.leadingDetachedComments))return"leadingDetachedComments: array expected";for(var i=0;i<message.leadingDetachedComments.length;++i)if(!$util.isString(message.leadingDetachedComments[i]))return"leadingDetachedComments: string[] expected"}return null};Location.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.SourceCodeInfo.Location)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.SourceCodeInfo.Location;if(object.path){if(!Array.isArray(object.path))throw TypeError(".google.protobuf.SourceCodeInfo.Location.path: array expected");message.path=[];for(var i=0;i<object.path.length;++i)message.path[i]=object.path[i]|0}if(object.span){if(!Array.isArray(object.span))throw TypeError(".google.protobuf.SourceCodeInfo.Location.span: array expected");message.span=[];for(var i=0;i<object.span.length;++i)message.span[i]=object.span[i]|0}if(object.leadingComments!=null)message.leadingComments=String(object.leadingComments);if(object.trailingComments!=null)message.trailingComments=String(object.trailingComments);if(object.leadingDetachedComments){if(!Array.isArray(object.leadingDetachedComments))throw TypeError(".google.protobuf.SourceCodeInfo.Location.leadingDetachedComments: array expected");message.leadingDetachedComments=[];for(var i=0;i<object.leadingDetachedComments.length;++i)message.leadingDetachedComments[i]=String(object.leadingDetachedComments[i])}return message};Location.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.path=[];object.span=[];object.leadingDetachedComments=[]}if(options.defaults){object.leadingComments="";object.trailingComments=""}if(message.path&&message.path.length){object.path=[];for(var j=0;j<message.path.length;++j)object.path[j]=message.path[j]}if(message.span&&message.span.length){object.span=[];for(var j=0;j<message.span.length;++j)object.span[j]=message.span[j]}if(message.leadingComments!=null&&message.hasOwnProperty("leadingComments"))object.leadingComments=message.leadingComments;if(message.trailingComments!=null&&message.hasOwnProperty("trailingComments"))object.trailingComments=message.trailingComments;if(message.leadingDetachedComments&&message.leadingDetachedComments.length){object.leadingDetachedComments=[];for(var j=0;j<message.leadingDetachedComments.length;++j)object.leadingDetachedComments[j]=message.leadingDetachedComments[j]}return object};Location.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Location.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.SourceCodeInfo.Location"};return Location}();return SourceCodeInfo}();protobuf.GeneratedCodeInfo=function(){function GeneratedCodeInfo(properties){this.annotation=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GeneratedCodeInfo.prototype.annotation=$util.emptyArray;GeneratedCodeInfo.create=function create(properties){return new GeneratedCodeInfo(properties)};GeneratedCodeInfo.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.annotation!=null&&message.annotation.length)for(var i=0;i<message.annotation.length;++i)$root.google.protobuf.GeneratedCodeInfo.Annotation.encode(message.annotation[i],writer.uint32(10).fork()).ldelim();return writer};GeneratedCodeInfo.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GeneratedCodeInfo.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.GeneratedCodeInfo;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.annotation&&message.annotation.length))message.annotation=[];message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};GeneratedCodeInfo.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GeneratedCodeInfo.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.annotation!=null&&message.hasOwnProperty("annotation")){if(!Array.isArray(message.annotation))return"annotation: array expected";for(var i=0;i<message.annotation.length;++i){var error=$root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i],long+1);if(error)return"annotation."+error}}return null};GeneratedCodeInfo.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.GeneratedCodeInfo)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.GeneratedCodeInfo;if(object.annotation){if(!Array.isArray(object.annotation))throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: array expected");message.annotation=[];for(var i=0;i<object.annotation.length;++i){if(typeof object.annotation[i]!=="object")throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected");message.annotation[i]=$root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i],long+1)}}return message};GeneratedCodeInfo.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.annotation=[];if(message.annotation&&message.annotation.length){object.annotation=[];for(var j=0;j<message.annotation.length;++j)object.annotation[j]=$root.google.protobuf.GeneratedCodeInfo.Annotation.toObject(message.annotation[j],options)}return object};GeneratedCodeInfo.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GeneratedCodeInfo.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.GeneratedCodeInfo"};GeneratedCodeInfo.Annotation=function(){function Annotation(properties){this.path=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Annotation.prototype.path=$util.emptyArray;Annotation.prototype.sourceFile="";Annotation.prototype.begin=0;Annotation.prototype.end=0;Annotation.prototype.semantic=0;Annotation.create=function create(properties){return new Annotation(properties)};Annotation.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.path!=null&&message.path.length){writer.uint32(10).fork();for(var i=0;i<message.path.length;++i)writer.int32(message.path[i]);writer.ldelim()}if(message.sourceFile!=null&&Object.hasOwnProperty.call(message,"sourceFile"))writer.uint32(18).string(message.sourceFile);if(message.begin!=null&&Object.hasOwnProperty.call(message,"begin"))writer.uint32(24).int32(message.begin);if(message.end!=null&&Object.hasOwnProperty.call(message,"end"))writer.uint32(32).int32(message.end);if(message.semantic!=null&&Object.hasOwnProperty.call(message,"semantic"))writer.uint32(40).int32(message.semantic);return writer};Annotation.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Annotation.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.GeneratedCodeInfo.Annotation;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.path&&message.path.length))message.path=[];if((tag&7)===2){var end2=reader.uint32()+reader.pos;while(reader.pos<end2)message.path.push(reader.int32())}else message.path.push(reader.int32());break}case 2:{message.sourceFile=reader.string();break}case 3:{message.begin=reader.int32();break}case 4:{message.end=reader.int32();break}case 5:{message.semantic=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};Annotation.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Annotation.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.path!=null&&message.hasOwnProperty("path")){if(!Array.isArray(message.path))return"path: array expected";for(var i=0;i<message.path.length;++i)if(!$util.isInteger(message.path[i]))return"path: integer[] expected"}if(message.sourceFile!=null&&message.hasOwnProperty("sourceFile"))if(!$util.isString(message.sourceFile))return"sourceFile: string expected";if(message.begin!=null&&message.hasOwnProperty("begin"))if(!$util.isInteger(message.begin))return"begin: integer expected";if(message.end!=null&&message.hasOwnProperty("end"))if(!$util.isInteger(message.end))return"end: integer expected";if(message.semantic!=null&&message.hasOwnProperty("semantic"))switch(message.semantic){default:return"semantic: enum value expected";case 0:case 1:case 2:break}return null};Annotation.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.GeneratedCodeInfo.Annotation;if(object.path){if(!Array.isArray(object.path))throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation.path: array expected");message.path=[];for(var i=0;i<object.path.length;++i)message.path[i]=object.path[i]|0}if(object.sourceFile!=null)message.sourceFile=String(object.sourceFile);if(object.begin!=null)message.begin=object.begin|0;if(object.end!=null)message.end=object.end|0;switch(object.semantic){default:if(typeof object.semantic==="number"){message.semantic=object.semantic;break}break;case"NONE":case 0:message.semantic=0;break;case"SET":case 1:message.semantic=1;break;case"ALIAS":case 2:message.semantic=2;break}return message};Annotation.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.path=[];if(options.defaults){object.sourceFile="";object.begin=0;object.end=0;object.semantic=options.enums===String?"NONE":0}if(message.path&&message.path.length){object.path=[];for(var j=0;j<message.path.length;++j)object.path[j]=message.path[j]}if(message.sourceFile!=null&&message.hasOwnProperty("sourceFile"))object.sourceFile=message.sourceFile;if(message.begin!=null&&message.hasOwnProperty("begin"))object.begin=message.begin;if(message.end!=null&&message.hasOwnProperty("end"))object.end=message.end;if(message.semantic!=null&&message.hasOwnProperty("semantic"))object.semantic=options.enums===String?$root.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[message.semantic]===undefined?message.semantic:$root.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[message.semantic]:message.semantic;return object};Annotation.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Annotation.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.GeneratedCodeInfo.Annotation"};Annotation.Semantic=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="NONE"]=0;values[valuesById[1]="SET"]=1;values[valuesById[2]="ALIAS"]=2;return values}();return Annotation}();return GeneratedCodeInfo}();protobuf.SymbolVisibility=function(){var valuesById={},values=Object.create(valuesById);values[valuesById[0]="VISIBILITY_UNSET"]=0;values[valuesById[1]="VISIBILITY_LOCAL"]=1;values[valuesById[2]="VISIBILITY_EXPORT"]=2;return values}();protobuf.Timestamp=function(){function Timestamp(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Timestamp.prototype.seconds=$util.Long?$util.Long.fromBits(0,0,false):0;Timestamp.prototype.nanos=0;Timestamp.create=function create(properties){return new Timestamp(properties)};Timestamp.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.seconds!=null&&Object.hasOwnProperty.call(message,"seconds"))writer.uint32(8).int64(message.seconds);if(message.nanos!=null&&Object.hasOwnProperty.call(message,"nanos"))writer.uint32(16).int32(message.nanos);return writer};Timestamp.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Timestamp.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.Timestamp;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.seconds=reader.int64();break}case 2:{message.nanos=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};Timestamp.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Timestamp.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.seconds!=null&&message.hasOwnProperty("seconds"))if(!$util.isInteger(message.seconds)&&!(message.seconds&&$util.isInteger(message.seconds.low)&&$util.isInteger(message.seconds.high)))return"seconds: integer|Long expected";if(message.nanos!=null&&message.hasOwnProperty("nanos"))if(!$util.isInteger(message.nanos))return"nanos: integer expected";return null};Timestamp.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.Timestamp)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.Timestamp;if(object.seconds!=null)if($util.Long)(message.seconds=$util.Long.fromValue(object.seconds)).unsigned=false;else if(typeof object.seconds==="string")message.seconds=parseInt(object.seconds,10);else if(typeof object.seconds==="number")message.seconds=object.seconds;else if(typeof object.seconds==="object")message.seconds=new $util.LongBits(object.seconds.low>>>0,object.seconds.high>>>0).toNumber();if(object.nanos!=null)message.nanos=object.nanos|0;return message};Timestamp.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){if($util.Long){var long=new $util.Long(0,0,false);object.seconds=options.longs===String?long.toString():options.longs===Number?long.toNumber():long}else object.seconds=options.longs===String?"0":0;object.nanos=0}if(message.seconds!=null&&message.hasOwnProperty("seconds"))if(typeof message.seconds==="number")object.seconds=options.longs===String?String(message.seconds):message.seconds;else object.seconds=options.longs===String?$util.Long.prototype.toString.call(message.seconds):options.longs===Number?new $util.LongBits(message.seconds.low>>>0,message.seconds.high>>>0).toNumber():message.seconds;if(message.nanos!=null&&message.hasOwnProperty("nanos"))object.nanos=message.nanos;return object};Timestamp.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Timestamp.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.Timestamp"};return Timestamp}();protobuf.Duration=function(){function Duration(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Duration.prototype.seconds=$util.Long?$util.Long.fromBits(0,0,false):0;Duration.prototype.nanos=0;Duration.create=function create(properties){return new Duration(properties)};Duration.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.seconds!=null&&Object.hasOwnProperty.call(message,"seconds"))writer.uint32(8).int64(message.seconds);if(message.nanos!=null&&Object.hasOwnProperty.call(message,"nanos"))writer.uint32(16).int32(message.nanos);return writer};Duration.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Duration.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.Duration;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.seconds=reader.int64();break}case 2:{message.nanos=reader.int32();break}default:reader.skipType(tag&7,long);break}}return message};Duration.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Duration.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.seconds!=null&&message.hasOwnProperty("seconds"))if(!$util.isInteger(message.seconds)&&!(message.seconds&&$util.isInteger(message.seconds.low)&&$util.isInteger(message.seconds.high)))return"seconds: integer|Long expected";if(message.nanos!=null&&message.hasOwnProperty("nanos"))if(!$util.isInteger(message.nanos))return"nanos: integer expected";return null};Duration.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.Duration)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.Duration;if(object.seconds!=null)if($util.Long)(message.seconds=$util.Long.fromValue(object.seconds)).unsigned=false;else if(typeof object.seconds==="string")message.seconds=parseInt(object.seconds,10);else if(typeof object.seconds==="number")message.seconds=object.seconds;else if(typeof object.seconds==="object")message.seconds=new $util.LongBits(object.seconds.low>>>0,object.seconds.high>>>0).toNumber();if(object.nanos!=null)message.nanos=object.nanos|0;return message};Duration.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){if($util.Long){var long=new $util.Long(0,0,false);object.seconds=options.longs===String?long.toString():options.longs===Number?long.toNumber():long}else object.seconds=options.longs===String?"0":0;object.nanos=0}if(message.seconds!=null&&message.hasOwnProperty("seconds"))if(typeof message.seconds==="number")object.seconds=options.longs===String?String(message.seconds):message.seconds;else object.seconds=options.longs===String?$util.Long.prototype.toString.call(message.seconds):options.longs===Number?new $util.LongBits(message.seconds.low>>>0,message.seconds.high>>>0).toNumber():message.seconds;if(message.nanos!=null&&message.hasOwnProperty("nanos"))object.nanos=message.nanos;return object};Duration.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Duration.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.Duration"};return Duration}();protobuf.Any=function(){function Any(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Any.prototype.type_url="";Any.prototype.value=$util.newBuffer([]);Any.create=function create(properties){return new Any(properties)};Any.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.type_url!=null&&Object.hasOwnProperty.call(message,"type_url"))writer.uint32(10).string(message.type_url);if(message.value!=null&&Object.hasOwnProperty.call(message,"value"))writer.uint32(18).bytes(message.value);return writer};Any.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Any.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.Any;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.type_url=reader.string();break}case 2:{message.value=reader.bytes();break}default:reader.skipType(tag&7,long);break}}return message};Any.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Any.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.type_url!=null&&message.hasOwnProperty("type_url"))if(!$util.isString(message.type_url))return"type_url: string expected";if(message.value!=null&&message.hasOwnProperty("value"))if(!(message.value&&typeof message.value.length==="number"||$util.isString(message.value)))return"value: buffer expected";return null};Any.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.Any)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.Any;if(object.type_url!=null)message.type_url=String(object.type_url);if(object.value!=null)if(typeof object.value==="string")$util.base64.decode(object.value,message.value=$util.newBuffer($util.base64.length(object.value)),0);else if(object.value.length>=0)message.value=object.value;return message};Any.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.type_url="";if(options.bytes===String)object.value="";else{object.value=[];if(options.bytes!==Array)object.value=$util.newBuffer(object.value)}}if(message.type_url!=null&&message.hasOwnProperty("type_url"))object.type_url=message.type_url;if(message.value!=null&&message.hasOwnProperty("value"))object.value=options.bytes===String?$util.base64.encode(message.value,0,message.value.length):options.bytes===Array?Array.prototype.slice.call(message.value):message.value;return object};Any.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Any.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.Any"};return Any}();protobuf.Empty=function(){function Empty(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Empty.create=function create(properties){return new Empty(properties)};Empty.encode=function encode(message,writer){if(!writer)writer=$Writer.create();return writer};Empty.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Empty.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.Empty;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){default:reader.skipType(tag&7,long);break}}return message};Empty.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Empty.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";return null};Empty.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.Empty)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");return new $root.google.protobuf.Empty};Empty.toObject=function toObject(){return{}};Empty.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Empty.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.Empty"};return Empty}();protobuf.FieldMask=function(){function FieldMask(properties){this.paths=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}FieldMask.prototype.paths=$util.emptyArray;FieldMask.create=function create(properties){return new FieldMask(properties)};FieldMask.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.paths!=null&&message.paths.length)for(var i=0;i<message.paths.length;++i)writer.uint32(10).string(message.paths[i]);return writer};FieldMask.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};FieldMask.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.protobuf.FieldMask;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.paths&&message.paths.length))message.paths=[];message.paths.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};FieldMask.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};FieldMask.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.paths!=null&&message.hasOwnProperty("paths")){if(!Array.isArray(message.paths))return"paths: array expected";for(var i=0;i<message.paths.length;++i)if(!$util.isString(message.paths[i]))return"paths: string[] expected"}return null};FieldMask.fromObject=function fromObject(object,long){if(object instanceof $root.google.protobuf.FieldMask)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.protobuf.FieldMask;if(object.paths){if(!Array.isArray(object.paths))throw TypeError(".google.protobuf.FieldMask.paths: array expected");message.paths=[];for(var i=0;i<object.paths.length;++i)message.paths[i]=String(object.paths[i])}return message};FieldMask.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.paths=[];if(message.paths&&message.paths.length){object.paths=[];for(var j=0;j<message.paths.length;++j)object.paths[j]=message.paths[j]}return object};FieldMask.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};FieldMask.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.protobuf.FieldMask"};return FieldMask}();return protobuf}();google.longrunning=function(){var longrunning={};longrunning.Operations=function(){function Operations(rpcImpl,requestDelimited,responseDelimited){$protobuf.rpc.Service.call(this,rpcImpl,requestDelimited,responseDelimited)}(Operations.prototype=Object.create($protobuf.rpc.Service.prototype)).constructor=Operations;Operations.create=function create(rpcImpl,requestDelimited,responseDelimited){return new this(rpcImpl,requestDelimited,responseDelimited)};Object.defineProperty(Operations.prototype.listOperations=function listOperations(request,callback){return this.rpcCall(listOperations,$root.google.longrunning.ListOperationsRequest,$root.google.longrunning.ListOperationsResponse,request,callback)},"name",{value:"ListOperations"});Object.defineProperty(Operations.prototype.getOperation=function getOperation(request,callback){return this.rpcCall(getOperation,$root.google.longrunning.GetOperationRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"GetOperation"});Object.defineProperty(Operations.prototype.deleteOperation=function deleteOperation(request,callback){return this.rpcCall(deleteOperation,$root.google.longrunning.DeleteOperationRequest,$root.google.protobuf.Empty,request,callback)},"name",{value:"DeleteOperation"});Object.defineProperty(Operations.prototype.cancelOperation=function cancelOperation(request,callback){return this.rpcCall(cancelOperation,$root.google.longrunning.CancelOperationRequest,$root.google.protobuf.Empty,request,callback)},"name",{value:"CancelOperation"});Object.defineProperty(Operations.prototype.waitOperation=function waitOperation(request,callback){return this.rpcCall(waitOperation,$root.google.longrunning.WaitOperationRequest,$root.google.longrunning.Operation,request,callback)},"name",{value:"WaitOperation"});return Operations}();longrunning.Operation=function(){function Operation(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Operation.prototype.name="";Operation.prototype.metadata=null;Operation.prototype.done=false;Operation.prototype.error=null;Operation.prototype.response=null;var $oneOfFields;Object.defineProperty(Operation.prototype,"result",{get:$util.oneOfGetter($oneOfFields=["error","response"]),set:$util.oneOfSetter($oneOfFields)});Operation.create=function create(properties){return new Operation(properties)};Operation.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.metadata!=null&&Object.hasOwnProperty.call(message,"metadata"))$root.google.protobuf.Any.encode(message.metadata,writer.uint32(18).fork()).ldelim();if(message.done!=null&&Object.hasOwnProperty.call(message,"done"))writer.uint32(24).bool(message.done);if(message.error!=null&&Object.hasOwnProperty.call(message,"error"))$root.google.rpc.Status.encode(message.error,writer.uint32(34).fork()).ldelim();if(message.response!=null&&Object.hasOwnProperty.call(message,"response"))$root.google.protobuf.Any.encode(message.response,writer.uint32(42).fork()).ldelim();return writer};Operation.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Operation.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.Operation;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.metadata=$root.google.protobuf.Any.decode(reader,reader.uint32(),undefined,long+1);break}case 3:{message.done=reader.bool();break}case 4:{message.error=$root.google.rpc.Status.decode(reader,reader.uint32(),undefined,long+1);break}case 5:{message.response=$root.google.protobuf.Any.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};Operation.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Operation.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";var properties={};if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.metadata!=null&&message.hasOwnProperty("metadata")){var error=$root.google.protobuf.Any.verify(message.metadata,long+1);if(error)return"metadata."+error}if(message.done!=null&&message.hasOwnProperty("done"))if(typeof message.done!=="boolean")return"done: boolean expected";if(message.error!=null&&message.hasOwnProperty("error")){properties.result=1;{var error=$root.google.rpc.Status.verify(message.error,long+1);if(error)return"error."+error}}if(message.response!=null&&message.hasOwnProperty("response")){if(properties.result===1)return"result: multiple values";properties.result=1;{var error=$root.google.protobuf.Any.verify(message.response,long+1);if(error)return"response."+error}}return null};Operation.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.Operation)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.Operation;if(object.name!=null)message.name=String(object.name);if(object.metadata!=null){if(typeof object.metadata!=="object")throw TypeError(".google.longrunning.Operation.metadata: object expected");message.metadata=$root.google.protobuf.Any.fromObject(object.metadata,long+1)}if(object.done!=null)message.done=Boolean(object.done);if(object.error!=null){if(typeof object.error!=="object")throw TypeError(".google.longrunning.Operation.error: object expected");message.error=$root.google.rpc.Status.fromObject(object.error,long+1)}if(object.response!=null){if(typeof object.response!=="object")throw TypeError(".google.longrunning.Operation.response: object expected");message.response=$root.google.protobuf.Any.fromObject(object.response,long+1)}return message};Operation.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.metadata=null;object.done=false}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.metadata!=null&&message.hasOwnProperty("metadata"))object.metadata=$root.google.protobuf.Any.toObject(message.metadata,options);if(message.done!=null&&message.hasOwnProperty("done"))object.done=message.done;if(message.error!=null&&message.hasOwnProperty("error")){object.error=$root.google.rpc.Status.toObject(message.error,options);if(options.oneofs)object.result="error"}if(message.response!=null&&message.hasOwnProperty("response")){object.response=$root.google.protobuf.Any.toObject(message.response,options);if(options.oneofs)object.result="response"}return object};Operation.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Operation.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.Operation"};return Operation}();longrunning.GetOperationRequest=function(){function GetOperationRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}GetOperationRequest.prototype.name="";GetOperationRequest.create=function create(properties){return new GetOperationRequest(properties)};GetOperationRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};GetOperationRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};GetOperationRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.GetOperationRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};GetOperationRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};GetOperationRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};GetOperationRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.GetOperationRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.GetOperationRequest;if(object.name!=null)message.name=String(object.name);return message};GetOperationRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};GetOperationRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};GetOperationRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.GetOperationRequest"};return GetOperationRequest}();longrunning.ListOperationsRequest=function(){function ListOperationsRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ListOperationsRequest.prototype.name="";ListOperationsRequest.prototype.filter="";ListOperationsRequest.prototype.pageSize=0;ListOperationsRequest.prototype.pageToken="";ListOperationsRequest.prototype.returnPartialSuccess=false;ListOperationsRequest.create=function create(properties){return new ListOperationsRequest(properties)};ListOperationsRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.filter!=null&&Object.hasOwnProperty.call(message,"filter"))writer.uint32(10).string(message.filter);if(message.pageSize!=null&&Object.hasOwnProperty.call(message,"pageSize"))writer.uint32(16).int32(message.pageSize);if(message.pageToken!=null&&Object.hasOwnProperty.call(message,"pageToken"))writer.uint32(26).string(message.pageToken);if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(34).string(message.name);if(message.returnPartialSuccess!=null&&Object.hasOwnProperty.call(message,"returnPartialSuccess"))writer.uint32(40).bool(message.returnPartialSuccess);return writer};ListOperationsRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ListOperationsRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.ListOperationsRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 4:{message.name=reader.string();break}case 1:{message.filter=reader.string();break}case 2:{message.pageSize=reader.int32();break}case 3:{message.pageToken=reader.string();break}case 5:{message.returnPartialSuccess=reader.bool();break}default:reader.skipType(tag&7,long);break}}return message};ListOperationsRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ListOperationsRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.filter!=null&&message.hasOwnProperty("filter"))if(!$util.isString(message.filter))return"filter: string expected";if(message.pageSize!=null&&message.hasOwnProperty("pageSize"))if(!$util.isInteger(message.pageSize))return"pageSize: integer expected";if(message.pageToken!=null&&message.hasOwnProperty("pageToken"))if(!$util.isString(message.pageToken))return"pageToken: string expected";if(message.returnPartialSuccess!=null&&message.hasOwnProperty("returnPartialSuccess"))if(typeof message.returnPartialSuccess!=="boolean")return"returnPartialSuccess: boolean expected";return null};ListOperationsRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.ListOperationsRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.ListOperationsRequest;if(object.name!=null)message.name=String(object.name);if(object.filter!=null)message.filter=String(object.filter);if(object.pageSize!=null)message.pageSize=object.pageSize|0;if(object.pageToken!=null)message.pageToken=String(object.pageToken);if(object.returnPartialSuccess!=null)message.returnPartialSuccess=Boolean(object.returnPartialSuccess);return message};ListOperationsRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.filter="";object.pageSize=0;object.pageToken="";object.name="";object.returnPartialSuccess=false}if(message.filter!=null&&message.hasOwnProperty("filter"))object.filter=message.filter;if(message.pageSize!=null&&message.hasOwnProperty("pageSize"))object.pageSize=message.pageSize;if(message.pageToken!=null&&message.hasOwnProperty("pageToken"))object.pageToken=message.pageToken;if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.returnPartialSuccess!=null&&message.hasOwnProperty("returnPartialSuccess"))object.returnPartialSuccess=message.returnPartialSuccess;return object};ListOperationsRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ListOperationsRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.ListOperationsRequest"};return ListOperationsRequest}();longrunning.ListOperationsResponse=function(){function ListOperationsResponse(properties){this.operations=[];this.unreachable=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}ListOperationsResponse.prototype.operations=$util.emptyArray;ListOperationsResponse.prototype.nextPageToken="";ListOperationsResponse.prototype.unreachable=$util.emptyArray;ListOperationsResponse.create=function create(properties){return new ListOperationsResponse(properties)};ListOperationsResponse.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.operations!=null&&message.operations.length)for(var i=0;i<message.operations.length;++i)$root.google.longrunning.Operation.encode(message.operations[i],writer.uint32(10).fork()).ldelim();if(message.nextPageToken!=null&&Object.hasOwnProperty.call(message,"nextPageToken"))writer.uint32(18).string(message.nextPageToken);if(message.unreachable!=null&&message.unreachable.length)for(var i=0;i<message.unreachable.length;++i)writer.uint32(26).string(message.unreachable[i]);return writer};ListOperationsResponse.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};ListOperationsResponse.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.ListOperationsResponse;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{if(!(message.operations&&message.operations.length))message.operations=[];message.operations.push($root.google.longrunning.Operation.decode(reader,reader.uint32(),undefined,long+1));break}case 2:{message.nextPageToken=reader.string();break}case 3:{if(!(message.unreachable&&message.unreachable.length))message.unreachable=[];message.unreachable.push(reader.string());break}default:reader.skipType(tag&7,long);break}}return message};ListOperationsResponse.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};ListOperationsResponse.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.operations!=null&&message.hasOwnProperty("operations")){if(!Array.isArray(message.operations))return"operations: array expected";for(var i=0;i<message.operations.length;++i){var error=$root.google.longrunning.Operation.verify(message.operations[i],long+1);if(error)return"operations."+error}}if(message.nextPageToken!=null&&message.hasOwnProperty("nextPageToken"))if(!$util.isString(message.nextPageToken))return"nextPageToken: string expected";if(message.unreachable!=null&&message.hasOwnProperty("unreachable")){if(!Array.isArray(message.unreachable))return"unreachable: array expected";for(var i=0;i<message.unreachable.length;++i)if(!$util.isString(message.unreachable[i]))return"unreachable: string[] expected"}return null};ListOperationsResponse.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.ListOperationsResponse)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.ListOperationsResponse;if(object.operations){if(!Array.isArray(object.operations))throw TypeError(".google.longrunning.ListOperationsResponse.operations: array expected");message.operations=[];for(var i=0;i<object.operations.length;++i){if(typeof object.operations[i]!=="object")throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected");message.operations[i]=$root.google.longrunning.Operation.fromObject(object.operations[i],long+1)}}if(object.nextPageToken!=null)message.nextPageToken=String(object.nextPageToken);if(object.unreachable){if(!Array.isArray(object.unreachable))throw TypeError(".google.longrunning.ListOperationsResponse.unreachable: array expected");message.unreachable=[];for(var i=0;i<object.unreachable.length;++i)message.unreachable[i]=String(object.unreachable[i])}return message};ListOperationsResponse.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults){object.operations=[];object.unreachable=[]}if(options.defaults)object.nextPageToken="";if(message.operations&&message.operations.length){object.operations=[];for(var j=0;j<message.operations.length;++j)object.operations[j]=$root.google.longrunning.Operation.toObject(message.operations[j],options)}if(message.nextPageToken!=null&&message.hasOwnProperty("nextPageToken"))object.nextPageToken=message.nextPageToken;if(message.unreachable&&message.unreachable.length){object.unreachable=[];for(var j=0;j<message.unreachable.length;++j)object.unreachable[j]=message.unreachable[j]}return object};ListOperationsResponse.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};ListOperationsResponse.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.ListOperationsResponse"};return ListOperationsResponse}();longrunning.CancelOperationRequest=function(){function CancelOperationRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}CancelOperationRequest.prototype.name="";CancelOperationRequest.create=function create(properties){return new CancelOperationRequest(properties)};CancelOperationRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};CancelOperationRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};CancelOperationRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.CancelOperationRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};CancelOperationRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};CancelOperationRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};CancelOperationRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.CancelOperationRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.CancelOperationRequest;if(object.name!=null)message.name=String(object.name);return message};CancelOperationRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};CancelOperationRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};CancelOperationRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.CancelOperationRequest"};return CancelOperationRequest}();longrunning.DeleteOperationRequest=function(){function DeleteOperationRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}DeleteOperationRequest.prototype.name="";DeleteOperationRequest.create=function create(properties){return new DeleteOperationRequest(properties)};DeleteOperationRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);return writer};DeleteOperationRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};DeleteOperationRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.DeleteOperationRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};DeleteOperationRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};DeleteOperationRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";return null};DeleteOperationRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.DeleteOperationRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.DeleteOperationRequest;if(object.name!=null)message.name=String(object.name);return message};DeleteOperationRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults)object.name="";if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;return object};DeleteOperationRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};DeleteOperationRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.DeleteOperationRequest"};return DeleteOperationRequest}();longrunning.WaitOperationRequest=function(){function WaitOperationRequest(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}WaitOperationRequest.prototype.name="";WaitOperationRequest.prototype.timeout=null;WaitOperationRequest.create=function create(properties){return new WaitOperationRequest(properties)};WaitOperationRequest.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.name!=null&&Object.hasOwnProperty.call(message,"name"))writer.uint32(10).string(message.name);if(message.timeout!=null&&Object.hasOwnProperty.call(message,"timeout"))$root.google.protobuf.Duration.encode(message.timeout,writer.uint32(18).fork()).ldelim();return writer};WaitOperationRequest.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};WaitOperationRequest.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.WaitOperationRequest;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.name=reader.string();break}case 2:{message.timeout=$root.google.protobuf.Duration.decode(reader,reader.uint32(),undefined,long+1);break}default:reader.skipType(tag&7,long);break}}return message};WaitOperationRequest.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};WaitOperationRequest.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.name!=null&&message.hasOwnProperty("name"))if(!$util.isString(message.name))return"name: string expected";if(message.timeout!=null&&message.hasOwnProperty("timeout")){var error=$root.google.protobuf.Duration.verify(message.timeout,long+1);if(error)return"timeout."+error}return null};WaitOperationRequest.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.WaitOperationRequest)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.WaitOperationRequest;if(object.name!=null)message.name=String(object.name);if(object.timeout!=null){if(typeof object.timeout!=="object")throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected");message.timeout=$root.google.protobuf.Duration.fromObject(object.timeout,long+1)}return message};WaitOperationRequest.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.name="";object.timeout=null}if(message.name!=null&&message.hasOwnProperty("name"))object.name=message.name;if(message.timeout!=null&&message.hasOwnProperty("timeout"))object.timeout=$root.google.protobuf.Duration.toObject(message.timeout,options);return object};WaitOperationRequest.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};WaitOperationRequest.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.WaitOperationRequest"};return WaitOperationRequest}();longrunning.OperationInfo=function(){function OperationInfo(properties){if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}OperationInfo.prototype.responseType="";OperationInfo.prototype.metadataType="";OperationInfo.create=function create(properties){return new OperationInfo(properties)};OperationInfo.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.responseType!=null&&Object.hasOwnProperty.call(message,"responseType"))writer.uint32(10).string(message.responseType);if(message.metadataType!=null&&Object.hasOwnProperty.call(message,"metadataType"))writer.uint32(18).string(message.metadataType);return writer};OperationInfo.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};OperationInfo.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.longrunning.OperationInfo;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.responseType=reader.string();break}case 2:{message.metadataType=reader.string();break}default:reader.skipType(tag&7,long);break}}return message};OperationInfo.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};OperationInfo.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.responseType!=null&&message.hasOwnProperty("responseType"))if(!$util.isString(message.responseType))return"responseType: string expected";if(message.metadataType!=null&&message.hasOwnProperty("metadataType"))if(!$util.isString(message.metadataType))return"metadataType: string expected";return null};OperationInfo.fromObject=function fromObject(object,long){if(object instanceof $root.google.longrunning.OperationInfo)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.longrunning.OperationInfo;if(object.responseType!=null)message.responseType=String(object.responseType);if(object.metadataType!=null)message.metadataType=String(object.metadataType);return message};OperationInfo.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.defaults){object.responseType="";object.metadataType=""}if(message.responseType!=null&&message.hasOwnProperty("responseType"))object.responseType=message.responseType;if(message.metadataType!=null&&message.hasOwnProperty("metadataType"))object.metadataType=message.metadataType;return object};OperationInfo.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};OperationInfo.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.longrunning.OperationInfo"};return OperationInfo}();return longrunning}();google.rpc=function(){var rpc={};rpc.Status=function(){function Status(properties){this.details=[];if(properties)for(var keys=Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]]}Status.prototype.code=0;Status.prototype.message="";Status.prototype.details=$util.emptyArray;Status.create=function create(properties){return new Status(properties)};Status.encode=function encode(message,writer){if(!writer)writer=$Writer.create();if(message.code!=null&&Object.hasOwnProperty.call(message,"code"))writer.uint32(8).int32(message.code);if(message.message!=null&&Object.hasOwnProperty.call(message,"message"))writer.uint32(18).string(message.message);if(message.details!=null&&message.details.length)for(var i=0;i<message.details.length;++i)$root.google.protobuf.Any.encode(message.details[i],writer.uint32(26).fork()).ldelim();return writer};Status.encodeDelimited=function encodeDelimited(message,writer){return this.encode(message,writer).ldelim()};Status.decode=function decode(reader,length,error,long){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(long===undefined)long=0;if(long>$Reader.recursionLimit)throw Error("maximum nesting depth exceeded");var end=length===undefined?reader.len:reader.pos+length,message=new $root.google.rpc.Status;while(reader.pos<end){var tag=reader.uint32();if(tag===error)break;switch(tag>>>3){case 1:{message.code=reader.int32();break}case 2:{message.message=reader.string();break}case 3:{if(!(message.details&&message.details.length))message.details=[];message.details.push($root.google.protobuf.Any.decode(reader,reader.uint32(),undefined,long+1));break}default:reader.skipType(tag&7,long);break}}return message};Status.decodeDelimited=function decodeDelimited(reader){if(!(reader instanceof $Reader))reader=new $Reader(reader);return this.decode(reader,reader.uint32())};Status.verify=function verify(message,long){if(typeof message!=="object"||message===null)return"object expected";if(long===undefined)long=0;if(long>$util.recursionLimit)return"maximum nesting depth exceeded";if(message.code!=null&&message.hasOwnProperty("code"))if(!$util.isInteger(message.code))return"code: integer expected";if(message.message!=null&&message.hasOwnProperty("message"))if(!$util.isString(message.message))return"message: string expected";if(message.details!=null&&message.hasOwnProperty("details")){if(!Array.isArray(message.details))return"details: array expected";for(var i=0;i<message.details.length;++i){var error=$root.google.protobuf.Any.verify(message.details[i],long+1);if(error)return"details."+error}}return null};Status.fromObject=function fromObject(object,long){if(object instanceof $root.google.rpc.Status)return object;if(long===undefined)long=0;if(long>$util.recursionLimit)throw Error("maximum nesting depth exceeded");var message=new $root.google.rpc.Status;if(object.code!=null)message.code=object.code|0;if(object.message!=null)message.message=String(object.message);if(object.details){if(!Array.isArray(object.details))throw TypeError(".google.rpc.Status.details: array expected");message.details=[];for(var i=0;i<object.details.length;++i){if(typeof object.details[i]!=="object")throw TypeError(".google.rpc.Status.details: object expected");message.details[i]=$root.google.protobuf.Any.fromObject(object.details[i],long+1)}}return message};Status.toObject=function toObject(message,options){if(!options)options={};var object={};if(options.arrays||options.defaults)object.details=[];if(options.defaults){object.code=0;object.message=""}if(message.code!=null&&message.hasOwnProperty("code"))object.code=message.code;if(message.message!=null&&message.hasOwnProperty("message"))object.message=message.message;if(message.details&&message.details.length){object.details=[];for(var j=0;j<message.details.length;++j)object.details[j]=$root.google.protobuf.Any.toObject(message.details[j],options)}return object};Status.prototype.toJSON=function toJSON(){return this.constructor.toObject(this,$protobuf.util.toJSONOptions)};Status.getTypeUrl=function getTypeUrl(typeUrlPrefix){if(typeUrlPrefix===undefined){typeUrlPrefix="type.googleapis.com"}return typeUrlPrefix+"/google.rpc.Status"};return Status}();return rpc}();return google}();return $root});