@google-cloud/spanner-api 0.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.
Files changed (49) hide show
  1. package/README.md +111 -0
  2. package/build/protos/google/spanner/admin/database/v1/backup.proto +773 -0
  3. package/build/protos/google/spanner/admin/database/v1/backup_schedule.proto +230 -0
  4. package/build/protos/google/spanner/admin/database/v1/common.proto +132 -0
  5. package/build/protos/google/spanner/admin/database/v1/spanner_database_admin.proto +1314 -0
  6. package/build/protos/google/spanner/admin/instance/v1/common.proto +64 -0
  7. package/build/protos/google/spanner/admin/instance/v1/spanner_instance_admin.proto +2184 -0
  8. package/build/protos/google/spanner/executor/v1/cloud_executor.proto +1610 -0
  9. package/build/protos/google/spanner/v1/change_stream.proto +451 -0
  10. package/build/protos/google/spanner/v1/commit_response.proto +80 -0
  11. package/build/protos/google/spanner/v1/keys.proto +163 -0
  12. package/build/protos/google/spanner/v1/location.proto +388 -0
  13. package/build/protos/google/spanner/v1/mutation.proto +156 -0
  14. package/build/protos/google/spanner/v1/query_plan.proto +156 -0
  15. package/build/protos/google/spanner/v1/result_set.proto +260 -0
  16. package/build/protos/google/spanner/v1/spanner.proto +1472 -0
  17. package/build/protos/google/spanner/v1/transaction.proto +329 -0
  18. package/build/protos/google/spanner/v1/type.proto +214 -0
  19. package/build/protos/protos.d.ts +42547 -0
  20. package/build/protos/protos.js +1 -0
  21. package/build/protos/protos.json +1 -0
  22. package/build/src/index.d.ts +20 -0
  23. package/build/src/index.js +34 -0
  24. package/build/src/index.js.map +1 -0
  25. package/build/src/v1/database_admin_client.d.ts +2433 -0
  26. package/build/src/v1/database_admin_client.js +2938 -0
  27. package/build/src/v1/database_admin_client.js.map +1 -0
  28. package/build/src/v1/database_admin_client_config.json +169 -0
  29. package/build/src/v1/database_admin_proto_list.json +6 -0
  30. package/build/src/v1/gapic_metadata.json +253 -0
  31. package/build/src/v1/index.d.ts +4 -0
  32. package/build/src/v1/index.js +29 -0
  33. package/build/src/v1/index.js.map +1 -0
  34. package/build/src/v1/instance_admin_client.d.ts +2162 -0
  35. package/build/src/v1/instance_admin_client.js +2411 -0
  36. package/build/src/v1/instance_admin_client.js.map +1 -0
  37. package/build/src/v1/instance_admin_client_config.json +129 -0
  38. package/build/src/v1/instance_admin_proto_list.json +4 -0
  39. package/build/src/v1/spanner_client.d.ts +1353 -0
  40. package/build/src/v1/spanner_client.js +1456 -0
  41. package/build/src/v1/spanner_client.js.map +1 -0
  42. package/build/src/v1/spanner_client_config.json +123 -0
  43. package/build/src/v1/spanner_executor_proxy_client.d.ts +419 -0
  44. package/build/src/v1/spanner_executor_proxy_client.js +730 -0
  45. package/build/src/v1/spanner_executor_proxy_client.js.map +1 -0
  46. package/build/src/v1/spanner_executor_proxy_client_config.json +30 -0
  47. package/build/src/v1/spanner_executor_proxy_proto_list.json +15 -0
  48. package/build/src/v1/spanner_proto_list.json +12 -0
  49. package/package.json +65 -0
@@ -0,0 +1 @@
1
+ (e=>{"function"==typeof define&&define.amd?define(["protobufjs/minimal"],e):"function"==typeof require&&"object"==typeof module&&module&&module.exports&&(module.exports=e(require("google-gax/build/src/protobuf").protobufMinimal))})(function(o){var e,t,n,r,i,a,_,p=o.Reader,s=o.Writer,d=o.util,g=o.roots._google_cloud_spanner_api_protos||(o.roots._google_cloud_spanner_api_protos={});function c(e){if(this.referencingDatabases=[],this.encryptionInformation=[],this.referencingBackups=[],this.backupSchedules=[],this.instancePartitions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function B(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function U(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function M(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function q(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function V(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function F(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function G(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function J(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function z(e){if(this.backups=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function K(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function H(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Y(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Q(e){if(this.kmsKeyNames=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function W(e){if(this.kmsKeyNames=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function X(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Z(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function $(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ee(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function te(e){if(this.kmsKeyNames=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ne(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function oe(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function re(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ie(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ae(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function se(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ce(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function le(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ue(e){if(this.backupSchedules=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function pe(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function l(e,t,n){o.rpc.Service.call(this,e,t,n)}function de(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function u(e){if(this.encryptionInfo=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ge(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function fe(e){if(this.databases=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function me(e){if(this.extraStatements=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function be(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ye(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function he(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Oe(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ve(e){if(this.statements=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function je(e){if(this.entityNames=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function xe(e){if(this.statements=[],this.commitTimestamps=[],this.progress=[],this.actions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function we(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Te(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ke(e){if(this.statements=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Pe(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Se(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ie(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ee(e){if(this.kmsKeyNames=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ce(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Re(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function De(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Le(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ae(e){if(this.databaseRoles=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ne(e){if(this.splitPoints=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function _e(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Be(e){if(this.keys=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ue(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Me(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function qe(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ve(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Fe(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function f(e,t,n){o.rpc.Service.call(this,e,t,n)}function Ge(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function m(e){if(this.replicas=[],this.optionalReplicas=[],this.labels={},this.leaderOptions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Je(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ze(e){if(this.asymmetricAutoscalingOptions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ke(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function He(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ye(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Qe(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function b(e){if(this.replicaComputeCapacity=[],this.labels={},this.endpointUris=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function We(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Xe(e){if(this.instanceConfigs=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ze(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function $e(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function et(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function tt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function nt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ot(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function rt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function it(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function at(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function st(e){if(this.instances=[],this.unreachable=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ct(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function lt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ut(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function pt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function dt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function gt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ft(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function y(e){if(this.referencingDatabases=[],this.referencingBackups=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function mt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function bt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function yt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ht(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ot(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function vt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function jt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function xt(e){if(this.instancePartitions=[],this.unreachable=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function wt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Tt(e){if(this.operations=[],this.unreachableInstancePartitions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function kt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Pt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function St(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function It(e,t,n){o.rpc.Service.call(this,e,t,n)}function Et(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ct(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function h(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Rt(e){if(this.column=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Dt(e){if(this.params=[],this.secureContext={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Lt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function At(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Nt(e){if(this.updates=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function O(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function _t(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Bt(e){if(this.point=[],this.range=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ut(e){if(this.value=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Mt(e){if(this.mod=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function qt(e){if(this.column=[],this.type=[],this.values=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Vt(e){if(this.column=[],this.type=[],this.values=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ft(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Gt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Jt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function zt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Kt(e){if(this.table=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ht(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Yt(e){if(this.column=[],this.keyColumn=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Qt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Wt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Xt(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function v(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Zt(e){if(this.replicas=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function $t(e){if(this.labels={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function en(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function tn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function nn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function j(e){if(this.labels={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function x(e){if(this.labels={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function on(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function rn(e){if(this.sdlStatement=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function an(e){if(this.sdlStatement=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function sn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function cn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ln(e){if(this.servingLocations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function un(e){if(this.attachments={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function pn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function dn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function gn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function fn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function mn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function bn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function yn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function hn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function On(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function vn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function jn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function xn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function wn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Tn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function kn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Pn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Sn(e){if(this.splitPoints=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function In(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function En(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Cn(e){if(this.table=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Rn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Dn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ln(e){if(this.secureContext={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function w(e){if(this.readOptions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function T(e){if(this.dbPartition=[],this.dmlRowsModified=[],this.changeStreamRecords=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function An(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Nn(e){if(this.listedBackups=[],this.listedBackupOperations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function _n(e){if(this.listedOperations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Bn(e){if(this.listedInstances=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Un(e){if(this.listedInstanceConfigs=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Mn(e){if(this.listedDatabases=[],this.listedDatabaseOperations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function qn(e){if(this.row=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Vn(e){if(this.row=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Fn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function k(e){if(this.columnTypes=[],this.mods=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Gn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Jn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function zn(e){if(this.childPartitions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Kn(e){if(this.parentPartitionTokens=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Hn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Yn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Qn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Wn(e,t,n){o.rpc.Service.call(this,e,t,n)}function Xn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Zn(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function $n(e){if(this.session=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function eo(e){if(this.labels={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function to(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function no(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function oo(e){if(this.sessions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ro(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function io(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ao(e){if(this.secureContext={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function so(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function co(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function lo(e){if(this.replicaSelections=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function uo(e){if(this.replicaSelections=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function P(e){if(this.paramTypes={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function po(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function go(e){if(this.statements=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function fo(e){if(this.paramTypes={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function mo(e){if(this.resultSets=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function bo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function yo(e){if(this.paramTypes={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ho(e){if(this.columns=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Oo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function vo(e){if(this.partitions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function S(e){if(this.columns=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function jo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function xo(e){if(this.mutations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function wo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function To(e){if(this.mutationGroups=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ko(e){if(this.mutations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Po(e){if(this.indexes=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function So(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Io(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Eo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Co(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ro(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Do(e){if(this.tablets=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Lo(e){if(this.part=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ao(e){if(this.structIdentifiers=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function No(e){if(this.recipe=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function _o(e){if(this.range=[],this.group=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Bo(e){if(this.skippedTabletUid=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Uo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Mo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function qo(e){if(this.fields=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Vo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Fo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Go(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Jo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function zo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ko(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ho(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Yo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Qo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Wo(e){if(this.keys=[],this.ranges=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function I(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Xo(e){if(this.columns=[],this.values=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Zo(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function $o(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function er(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function tr(e){if(this.rows=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function nr(e){if(this.values=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function or(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function rr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ir(e){if(this.childLinks=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ar(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function sr(e){if(this.subqueries={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function cr(e){if(this.indexAdvice=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function lr(e){if(this.ddl=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ur(e){if(this.planNodes=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function pr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function E(e){if(this.columnMetadata=[],this.mods=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function dr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function gr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function fr(e){if(this.keys=[],this.oldValues=[],this.newValues=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function mr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function br(e){if(this.partitionTokens=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function yr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function hr(e){if(this.moveInEvents=[],this.moveOutEvents=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Or(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function vr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function jr(e){if(this.pattern=[],this.style=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function xr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function wr(e){if(this.rules=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Tr(e){if(this.additionalBindings=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function kr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Pr(e){if(this.destinations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Sr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ir(e){if(this.methodSettings=[],this.codeownerGithubTeams=[],this.librarySettings=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Er(e){if(this.serviceClassNames={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Cr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Rr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Dr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Lr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ar(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Nr(e){if(this.renamedServices={},this.renamedResources={},this.ignoredResources=[],this.forcedNamespaceAliases=[],this.handwrittenSignatures=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function _r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Br(e){if(this.renamedServices={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ur(e){if(this.autoPopulatedFields=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Mr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function qr(e){if(this.methods=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Vr(e){if(this.file=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function C(e){if(this.dependency=[],this.publicDependency=[],this.weakDependency=[],this.optionDependency=[],this.messageType=[],this.enumType=[],this.service=[],this.extension=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function R(e){if(this.field=[],this.extension=[],this.nestedType=[],this.enumType=[],this.extensionRange=[],this.oneofDecl=[],this.reservedRange=[],this.reservedName=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Fr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Gr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Jr(e){if(this.uninterpretedOption=[],this.declaration=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function zr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function D(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Kr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Hr(e){if(this.value=[],this.reservedRange=[],this.reservedName=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Yr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Qr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Wr(e){if(this.method=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Xr(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function L(e){if(this.uninterpretedOption=[],this[".google.api.resourceDefinition"]=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Zr(e){if(this.uninterpretedOption=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function A(e){if(this.targets=[],this.editionDefaults=[],this.uninterpretedOption=[],this[".google.api.fieldBehavior"]=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function $r(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ei(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ti(e){if(this.uninterpretedOption=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ni(e){if(this.uninterpretedOption=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function oi(e){if(this.uninterpretedOption=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ri(e){if(this.uninterpretedOption=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ii(e){if(this.uninterpretedOption=[],this[".google.api.methodSignature"]=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ai(e){if(this.name=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function si(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function N(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ci(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function li(e){if(this.defaults=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ui(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function pi(e){if(this.location=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function di(e){if(this.path=[],this.span=[],this.leadingDetachedComments=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function gi(e){if(this.annotation=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function fi(e){if(this.path=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function mi(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function bi(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function yi(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function hi(e){if(this.paths=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Oi(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function vi(e){if(this.fields={},e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ji(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function xi(e){if(this.values=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function wi(e,t,n){o.rpc.Service.call(this,e,t,n)}function Ti(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function ki(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Pi(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Si(e){if(this.operations=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ii(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ei(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ci(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ri(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Di(e){if(this.details=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Li(e,t,n){o.rpc.Service.call(this,e,t,n)}function Ai(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ni(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function _i(e){if(this.permissions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Bi(e){if(this.permissions=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ui(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Mi(e){if(this.bindings=[],this.auditConfigs=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function qi(e){if(this.members=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Vi(e){if(this.auditLogConfigs=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Fi(e){if(this.exemptedMembers=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Gi(e){if(this.bindingDeltas=[],this.auditConfigDeltas=[],e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ji(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function zi(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}function Ki(e){if(e)for(var t=Object.keys(e),n=0;n<t.length;++n)null!=e[t[n]]&&"__proto__"!==t[n]&&(this[t[n]]=e[t[n]])}return g.google=((_={}).spanner=((i={}).admin=((r={}).database=((e={}).v1=((n={}).Backup=(c.prototype.database="",c.prototype.versionTime=null,c.prototype.expireTime=null,c.prototype.name="",c.prototype.createTime=null,c.prototype.sizeBytes=d.Long?d.Long.fromBits(0,0,!1):0,c.prototype.freeableSizeBytes=d.Long?d.Long.fromBits(0,0,!1):0,c.prototype.exclusiveSizeBytes=d.Long?d.Long.fromBits(0,0,!1):0,c.prototype.state=0,c.prototype.referencingDatabases=d.emptyArray,c.prototype.encryptionInfo=null,c.prototype.encryptionInformation=d.emptyArray,c.prototype.databaseDialect=0,c.prototype.referencingBackups=d.emptyArray,c.prototype.maxExpireTime=null,c.prototype.backupSchedules=d.emptyArray,c.prototype.incrementalBackupChainId="",c.prototype.oldestVersionTime=null,c.prototype.instancePartitions=d.emptyArray,c.create=function(e){return new c(e)},c.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(18).string(e.database),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&g.google.protobuf.Timestamp.encode(e.expireTime,t.uint32(26).fork(),n+1).ldelim(),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&g.google.protobuf.Timestamp.encode(e.createTime,t.uint32(34).fork(),n+1).ldelim(),null!=e.sizeBytes&&Object.hasOwnProperty.call(e,"sizeBytes")&&t.uint32(40).int64(e.sizeBytes),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&t.uint32(48).int32(e.state),null!=e.referencingDatabases&&e.referencingDatabases.length)for(var o=0;o<e.referencingDatabases.length;++o)t.uint32(58).string(e.referencingDatabases[o]);if(null!=e.encryptionInfo&&Object.hasOwnProperty.call(e,"encryptionInfo")&&g.google.spanner.admin.database.v1.EncryptionInfo.encode(e.encryptionInfo,t.uint32(66).fork(),n+1).ldelim(),null!=e.versionTime&&Object.hasOwnProperty.call(e,"versionTime")&&g.google.protobuf.Timestamp.encode(e.versionTime,t.uint32(74).fork(),n+1).ldelim(),null!=e.databaseDialect&&Object.hasOwnProperty.call(e,"databaseDialect")&&t.uint32(80).int32(e.databaseDialect),null!=e.referencingBackups&&e.referencingBackups.length)for(o=0;o<e.referencingBackups.length;++o)t.uint32(90).string(e.referencingBackups[o]);if(null!=e.maxExpireTime&&Object.hasOwnProperty.call(e,"maxExpireTime")&&g.google.protobuf.Timestamp.encode(e.maxExpireTime,t.uint32(98).fork(),n+1).ldelim(),null!=e.encryptionInformation&&e.encryptionInformation.length)for(o=0;o<e.encryptionInformation.length;++o)g.google.spanner.admin.database.v1.EncryptionInfo.encode(e.encryptionInformation[o],t.uint32(106).fork(),n+1).ldelim();if(null!=e.backupSchedules&&e.backupSchedules.length)for(o=0;o<e.backupSchedules.length;++o)t.uint32(114).string(e.backupSchedules[o]);if(null!=e.freeableSizeBytes&&Object.hasOwnProperty.call(e,"freeableSizeBytes")&&t.uint32(120).int64(e.freeableSizeBytes),null!=e.exclusiveSizeBytes&&Object.hasOwnProperty.call(e,"exclusiveSizeBytes")&&t.uint32(128).int64(e.exclusiveSizeBytes),null!=e.incrementalBackupChainId&&Object.hasOwnProperty.call(e,"incrementalBackupChainId")&&t.uint32(138).string(e.incrementalBackupChainId),null!=e.oldestVersionTime&&Object.hasOwnProperty.call(e,"oldestVersionTime")&&g.google.protobuf.Timestamp.encode(e.oldestVersionTime,t.uint32(146).fork(),n+1).ldelim(),null!=e.instancePartitions&&e.instancePartitions.length)for(o=0;o<e.instancePartitions.length;++o)g.google.spanner.admin.database.v1.BackupInstancePartition.encode(e.instancePartitions[o],t.uint32(154).fork(),n+1).ldelim();return t},c.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},c.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.Backup;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 2:i.database=e.string();break;case 9:i.versionTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.expireTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 1:i.name=e.string();break;case 4:i.createTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 5:i.sizeBytes=e.int64();break;case 15:i.freeableSizeBytes=e.int64();break;case 16:i.exclusiveSizeBytes=e.int64();break;case 6:i.state=e.int32();break;case 7:i.referencingDatabases&&i.referencingDatabases.length||(i.referencingDatabases=[]),i.referencingDatabases.push(e.string());break;case 8:i.encryptionInfo=g.google.spanner.admin.database.v1.EncryptionInfo.decode(e,e.uint32(),void 0,o+1);break;case 13:i.encryptionInformation&&i.encryptionInformation.length||(i.encryptionInformation=[]),i.encryptionInformation.push(g.google.spanner.admin.database.v1.EncryptionInfo.decode(e,e.uint32(),void 0,o+1));break;case 10:i.databaseDialect=e.int32();break;case 11:i.referencingBackups&&i.referencingBackups.length||(i.referencingBackups=[]),i.referencingBackups.push(e.string());break;case 12:i.maxExpireTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 14:i.backupSchedules&&i.backupSchedules.length||(i.backupSchedules=[]),i.backupSchedules.push(e.string());break;case 17:i.incrementalBackupChainId=e.string();break;case 18:i.oldestVersionTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 19:i.instancePartitions&&i.instancePartitions.length||(i.instancePartitions=[]),i.instancePartitions.push(g.google.spanner.admin.database.v1.BackupInstancePartition.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},c.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},c.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database))return"database: string expected";if(null!=e.versionTime&&Object.hasOwnProperty.call(e,"versionTime")&&(o=g.google.protobuf.Timestamp.verify(e.versionTime,t+1)))return"versionTime."+o;if(null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(o=g.google.protobuf.Timestamp.verify(e.expireTime,t+1)))return"expireTime."+o;if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(o=g.google.protobuf.Timestamp.verify(e.createTime,t+1)))return"createTime."+o;if(null!=e.sizeBytes&&Object.hasOwnProperty.call(e,"sizeBytes")&&!(d.isInteger(e.sizeBytes)||e.sizeBytes&&d.isInteger(e.sizeBytes.low)&&d.isInteger(e.sizeBytes.high)))return"sizeBytes: integer|Long expected";if(null!=e.freeableSizeBytes&&Object.hasOwnProperty.call(e,"freeableSizeBytes")&&!(d.isInteger(e.freeableSizeBytes)||e.freeableSizeBytes&&d.isInteger(e.freeableSizeBytes.low)&&d.isInteger(e.freeableSizeBytes.high)))return"freeableSizeBytes: integer|Long expected";if(null!=e.exclusiveSizeBytes&&Object.hasOwnProperty.call(e,"exclusiveSizeBytes")&&!(d.isInteger(e.exclusiveSizeBytes)||e.exclusiveSizeBytes&&d.isInteger(e.exclusiveSizeBytes.low)&&d.isInteger(e.exclusiveSizeBytes.high)))return"exclusiveSizeBytes: integer|Long expected";if(null!=e.state&&Object.hasOwnProperty.call(e,"state"))switch(e.state){default:return"state: enum value expected";case 0:case 1:case 2:}if(null!=e.referencingDatabases&&Object.hasOwnProperty.call(e,"referencingDatabases")){if(!Array.isArray(e.referencingDatabases))return"referencingDatabases: array expected";for(var n=0;n<e.referencingDatabases.length;++n)if(!d.isString(e.referencingDatabases[n]))return"referencingDatabases: string[] expected"}if(null!=e.encryptionInfo&&Object.hasOwnProperty.call(e,"encryptionInfo")&&(o=g.google.spanner.admin.database.v1.EncryptionInfo.verify(e.encryptionInfo,t+1)))return"encryptionInfo."+o;if(null!=e.encryptionInformation&&Object.hasOwnProperty.call(e,"encryptionInformation")){if(!Array.isArray(e.encryptionInformation))return"encryptionInformation: array expected";for(n=0;n<e.encryptionInformation.length;++n)if(o=g.google.spanner.admin.database.v1.EncryptionInfo.verify(e.encryptionInformation[n],t+1))return"encryptionInformation."+o}if(null!=e.databaseDialect&&Object.hasOwnProperty.call(e,"databaseDialect"))switch(e.databaseDialect){default:return"databaseDialect: enum value expected";case 0:case 1:case 2:}if(null!=e.referencingBackups&&Object.hasOwnProperty.call(e,"referencingBackups")){if(!Array.isArray(e.referencingBackups))return"referencingBackups: array expected";for(n=0;n<e.referencingBackups.length;++n)if(!d.isString(e.referencingBackups[n]))return"referencingBackups: string[] expected"}if(null!=e.maxExpireTime&&Object.hasOwnProperty.call(e,"maxExpireTime")&&(o=g.google.protobuf.Timestamp.verify(e.maxExpireTime,t+1)))return"maxExpireTime."+o;if(null!=e.backupSchedules&&Object.hasOwnProperty.call(e,"backupSchedules")){if(!Array.isArray(e.backupSchedules))return"backupSchedules: array expected";for(n=0;n<e.backupSchedules.length;++n)if(!d.isString(e.backupSchedules[n]))return"backupSchedules: string[] expected"}if(null!=e.incrementalBackupChainId&&Object.hasOwnProperty.call(e,"incrementalBackupChainId")&&!d.isString(e.incrementalBackupChainId))return"incrementalBackupChainId: string expected";if(null!=e.oldestVersionTime&&Object.hasOwnProperty.call(e,"oldestVersionTime")&&(o=g.google.protobuf.Timestamp.verify(e.oldestVersionTime,t+1)))return"oldestVersionTime."+o;if(null!=e.instancePartitions&&Object.hasOwnProperty.call(e,"instancePartitions")){if(!Array.isArray(e.instancePartitions))return"instancePartitions: array expected";for(var o,n=0;n<e.instancePartitions.length;++n)if(o=g.google.spanner.admin.database.v1.BackupInstancePartition.verify(e.instancePartitions[n],t+1))return"instancePartitions."+o}return null},c.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.Backup)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.Backup: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.Backup;if(null!=e.database&&(n.database=String(e.database)),null!=e.versionTime){if(!d.isObject(e.versionTime))throw TypeError(".google.spanner.admin.database.v1.Backup.versionTime: object expected");n.versionTime=g.google.protobuf.Timestamp.fromObject(e.versionTime,t+1)}if(null!=e.expireTime){if(!d.isObject(e.expireTime))throw TypeError(".google.spanner.admin.database.v1.Backup.expireTime: object expected");n.expireTime=g.google.protobuf.Timestamp.fromObject(e.expireTime,t+1)}if(null!=e.name&&(n.name=String(e.name)),null!=e.createTime){if(!d.isObject(e.createTime))throw TypeError(".google.spanner.admin.database.v1.Backup.createTime: object expected");n.createTime=g.google.protobuf.Timestamp.fromObject(e.createTime,t+1)}switch(null!=e.sizeBytes&&(d.Long?n.sizeBytes=d.Long.fromValue(e.sizeBytes,!1):"string"==typeof e.sizeBytes?n.sizeBytes=parseInt(e.sizeBytes,10):"number"==typeof e.sizeBytes?n.sizeBytes=e.sizeBytes:"object"==typeof e.sizeBytes&&(n.sizeBytes=new d.LongBits(e.sizeBytes.low>>>0,e.sizeBytes.high>>>0).toNumber())),null!=e.freeableSizeBytes&&(d.Long?n.freeableSizeBytes=d.Long.fromValue(e.freeableSizeBytes,!1):"string"==typeof e.freeableSizeBytes?n.freeableSizeBytes=parseInt(e.freeableSizeBytes,10):"number"==typeof e.freeableSizeBytes?n.freeableSizeBytes=e.freeableSizeBytes:"object"==typeof e.freeableSizeBytes&&(n.freeableSizeBytes=new d.LongBits(e.freeableSizeBytes.low>>>0,e.freeableSizeBytes.high>>>0).toNumber())),null!=e.exclusiveSizeBytes&&(d.Long?n.exclusiveSizeBytes=d.Long.fromValue(e.exclusiveSizeBytes,!1):"string"==typeof e.exclusiveSizeBytes?n.exclusiveSizeBytes=parseInt(e.exclusiveSizeBytes,10):"number"==typeof e.exclusiveSizeBytes?n.exclusiveSizeBytes=e.exclusiveSizeBytes:"object"==typeof e.exclusiveSizeBytes&&(n.exclusiveSizeBytes=new d.LongBits(e.exclusiveSizeBytes.low>>>0,e.exclusiveSizeBytes.high>>>0).toNumber())),e.state){default:"number"==typeof e.state&&(n.state=e.state);break;case"STATE_UNSPECIFIED":case 0:n.state=0;break;case"CREATING":case 1:n.state=1;break;case"READY":case 2:n.state=2}if(e.referencingDatabases){if(!Array.isArray(e.referencingDatabases))throw TypeError(".google.spanner.admin.database.v1.Backup.referencingDatabases: array expected");n.referencingDatabases=[];for(var o=0;o<e.referencingDatabases.length;++o)n.referencingDatabases[o]=String(e.referencingDatabases[o])}if(null!=e.encryptionInfo){if(!d.isObject(e.encryptionInfo))throw TypeError(".google.spanner.admin.database.v1.Backup.encryptionInfo: object expected");n.encryptionInfo=g.google.spanner.admin.database.v1.EncryptionInfo.fromObject(e.encryptionInfo,t+1)}if(e.encryptionInformation){if(!Array.isArray(e.encryptionInformation))throw TypeError(".google.spanner.admin.database.v1.Backup.encryptionInformation: array expected");n.encryptionInformation=[];for(o=0;o<e.encryptionInformation.length;++o){if(!d.isObject(e.encryptionInformation[o]))throw TypeError(".google.spanner.admin.database.v1.Backup.encryptionInformation: object expected");n.encryptionInformation[o]=g.google.spanner.admin.database.v1.EncryptionInfo.fromObject(e.encryptionInformation[o],t+1)}}switch(e.databaseDialect){default:"number"==typeof e.databaseDialect&&(n.databaseDialect=e.databaseDialect);break;case"DATABASE_DIALECT_UNSPECIFIED":case 0:n.databaseDialect=0;break;case"GOOGLE_STANDARD_SQL":case 1:n.databaseDialect=1;break;case"POSTGRESQL":case 2:n.databaseDialect=2}if(e.referencingBackups){if(!Array.isArray(e.referencingBackups))throw TypeError(".google.spanner.admin.database.v1.Backup.referencingBackups: array expected");n.referencingBackups=[];for(o=0;o<e.referencingBackups.length;++o)n.referencingBackups[o]=String(e.referencingBackups[o])}if(null!=e.maxExpireTime){if(!d.isObject(e.maxExpireTime))throw TypeError(".google.spanner.admin.database.v1.Backup.maxExpireTime: object expected");n.maxExpireTime=g.google.protobuf.Timestamp.fromObject(e.maxExpireTime,t+1)}if(e.backupSchedules){if(!Array.isArray(e.backupSchedules))throw TypeError(".google.spanner.admin.database.v1.Backup.backupSchedules: array expected");n.backupSchedules=[];for(o=0;o<e.backupSchedules.length;++o)n.backupSchedules[o]=String(e.backupSchedules[o])}if(null!=e.incrementalBackupChainId&&(n.incrementalBackupChainId=String(e.incrementalBackupChainId)),null!=e.oldestVersionTime){if(!d.isObject(e.oldestVersionTime))throw TypeError(".google.spanner.admin.database.v1.Backup.oldestVersionTime: object expected");n.oldestVersionTime=g.google.protobuf.Timestamp.fromObject(e.oldestVersionTime,t+1)}if(e.instancePartitions){if(!Array.isArray(e.instancePartitions))throw TypeError(".google.spanner.admin.database.v1.Backup.instancePartitions: array expected");n.instancePartitions=[];for(o=0;o<e.instancePartitions.length;++o){if(!d.isObject(e.instancePartitions[o]))throw TypeError(".google.spanner.admin.database.v1.Backup.instancePartitions: object expected");n.instancePartitions[o]=g.google.spanner.admin.database.v1.BackupInstancePartition.fromObject(e.instancePartitions[o],t+1)}}return n},c.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.referencingDatabases=[],r.referencingBackups=[],r.encryptionInformation=[],r.backupSchedules=[],r.instancePartitions=[]),t.defaults&&(r.name="",r.database="",r.expireTime=null,r.createTime=null,d.Long?(o=new d.Long(0,0,!1),r.sizeBytes=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.sizeBytes=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,r.state=t.enums===String?"STATE_UNSPECIFIED":0,r.encryptionInfo=null,r.versionTime=null,r.databaseDialect=t.enums===String?"DATABASE_DIALECT_UNSPECIFIED":0,r.maxExpireTime=null,d.Long?(o=new d.Long(0,0,!1),r.freeableSizeBytes=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.freeableSizeBytes=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,d.Long?(o=new d.Long(0,0,!1),r.exclusiveSizeBytes=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.exclusiveSizeBytes=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,r.incrementalBackupChainId="",r.oldestVersionTime=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(r.name=e.name),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(r.database=e.database),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(r.expireTime=g.google.protobuf.Timestamp.toObject(e.expireTime,t,n+1)),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(r.createTime=g.google.protobuf.Timestamp.toObject(e.createTime,t,n+1)),null!=e.sizeBytes&&Object.hasOwnProperty.call(e,"sizeBytes")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.sizeBytes="number"==typeof e.sizeBytes?BigInt(e.sizeBytes):d.Long.fromBits(e.sizeBytes.low>>>0,e.sizeBytes.high>>>0,!1).toBigInt():"number"==typeof e.sizeBytes?r.sizeBytes=t.longs===String?String(e.sizeBytes):e.sizeBytes:r.sizeBytes=t.longs===String?d.Long.prototype.toString.call(e.sizeBytes):t.longs===Number?new d.LongBits(e.sizeBytes.low>>>0,e.sizeBytes.high>>>0).toNumber():e.sizeBytes),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&(r.state=t.enums!==String||void 0===g.google.spanner.admin.database.v1.Backup.State[e.state]?e.state:g.google.spanner.admin.database.v1.Backup.State[e.state]),e.referencingDatabases&&e.referencingDatabases.length){r.referencingDatabases=[];for(var i=0;i<e.referencingDatabases.length;++i)r.referencingDatabases[i]=e.referencingDatabases[i]}if(null!=e.encryptionInfo&&Object.hasOwnProperty.call(e,"encryptionInfo")&&(r.encryptionInfo=g.google.spanner.admin.database.v1.EncryptionInfo.toObject(e.encryptionInfo,t,n+1)),null!=e.versionTime&&Object.hasOwnProperty.call(e,"versionTime")&&(r.versionTime=g.google.protobuf.Timestamp.toObject(e.versionTime,t,n+1)),null!=e.databaseDialect&&Object.hasOwnProperty.call(e,"databaseDialect")&&(r.databaseDialect=t.enums!==String||void 0===g.google.spanner.admin.database.v1.DatabaseDialect[e.databaseDialect]?e.databaseDialect:g.google.spanner.admin.database.v1.DatabaseDialect[e.databaseDialect]),e.referencingBackups&&e.referencingBackups.length){r.referencingBackups=[];for(i=0;i<e.referencingBackups.length;++i)r.referencingBackups[i]=e.referencingBackups[i]}if(null!=e.maxExpireTime&&Object.hasOwnProperty.call(e,"maxExpireTime")&&(r.maxExpireTime=g.google.protobuf.Timestamp.toObject(e.maxExpireTime,t,n+1)),e.encryptionInformation&&e.encryptionInformation.length){r.encryptionInformation=[];for(i=0;i<e.encryptionInformation.length;++i)r.encryptionInformation[i]=g.google.spanner.admin.database.v1.EncryptionInfo.toObject(e.encryptionInformation[i],t,n+1)}if(e.backupSchedules&&e.backupSchedules.length){r.backupSchedules=[];for(i=0;i<e.backupSchedules.length;++i)r.backupSchedules[i]=e.backupSchedules[i]}if(null!=e.freeableSizeBytes&&Object.hasOwnProperty.call(e,"freeableSizeBytes")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.freeableSizeBytes="number"==typeof e.freeableSizeBytes?BigInt(e.freeableSizeBytes):d.Long.fromBits(e.freeableSizeBytes.low>>>0,e.freeableSizeBytes.high>>>0,!1).toBigInt():"number"==typeof e.freeableSizeBytes?r.freeableSizeBytes=t.longs===String?String(e.freeableSizeBytes):e.freeableSizeBytes:r.freeableSizeBytes=t.longs===String?d.Long.prototype.toString.call(e.freeableSizeBytes):t.longs===Number?new d.LongBits(e.freeableSizeBytes.low>>>0,e.freeableSizeBytes.high>>>0).toNumber():e.freeableSizeBytes),null!=e.exclusiveSizeBytes&&Object.hasOwnProperty.call(e,"exclusiveSizeBytes")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.exclusiveSizeBytes="number"==typeof e.exclusiveSizeBytes?BigInt(e.exclusiveSizeBytes):d.Long.fromBits(e.exclusiveSizeBytes.low>>>0,e.exclusiveSizeBytes.high>>>0,!1).toBigInt():"number"==typeof e.exclusiveSizeBytes?r.exclusiveSizeBytes=t.longs===String?String(e.exclusiveSizeBytes):e.exclusiveSizeBytes:r.exclusiveSizeBytes=t.longs===String?d.Long.prototype.toString.call(e.exclusiveSizeBytes):t.longs===Number?new d.LongBits(e.exclusiveSizeBytes.low>>>0,e.exclusiveSizeBytes.high>>>0).toNumber():e.exclusiveSizeBytes),null!=e.incrementalBackupChainId&&Object.hasOwnProperty.call(e,"incrementalBackupChainId")&&(r.incrementalBackupChainId=e.incrementalBackupChainId),null!=e.oldestVersionTime&&Object.hasOwnProperty.call(e,"oldestVersionTime")&&(r.oldestVersionTime=g.google.protobuf.Timestamp.toObject(e.oldestVersionTime,t,n+1)),e.instancePartitions&&e.instancePartitions.length){r.instancePartitions=[];for(i=0;i<e.instancePartitions.length;++i)r.instancePartitions[i]=g.google.spanner.admin.database.v1.BackupInstancePartition.toObject(e.instancePartitions[i],t,n+1)}return r},c.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},c.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.Backup"},c.State=(t={},(a=Object.create(t))[t[0]="STATE_UNSPECIFIED"]=0,a[t[1]="CREATING"]=1,a[t[2]="READY"]=2,a),c),n.CreateBackupRequest=(B.prototype.parent="",B.prototype.backupId="",B.prototype.backup=null,B.prototype.encryptionConfig=null,B.create=function(e){return new B(e)},B.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&t.uint32(18).string(e.backupId),null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&g.google.spanner.admin.database.v1.Backup.encode(e.backup,t.uint32(26).fork(),n+1).ldelim(),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.encode(e.encryptionConfig,t.uint32(34).fork(),n+1).ldelim(),t},B.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},B.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CreateBackupRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.backupId=e.string();break;case 3:i.backup=g.google.spanner.admin.database.v1.Backup.decode(e,e.uint32(),void 0,o+1);break;case 4:i.encryptionConfig=g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},B.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},B.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&!d.isString(e.backupId))return"backupId: string expected";var n;if(null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&(n=g.google.spanner.admin.database.v1.Backup.verify(e.backup,t+1)))return"backup."+n;if(null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(n=g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.verify(e.encryptionConfig,t+1)))return"encryptionConfig."+n;return null},B.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CreateBackupRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CreateBackupRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.CreateBackupRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.backupId&&(n.backupId=String(e.backupId)),null!=e.backup){if(!d.isObject(e.backup))throw TypeError(".google.spanner.admin.database.v1.CreateBackupRequest.backup: object expected");n.backup=g.google.spanner.admin.database.v1.Backup.fromObject(e.backup,t+1)}if(null!=e.encryptionConfig){if(!d.isObject(e.encryptionConfig))throw TypeError(".google.spanner.admin.database.v1.CreateBackupRequest.encryptionConfig: object expected");n.encryptionConfig=g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.fromObject(e.encryptionConfig,t+1)}return n},B.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.backupId="",o.backup=null,o.encryptionConfig=null),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&(o.backupId=e.backupId),null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&(o.backup=g.google.spanner.admin.database.v1.Backup.toObject(e.backup,t,n+1)),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(o.encryptionConfig=g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.toObject(e.encryptionConfig,t,n+1)),o},B.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},B.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CreateBackupRequest"},B),n.CreateBackupMetadata=(U.prototype.name="",U.prototype.database="",U.prototype.progress=null,U.prototype.cancelTime=null,U.create=function(e){return new U(e)},U.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(18).string(e.database),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&g.google.spanner.admin.database.v1.OperationProgress.encode(e.progress,t.uint32(26).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(34).fork(),n+1).ldelim(),t},U.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},U.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CreateBackupMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.database=e.string();break;case 3:i.progress=g.google.spanner.admin.database.v1.OperationProgress.decode(e,e.uint32(),void 0,o+1);break;case 4:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},U.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},U.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database))return"database: string expected";var n;if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(n=g.google.spanner.admin.database.v1.OperationProgress.verify(e.progress,t+1)))return"progress."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;return null},U.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CreateBackupMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CreateBackupMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.CreateBackupMetadata;if(null!=e.name&&(n.name=String(e.name)),null!=e.database&&(n.database=String(e.database)),null!=e.progress){if(!d.isObject(e.progress))throw TypeError(".google.spanner.admin.database.v1.CreateBackupMetadata.progress: object expected");n.progress=g.google.spanner.admin.database.v1.OperationProgress.fromObject(e.progress,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.database.v1.CreateBackupMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}return n},U.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.database="",o.progress=null,o.cancelTime=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o.database=e.database),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(o.progress=g.google.spanner.admin.database.v1.OperationProgress.toObject(e.progress,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),o},U.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},U.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CreateBackupMetadata"},U),n.CopyBackupRequest=(M.prototype.parent="",M.prototype.backupId="",M.prototype.sourceBackup="",M.prototype.expireTime=null,M.prototype.encryptionConfig=null,M.create=function(e){return new M(e)},M.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&t.uint32(18).string(e.backupId),null!=e.sourceBackup&&Object.hasOwnProperty.call(e,"sourceBackup")&&t.uint32(26).string(e.sourceBackup),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&g.google.protobuf.Timestamp.encode(e.expireTime,t.uint32(34).fork(),n+1).ldelim(),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig.encode(e.encryptionConfig,t.uint32(42).fork(),n+1).ldelim(),t},M.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},M.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CopyBackupRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.backupId=e.string();break;case 3:i.sourceBackup=e.string();break;case 4:i.expireTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 5:i.encryptionConfig=g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},M.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},M.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&!d.isString(e.backupId))return"backupId: string expected";if(null!=e.sourceBackup&&Object.hasOwnProperty.call(e,"sourceBackup")&&!d.isString(e.sourceBackup))return"sourceBackup: string expected";var n;if(null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(n=g.google.protobuf.Timestamp.verify(e.expireTime,t+1)))return"expireTime."+n;if(null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(n=g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig.verify(e.encryptionConfig,t+1)))return"encryptionConfig."+n;return null},M.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CopyBackupRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CopyBackupRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.CopyBackupRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.backupId&&(n.backupId=String(e.backupId)),null!=e.sourceBackup&&(n.sourceBackup=String(e.sourceBackup)),null!=e.expireTime){if(!d.isObject(e.expireTime))throw TypeError(".google.spanner.admin.database.v1.CopyBackupRequest.expireTime: object expected");n.expireTime=g.google.protobuf.Timestamp.fromObject(e.expireTime,t+1)}if(null!=e.encryptionConfig){if(!d.isObject(e.encryptionConfig))throw TypeError(".google.spanner.admin.database.v1.CopyBackupRequest.encryptionConfig: object expected");n.encryptionConfig=g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig.fromObject(e.encryptionConfig,t+1)}return n},M.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.backupId="",o.sourceBackup="",o.expireTime=null,o.encryptionConfig=null),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&(o.backupId=e.backupId),null!=e.sourceBackup&&Object.hasOwnProperty.call(e,"sourceBackup")&&(o.sourceBackup=e.sourceBackup),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(o.expireTime=g.google.protobuf.Timestamp.toObject(e.expireTime,t,n+1)),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(o.encryptionConfig=g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig.toObject(e.encryptionConfig,t,n+1)),o},M.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},M.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CopyBackupRequest"},M),n.CopyBackupMetadata=(q.prototype.name="",q.prototype.sourceBackup="",q.prototype.progress=null,q.prototype.cancelTime=null,q.create=function(e){return new q(e)},q.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.sourceBackup&&Object.hasOwnProperty.call(e,"sourceBackup")&&t.uint32(18).string(e.sourceBackup),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&g.google.spanner.admin.database.v1.OperationProgress.encode(e.progress,t.uint32(26).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(34).fork(),n+1).ldelim(),t},q.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},q.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CopyBackupMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.sourceBackup=e.string();break;case 3:i.progress=g.google.spanner.admin.database.v1.OperationProgress.decode(e,e.uint32(),void 0,o+1);break;case 4:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},q.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},q.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.sourceBackup&&Object.hasOwnProperty.call(e,"sourceBackup")&&!d.isString(e.sourceBackup))return"sourceBackup: string expected";var n;if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(n=g.google.spanner.admin.database.v1.OperationProgress.verify(e.progress,t+1)))return"progress."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;return null},q.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CopyBackupMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CopyBackupMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.CopyBackupMetadata;if(null!=e.name&&(n.name=String(e.name)),null!=e.sourceBackup&&(n.sourceBackup=String(e.sourceBackup)),null!=e.progress){if(!d.isObject(e.progress))throw TypeError(".google.spanner.admin.database.v1.CopyBackupMetadata.progress: object expected");n.progress=g.google.spanner.admin.database.v1.OperationProgress.fromObject(e.progress,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.database.v1.CopyBackupMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}return n},q.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.sourceBackup="",o.progress=null,o.cancelTime=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.sourceBackup&&Object.hasOwnProperty.call(e,"sourceBackup")&&(o.sourceBackup=e.sourceBackup),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(o.progress=g.google.spanner.admin.database.v1.OperationProgress.toObject(e.progress,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),o},q.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},q.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CopyBackupMetadata"},q),n.UpdateBackupRequest=(V.prototype.backup=null,V.prototype.updateMask=null,V.create=function(e){return new V(e)},V.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&g.google.spanner.admin.database.v1.Backup.encode(e.backup,t.uint32(10).fork(),n+1).ldelim(),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&g.google.protobuf.FieldMask.encode(e.updateMask,t.uint32(18).fork(),n+1).ldelim(),t},V.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},V.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.UpdateBackupRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.backup=g.google.spanner.admin.database.v1.Backup.decode(e,e.uint32(),void 0,o+1);break;case 2:i.updateMask=g.google.protobuf.FieldMask.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},V.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},V.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&(n=g.google.spanner.admin.database.v1.Backup.verify(e.backup,t+1)))return"backup."+n;if(null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(n=g.google.protobuf.FieldMask.verify(e.updateMask,t+1)))return"updateMask."+n;return null},V.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.UpdateBackupRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.UpdateBackupRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.UpdateBackupRequest;if(null!=e.backup){if(!d.isObject(e.backup))throw TypeError(".google.spanner.admin.database.v1.UpdateBackupRequest.backup: object expected");n.backup=g.google.spanner.admin.database.v1.Backup.fromObject(e.backup,t+1)}if(null!=e.updateMask){if(!d.isObject(e.updateMask))throw TypeError(".google.spanner.admin.database.v1.UpdateBackupRequest.updateMask: object expected");n.updateMask=g.google.protobuf.FieldMask.fromObject(e.updateMask,t+1)}return n},V.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.backup=null,o.updateMask=null),null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&(o.backup=g.google.spanner.admin.database.v1.Backup.toObject(e.backup,t,n+1)),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(o.updateMask=g.google.protobuf.FieldMask.toObject(e.updateMask,t,n+1)),o},V.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},V.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.UpdateBackupRequest"},V),n.GetBackupRequest=(F.prototype.name="",F.create=function(e){return new F(e)},F.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},F.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},F.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.GetBackupRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},F.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},F.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},F.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.GetBackupRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.GetBackupRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.GetBackupRequest;return null!=e.name&&(t.name=String(e.name)),t},F.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},F.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},F.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.GetBackupRequest"},F),n.DeleteBackupRequest=(G.prototype.name="",G.create=function(e){return new G(e)},G.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},G.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},G.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.DeleteBackupRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},G.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},G.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},G.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.DeleteBackupRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.DeleteBackupRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.DeleteBackupRequest;return null!=e.name&&(t.name=String(e.name)),t},G.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},G.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},G.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.DeleteBackupRequest"},G),n.ListBackupsRequest=(J.prototype.parent="",J.prototype.filter="",J.prototype.pageSize=0,J.prototype.pageToken="",J.create=function(e){return new J(e)},J.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(18).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(24).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(34).string(e.pageToken),t},J.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},J.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListBackupsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.filter=e.string();break;case 3:i.pageSize=e.int32();break;case 4:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},J.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},J.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent)?"parent: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},J.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListBackupsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListBackupsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.ListBackupsRequest;return null!=e.parent&&(t.parent=String(e.parent)),null!=e.filter&&(t.filter=String(e.filter)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},J.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.parent="",n.filter="",n.pageSize=0,n.pageToken=""),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(n.parent=e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},J.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},J.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListBackupsRequest"},J),n.ListBackupsResponse=(z.prototype.backups=d.emptyArray,z.prototype.nextPageToken="",z.create=function(e){return new z(e)},z.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.backups&&e.backups.length)for(var o=0;o<e.backups.length;++o)g.google.spanner.admin.database.v1.Backup.encode(e.backups[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},z.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},z.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListBackupsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.backups&&i.backups.length||(i.backups=[]),i.backups.push(g.google.spanner.admin.database.v1.Backup.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},z.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},z.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.backups&&Object.hasOwnProperty.call(e,"backups")){if(!Array.isArray(e.backups))return"backups: array expected";for(var n=0;n<e.backups.length;++n){var o=g.google.spanner.admin.database.v1.Backup.verify(e.backups[n],t+1);if(o)return"backups."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},z.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListBackupsResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListBackupsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.ListBackupsResponse;if(e.backups){if(!Array.isArray(e.backups))throw TypeError(".google.spanner.admin.database.v1.ListBackupsResponse.backups: array expected");n.backups=[];for(var o=0;o<e.backups.length;++o){if(!d.isObject(e.backups[o]))throw TypeError(".google.spanner.admin.database.v1.ListBackupsResponse.backups: object expected");n.backups[o]=g.google.spanner.admin.database.v1.Backup.fromObject(e.backups[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},z.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.backups=[]),t.defaults&&(o.nextPageToken=""),e.backups&&e.backups.length){o.backups=[];for(var r=0;r<e.backups.length;++r)o.backups[r]=g.google.spanner.admin.database.v1.Backup.toObject(e.backups[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},z.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},z.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListBackupsResponse"},z),n.ListBackupOperationsRequest=(K.prototype.parent="",K.prototype.filter="",K.prototype.pageSize=0,K.prototype.pageToken="",K.create=function(e){return new K(e)},K.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(18).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(24).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(34).string(e.pageToken),t},K.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},K.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListBackupOperationsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.filter=e.string();break;case 3:i.pageSize=e.int32();break;case 4:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},K.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},K.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent)?"parent: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},K.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListBackupOperationsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListBackupOperationsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.ListBackupOperationsRequest;return null!=e.parent&&(t.parent=String(e.parent)),null!=e.filter&&(t.filter=String(e.filter)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},K.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.parent="",n.filter="",n.pageSize=0,n.pageToken=""),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(n.parent=e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},K.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},K.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListBackupOperationsRequest"},K),n.ListBackupOperationsResponse=(H.prototype.operations=d.emptyArray,H.prototype.nextPageToken="",H.create=function(e){return new H(e)},H.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.operations&&e.operations.length)for(var o=0;o<e.operations.length;++o)g.google.longrunning.Operation.encode(e.operations[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},H.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},H.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListBackupOperationsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.operations&&i.operations.length||(i.operations=[]),i.operations.push(g.google.longrunning.Operation.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},H.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},H.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.operations&&Object.hasOwnProperty.call(e,"operations")){if(!Array.isArray(e.operations))return"operations: array expected";for(var n=0;n<e.operations.length;++n){var o=g.google.longrunning.Operation.verify(e.operations[n],t+1);if(o)return"operations."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},H.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListBackupOperationsResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListBackupOperationsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.ListBackupOperationsResponse;if(e.operations){if(!Array.isArray(e.operations))throw TypeError(".google.spanner.admin.database.v1.ListBackupOperationsResponse.operations: array expected");n.operations=[];for(var o=0;o<e.operations.length;++o){if(!d.isObject(e.operations[o]))throw TypeError(".google.spanner.admin.database.v1.ListBackupOperationsResponse.operations: object expected");n.operations[o]=g.google.longrunning.Operation.fromObject(e.operations[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},H.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.operations=[]),t.defaults&&(o.nextPageToken=""),e.operations&&e.operations.length){o.operations=[];for(var r=0;r<e.operations.length;++r)o.operations[r]=g.google.longrunning.Operation.toObject(e.operations[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},H.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},H.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListBackupOperationsResponse"},H),n.BackupInfo=(Y.prototype.backup="",Y.prototype.versionTime=null,Y.prototype.createTime=null,Y.prototype.sourceDatabase="",Y.create=function(e){return new Y(e)},Y.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&t.uint32(10).string(e.backup),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&g.google.protobuf.Timestamp.encode(e.createTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.sourceDatabase&&Object.hasOwnProperty.call(e,"sourceDatabase")&&t.uint32(26).string(e.sourceDatabase),null!=e.versionTime&&Object.hasOwnProperty.call(e,"versionTime")&&g.google.protobuf.Timestamp.encode(e.versionTime,t.uint32(34).fork(),n+1).ldelim(),t},Y.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Y.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.BackupInfo;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.backup=e.string();break;case 4:i.versionTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.createTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.sourceDatabase=e.string();break;default:e.skipType(7&a,o)}}return i},Y.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Y.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&!d.isString(e.backup))return"backup: string expected";var n;if(null!=e.versionTime&&Object.hasOwnProperty.call(e,"versionTime")&&(n=g.google.protobuf.Timestamp.verify(e.versionTime,t+1)))return"versionTime."+n;if(null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(n=g.google.protobuf.Timestamp.verify(e.createTime,t+1)))return"createTime."+n;return null!=e.sourceDatabase&&Object.hasOwnProperty.call(e,"sourceDatabase")&&!d.isString(e.sourceDatabase)?"sourceDatabase: string expected":null},Y.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.BackupInfo)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.BackupInfo: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.BackupInfo;if(null!=e.backup&&(n.backup=String(e.backup)),null!=e.versionTime){if(!d.isObject(e.versionTime))throw TypeError(".google.spanner.admin.database.v1.BackupInfo.versionTime: object expected");n.versionTime=g.google.protobuf.Timestamp.fromObject(e.versionTime,t+1)}if(null!=e.createTime){if(!d.isObject(e.createTime))throw TypeError(".google.spanner.admin.database.v1.BackupInfo.createTime: object expected");n.createTime=g.google.protobuf.Timestamp.fromObject(e.createTime,t+1)}return null!=e.sourceDatabase&&(n.sourceDatabase=String(e.sourceDatabase)),n},Y.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.backup="",o.createTime=null,o.sourceDatabase="",o.versionTime=null),null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&(o.backup=e.backup),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(o.createTime=g.google.protobuf.Timestamp.toObject(e.createTime,t,n+1)),null!=e.sourceDatabase&&Object.hasOwnProperty.call(e,"sourceDatabase")&&(o.sourceDatabase=e.sourceDatabase),null!=e.versionTime&&Object.hasOwnProperty.call(e,"versionTime")&&(o.versionTime=g.google.protobuf.Timestamp.toObject(e.versionTime,t,n+1)),o},Y.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Y.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.BackupInfo"},Y),n.CreateBackupEncryptionConfig=(Q.prototype.encryptionType=0,Q.prototype.kmsKeyName="",Q.prototype.kmsKeyNames=d.emptyArray,Q.create=function(e){return new Q(e)},Q.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType")&&t.uint32(8).int32(e.encryptionType),null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&t.uint32(18).string(e.kmsKeyName),null!=e.kmsKeyNames&&e.kmsKeyNames.length)for(var o=0;o<e.kmsKeyNames.length;++o)t.uint32(26).string(e.kmsKeyNames[o]);return t},Q.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Q.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.encryptionType=e.int32();break;case 2:i.kmsKeyName=e.string();break;case 3:i.kmsKeyNames&&i.kmsKeyNames.length||(i.kmsKeyNames=[]),i.kmsKeyNames.push(e.string());break;default:e.skipType(7&a,o)}}return i},Q.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Q.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType"))switch(e.encryptionType){default:return"encryptionType: enum value expected";case 0:case 1:case 2:case 3:}if(null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&!d.isString(e.kmsKeyName))return"kmsKeyName: string expected";if(null!=e.kmsKeyNames&&Object.hasOwnProperty.call(e,"kmsKeyNames")){if(!Array.isArray(e.kmsKeyNames))return"kmsKeyNames: array expected";for(var n=0;n<e.kmsKeyNames.length;++n)if(!d.isString(e.kmsKeyNames[n]))return"kmsKeyNames: string[] expected"}return null},Q.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CreateBackupEncryptionConfig: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig;switch(e.encryptionType){default:"number"==typeof e.encryptionType&&(n.encryptionType=e.encryptionType);break;case"ENCRYPTION_TYPE_UNSPECIFIED":case 0:n.encryptionType=0;break;case"USE_DATABASE_ENCRYPTION":case 1:n.encryptionType=1;break;case"GOOGLE_DEFAULT_ENCRYPTION":case 2:n.encryptionType=2;break;case"CUSTOMER_MANAGED_ENCRYPTION":case 3:n.encryptionType=3}if(null!=e.kmsKeyName&&(n.kmsKeyName=String(e.kmsKeyName)),e.kmsKeyNames){if(!Array.isArray(e.kmsKeyNames))throw TypeError(".google.spanner.admin.database.v1.CreateBackupEncryptionConfig.kmsKeyNames: array expected");n.kmsKeyNames=[];for(var o=0;o<e.kmsKeyNames.length;++o)n.kmsKeyNames[o]=String(e.kmsKeyNames[o])}return n},Q.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.kmsKeyNames=[]),t.defaults&&(o.encryptionType=t.enums===String?"ENCRYPTION_TYPE_UNSPECIFIED":0,o.kmsKeyName=""),null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType")&&(o.encryptionType=t.enums!==String||void 0===g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.EncryptionType[e.encryptionType]?e.encryptionType:g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.EncryptionType[e.encryptionType]),null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&(o.kmsKeyName=e.kmsKeyName),e.kmsKeyNames&&e.kmsKeyNames.length){o.kmsKeyNames=[];for(var r=0;r<e.kmsKeyNames.length;++r)o.kmsKeyNames[r]=e.kmsKeyNames[r]}return o},Q.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Q.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CreateBackupEncryptionConfig"},Q.EncryptionType=(t={},(a=Object.create(t))[t[0]="ENCRYPTION_TYPE_UNSPECIFIED"]=0,a[t[1]="USE_DATABASE_ENCRYPTION"]=1,a[t[2]="GOOGLE_DEFAULT_ENCRYPTION"]=2,a[t[3]="CUSTOMER_MANAGED_ENCRYPTION"]=3,a),Q),n.CopyBackupEncryptionConfig=(W.prototype.encryptionType=0,W.prototype.kmsKeyName="",W.prototype.kmsKeyNames=d.emptyArray,W.create=function(e){return new W(e)},W.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType")&&t.uint32(8).int32(e.encryptionType),null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&t.uint32(18).string(e.kmsKeyName),null!=e.kmsKeyNames&&e.kmsKeyNames.length)for(var o=0;o<e.kmsKeyNames.length;++o)t.uint32(26).string(e.kmsKeyNames[o]);return t},W.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},W.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.encryptionType=e.int32();break;case 2:i.kmsKeyName=e.string();break;case 3:i.kmsKeyNames&&i.kmsKeyNames.length||(i.kmsKeyNames=[]),i.kmsKeyNames.push(e.string());break;default:e.skipType(7&a,o)}}return i},W.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},W.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType"))switch(e.encryptionType){default:return"encryptionType: enum value expected";case 0:case 1:case 2:case 3:}if(null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&!d.isString(e.kmsKeyName))return"kmsKeyName: string expected";if(null!=e.kmsKeyNames&&Object.hasOwnProperty.call(e,"kmsKeyNames")){if(!Array.isArray(e.kmsKeyNames))return"kmsKeyNames: array expected";for(var n=0;n<e.kmsKeyNames.length;++n)if(!d.isString(e.kmsKeyNames[n]))return"kmsKeyNames: string[] expected"}return null},W.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CopyBackupEncryptionConfig: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig;switch(e.encryptionType){default:"number"==typeof e.encryptionType&&(n.encryptionType=e.encryptionType);break;case"ENCRYPTION_TYPE_UNSPECIFIED":case 0:n.encryptionType=0;break;case"USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION":case 1:n.encryptionType=1;break;case"GOOGLE_DEFAULT_ENCRYPTION":case 2:n.encryptionType=2;break;case"CUSTOMER_MANAGED_ENCRYPTION":case 3:n.encryptionType=3}if(null!=e.kmsKeyName&&(n.kmsKeyName=String(e.kmsKeyName)),e.kmsKeyNames){if(!Array.isArray(e.kmsKeyNames))throw TypeError(".google.spanner.admin.database.v1.CopyBackupEncryptionConfig.kmsKeyNames: array expected");n.kmsKeyNames=[];for(var o=0;o<e.kmsKeyNames.length;++o)n.kmsKeyNames[o]=String(e.kmsKeyNames[o])}return n},W.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.kmsKeyNames=[]),t.defaults&&(o.encryptionType=t.enums===String?"ENCRYPTION_TYPE_UNSPECIFIED":0,o.kmsKeyName=""),null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType")&&(o.encryptionType=t.enums!==String||void 0===g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig.EncryptionType[e.encryptionType]?e.encryptionType:g.google.spanner.admin.database.v1.CopyBackupEncryptionConfig.EncryptionType[e.encryptionType]),null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&(o.kmsKeyName=e.kmsKeyName),e.kmsKeyNames&&e.kmsKeyNames.length){o.kmsKeyNames=[];for(var r=0;r<e.kmsKeyNames.length;++r)o.kmsKeyNames[r]=e.kmsKeyNames[r]}return o},W.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},W.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CopyBackupEncryptionConfig"},W.EncryptionType=(t={},(a=Object.create(t))[t[0]="ENCRYPTION_TYPE_UNSPECIFIED"]=0,a[t[1]="USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION"]=1,a[t[2]="GOOGLE_DEFAULT_ENCRYPTION"]=2,a[t[3]="CUSTOMER_MANAGED_ENCRYPTION"]=3,a),W),n.FullBackupSpec=(X.create=function(e){return new X(e)},X.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return t},X.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},X.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,t=new g.google.spanner.admin.database.v1.FullBackupSpec;e.pos<r;){var i=e.uint32();if(i===n)break;e.skipType(7&i,o)}return t},X.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},X.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null},X.fromObject=function(e,t){return e instanceof g.google.spanner.admin.database.v1.FullBackupSpec?e:new g.google.spanner.admin.database.v1.FullBackupSpec},X.toObject=function(){return{}},X.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},X.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.FullBackupSpec"},X),n.IncrementalBackupSpec=(Z.create=function(e){return new Z(e)},Z.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return t},Z.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Z.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,t=new g.google.spanner.admin.database.v1.IncrementalBackupSpec;e.pos<r;){var i=e.uint32();if(i===n)break;e.skipType(7&i,o)}return t},Z.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Z.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null},Z.fromObject=function(e,t){return e instanceof g.google.spanner.admin.database.v1.IncrementalBackupSpec?e:new g.google.spanner.admin.database.v1.IncrementalBackupSpec},Z.toObject=function(){return{}},Z.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Z.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.IncrementalBackupSpec"},Z),n.BackupInstancePartition=($.prototype.instancePartition="",$.create=function(e){return new $(e)},$.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&t.uint32(10).string(e.instancePartition),t},$.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},$.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.BackupInstancePartition;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.instancePartition=e.string():e.skipType(7&a,o)}return i},$.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},$.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&!d.isString(e.instancePartition)?"instancePartition: string expected":null},$.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.BackupInstancePartition)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.BackupInstancePartition: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.BackupInstancePartition;return null!=e.instancePartition&&(t.instancePartition=String(e.instancePartition)),t},$.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.instancePartition=""),null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&(n.instancePartition=e.instancePartition),n},$.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},$.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.BackupInstancePartition"},$),n.OperationProgress=(ee.prototype.progressPercent=0,ee.prototype.startTime=null,ee.prototype.endTime=null,ee.create=function(e){return new ee(e)},ee.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.progressPercent&&Object.hasOwnProperty.call(e,"progressPercent")&&t.uint32(8).int32(e.progressPercent),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&g.google.protobuf.Timestamp.encode(e.startTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&g.google.protobuf.Timestamp.encode(e.endTime,t.uint32(26).fork(),n+1).ldelim(),t},ee.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ee.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.OperationProgress;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.progressPercent=e.int32();break;case 2:i.startTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.endTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ee.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ee.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.progressPercent&&Object.hasOwnProperty.call(e,"progressPercent")&&!d.isInteger(e.progressPercent))return"progressPercent: integer expected";var n;if(null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(n=g.google.protobuf.Timestamp.verify(e.startTime,t+1)))return"startTime."+n;if(null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(n=g.google.protobuf.Timestamp.verify(e.endTime,t+1)))return"endTime."+n;return null},ee.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.OperationProgress)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.OperationProgress: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.OperationProgress;if(null!=e.progressPercent&&(n.progressPercent=0|e.progressPercent),null!=e.startTime){if(!d.isObject(e.startTime))throw TypeError(".google.spanner.admin.database.v1.OperationProgress.startTime: object expected");n.startTime=g.google.protobuf.Timestamp.fromObject(e.startTime,t+1)}if(null!=e.endTime){if(!d.isObject(e.endTime))throw TypeError(".google.spanner.admin.database.v1.OperationProgress.endTime: object expected");n.endTime=g.google.protobuf.Timestamp.fromObject(e.endTime,t+1)}return n},ee.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.progressPercent=0,o.startTime=null,o.endTime=null),null!=e.progressPercent&&Object.hasOwnProperty.call(e,"progressPercent")&&(o.progressPercent=e.progressPercent),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(o.startTime=g.google.protobuf.Timestamp.toObject(e.startTime,t,n+1)),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(o.endTime=g.google.protobuf.Timestamp.toObject(e.endTime,t,n+1)),o},ee.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ee.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.OperationProgress"},ee),n.EncryptionConfig=(te.prototype.kmsKeyName="",te.prototype.kmsKeyNames=d.emptyArray,te.create=function(e){return new te(e)},te.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&t.uint32(18).string(e.kmsKeyName),null!=e.kmsKeyNames&&e.kmsKeyNames.length)for(var o=0;o<e.kmsKeyNames.length;++o)t.uint32(26).string(e.kmsKeyNames[o]);return t},te.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},te.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.EncryptionConfig;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 2:i.kmsKeyName=e.string();break;case 3:i.kmsKeyNames&&i.kmsKeyNames.length||(i.kmsKeyNames=[]),i.kmsKeyNames.push(e.string());break;default:e.skipType(7&a,o)}}return i},te.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},te.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&!d.isString(e.kmsKeyName))return"kmsKeyName: string expected";if(null!=e.kmsKeyNames&&Object.hasOwnProperty.call(e,"kmsKeyNames")){if(!Array.isArray(e.kmsKeyNames))return"kmsKeyNames: array expected";for(var n=0;n<e.kmsKeyNames.length;++n)if(!d.isString(e.kmsKeyNames[n]))return"kmsKeyNames: string[] expected"}return null},te.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.EncryptionConfig)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.EncryptionConfig: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.EncryptionConfig;if(null!=e.kmsKeyName&&(n.kmsKeyName=String(e.kmsKeyName)),e.kmsKeyNames){if(!Array.isArray(e.kmsKeyNames))throw TypeError(".google.spanner.admin.database.v1.EncryptionConfig.kmsKeyNames: array expected");n.kmsKeyNames=[];for(var o=0;o<e.kmsKeyNames.length;++o)n.kmsKeyNames[o]=String(e.kmsKeyNames[o])}return n},te.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.kmsKeyNames=[]),t.defaults&&(o.kmsKeyName=""),null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&(o.kmsKeyName=e.kmsKeyName),e.kmsKeyNames&&e.kmsKeyNames.length){o.kmsKeyNames=[];for(var r=0;r<e.kmsKeyNames.length;++r)o.kmsKeyNames[r]=e.kmsKeyNames[r]}return o},te.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},te.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.EncryptionConfig"},te),n.EncryptionInfo=(ne.prototype.encryptionType=0,ne.prototype.encryptionStatus=null,ne.prototype.kmsKeyVersion="",ne.create=function(e){return new ne(e)},ne.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.kmsKeyVersion&&Object.hasOwnProperty.call(e,"kmsKeyVersion")&&t.uint32(18).string(e.kmsKeyVersion),null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType")&&t.uint32(24).int32(e.encryptionType),null!=e.encryptionStatus&&Object.hasOwnProperty.call(e,"encryptionStatus")&&g.google.rpc.Status.encode(e.encryptionStatus,t.uint32(34).fork(),n+1).ldelim(),t},ne.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ne.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.EncryptionInfo;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 3:i.encryptionType=e.int32();break;case 4:i.encryptionStatus=g.google.rpc.Status.decode(e,e.uint32(),void 0,o+1);break;case 2:i.kmsKeyVersion=e.string();break;default:e.skipType(7&a,o)}}return i},ne.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ne.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType"))switch(e.encryptionType){default:return"encryptionType: enum value expected";case 0:case 1:case 2:}if(null!=e.encryptionStatus&&Object.hasOwnProperty.call(e,"encryptionStatus")){t=g.google.rpc.Status.verify(e.encryptionStatus,t+1);if(t)return"encryptionStatus."+t}return null!=e.kmsKeyVersion&&Object.hasOwnProperty.call(e,"kmsKeyVersion")&&!d.isString(e.kmsKeyVersion)?"kmsKeyVersion: string expected":null},ne.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.EncryptionInfo)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.EncryptionInfo: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.EncryptionInfo;switch(e.encryptionType){default:"number"==typeof e.encryptionType&&(n.encryptionType=e.encryptionType);break;case"TYPE_UNSPECIFIED":case 0:n.encryptionType=0;break;case"GOOGLE_DEFAULT_ENCRYPTION":case 1:n.encryptionType=1;break;case"CUSTOMER_MANAGED_ENCRYPTION":case 2:n.encryptionType=2}if(null!=e.encryptionStatus){if(!d.isObject(e.encryptionStatus))throw TypeError(".google.spanner.admin.database.v1.EncryptionInfo.encryptionStatus: object expected");n.encryptionStatus=g.google.rpc.Status.fromObject(e.encryptionStatus,t+1)}return null!=e.kmsKeyVersion&&(n.kmsKeyVersion=String(e.kmsKeyVersion)),n},ne.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.kmsKeyVersion="",o.encryptionType=t.enums===String?"TYPE_UNSPECIFIED":0,o.encryptionStatus=null),null!=e.kmsKeyVersion&&Object.hasOwnProperty.call(e,"kmsKeyVersion")&&(o.kmsKeyVersion=e.kmsKeyVersion),null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType")&&(o.encryptionType=t.enums!==String||void 0===g.google.spanner.admin.database.v1.EncryptionInfo.Type[e.encryptionType]?e.encryptionType:g.google.spanner.admin.database.v1.EncryptionInfo.Type[e.encryptionType]),null!=e.encryptionStatus&&Object.hasOwnProperty.call(e,"encryptionStatus")&&(o.encryptionStatus=g.google.rpc.Status.toObject(e.encryptionStatus,t,n+1)),o},ne.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ne.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.EncryptionInfo"},ne.Type=(t={},(a=Object.create(t))[t[0]="TYPE_UNSPECIFIED"]=0,a[t[1]="GOOGLE_DEFAULT_ENCRYPTION"]=1,a[t[2]="CUSTOMER_MANAGED_ENCRYPTION"]=2,a),ne),n.DatabaseDialect=(t={},(a=Object.create(t))[t[0]="DATABASE_DIALECT_UNSPECIFIED"]=0,a[t[1]="GOOGLE_STANDARD_SQL"]=1,a[t[2]="POSTGRESQL"]=2,a),n.BackupScheduleSpec=(oe.prototype.cronSpec=null,Object.defineProperty(oe.prototype,"scheduleSpec",{get:d.oneOfGetter(t=["cronSpec"]),set:d.oneOfSetter(t)}),oe.create=function(e){return new oe(e)},oe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.cronSpec&&Object.hasOwnProperty.call(e,"cronSpec")&&g.google.spanner.admin.database.v1.CrontabSpec.encode(e.cronSpec,t.uint32(10).fork(),n+1).ldelim(),t},oe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},oe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.BackupScheduleSpec;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.cronSpec=g.google.spanner.admin.database.v1.CrontabSpec.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},oe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},oe.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.cronSpec&&Object.hasOwnProperty.call(e,"cronSpec")){e=g.google.spanner.admin.database.v1.CrontabSpec.verify(e.cronSpec,t+1);if(e)return"cronSpec."+e}return null},oe.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.BackupScheduleSpec)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.BackupScheduleSpec: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.BackupScheduleSpec;if(null!=e.cronSpec){if(!d.isObject(e.cronSpec))throw TypeError(".google.spanner.admin.database.v1.BackupScheduleSpec.cronSpec: object expected");n.cronSpec=g.google.spanner.admin.database.v1.CrontabSpec.fromObject(e.cronSpec,t+1)}return n},oe.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.cronSpec&&Object.hasOwnProperty.call(e,"cronSpec")&&(o.cronSpec=g.google.spanner.admin.database.v1.CrontabSpec.toObject(e.cronSpec,t,n+1),t.oneofs)&&(o.scheduleSpec="cronSpec"),o},oe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},oe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.BackupScheduleSpec"},oe),n.BackupSchedule=(re.prototype.name="",re.prototype.spec=null,re.prototype.retentionDuration=null,re.prototype.encryptionConfig=null,re.prototype.fullBackupSpec=null,re.prototype.incrementalBackupSpec=null,re.prototype.updateTime=null,Object.defineProperty(re.prototype,"backupTypeSpec",{get:d.oneOfGetter(a=["fullBackupSpec","incrementalBackupSpec"]),set:d.oneOfSetter(a)}),re.create=function(e){return new re(e)},re.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.retentionDuration&&Object.hasOwnProperty.call(e,"retentionDuration")&&g.google.protobuf.Duration.encode(e.retentionDuration,t.uint32(26).fork(),n+1).ldelim(),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.encode(e.encryptionConfig,t.uint32(34).fork(),n+1).ldelim(),null!=e.spec&&Object.hasOwnProperty.call(e,"spec")&&g.google.spanner.admin.database.v1.BackupScheduleSpec.encode(e.spec,t.uint32(50).fork(),n+1).ldelim(),null!=e.fullBackupSpec&&Object.hasOwnProperty.call(e,"fullBackupSpec")&&g.google.spanner.admin.database.v1.FullBackupSpec.encode(e.fullBackupSpec,t.uint32(58).fork(),n+1).ldelim(),null!=e.incrementalBackupSpec&&Object.hasOwnProperty.call(e,"incrementalBackupSpec")&&g.google.spanner.admin.database.v1.IncrementalBackupSpec.encode(e.incrementalBackupSpec,t.uint32(66).fork(),n+1).ldelim(),null!=e.updateTime&&Object.hasOwnProperty.call(e,"updateTime")&&g.google.protobuf.Timestamp.encode(e.updateTime,t.uint32(74).fork(),n+1).ldelim(),t},re.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},re.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.BackupSchedule;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 6:i.spec=g.google.spanner.admin.database.v1.BackupScheduleSpec.decode(e,e.uint32(),void 0,o+1);break;case 3:i.retentionDuration=g.google.protobuf.Duration.decode(e,e.uint32(),void 0,o+1);break;case 4:i.encryptionConfig=g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.decode(e,e.uint32(),void 0,o+1);break;case 7:i.fullBackupSpec=g.google.spanner.admin.database.v1.FullBackupSpec.decode(e,e.uint32(),void 0,o+1);break;case 8:i.incrementalBackupSpec=g.google.spanner.admin.database.v1.IncrementalBackupSpec.decode(e,e.uint32(),void 0,o+1);break;case 9:i.updateTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},re.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},re.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.spec&&Object.hasOwnProperty.call(e,"spec")&&(n=g.google.spanner.admin.database.v1.BackupScheduleSpec.verify(e.spec,t+1)))return"spec."+n;if(null!=e.retentionDuration&&Object.hasOwnProperty.call(e,"retentionDuration")&&(n=g.google.protobuf.Duration.verify(e.retentionDuration,t+1)))return"retentionDuration."+n;if(null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(n=g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.verify(e.encryptionConfig,t+1)))return"encryptionConfig."+n;if(null!=e.fullBackupSpec&&Object.hasOwnProperty.call(e,"fullBackupSpec")&&(n=g.google.spanner.admin.database.v1.FullBackupSpec.verify(e.fullBackupSpec,t+(o.backupTypeSpec=1))))return"fullBackupSpec."+n;if(null!=e.incrementalBackupSpec&&Object.hasOwnProperty.call(e,"incrementalBackupSpec")){if(1===o.backupTypeSpec)return"backupTypeSpec: multiple values";if(n=g.google.spanner.admin.database.v1.IncrementalBackupSpec.verify(e.incrementalBackupSpec,t+(o.backupTypeSpec=1)))return"incrementalBackupSpec."+n}if(null!=e.updateTime&&Object.hasOwnProperty.call(e,"updateTime")&&(n=g.google.protobuf.Timestamp.verify(e.updateTime,t+1)))return"updateTime."+n;return null},re.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.BackupSchedule)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.BackupSchedule: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.BackupSchedule;if(null!=e.name&&(n.name=String(e.name)),null!=e.spec){if(!d.isObject(e.spec))throw TypeError(".google.spanner.admin.database.v1.BackupSchedule.spec: object expected");n.spec=g.google.spanner.admin.database.v1.BackupScheduleSpec.fromObject(e.spec,t+1)}if(null!=e.retentionDuration){if(!d.isObject(e.retentionDuration))throw TypeError(".google.spanner.admin.database.v1.BackupSchedule.retentionDuration: object expected");n.retentionDuration=g.google.protobuf.Duration.fromObject(e.retentionDuration,t+1)}if(null!=e.encryptionConfig){if(!d.isObject(e.encryptionConfig))throw TypeError(".google.spanner.admin.database.v1.BackupSchedule.encryptionConfig: object expected");n.encryptionConfig=g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.fromObject(e.encryptionConfig,t+1)}if(null!=e.fullBackupSpec){if(!d.isObject(e.fullBackupSpec))throw TypeError(".google.spanner.admin.database.v1.BackupSchedule.fullBackupSpec: object expected");n.fullBackupSpec=g.google.spanner.admin.database.v1.FullBackupSpec.fromObject(e.fullBackupSpec,t+1)}if(null!=e.incrementalBackupSpec){if(!d.isObject(e.incrementalBackupSpec))throw TypeError(".google.spanner.admin.database.v1.BackupSchedule.incrementalBackupSpec: object expected");n.incrementalBackupSpec=g.google.spanner.admin.database.v1.IncrementalBackupSpec.fromObject(e.incrementalBackupSpec,t+1)}if(null!=e.updateTime){if(!d.isObject(e.updateTime))throw TypeError(".google.spanner.admin.database.v1.BackupSchedule.updateTime: object expected");n.updateTime=g.google.protobuf.Timestamp.fromObject(e.updateTime,t+1)}return n},re.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.retentionDuration=null,o.encryptionConfig=null,o.spec=null,o.updateTime=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.retentionDuration&&Object.hasOwnProperty.call(e,"retentionDuration")&&(o.retentionDuration=g.google.protobuf.Duration.toObject(e.retentionDuration,t,n+1)),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(o.encryptionConfig=g.google.spanner.admin.database.v1.CreateBackupEncryptionConfig.toObject(e.encryptionConfig,t,n+1)),null!=e.spec&&Object.hasOwnProperty.call(e,"spec")&&(o.spec=g.google.spanner.admin.database.v1.BackupScheduleSpec.toObject(e.spec,t,n+1)),null!=e.fullBackupSpec&&Object.hasOwnProperty.call(e,"fullBackupSpec")&&(o.fullBackupSpec=g.google.spanner.admin.database.v1.FullBackupSpec.toObject(e.fullBackupSpec,t,n+1),t.oneofs)&&(o.backupTypeSpec="fullBackupSpec"),null!=e.incrementalBackupSpec&&Object.hasOwnProperty.call(e,"incrementalBackupSpec")&&(o.incrementalBackupSpec=g.google.spanner.admin.database.v1.IncrementalBackupSpec.toObject(e.incrementalBackupSpec,t,n+1),t.oneofs)&&(o.backupTypeSpec="incrementalBackupSpec"),null!=e.updateTime&&Object.hasOwnProperty.call(e,"updateTime")&&(o.updateTime=g.google.protobuf.Timestamp.toObject(e.updateTime,t,n+1)),o},re.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},re.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.BackupSchedule"},re),n.CrontabSpec=(ie.prototype.text="",ie.prototype.timeZone="",ie.prototype.creationWindow=null,ie.create=function(e){return new ie(e)},ie.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.text&&Object.hasOwnProperty.call(e,"text")&&t.uint32(10).string(e.text),null!=e.timeZone&&Object.hasOwnProperty.call(e,"timeZone")&&t.uint32(18).string(e.timeZone),null!=e.creationWindow&&Object.hasOwnProperty.call(e,"creationWindow")&&g.google.protobuf.Duration.encode(e.creationWindow,t.uint32(26).fork(),n+1).ldelim(),t},ie.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ie.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CrontabSpec;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.text=e.string();break;case 2:i.timeZone=e.string();break;case 3:i.creationWindow=g.google.protobuf.Duration.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ie.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ie.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.text&&Object.hasOwnProperty.call(e,"text")&&!d.isString(e.text))return"text: string expected";if(null!=e.timeZone&&Object.hasOwnProperty.call(e,"timeZone")&&!d.isString(e.timeZone))return"timeZone: string expected";if(null!=e.creationWindow&&Object.hasOwnProperty.call(e,"creationWindow")){e=g.google.protobuf.Duration.verify(e.creationWindow,t+1);if(e)return"creationWindow."+e}return null},ie.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CrontabSpec)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CrontabSpec: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.CrontabSpec;if(null!=e.text&&(n.text=String(e.text)),null!=e.timeZone&&(n.timeZone=String(e.timeZone)),null!=e.creationWindow){if(!d.isObject(e.creationWindow))throw TypeError(".google.spanner.admin.database.v1.CrontabSpec.creationWindow: object expected");n.creationWindow=g.google.protobuf.Duration.fromObject(e.creationWindow,t+1)}return n},ie.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.text="",o.timeZone="",o.creationWindow=null),null!=e.text&&Object.hasOwnProperty.call(e,"text")&&(o.text=e.text),null!=e.timeZone&&Object.hasOwnProperty.call(e,"timeZone")&&(o.timeZone=e.timeZone),null!=e.creationWindow&&Object.hasOwnProperty.call(e,"creationWindow")&&(o.creationWindow=g.google.protobuf.Duration.toObject(e.creationWindow,t,n+1)),o},ie.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ie.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CrontabSpec"},ie),n.CreateBackupScheduleRequest=(ae.prototype.parent="",ae.prototype.backupScheduleId="",ae.prototype.backupSchedule=null,ae.create=function(e){return new ae(e)},ae.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.backupScheduleId&&Object.hasOwnProperty.call(e,"backupScheduleId")&&t.uint32(18).string(e.backupScheduleId),null!=e.backupSchedule&&Object.hasOwnProperty.call(e,"backupSchedule")&&g.google.spanner.admin.database.v1.BackupSchedule.encode(e.backupSchedule,t.uint32(26).fork(),n+1).ldelim(),t},ae.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ae.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CreateBackupScheduleRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.backupScheduleId=e.string();break;case 3:i.backupSchedule=g.google.spanner.admin.database.v1.BackupSchedule.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ae.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ae.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.backupScheduleId&&Object.hasOwnProperty.call(e,"backupScheduleId")&&!d.isString(e.backupScheduleId))return"backupScheduleId: string expected";if(null!=e.backupSchedule&&Object.hasOwnProperty.call(e,"backupSchedule")){e=g.google.spanner.admin.database.v1.BackupSchedule.verify(e.backupSchedule,t+1);if(e)return"backupSchedule."+e}return null},ae.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CreateBackupScheduleRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CreateBackupScheduleRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.CreateBackupScheduleRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.backupScheduleId&&(n.backupScheduleId=String(e.backupScheduleId)),null!=e.backupSchedule){if(!d.isObject(e.backupSchedule))throw TypeError(".google.spanner.admin.database.v1.CreateBackupScheduleRequest.backupSchedule: object expected");n.backupSchedule=g.google.spanner.admin.database.v1.BackupSchedule.fromObject(e.backupSchedule,t+1)}return n},ae.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.backupScheduleId="",o.backupSchedule=null),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.backupScheduleId&&Object.hasOwnProperty.call(e,"backupScheduleId")&&(o.backupScheduleId=e.backupScheduleId),null!=e.backupSchedule&&Object.hasOwnProperty.call(e,"backupSchedule")&&(o.backupSchedule=g.google.spanner.admin.database.v1.BackupSchedule.toObject(e.backupSchedule,t,n+1)),o},ae.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ae.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CreateBackupScheduleRequest"},ae),n.GetBackupScheduleRequest=(se.prototype.name="",se.create=function(e){return new se(e)},se.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},se.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},se.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.GetBackupScheduleRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},se.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},se.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},se.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.GetBackupScheduleRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.GetBackupScheduleRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.GetBackupScheduleRequest;return null!=e.name&&(t.name=String(e.name)),t},se.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},se.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},se.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.GetBackupScheduleRequest"},se),n.DeleteBackupScheduleRequest=(ce.prototype.name="",ce.create=function(e){return new ce(e)},ce.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},ce.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ce.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.DeleteBackupScheduleRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},ce.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ce.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},ce.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.DeleteBackupScheduleRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.DeleteBackupScheduleRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.DeleteBackupScheduleRequest;return null!=e.name&&(t.name=String(e.name)),t},ce.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},ce.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ce.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.DeleteBackupScheduleRequest"},ce),n.ListBackupSchedulesRequest=(le.prototype.parent="",le.prototype.pageSize=0,le.prototype.pageToken="",le.create=function(e){return new le(e)},le.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(16).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(34).string(e.pageToken),t},le.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},le.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListBackupSchedulesRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.pageSize=e.int32();break;case 4:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},le.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},le.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent)?"parent: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},le.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListBackupSchedulesRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListBackupSchedulesRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.ListBackupSchedulesRequest;return null!=e.parent&&(t.parent=String(e.parent)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},le.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.parent="",n.pageSize=0,n.pageToken=""),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(n.parent=e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},le.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},le.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListBackupSchedulesRequest"},le),n.ListBackupSchedulesResponse=(ue.prototype.backupSchedules=d.emptyArray,ue.prototype.nextPageToken="",ue.create=function(e){return new ue(e)},ue.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.backupSchedules&&e.backupSchedules.length)for(var o=0;o<e.backupSchedules.length;++o)g.google.spanner.admin.database.v1.BackupSchedule.encode(e.backupSchedules[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},ue.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ue.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListBackupSchedulesResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.backupSchedules&&i.backupSchedules.length||(i.backupSchedules=[]),i.backupSchedules.push(g.google.spanner.admin.database.v1.BackupSchedule.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},ue.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ue.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.backupSchedules&&Object.hasOwnProperty.call(e,"backupSchedules")){if(!Array.isArray(e.backupSchedules))return"backupSchedules: array expected";for(var n=0;n<e.backupSchedules.length;++n){var o=g.google.spanner.admin.database.v1.BackupSchedule.verify(e.backupSchedules[n],t+1);if(o)return"backupSchedules."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},ue.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListBackupSchedulesResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListBackupSchedulesResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.ListBackupSchedulesResponse;if(e.backupSchedules){if(!Array.isArray(e.backupSchedules))throw TypeError(".google.spanner.admin.database.v1.ListBackupSchedulesResponse.backupSchedules: array expected");n.backupSchedules=[];for(var o=0;o<e.backupSchedules.length;++o){if(!d.isObject(e.backupSchedules[o]))throw TypeError(".google.spanner.admin.database.v1.ListBackupSchedulesResponse.backupSchedules: object expected");n.backupSchedules[o]=g.google.spanner.admin.database.v1.BackupSchedule.fromObject(e.backupSchedules[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},ue.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.backupSchedules=[]),t.defaults&&(o.nextPageToken=""),e.backupSchedules&&e.backupSchedules.length){o.backupSchedules=[];for(var r=0;r<e.backupSchedules.length;++r)o.backupSchedules[r]=g.google.spanner.admin.database.v1.BackupSchedule.toObject(e.backupSchedules[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},ue.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ue.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListBackupSchedulesResponse"},ue),n.UpdateBackupScheduleRequest=(pe.prototype.backupSchedule=null,pe.prototype.updateMask=null,pe.create=function(e){return new pe(e)},pe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.backupSchedule&&Object.hasOwnProperty.call(e,"backupSchedule")&&g.google.spanner.admin.database.v1.BackupSchedule.encode(e.backupSchedule,t.uint32(10).fork(),n+1).ldelim(),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&g.google.protobuf.FieldMask.encode(e.updateMask,t.uint32(18).fork(),n+1).ldelim(),t},pe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},pe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.UpdateBackupScheduleRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.backupSchedule=g.google.spanner.admin.database.v1.BackupSchedule.decode(e,e.uint32(),void 0,o+1);break;case 2:i.updateMask=g.google.protobuf.FieldMask.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},pe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},pe.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.backupSchedule&&Object.hasOwnProperty.call(e,"backupSchedule")&&(n=g.google.spanner.admin.database.v1.BackupSchedule.verify(e.backupSchedule,t+1)))return"backupSchedule."+n;if(null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(n=g.google.protobuf.FieldMask.verify(e.updateMask,t+1)))return"updateMask."+n;return null},pe.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.UpdateBackupScheduleRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.UpdateBackupScheduleRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.UpdateBackupScheduleRequest;if(null!=e.backupSchedule){if(!d.isObject(e.backupSchedule))throw TypeError(".google.spanner.admin.database.v1.UpdateBackupScheduleRequest.backupSchedule: object expected");n.backupSchedule=g.google.spanner.admin.database.v1.BackupSchedule.fromObject(e.backupSchedule,t+1)}if(null!=e.updateMask){if(!d.isObject(e.updateMask))throw TypeError(".google.spanner.admin.database.v1.UpdateBackupScheduleRequest.updateMask: object expected");n.updateMask=g.google.protobuf.FieldMask.fromObject(e.updateMask,t+1)}return n},pe.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.backupSchedule=null,o.updateMask=null),null!=e.backupSchedule&&Object.hasOwnProperty.call(e,"backupSchedule")&&(o.backupSchedule=g.google.spanner.admin.database.v1.BackupSchedule.toObject(e.backupSchedule,t,n+1)),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(o.updateMask=g.google.protobuf.FieldMask.toObject(e.updateMask,t,n+1)),o},pe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},pe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.UpdateBackupScheduleRequest"},pe),n.DatabaseAdmin=(((l.prototype=Object.create(o.rpc.Service.prototype)).constructor=l).create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(l.prototype.listDatabases=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.ListDatabasesRequest,g.google.spanner.admin.database.v1.ListDatabasesResponse,t,n)},"name",{value:"ListDatabases"}),Object.defineProperty(l.prototype.createDatabase=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.CreateDatabaseRequest,g.google.longrunning.Operation,t,n)},"name",{value:"CreateDatabase"}),Object.defineProperty(l.prototype.getDatabase=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.GetDatabaseRequest,g.google.spanner.admin.database.v1.Database,t,n)},"name",{value:"GetDatabase"}),Object.defineProperty(l.prototype.updateDatabase=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.UpdateDatabaseRequest,g.google.longrunning.Operation,t,n)},"name",{value:"UpdateDatabase"}),Object.defineProperty(l.prototype.updateDatabaseDdl=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.UpdateDatabaseDdlRequest,g.google.longrunning.Operation,t,n)},"name",{value:"UpdateDatabaseDdl"}),Object.defineProperty(l.prototype.dropDatabase=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.DropDatabaseRequest,g.google.protobuf.Empty,t,n)},"name",{value:"DropDatabase"}),Object.defineProperty(l.prototype.getDatabaseDdl=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.GetDatabaseDdlRequest,g.google.spanner.admin.database.v1.GetDatabaseDdlResponse,t,n)},"name",{value:"GetDatabaseDdl"}),Object.defineProperty(l.prototype.setIamPolicy=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.iam.v1.SetIamPolicyRequest,g.google.iam.v1.Policy,t,n)},"name",{value:"SetIamPolicy"}),Object.defineProperty(l.prototype.getIamPolicy=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.iam.v1.GetIamPolicyRequest,g.google.iam.v1.Policy,t,n)},"name",{value:"GetIamPolicy"}),Object.defineProperty(l.prototype.testIamPermissions=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.iam.v1.TestIamPermissionsRequest,g.google.iam.v1.TestIamPermissionsResponse,t,n)},"name",{value:"TestIamPermissions"}),Object.defineProperty(l.prototype.createBackup=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.CreateBackupRequest,g.google.longrunning.Operation,t,n)},"name",{value:"CreateBackup"}),Object.defineProperty(l.prototype.copyBackup=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.CopyBackupRequest,g.google.longrunning.Operation,t,n)},"name",{value:"CopyBackup"}),Object.defineProperty(l.prototype.getBackup=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.GetBackupRequest,g.google.spanner.admin.database.v1.Backup,t,n)},"name",{value:"GetBackup"}),Object.defineProperty(l.prototype.updateBackup=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.UpdateBackupRequest,g.google.spanner.admin.database.v1.Backup,t,n)},"name",{value:"UpdateBackup"}),Object.defineProperty(l.prototype.deleteBackup=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.DeleteBackupRequest,g.google.protobuf.Empty,t,n)},"name",{value:"DeleteBackup"}),Object.defineProperty(l.prototype.listBackups=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.ListBackupsRequest,g.google.spanner.admin.database.v1.ListBackupsResponse,t,n)},"name",{value:"ListBackups"}),Object.defineProperty(l.prototype.restoreDatabase=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.RestoreDatabaseRequest,g.google.longrunning.Operation,t,n)},"name",{value:"RestoreDatabase"}),Object.defineProperty(l.prototype.listDatabaseOperations=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.ListDatabaseOperationsRequest,g.google.spanner.admin.database.v1.ListDatabaseOperationsResponse,t,n)},"name",{value:"ListDatabaseOperations"}),Object.defineProperty(l.prototype.listBackupOperations=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.ListBackupOperationsRequest,g.google.spanner.admin.database.v1.ListBackupOperationsResponse,t,n)},"name",{value:"ListBackupOperations"}),Object.defineProperty(l.prototype.listDatabaseRoles=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.ListDatabaseRolesRequest,g.google.spanner.admin.database.v1.ListDatabaseRolesResponse,t,n)},"name",{value:"ListDatabaseRoles"}),Object.defineProperty(l.prototype.addSplitPoints=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.AddSplitPointsRequest,g.google.spanner.admin.database.v1.AddSplitPointsResponse,t,n)},"name",{value:"AddSplitPoints"}),Object.defineProperty(l.prototype.createBackupSchedule=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.CreateBackupScheduleRequest,g.google.spanner.admin.database.v1.BackupSchedule,t,n)},"name",{value:"CreateBackupSchedule"}),Object.defineProperty(l.prototype.getBackupSchedule=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.GetBackupScheduleRequest,g.google.spanner.admin.database.v1.BackupSchedule,t,n)},"name",{value:"GetBackupSchedule"}),Object.defineProperty(l.prototype.updateBackupSchedule=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.UpdateBackupScheduleRequest,g.google.spanner.admin.database.v1.BackupSchedule,t,n)},"name",{value:"UpdateBackupSchedule"}),Object.defineProperty(l.prototype.deleteBackupSchedule=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.DeleteBackupScheduleRequest,g.google.protobuf.Empty,t,n)},"name",{value:"DeleteBackupSchedule"}),Object.defineProperty(l.prototype.listBackupSchedules=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.ListBackupSchedulesRequest,g.google.spanner.admin.database.v1.ListBackupSchedulesResponse,t,n)},"name",{value:"ListBackupSchedules"}),Object.defineProperty(l.prototype.internalUpdateGraphOperation=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.database.v1.InternalUpdateGraphOperationRequest,g.google.spanner.admin.database.v1.InternalUpdateGraphOperationResponse,t,n)},"name",{value:"InternalUpdateGraphOperation"}),l),n.RestoreInfo=(de.prototype.sourceType=0,de.prototype.backupInfo=null,Object.defineProperty(de.prototype,"sourceInfo",{get:d.oneOfGetter(t=["backupInfo"]),set:d.oneOfSetter(t)}),de.create=function(e){return new de(e)},de.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.sourceType&&Object.hasOwnProperty.call(e,"sourceType")&&t.uint32(8).int32(e.sourceType),null!=e.backupInfo&&Object.hasOwnProperty.call(e,"backupInfo")&&g.google.spanner.admin.database.v1.BackupInfo.encode(e.backupInfo,t.uint32(18).fork(),n+1).ldelim(),t},de.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},de.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.RestoreInfo;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.sourceType=e.int32();break;case 2:i.backupInfo=g.google.spanner.admin.database.v1.BackupInfo.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},de.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},de.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.sourceType&&Object.hasOwnProperty.call(e,"sourceType"))switch(e.sourceType){default:return"sourceType: enum value expected";case 0:case 1:}if(null!=e.backupInfo&&Object.hasOwnProperty.call(e,"backupInfo")){e=g.google.spanner.admin.database.v1.BackupInfo.verify(e.backupInfo,t+1);if(e)return"backupInfo."+e}return null},de.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.RestoreInfo)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.RestoreInfo: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.RestoreInfo;switch(e.sourceType){default:"number"==typeof e.sourceType&&(n.sourceType=e.sourceType);break;case"TYPE_UNSPECIFIED":case 0:n.sourceType=0;break;case"BACKUP":case 1:n.sourceType=1}if(null!=e.backupInfo){if(!d.isObject(e.backupInfo))throw TypeError(".google.spanner.admin.database.v1.RestoreInfo.backupInfo: object expected");n.backupInfo=g.google.spanner.admin.database.v1.BackupInfo.fromObject(e.backupInfo,t+1)}return n},de.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.sourceType=t.enums===String?"TYPE_UNSPECIFIED":0),null!=e.sourceType&&Object.hasOwnProperty.call(e,"sourceType")&&(o.sourceType=t.enums!==String||void 0===g.google.spanner.admin.database.v1.RestoreSourceType[e.sourceType]?e.sourceType:g.google.spanner.admin.database.v1.RestoreSourceType[e.sourceType]),null!=e.backupInfo&&Object.hasOwnProperty.call(e,"backupInfo")&&(o.backupInfo=g.google.spanner.admin.database.v1.BackupInfo.toObject(e.backupInfo,t,n+1),t.oneofs)&&(o.sourceInfo="backupInfo"),o},de.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},de.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.RestoreInfo"},de),n.Database=(u.prototype.name="",u.prototype.state=0,u.prototype.createTime=null,u.prototype.restoreInfo=null,u.prototype.encryptionConfig=null,u.prototype.encryptionInfo=d.emptyArray,u.prototype.versionRetentionPeriod="",u.prototype.earliestVersionTime=null,u.prototype.defaultLeader="",u.prototype.databaseDialect=0,u.prototype.enableDropProtection=!1,u.prototype.reconciling=!1,u.create=function(e){return new u(e)},u.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&t.uint32(16).int32(e.state),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&g.google.protobuf.Timestamp.encode(e.createTime,t.uint32(26).fork(),n+1).ldelim(),null!=e.restoreInfo&&Object.hasOwnProperty.call(e,"restoreInfo")&&g.google.spanner.admin.database.v1.RestoreInfo.encode(e.restoreInfo,t.uint32(34).fork(),n+1).ldelim(),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&g.google.spanner.admin.database.v1.EncryptionConfig.encode(e.encryptionConfig,t.uint32(42).fork(),n+1).ldelim(),null!=e.versionRetentionPeriod&&Object.hasOwnProperty.call(e,"versionRetentionPeriod")&&t.uint32(50).string(e.versionRetentionPeriod),null!=e.earliestVersionTime&&Object.hasOwnProperty.call(e,"earliestVersionTime")&&g.google.protobuf.Timestamp.encode(e.earliestVersionTime,t.uint32(58).fork(),n+1).ldelim(),null!=e.encryptionInfo&&e.encryptionInfo.length)for(var o=0;o<e.encryptionInfo.length;++o)g.google.spanner.admin.database.v1.EncryptionInfo.encode(e.encryptionInfo[o],t.uint32(66).fork(),n+1).ldelim();return null!=e.defaultLeader&&Object.hasOwnProperty.call(e,"defaultLeader")&&t.uint32(74).string(e.defaultLeader),null!=e.databaseDialect&&Object.hasOwnProperty.call(e,"databaseDialect")&&t.uint32(80).int32(e.databaseDialect),null!=e.enableDropProtection&&Object.hasOwnProperty.call(e,"enableDropProtection")&&t.uint32(88).bool(e.enableDropProtection),null!=e.reconciling&&Object.hasOwnProperty.call(e,"reconciling")&&t.uint32(96).bool(e.reconciling),t},u.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},u.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.Database;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.state=e.int32();break;case 3:i.createTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 4:i.restoreInfo=g.google.spanner.admin.database.v1.RestoreInfo.decode(e,e.uint32(),void 0,o+1);break;case 5:i.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.decode(e,e.uint32(),void 0,o+1);break;case 8:i.encryptionInfo&&i.encryptionInfo.length||(i.encryptionInfo=[]),i.encryptionInfo.push(g.google.spanner.admin.database.v1.EncryptionInfo.decode(e,e.uint32(),void 0,o+1));break;case 6:i.versionRetentionPeriod=e.string();break;case 7:i.earliestVersionTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 9:i.defaultLeader=e.string();break;case 10:i.databaseDialect=e.int32();break;case 11:i.enableDropProtection=e.bool();break;case 12:i.reconciling=e.bool();break;default:e.skipType(7&a,o)}}return i},u.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},u.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.state&&Object.hasOwnProperty.call(e,"state"))switch(e.state){default:return"state: enum value expected";case 0:case 1:case 2:case 3:}if(null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(n=g.google.protobuf.Timestamp.verify(e.createTime,t+1)))return"createTime."+n;if(null!=e.restoreInfo&&Object.hasOwnProperty.call(e,"restoreInfo")&&(n=g.google.spanner.admin.database.v1.RestoreInfo.verify(e.restoreInfo,t+1)))return"restoreInfo."+n;if(null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(n=g.google.spanner.admin.database.v1.EncryptionConfig.verify(e.encryptionConfig,t+1)))return"encryptionConfig."+n;if(null!=e.encryptionInfo&&Object.hasOwnProperty.call(e,"encryptionInfo")){if(!Array.isArray(e.encryptionInfo))return"encryptionInfo: array expected";for(var n,o=0;o<e.encryptionInfo.length;++o)if(n=g.google.spanner.admin.database.v1.EncryptionInfo.verify(e.encryptionInfo[o],t+1))return"encryptionInfo."+n}if(null!=e.versionRetentionPeriod&&Object.hasOwnProperty.call(e,"versionRetentionPeriod")&&!d.isString(e.versionRetentionPeriod))return"versionRetentionPeriod: string expected";if(null!=e.earliestVersionTime&&Object.hasOwnProperty.call(e,"earliestVersionTime")&&(n=g.google.protobuf.Timestamp.verify(e.earliestVersionTime,t+1)))return"earliestVersionTime."+n;if(null!=e.defaultLeader&&Object.hasOwnProperty.call(e,"defaultLeader")&&!d.isString(e.defaultLeader))return"defaultLeader: string expected";if(null!=e.databaseDialect&&Object.hasOwnProperty.call(e,"databaseDialect"))switch(e.databaseDialect){default:return"databaseDialect: enum value expected";case 0:case 1:case 2:}return null!=e.enableDropProtection&&Object.hasOwnProperty.call(e,"enableDropProtection")&&"boolean"!=typeof e.enableDropProtection?"enableDropProtection: boolean expected":null!=e.reconciling&&Object.hasOwnProperty.call(e,"reconciling")&&"boolean"!=typeof e.reconciling?"reconciling: boolean expected":null},u.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.Database)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.Database: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.Database;switch(null!=e.name&&(n.name=String(e.name)),e.state){default:"number"==typeof e.state&&(n.state=e.state);break;case"STATE_UNSPECIFIED":case 0:n.state=0;break;case"CREATING":case 1:n.state=1;break;case"READY":case 2:n.state=2;break;case"READY_OPTIMIZING":case 3:n.state=3}if(null!=e.createTime){if(!d.isObject(e.createTime))throw TypeError(".google.spanner.admin.database.v1.Database.createTime: object expected");n.createTime=g.google.protobuf.Timestamp.fromObject(e.createTime,t+1)}if(null!=e.restoreInfo){if(!d.isObject(e.restoreInfo))throw TypeError(".google.spanner.admin.database.v1.Database.restoreInfo: object expected");n.restoreInfo=g.google.spanner.admin.database.v1.RestoreInfo.fromObject(e.restoreInfo,t+1)}if(null!=e.encryptionConfig){if(!d.isObject(e.encryptionConfig))throw TypeError(".google.spanner.admin.database.v1.Database.encryptionConfig: object expected");n.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.fromObject(e.encryptionConfig,t+1)}if(e.encryptionInfo){if(!Array.isArray(e.encryptionInfo))throw TypeError(".google.spanner.admin.database.v1.Database.encryptionInfo: array expected");n.encryptionInfo=[];for(var o=0;o<e.encryptionInfo.length;++o){if(!d.isObject(e.encryptionInfo[o]))throw TypeError(".google.spanner.admin.database.v1.Database.encryptionInfo: object expected");n.encryptionInfo[o]=g.google.spanner.admin.database.v1.EncryptionInfo.fromObject(e.encryptionInfo[o],t+1)}}if(null!=e.versionRetentionPeriod&&(n.versionRetentionPeriod=String(e.versionRetentionPeriod)),null!=e.earliestVersionTime){if(!d.isObject(e.earliestVersionTime))throw TypeError(".google.spanner.admin.database.v1.Database.earliestVersionTime: object expected");n.earliestVersionTime=g.google.protobuf.Timestamp.fromObject(e.earliestVersionTime,t+1)}switch(null!=e.defaultLeader&&(n.defaultLeader=String(e.defaultLeader)),e.databaseDialect){default:"number"==typeof e.databaseDialect&&(n.databaseDialect=e.databaseDialect);break;case"DATABASE_DIALECT_UNSPECIFIED":case 0:n.databaseDialect=0;break;case"GOOGLE_STANDARD_SQL":case 1:n.databaseDialect=1;break;case"POSTGRESQL":case 2:n.databaseDialect=2}return null!=e.enableDropProtection&&(n.enableDropProtection=Boolean(e.enableDropProtection)),null!=e.reconciling&&(n.reconciling=Boolean(e.reconciling)),n},u.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.encryptionInfo=[]),t.defaults&&(o.name="",o.state=t.enums===String?"STATE_UNSPECIFIED":0,o.createTime=null,o.restoreInfo=null,o.encryptionConfig=null,o.versionRetentionPeriod="",o.earliestVersionTime=null,o.defaultLeader="",o.databaseDialect=t.enums===String?"DATABASE_DIALECT_UNSPECIFIED":0,o.enableDropProtection=!1,o.reconciling=!1),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&(o.state=t.enums!==String||void 0===g.google.spanner.admin.database.v1.Database.State[e.state]?e.state:g.google.spanner.admin.database.v1.Database.State[e.state]),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(o.createTime=g.google.protobuf.Timestamp.toObject(e.createTime,t,n+1)),null!=e.restoreInfo&&Object.hasOwnProperty.call(e,"restoreInfo")&&(o.restoreInfo=g.google.spanner.admin.database.v1.RestoreInfo.toObject(e.restoreInfo,t,n+1)),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(o.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.toObject(e.encryptionConfig,t,n+1)),null!=e.versionRetentionPeriod&&Object.hasOwnProperty.call(e,"versionRetentionPeriod")&&(o.versionRetentionPeriod=e.versionRetentionPeriod),null!=e.earliestVersionTime&&Object.hasOwnProperty.call(e,"earliestVersionTime")&&(o.earliestVersionTime=g.google.protobuf.Timestamp.toObject(e.earliestVersionTime,t,n+1)),e.encryptionInfo&&e.encryptionInfo.length){o.encryptionInfo=[];for(var r=0;r<e.encryptionInfo.length;++r)o.encryptionInfo[r]=g.google.spanner.admin.database.v1.EncryptionInfo.toObject(e.encryptionInfo[r],t,n+1)}return null!=e.defaultLeader&&Object.hasOwnProperty.call(e,"defaultLeader")&&(o.defaultLeader=e.defaultLeader),null!=e.databaseDialect&&Object.hasOwnProperty.call(e,"databaseDialect")&&(o.databaseDialect=t.enums!==String||void 0===g.google.spanner.admin.database.v1.DatabaseDialect[e.databaseDialect]?e.databaseDialect:g.google.spanner.admin.database.v1.DatabaseDialect[e.databaseDialect]),null!=e.enableDropProtection&&Object.hasOwnProperty.call(e,"enableDropProtection")&&(o.enableDropProtection=e.enableDropProtection),null!=e.reconciling&&Object.hasOwnProperty.call(e,"reconciling")&&(o.reconciling=e.reconciling),o},u.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},u.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.Database"},u.State=(a={},(t=Object.create(a))[a[0]="STATE_UNSPECIFIED"]=0,t[a[1]="CREATING"]=1,t[a[2]="READY"]=2,t[a[3]="READY_OPTIMIZING"]=3,t),u),n.ListDatabasesRequest=(ge.prototype.parent="",ge.prototype.pageSize=0,ge.prototype.pageToken="",ge.create=function(e){return new ge(e)},ge.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(24).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(34).string(e.pageToken),t},ge.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ge.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListDatabasesRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 3:i.pageSize=e.int32();break;case 4:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},ge.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ge.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent)?"parent: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},ge.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListDatabasesRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListDatabasesRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.ListDatabasesRequest;return null!=e.parent&&(t.parent=String(e.parent)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},ge.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.parent="",n.pageSize=0,n.pageToken=""),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(n.parent=e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},ge.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ge.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListDatabasesRequest"},ge),n.ListDatabasesResponse=(fe.prototype.databases=d.emptyArray,fe.prototype.nextPageToken="",fe.create=function(e){return new fe(e)},fe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.databases&&e.databases.length)for(var o=0;o<e.databases.length;++o)g.google.spanner.admin.database.v1.Database.encode(e.databases[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},fe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},fe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListDatabasesResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.databases&&i.databases.length||(i.databases=[]),i.databases.push(g.google.spanner.admin.database.v1.Database.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},fe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},fe.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.databases&&Object.hasOwnProperty.call(e,"databases")){if(!Array.isArray(e.databases))return"databases: array expected";for(var n=0;n<e.databases.length;++n){var o=g.google.spanner.admin.database.v1.Database.verify(e.databases[n],t+1);if(o)return"databases."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},fe.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListDatabasesResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListDatabasesResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.ListDatabasesResponse;if(e.databases){if(!Array.isArray(e.databases))throw TypeError(".google.spanner.admin.database.v1.ListDatabasesResponse.databases: array expected");n.databases=[];for(var o=0;o<e.databases.length;++o){if(!d.isObject(e.databases[o]))throw TypeError(".google.spanner.admin.database.v1.ListDatabasesResponse.databases: object expected");n.databases[o]=g.google.spanner.admin.database.v1.Database.fromObject(e.databases[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},fe.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.databases=[]),t.defaults&&(o.nextPageToken=""),e.databases&&e.databases.length){o.databases=[];for(var r=0;r<e.databases.length;++r)o.databases[r]=g.google.spanner.admin.database.v1.Database.toObject(e.databases[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},fe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},fe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListDatabasesResponse"},fe),n.CreateDatabaseRequest=(me.prototype.parent="",me.prototype.createStatement="",me.prototype.extraStatements=d.emptyArray,me.prototype.encryptionConfig=null,me.prototype.databaseDialect=0,me.prototype.protoDescriptors=d.newBuffer([]),me.create=function(e){return new me(e)},me.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.createStatement&&Object.hasOwnProperty.call(e,"createStatement")&&t.uint32(18).string(e.createStatement),null!=e.extraStatements&&e.extraStatements.length)for(var o=0;o<e.extraStatements.length;++o)t.uint32(26).string(e.extraStatements[o]);return null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&g.google.spanner.admin.database.v1.EncryptionConfig.encode(e.encryptionConfig,t.uint32(34).fork(),n+1).ldelim(),null!=e.databaseDialect&&Object.hasOwnProperty.call(e,"databaseDialect")&&t.uint32(40).int32(e.databaseDialect),null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&t.uint32(50).bytes(e.protoDescriptors),t},me.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},me.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CreateDatabaseRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.createStatement=e.string();break;case 3:i.extraStatements&&i.extraStatements.length||(i.extraStatements=[]),i.extraStatements.push(e.string());break;case 4:i.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.decode(e,e.uint32(),void 0,o+1);break;case 5:i.databaseDialect=e.int32();break;case 6:i.protoDescriptors=e.bytes();break;default:e.skipType(7&a,o)}}return i},me.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},me.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.createStatement&&Object.hasOwnProperty.call(e,"createStatement")&&!d.isString(e.createStatement))return"createStatement: string expected";if(null!=e.extraStatements&&Object.hasOwnProperty.call(e,"extraStatements")){if(!Array.isArray(e.extraStatements))return"extraStatements: array expected";for(var n=0;n<e.extraStatements.length;++n)if(!d.isString(e.extraStatements[n]))return"extraStatements: string[] expected"}if(null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")){t=g.google.spanner.admin.database.v1.EncryptionConfig.verify(e.encryptionConfig,t+1);if(t)return"encryptionConfig."+t}if(null!=e.databaseDialect&&Object.hasOwnProperty.call(e,"databaseDialect"))switch(e.databaseDialect){default:return"databaseDialect: enum value expected";case 0:case 1:case 2:}return null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&!(e.protoDescriptors&&"number"==typeof e.protoDescriptors.length||d.isString(e.protoDescriptors))?"protoDescriptors: buffer expected":null},me.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CreateDatabaseRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CreateDatabaseRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.CreateDatabaseRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.createStatement&&(n.createStatement=String(e.createStatement)),e.extraStatements){if(!Array.isArray(e.extraStatements))throw TypeError(".google.spanner.admin.database.v1.CreateDatabaseRequest.extraStatements: array expected");n.extraStatements=[];for(var o=0;o<e.extraStatements.length;++o)n.extraStatements[o]=String(e.extraStatements[o])}if(null!=e.encryptionConfig){if(!d.isObject(e.encryptionConfig))throw TypeError(".google.spanner.admin.database.v1.CreateDatabaseRequest.encryptionConfig: object expected");n.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.fromObject(e.encryptionConfig,t+1)}switch(e.databaseDialect){default:"number"==typeof e.databaseDialect&&(n.databaseDialect=e.databaseDialect);break;case"DATABASE_DIALECT_UNSPECIFIED":case 0:n.databaseDialect=0;break;case"GOOGLE_STANDARD_SQL":case 1:n.databaseDialect=1;break;case"POSTGRESQL":case 2:n.databaseDialect=2}return null!=e.protoDescriptors&&("string"==typeof e.protoDescriptors?d.base64.decode(e.protoDescriptors,n.protoDescriptors=d.newBuffer(d.base64.length(e.protoDescriptors)),0):0<=e.protoDescriptors.length&&(n.protoDescriptors=e.protoDescriptors)),n},me.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.extraStatements=[]),t.defaults&&(o.parent="",o.createStatement="",o.encryptionConfig=null,o.databaseDialect=t.enums===String?"DATABASE_DIALECT_UNSPECIFIED":0,t.bytes===String?o.protoDescriptors="":(o.protoDescriptors=[],t.bytes!==Array&&(o.protoDescriptors=d.newBuffer(o.protoDescriptors)))),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.createStatement&&Object.hasOwnProperty.call(e,"createStatement")&&(o.createStatement=e.createStatement),e.extraStatements&&e.extraStatements.length){o.extraStatements=[];for(var r=0;r<e.extraStatements.length;++r)o.extraStatements[r]=e.extraStatements[r]}return null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(o.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.toObject(e.encryptionConfig,t,n+1)),null!=e.databaseDialect&&Object.hasOwnProperty.call(e,"databaseDialect")&&(o.databaseDialect=t.enums!==String||void 0===g.google.spanner.admin.database.v1.DatabaseDialect[e.databaseDialect]?e.databaseDialect:g.google.spanner.admin.database.v1.DatabaseDialect[e.databaseDialect]),null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&(o.protoDescriptors=t.bytes===String?d.base64.encode(e.protoDescriptors,0,e.protoDescriptors.length):t.bytes===Array?Array.prototype.slice.call(e.protoDescriptors):e.protoDescriptors),o},me.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},me.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CreateDatabaseRequest"},me),n.CreateDatabaseMetadata=(be.prototype.database="",be.create=function(e){return new be(e)},be.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),t},be.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},be.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.CreateDatabaseMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.database=e.string():e.skipType(7&a,o)}return i},be.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},be.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database)?"database: string expected":null},be.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.CreateDatabaseMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.CreateDatabaseMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.CreateDatabaseMetadata;return null!=e.database&&(t.database=String(e.database)),t},be.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.database=""),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(n.database=e.database),n},be.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},be.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.CreateDatabaseMetadata"},be),n.GetDatabaseRequest=(ye.prototype.name="",ye.create=function(e){return new ye(e)},ye.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},ye.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ye.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.GetDatabaseRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},ye.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ye.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},ye.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.GetDatabaseRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.GetDatabaseRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.GetDatabaseRequest;return null!=e.name&&(t.name=String(e.name)),t},ye.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},ye.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ye.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.GetDatabaseRequest"},ye),n.UpdateDatabaseRequest=(he.prototype.database=null,he.prototype.updateMask=null,he.create=function(e){return new he(e)},he.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.database&&Object.hasOwnProperty.call(e,"database")&&g.google.spanner.admin.database.v1.Database.encode(e.database,t.uint32(10).fork(),n+1).ldelim(),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&g.google.protobuf.FieldMask.encode(e.updateMask,t.uint32(18).fork(),n+1).ldelim(),t},he.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},he.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.UpdateDatabaseRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.database=g.google.spanner.admin.database.v1.Database.decode(e,e.uint32(),void 0,o+1);break;case 2:i.updateMask=g.google.protobuf.FieldMask.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},he.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},he.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(n=g.google.spanner.admin.database.v1.Database.verify(e.database,t+1)))return"database."+n;if(null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(n=g.google.protobuf.FieldMask.verify(e.updateMask,t+1)))return"updateMask."+n;return null},he.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.UpdateDatabaseRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.UpdateDatabaseRequest;if(null!=e.database){if(!d.isObject(e.database))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseRequest.database: object expected");n.database=g.google.spanner.admin.database.v1.Database.fromObject(e.database,t+1)}if(null!=e.updateMask){if(!d.isObject(e.updateMask))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseRequest.updateMask: object expected");n.updateMask=g.google.protobuf.FieldMask.fromObject(e.updateMask,t+1)}return n},he.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.database=null,o.updateMask=null),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o.database=g.google.spanner.admin.database.v1.Database.toObject(e.database,t,n+1)),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(o.updateMask=g.google.protobuf.FieldMask.toObject(e.updateMask,t,n+1)),o},he.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},he.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.UpdateDatabaseRequest"},he),n.UpdateDatabaseMetadata=(Oe.prototype.request=null,Oe.prototype.progress=null,Oe.prototype.cancelTime=null,Oe.create=function(e){return new Oe(e)},Oe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.request&&Object.hasOwnProperty.call(e,"request")&&g.google.spanner.admin.database.v1.UpdateDatabaseRequest.encode(e.request,t.uint32(10).fork(),n+1).ldelim(),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&g.google.spanner.admin.database.v1.OperationProgress.encode(e.progress,t.uint32(18).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(26).fork(),n+1).ldelim(),t},Oe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Oe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.UpdateDatabaseMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.request=g.google.spanner.admin.database.v1.UpdateDatabaseRequest.decode(e,e.uint32(),void 0,o+1);break;case 2:i.progress=g.google.spanner.admin.database.v1.OperationProgress.decode(e,e.uint32(),void 0,o+1);break;case 3:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Oe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Oe.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.request&&Object.hasOwnProperty.call(e,"request")&&(n=g.google.spanner.admin.database.v1.UpdateDatabaseRequest.verify(e.request,t+1)))return"request."+n;if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(n=g.google.spanner.admin.database.v1.OperationProgress.verify(e.progress,t+1)))return"progress."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;return null},Oe.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.UpdateDatabaseMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.UpdateDatabaseMetadata;if(null!=e.request){if(!d.isObject(e.request))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseMetadata.request: object expected");n.request=g.google.spanner.admin.database.v1.UpdateDatabaseRequest.fromObject(e.request,t+1)}if(null!=e.progress){if(!d.isObject(e.progress))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseMetadata.progress: object expected");n.progress=g.google.spanner.admin.database.v1.OperationProgress.fromObject(e.progress,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}return n},Oe.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.request=null,o.progress=null,o.cancelTime=null),null!=e.request&&Object.hasOwnProperty.call(e,"request")&&(o.request=g.google.spanner.admin.database.v1.UpdateDatabaseRequest.toObject(e.request,t,n+1)),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(o.progress=g.google.spanner.admin.database.v1.OperationProgress.toObject(e.progress,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),o},Oe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Oe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.UpdateDatabaseMetadata"},Oe),n.UpdateDatabaseDdlRequest=(ve.prototype.database="",ve.prototype.statements=d.emptyArray,ve.prototype.operationId="",ve.prototype.protoDescriptors=d.newBuffer([]),ve.prototype.throughputMode=!1,ve.create=function(e){return new ve(e)},ve.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),null!=e.statements&&e.statements.length)for(var o=0;o<e.statements.length;++o)t.uint32(18).string(e.statements[o]);return null!=e.operationId&&Object.hasOwnProperty.call(e,"operationId")&&t.uint32(26).string(e.operationId),null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&t.uint32(34).bytes(e.protoDescriptors),null!=e.throughputMode&&Object.hasOwnProperty.call(e,"throughputMode")&&t.uint32(40).bool(e.throughputMode),t},ve.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ve.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.UpdateDatabaseDdlRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.database=e.string();break;case 2:i.statements&&i.statements.length||(i.statements=[]),i.statements.push(e.string());break;case 3:i.operationId=e.string();break;case 4:i.protoDescriptors=e.bytes();break;case 5:i.throughputMode=e.bool();break;default:e.skipType(7&a,o)}}return i},ve.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ve.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database))return"database: string expected";if(null!=e.statements&&Object.hasOwnProperty.call(e,"statements")){if(!Array.isArray(e.statements))return"statements: array expected";for(var n=0;n<e.statements.length;++n)if(!d.isString(e.statements[n]))return"statements: string[] expected"}return null!=e.operationId&&Object.hasOwnProperty.call(e,"operationId")&&!d.isString(e.operationId)?"operationId: string expected":null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&!(e.protoDescriptors&&"number"==typeof e.protoDescriptors.length||d.isString(e.protoDescriptors))?"protoDescriptors: buffer expected":null!=e.throughputMode&&Object.hasOwnProperty.call(e,"throughputMode")&&"boolean"!=typeof e.throughputMode?"throughputMode: boolean expected":null},ve.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.UpdateDatabaseDdlRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.UpdateDatabaseDdlRequest;if(null!=e.database&&(n.database=String(e.database)),e.statements){if(!Array.isArray(e.statements))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlRequest.statements: array expected");n.statements=[];for(var o=0;o<e.statements.length;++o)n.statements[o]=String(e.statements[o])}return null!=e.operationId&&(n.operationId=String(e.operationId)),null!=e.protoDescriptors&&("string"==typeof e.protoDescriptors?d.base64.decode(e.protoDescriptors,n.protoDescriptors=d.newBuffer(d.base64.length(e.protoDescriptors)),0):0<=e.protoDescriptors.length&&(n.protoDescriptors=e.protoDescriptors)),null!=e.throughputMode&&(n.throughputMode=Boolean(e.throughputMode)),n},ve.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.statements=[]),t.defaults&&(o.database="",o.operationId="",t.bytes===String?o.protoDescriptors="":(o.protoDescriptors=[],t.bytes!==Array&&(o.protoDescriptors=d.newBuffer(o.protoDescriptors))),o.throughputMode=!1),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o.database=e.database),e.statements&&e.statements.length){o.statements=[];for(var r=0;r<e.statements.length;++r)o.statements[r]=e.statements[r]}return null!=e.operationId&&Object.hasOwnProperty.call(e,"operationId")&&(o.operationId=e.operationId),null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&(o.protoDescriptors=t.bytes===String?d.base64.encode(e.protoDescriptors,0,e.protoDescriptors.length):t.bytes===Array?Array.prototype.slice.call(e.protoDescriptors):e.protoDescriptors),null!=e.throughputMode&&Object.hasOwnProperty.call(e,"throughputMode")&&(o.throughputMode=e.throughputMode),o},ve.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ve.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.UpdateDatabaseDdlRequest"},ve),n.DdlStatementActionInfo=(je.prototype.action="",je.prototype.entityType="",je.prototype.entityNames=d.emptyArray,je.create=function(e){return new je(e)},je.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.action&&Object.hasOwnProperty.call(e,"action")&&t.uint32(10).string(e.action),null!=e.entityType&&Object.hasOwnProperty.call(e,"entityType")&&t.uint32(18).string(e.entityType),null!=e.entityNames&&e.entityNames.length)for(var o=0;o<e.entityNames.length;++o)t.uint32(26).string(e.entityNames[o]);return t},je.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},je.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.DdlStatementActionInfo;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.action=e.string();break;case 2:i.entityType=e.string();break;case 3:i.entityNames&&i.entityNames.length||(i.entityNames=[]),i.entityNames.push(e.string());break;default:e.skipType(7&a,o)}}return i},je.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},je.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.action&&Object.hasOwnProperty.call(e,"action")&&!d.isString(e.action))return"action: string expected";if(null!=e.entityType&&Object.hasOwnProperty.call(e,"entityType")&&!d.isString(e.entityType))return"entityType: string expected";if(null!=e.entityNames&&Object.hasOwnProperty.call(e,"entityNames")){if(!Array.isArray(e.entityNames))return"entityNames: array expected";for(var n=0;n<e.entityNames.length;++n)if(!d.isString(e.entityNames[n]))return"entityNames: string[] expected"}return null},je.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.DdlStatementActionInfo)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.DdlStatementActionInfo: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.DdlStatementActionInfo;if(null!=e.action&&(n.action=String(e.action)),null!=e.entityType&&(n.entityType=String(e.entityType)),e.entityNames){if(!Array.isArray(e.entityNames))throw TypeError(".google.spanner.admin.database.v1.DdlStatementActionInfo.entityNames: array expected");n.entityNames=[];for(var o=0;o<e.entityNames.length;++o)n.entityNames[o]=String(e.entityNames[o])}return n},je.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.entityNames=[]),t.defaults&&(o.action="",o.entityType=""),null!=e.action&&Object.hasOwnProperty.call(e,"action")&&(o.action=e.action),null!=e.entityType&&Object.hasOwnProperty.call(e,"entityType")&&(o.entityType=e.entityType),e.entityNames&&e.entityNames.length){o.entityNames=[];for(var r=0;r<e.entityNames.length;++r)o.entityNames[r]=e.entityNames[r]}return o},je.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},je.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.DdlStatementActionInfo"},je),n.UpdateDatabaseDdlMetadata=(xe.prototype.database="",xe.prototype.statements=d.emptyArray,xe.prototype.commitTimestamps=d.emptyArray,xe.prototype.throttled=!1,xe.prototype.progress=d.emptyArray,xe.prototype.actions=d.emptyArray,xe.create=function(e){return new xe(e)},xe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),null!=e.statements&&e.statements.length)for(var o=0;o<e.statements.length;++o)t.uint32(18).string(e.statements[o]);if(null!=e.commitTimestamps&&e.commitTimestamps.length)for(o=0;o<e.commitTimestamps.length;++o)g.google.protobuf.Timestamp.encode(e.commitTimestamps[o],t.uint32(26).fork(),n+1).ldelim();if(null!=e.throttled&&Object.hasOwnProperty.call(e,"throttled")&&t.uint32(32).bool(e.throttled),null!=e.progress&&e.progress.length)for(o=0;o<e.progress.length;++o)g.google.spanner.admin.database.v1.OperationProgress.encode(e.progress[o],t.uint32(42).fork(),n+1).ldelim();if(null!=e.actions&&e.actions.length)for(o=0;o<e.actions.length;++o)g.google.spanner.admin.database.v1.DdlStatementActionInfo.encode(e.actions[o],t.uint32(50).fork(),n+1).ldelim();return t},xe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},xe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.database=e.string();break;case 2:i.statements&&i.statements.length||(i.statements=[]),i.statements.push(e.string());break;case 3:i.commitTimestamps&&i.commitTimestamps.length||(i.commitTimestamps=[]),i.commitTimestamps.push(g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1));break;case 4:i.throttled=e.bool();break;case 5:i.progress&&i.progress.length||(i.progress=[]),i.progress.push(g.google.spanner.admin.database.v1.OperationProgress.decode(e,e.uint32(),void 0,o+1));break;case 6:i.actions&&i.actions.length||(i.actions=[]),i.actions.push(g.google.spanner.admin.database.v1.DdlStatementActionInfo.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},xe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},xe.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database))return"database: string expected";if(null!=e.statements&&Object.hasOwnProperty.call(e,"statements")){if(!Array.isArray(e.statements))return"statements: array expected";for(var n=0;n<e.statements.length;++n)if(!d.isString(e.statements[n]))return"statements: string[] expected"}if(null!=e.commitTimestamps&&Object.hasOwnProperty.call(e,"commitTimestamps")){if(!Array.isArray(e.commitTimestamps))return"commitTimestamps: array expected";for(n=0;n<e.commitTimestamps.length;++n)if(o=g.google.protobuf.Timestamp.verify(e.commitTimestamps[n],t+1))return"commitTimestamps."+o}if(null!=e.throttled&&Object.hasOwnProperty.call(e,"throttled")&&"boolean"!=typeof e.throttled)return"throttled: boolean expected";if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")){if(!Array.isArray(e.progress))return"progress: array expected";for(n=0;n<e.progress.length;++n)if(o=g.google.spanner.admin.database.v1.OperationProgress.verify(e.progress[n],t+1))return"progress."+o}if(null!=e.actions&&Object.hasOwnProperty.call(e,"actions")){if(!Array.isArray(e.actions))return"actions: array expected";for(var o,n=0;n<e.actions.length;++n)if(o=g.google.spanner.admin.database.v1.DdlStatementActionInfo.verify(e.actions[n],t+1))return"actions."+o}return null},xe.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata;if(null!=e.database&&(n.database=String(e.database)),e.statements){if(!Array.isArray(e.statements))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.statements: array expected");n.statements=[];for(var o=0;o<e.statements.length;++o)n.statements[o]=String(e.statements[o])}if(e.commitTimestamps){if(!Array.isArray(e.commitTimestamps))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.commitTimestamps: array expected");n.commitTimestamps=[];for(o=0;o<e.commitTimestamps.length;++o){if(!d.isObject(e.commitTimestamps[o]))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.commitTimestamps: object expected");n.commitTimestamps[o]=g.google.protobuf.Timestamp.fromObject(e.commitTimestamps[o],t+1)}}if(null!=e.throttled&&(n.throttled=Boolean(e.throttled)),e.progress){if(!Array.isArray(e.progress))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.progress: array expected");n.progress=[];for(o=0;o<e.progress.length;++o){if(!d.isObject(e.progress[o]))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.progress: object expected");n.progress[o]=g.google.spanner.admin.database.v1.OperationProgress.fromObject(e.progress[o],t+1)}}if(e.actions){if(!Array.isArray(e.actions))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.actions: array expected");n.actions=[];for(o=0;o<e.actions.length;++o){if(!d.isObject(e.actions[o]))throw TypeError(".google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata.actions: object expected");n.actions[o]=g.google.spanner.admin.database.v1.DdlStatementActionInfo.fromObject(e.actions[o],t+1)}}return n},xe.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.statements=[],o.commitTimestamps=[],o.progress=[],o.actions=[]),t.defaults&&(o.database="",o.throttled=!1),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o.database=e.database),e.statements&&e.statements.length){o.statements=[];for(var r=0;r<e.statements.length;++r)o.statements[r]=e.statements[r]}if(e.commitTimestamps&&e.commitTimestamps.length){o.commitTimestamps=[];for(r=0;r<e.commitTimestamps.length;++r)o.commitTimestamps[r]=g.google.protobuf.Timestamp.toObject(e.commitTimestamps[r],t,n+1)}if(null!=e.throttled&&Object.hasOwnProperty.call(e,"throttled")&&(o.throttled=e.throttled),e.progress&&e.progress.length){o.progress=[];for(r=0;r<e.progress.length;++r)o.progress[r]=g.google.spanner.admin.database.v1.OperationProgress.toObject(e.progress[r],t,n+1)}if(e.actions&&e.actions.length){o.actions=[];for(r=0;r<e.actions.length;++r)o.actions[r]=g.google.spanner.admin.database.v1.DdlStatementActionInfo.toObject(e.actions[r],t,n+1)}return o},xe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},xe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata"},xe),n.DropDatabaseRequest=(we.prototype.database="",we.create=function(e){return new we(e)},we.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),t},we.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},we.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.DropDatabaseRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.database=e.string():e.skipType(7&a,o)}return i},we.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},we.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database)?"database: string expected":null},we.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.DropDatabaseRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.DropDatabaseRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.DropDatabaseRequest;return null!=e.database&&(t.database=String(e.database)),t},we.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.database=""),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(n.database=e.database),n},we.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},we.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.DropDatabaseRequest"},we),n.GetDatabaseDdlRequest=(Te.prototype.database="",Te.create=function(e){return new Te(e)},Te.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),t},Te.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Te.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.GetDatabaseDdlRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.database=e.string():e.skipType(7&a,o)}return i},Te.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Te.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database)?"database: string expected":null},Te.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.GetDatabaseDdlRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.GetDatabaseDdlRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.GetDatabaseDdlRequest;return null!=e.database&&(t.database=String(e.database)),t},Te.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.database=""),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(n.database=e.database),n},Te.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Te.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.GetDatabaseDdlRequest"},Te),n.GetDatabaseDdlResponse=(ke.prototype.statements=d.emptyArray,ke.prototype.protoDescriptors=d.newBuffer([]),ke.create=function(e){return new ke(e)},ke.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.statements&&e.statements.length)for(var o=0;o<e.statements.length;++o)t.uint32(10).string(e.statements[o]);return null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&t.uint32(18).bytes(e.protoDescriptors),t},ke.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ke.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.GetDatabaseDdlResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.statements&&i.statements.length||(i.statements=[]),i.statements.push(e.string());break;case 2:i.protoDescriptors=e.bytes();break;default:e.skipType(7&a,o)}}return i},ke.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ke.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.statements&&Object.hasOwnProperty.call(e,"statements")){if(!Array.isArray(e.statements))return"statements: array expected";for(var n=0;n<e.statements.length;++n)if(!d.isString(e.statements[n]))return"statements: string[] expected"}return null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&!(e.protoDescriptors&&"number"==typeof e.protoDescriptors.length||d.isString(e.protoDescriptors))?"protoDescriptors: buffer expected":null},ke.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.GetDatabaseDdlResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.GetDatabaseDdlResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.GetDatabaseDdlResponse;if(e.statements){if(!Array.isArray(e.statements))throw TypeError(".google.spanner.admin.database.v1.GetDatabaseDdlResponse.statements: array expected");n.statements=[];for(var o=0;o<e.statements.length;++o)n.statements[o]=String(e.statements[o])}return null!=e.protoDescriptors&&("string"==typeof e.protoDescriptors?d.base64.decode(e.protoDescriptors,n.protoDescriptors=d.newBuffer(d.base64.length(e.protoDescriptors)),0):0<=e.protoDescriptors.length&&(n.protoDescriptors=e.protoDescriptors)),n},ke.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.statements=[]),t.defaults&&(t.bytes===String?o.protoDescriptors="":(o.protoDescriptors=[],t.bytes!==Array&&(o.protoDescriptors=d.newBuffer(o.protoDescriptors)))),e.statements&&e.statements.length){o.statements=[];for(var r=0;r<e.statements.length;++r)o.statements[r]=e.statements[r]}return null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&(o.protoDescriptors=t.bytes===String?d.base64.encode(e.protoDescriptors,0,e.protoDescriptors.length):t.bytes===Array?Array.prototype.slice.call(e.protoDescriptors):e.protoDescriptors),o},ke.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ke.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.GetDatabaseDdlResponse"},ke),n.ListDatabaseOperationsRequest=(Pe.prototype.parent="",Pe.prototype.filter="",Pe.prototype.pageSize=0,Pe.prototype.pageToken="",Pe.create=function(e){return new Pe(e)},Pe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(18).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(24).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(34).string(e.pageToken),t},Pe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Pe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListDatabaseOperationsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.filter=e.string();break;case 3:i.pageSize=e.int32();break;case 4:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},Pe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Pe.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent)?"parent: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},Pe.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListDatabaseOperationsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListDatabaseOperationsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.ListDatabaseOperationsRequest;return null!=e.parent&&(t.parent=String(e.parent)),null!=e.filter&&(t.filter=String(e.filter)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},Pe.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.parent="",n.filter="",n.pageSize=0,n.pageToken=""),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(n.parent=e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},Pe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Pe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListDatabaseOperationsRequest"},Pe),n.ListDatabaseOperationsResponse=(Se.prototype.operations=d.emptyArray,Se.prototype.nextPageToken="",Se.create=function(e){return new Se(e)},Se.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.operations&&e.operations.length)for(var o=0;o<e.operations.length;++o)g.google.longrunning.Operation.encode(e.operations[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},Se.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Se.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListDatabaseOperationsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.operations&&i.operations.length||(i.operations=[]),i.operations.push(g.google.longrunning.Operation.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},Se.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Se.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.operations&&Object.hasOwnProperty.call(e,"operations")){if(!Array.isArray(e.operations))return"operations: array expected";for(var n=0;n<e.operations.length;++n){var o=g.google.longrunning.Operation.verify(e.operations[n],t+1);if(o)return"operations."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},Se.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListDatabaseOperationsResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListDatabaseOperationsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.ListDatabaseOperationsResponse;if(e.operations){if(!Array.isArray(e.operations))throw TypeError(".google.spanner.admin.database.v1.ListDatabaseOperationsResponse.operations: array expected");n.operations=[];for(var o=0;o<e.operations.length;++o){if(!d.isObject(e.operations[o]))throw TypeError(".google.spanner.admin.database.v1.ListDatabaseOperationsResponse.operations: object expected");n.operations[o]=g.google.longrunning.Operation.fromObject(e.operations[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},Se.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.operations=[]),t.defaults&&(o.nextPageToken=""),e.operations&&e.operations.length){o.operations=[];for(var r=0;r<e.operations.length;++r)o.operations[r]=g.google.longrunning.Operation.toObject(e.operations[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},Se.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Se.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListDatabaseOperationsResponse"},Se),n.RestoreDatabaseRequest=(Ie.prototype.parent="",Ie.prototype.databaseId="",Ie.prototype.backup=null,Ie.prototype.encryptionConfig=null,Object.defineProperty(Ie.prototype,"source",{get:d.oneOfGetter(a=["backup"]),set:d.oneOfSetter(a)}),Ie.create=function(e){return new Ie(e)},Ie.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(18).string(e.databaseId),null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&t.uint32(26).string(e.backup),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.encode(e.encryptionConfig,t.uint32(34).fork(),n+1).ldelim(),t},Ie.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ie.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.RestoreDatabaseRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.databaseId=e.string();break;case 3:i.backup=e.string();break;case 4:i.encryptionConfig=g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ie.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ie.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!d.isString(e.databaseId))return"databaseId: string expected";if(null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&!d.isString(e.backup))return"backup: string expected";if(null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")){e=g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.verify(e.encryptionConfig,t+1);if(e)return"encryptionConfig."+e}return null},Ie.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.RestoreDatabaseRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.RestoreDatabaseRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.RestoreDatabaseRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.databaseId&&(n.databaseId=String(e.databaseId)),null!=e.backup&&(n.backup=String(e.backup)),null!=e.encryptionConfig){if(!d.isObject(e.encryptionConfig))throw TypeError(".google.spanner.admin.database.v1.RestoreDatabaseRequest.encryptionConfig: object expected");n.encryptionConfig=g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.fromObject(e.encryptionConfig,t+1)}return n},Ie.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.databaseId="",o.encryptionConfig=null),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&(o.databaseId=e.databaseId),null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&(o.backup=e.backup,t.oneofs)&&(o.source="backup"),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(o.encryptionConfig=g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.toObject(e.encryptionConfig,t,n+1)),o},Ie.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ie.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.RestoreDatabaseRequest"},Ie),n.RestoreDatabaseEncryptionConfig=(Ee.prototype.encryptionType=0,Ee.prototype.kmsKeyName="",Ee.prototype.kmsKeyNames=d.emptyArray,Ee.create=function(e){return new Ee(e)},Ee.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType")&&t.uint32(8).int32(e.encryptionType),null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&t.uint32(18).string(e.kmsKeyName),null!=e.kmsKeyNames&&e.kmsKeyNames.length)for(var o=0;o<e.kmsKeyNames.length;++o)t.uint32(26).string(e.kmsKeyNames[o]);return t},Ee.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ee.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.encryptionType=e.int32();break;case 2:i.kmsKeyName=e.string();break;case 3:i.kmsKeyNames&&i.kmsKeyNames.length||(i.kmsKeyNames=[]),i.kmsKeyNames.push(e.string());break;default:e.skipType(7&a,o)}}return i},Ee.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ee.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType"))switch(e.encryptionType){default:return"encryptionType: enum value expected";case 0:case 1:case 2:case 3:}if(null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&!d.isString(e.kmsKeyName))return"kmsKeyName: string expected";if(null!=e.kmsKeyNames&&Object.hasOwnProperty.call(e,"kmsKeyNames")){if(!Array.isArray(e.kmsKeyNames))return"kmsKeyNames: array expected";for(var n=0;n<e.kmsKeyNames.length;++n)if(!d.isString(e.kmsKeyNames[n]))return"kmsKeyNames: string[] expected"}return null},Ee.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig;switch(e.encryptionType){default:"number"==typeof e.encryptionType&&(n.encryptionType=e.encryptionType);break;case"ENCRYPTION_TYPE_UNSPECIFIED":case 0:n.encryptionType=0;break;case"USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION":case 1:n.encryptionType=1;break;case"GOOGLE_DEFAULT_ENCRYPTION":case 2:n.encryptionType=2;break;case"CUSTOMER_MANAGED_ENCRYPTION":case 3:n.encryptionType=3}if(null!=e.kmsKeyName&&(n.kmsKeyName=String(e.kmsKeyName)),e.kmsKeyNames){if(!Array.isArray(e.kmsKeyNames))throw TypeError(".google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.kmsKeyNames: array expected");n.kmsKeyNames=[];for(var o=0;o<e.kmsKeyNames.length;++o)n.kmsKeyNames[o]=String(e.kmsKeyNames[o])}return n},Ee.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.kmsKeyNames=[]),t.defaults&&(o.encryptionType=t.enums===String?"ENCRYPTION_TYPE_UNSPECIFIED":0,o.kmsKeyName=""),null!=e.encryptionType&&Object.hasOwnProperty.call(e,"encryptionType")&&(o.encryptionType=t.enums!==String||void 0===g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.EncryptionType[e.encryptionType]?e.encryptionType:g.google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig.EncryptionType[e.encryptionType]),null!=e.kmsKeyName&&Object.hasOwnProperty.call(e,"kmsKeyName")&&(o.kmsKeyName=e.kmsKeyName),e.kmsKeyNames&&e.kmsKeyNames.length){o.kmsKeyNames=[];for(var r=0;r<e.kmsKeyNames.length;++r)o.kmsKeyNames[r]=e.kmsKeyNames[r]}return o},Ee.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ee.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.RestoreDatabaseEncryptionConfig"},Ee.EncryptionType=(t={},(a=Object.create(t))[t[0]="ENCRYPTION_TYPE_UNSPECIFIED"]=0,a[t[1]="USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION"]=1,a[t[2]="GOOGLE_DEFAULT_ENCRYPTION"]=2,a[t[3]="CUSTOMER_MANAGED_ENCRYPTION"]=3,a),Ee),n.RestoreDatabaseMetadata=(Ce.prototype.name="",Ce.prototype.sourceType=0,Ce.prototype.backupInfo=null,Ce.prototype.progress=null,Ce.prototype.cancelTime=null,Ce.prototype.optimizeDatabaseOperationName="",Object.defineProperty(Ce.prototype,"sourceInfo",{get:d.oneOfGetter(t=["backupInfo"]),set:d.oneOfSetter(t)}),Ce.create=function(e){return new Ce(e)},Ce.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.sourceType&&Object.hasOwnProperty.call(e,"sourceType")&&t.uint32(16).int32(e.sourceType),null!=e.backupInfo&&Object.hasOwnProperty.call(e,"backupInfo")&&g.google.spanner.admin.database.v1.BackupInfo.encode(e.backupInfo,t.uint32(26).fork(),n+1).ldelim(),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&g.google.spanner.admin.database.v1.OperationProgress.encode(e.progress,t.uint32(34).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(42).fork(),n+1).ldelim(),null!=e.optimizeDatabaseOperationName&&Object.hasOwnProperty.call(e,"optimizeDatabaseOperationName")&&t.uint32(50).string(e.optimizeDatabaseOperationName),t},Ce.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ce.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.RestoreDatabaseMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.sourceType=e.int32();break;case 3:i.backupInfo=g.google.spanner.admin.database.v1.BackupInfo.decode(e,e.uint32(),void 0,o+1);break;case 4:i.progress=g.google.spanner.admin.database.v1.OperationProgress.decode(e,e.uint32(),void 0,o+1);break;case 5:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 6:i.optimizeDatabaseOperationName=e.string();break;default:e.skipType(7&a,o)}}return i},Ce.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ce.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.sourceType&&Object.hasOwnProperty.call(e,"sourceType"))switch(e.sourceType){default:return"sourceType: enum value expected";case 0:case 1:}if(null!=e.backupInfo&&Object.hasOwnProperty.call(e,"backupInfo")&&(n=g.google.spanner.admin.database.v1.BackupInfo.verify(e.backupInfo,t+1)))return"backupInfo."+n;if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(n=g.google.spanner.admin.database.v1.OperationProgress.verify(e.progress,t+1)))return"progress."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;return null!=e.optimizeDatabaseOperationName&&Object.hasOwnProperty.call(e,"optimizeDatabaseOperationName")&&!d.isString(e.optimizeDatabaseOperationName)?"optimizeDatabaseOperationName: string expected":null},Ce.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.RestoreDatabaseMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.RestoreDatabaseMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.RestoreDatabaseMetadata;switch(null!=e.name&&(n.name=String(e.name)),e.sourceType){default:"number"==typeof e.sourceType&&(n.sourceType=e.sourceType);break;case"TYPE_UNSPECIFIED":case 0:n.sourceType=0;break;case"BACKUP":case 1:n.sourceType=1}if(null!=e.backupInfo){if(!d.isObject(e.backupInfo))throw TypeError(".google.spanner.admin.database.v1.RestoreDatabaseMetadata.backupInfo: object expected");n.backupInfo=g.google.spanner.admin.database.v1.BackupInfo.fromObject(e.backupInfo,t+1)}if(null!=e.progress){if(!d.isObject(e.progress))throw TypeError(".google.spanner.admin.database.v1.RestoreDatabaseMetadata.progress: object expected");n.progress=g.google.spanner.admin.database.v1.OperationProgress.fromObject(e.progress,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.database.v1.RestoreDatabaseMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}return null!=e.optimizeDatabaseOperationName&&(n.optimizeDatabaseOperationName=String(e.optimizeDatabaseOperationName)),n},Ce.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.sourceType=t.enums===String?"TYPE_UNSPECIFIED":0,o.progress=null,o.cancelTime=null,o.optimizeDatabaseOperationName=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.sourceType&&Object.hasOwnProperty.call(e,"sourceType")&&(o.sourceType=t.enums!==String||void 0===g.google.spanner.admin.database.v1.RestoreSourceType[e.sourceType]?e.sourceType:g.google.spanner.admin.database.v1.RestoreSourceType[e.sourceType]),null!=e.backupInfo&&Object.hasOwnProperty.call(e,"backupInfo")&&(o.backupInfo=g.google.spanner.admin.database.v1.BackupInfo.toObject(e.backupInfo,t,n+1),t.oneofs)&&(o.sourceInfo="backupInfo"),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(o.progress=g.google.spanner.admin.database.v1.OperationProgress.toObject(e.progress,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),null!=e.optimizeDatabaseOperationName&&Object.hasOwnProperty.call(e,"optimizeDatabaseOperationName")&&(o.optimizeDatabaseOperationName=e.optimizeDatabaseOperationName),o},Ce.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ce.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.RestoreDatabaseMetadata"},Ce),n.OptimizeRestoredDatabaseMetadata=(Re.prototype.name="",Re.prototype.progress=null,Re.create=function(e){return new Re(e)},Re.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&g.google.spanner.admin.database.v1.OperationProgress.encode(e.progress,t.uint32(18).fork(),n+1).ldelim(),t},Re.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Re.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.progress=g.google.spanner.admin.database.v1.OperationProgress.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Re.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Re.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")){e=g.google.spanner.admin.database.v1.OperationProgress.verify(e.progress,t+1);if(e)return"progress."+e}return null},Re.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata;if(null!=e.name&&(n.name=String(e.name)),null!=e.progress){if(!d.isObject(e.progress))throw TypeError(".google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata.progress: object expected");n.progress=g.google.spanner.admin.database.v1.OperationProgress.fromObject(e.progress,t+1)}return n},Re.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.progress=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(o.progress=g.google.spanner.admin.database.v1.OperationProgress.toObject(e.progress,t,n+1)),o},Re.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Re.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.OptimizeRestoredDatabaseMetadata"},Re),n.RestoreSourceType=(a={},(t=Object.create(a))[a[0]="TYPE_UNSPECIFIED"]=0,t[a[1]="BACKUP"]=1,t),n.DatabaseRole=(De.prototype.name="",De.create=function(e){return new De(e)},De.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},De.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},De.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.DatabaseRole;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},De.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},De.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},De.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.DatabaseRole)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.DatabaseRole: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.DatabaseRole;return null!=e.name&&(t.name=String(e.name)),t},De.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},De.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},De.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.DatabaseRole"},De),n.ListDatabaseRolesRequest=(Le.prototype.parent="",Le.prototype.pageSize=0,Le.prototype.pageToken="",Le.create=function(e){return new Le(e)},Le.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(16).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(26).string(e.pageToken),t},Le.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Le.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListDatabaseRolesRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.pageSize=e.int32();break;case 3:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},Le.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Le.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent)?"parent: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},Le.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListDatabaseRolesRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListDatabaseRolesRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.database.v1.ListDatabaseRolesRequest;return null!=e.parent&&(t.parent=String(e.parent)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},Le.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.parent="",n.pageSize=0,n.pageToken=""),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(n.parent=e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},Le.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Le.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListDatabaseRolesRequest"},Le),n.ListDatabaseRolesResponse=(Ae.prototype.databaseRoles=d.emptyArray,Ae.prototype.nextPageToken="",Ae.create=function(e){return new Ae(e)},Ae.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.databaseRoles&&e.databaseRoles.length)for(var o=0;o<e.databaseRoles.length;++o)g.google.spanner.admin.database.v1.DatabaseRole.encode(e.databaseRoles[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},Ae.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ae.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.ListDatabaseRolesResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.databaseRoles&&i.databaseRoles.length||(i.databaseRoles=[]),i.databaseRoles.push(g.google.spanner.admin.database.v1.DatabaseRole.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},Ae.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ae.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.databaseRoles&&Object.hasOwnProperty.call(e,"databaseRoles")){if(!Array.isArray(e.databaseRoles))return"databaseRoles: array expected";for(var n=0;n<e.databaseRoles.length;++n){var o=g.google.spanner.admin.database.v1.DatabaseRole.verify(e.databaseRoles[n],t+1);if(o)return"databaseRoles."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},Ae.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.ListDatabaseRolesResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.ListDatabaseRolesResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.ListDatabaseRolesResponse;if(e.databaseRoles){if(!Array.isArray(e.databaseRoles))throw TypeError(".google.spanner.admin.database.v1.ListDatabaseRolesResponse.databaseRoles: array expected");n.databaseRoles=[];for(var o=0;o<e.databaseRoles.length;++o){if(!d.isObject(e.databaseRoles[o]))throw TypeError(".google.spanner.admin.database.v1.ListDatabaseRolesResponse.databaseRoles: object expected");n.databaseRoles[o]=g.google.spanner.admin.database.v1.DatabaseRole.fromObject(e.databaseRoles[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},Ae.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.databaseRoles=[]),t.defaults&&(o.nextPageToken=""),e.databaseRoles&&e.databaseRoles.length){o.databaseRoles=[];for(var r=0;r<e.databaseRoles.length;++r)o.databaseRoles[r]=g.google.spanner.admin.database.v1.DatabaseRole.toObject(e.databaseRoles[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},Ae.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ae.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.ListDatabaseRolesResponse"},Ae),n.AddSplitPointsRequest=(Ne.prototype.database="",Ne.prototype.splitPoints=d.emptyArray,Ne.prototype.initiator="",Ne.create=function(e){return new Ne(e)},Ne.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),null!=e.splitPoints&&e.splitPoints.length)for(var o=0;o<e.splitPoints.length;++o)g.google.spanner.admin.database.v1.SplitPoints.encode(e.splitPoints[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.initiator&&Object.hasOwnProperty.call(e,"initiator")&&t.uint32(26).string(e.initiator),t},Ne.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ne.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.AddSplitPointsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.database=e.string();break;case 2:i.splitPoints&&i.splitPoints.length||(i.splitPoints=[]),i.splitPoints.push(g.google.spanner.admin.database.v1.SplitPoints.decode(e,e.uint32(),void 0,o+1));break;case 3:i.initiator=e.string();break;default:e.skipType(7&a,o)}}return i},Ne.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ne.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database))return"database: string expected";if(null!=e.splitPoints&&Object.hasOwnProperty.call(e,"splitPoints")){if(!Array.isArray(e.splitPoints))return"splitPoints: array expected";for(var n=0;n<e.splitPoints.length;++n){var o=g.google.spanner.admin.database.v1.SplitPoints.verify(e.splitPoints[n],t+1);if(o)return"splitPoints."+o}}return null!=e.initiator&&Object.hasOwnProperty.call(e,"initiator")&&!d.isString(e.initiator)?"initiator: string expected":null},Ne.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.AddSplitPointsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.AddSplitPointsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.AddSplitPointsRequest;if(null!=e.database&&(n.database=String(e.database)),e.splitPoints){if(!Array.isArray(e.splitPoints))throw TypeError(".google.spanner.admin.database.v1.AddSplitPointsRequest.splitPoints: array expected");n.splitPoints=[];for(var o=0;o<e.splitPoints.length;++o){if(!d.isObject(e.splitPoints[o]))throw TypeError(".google.spanner.admin.database.v1.AddSplitPointsRequest.splitPoints: object expected");n.splitPoints[o]=g.google.spanner.admin.database.v1.SplitPoints.fromObject(e.splitPoints[o],t+1)}}return null!=e.initiator&&(n.initiator=String(e.initiator)),n},Ne.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.splitPoints=[]),t.defaults&&(o.database="",o.initiator=""),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o.database=e.database),e.splitPoints&&e.splitPoints.length){o.splitPoints=[];for(var r=0;r<e.splitPoints.length;++r)o.splitPoints[r]=g.google.spanner.admin.database.v1.SplitPoints.toObject(e.splitPoints[r],t,n+1)}return null!=e.initiator&&Object.hasOwnProperty.call(e,"initiator")&&(o.initiator=e.initiator),o},Ne.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ne.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.AddSplitPointsRequest"},Ne),n.AddSplitPointsResponse=(_e.create=function(e){return new _e(e)},_e.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return t},_e.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},_e.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,t=new g.google.spanner.admin.database.v1.AddSplitPointsResponse;e.pos<r;){var i=e.uint32();if(i===n)break;e.skipType(7&i,o)}return t},_e.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},_e.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null},_e.fromObject=function(e,t){return e instanceof g.google.spanner.admin.database.v1.AddSplitPointsResponse?e:new g.google.spanner.admin.database.v1.AddSplitPointsResponse},_e.toObject=function(){return{}},_e.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},_e.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.AddSplitPointsResponse"},_e),n.SplitPoints=(Be.prototype.table="",Be.prototype.index="",Be.prototype.keys=d.emptyArray,Be.prototype.expireTime=null,Be.create=function(e){return new Be(e)},Be.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(10).string(e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&t.uint32(18).string(e.index),null!=e.keys&&e.keys.length)for(var o=0;o<e.keys.length;++o)g.google.spanner.admin.database.v1.SplitPoints.Key.encode(e.keys[o],t.uint32(26).fork(),n+1).ldelim();return null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&g.google.protobuf.Timestamp.encode(e.expireTime,t.uint32(42).fork(),n+1).ldelim(),t},Be.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Be.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.SplitPoints;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.table=e.string();break;case 2:i.index=e.string();break;case 3:i.keys&&i.keys.length||(i.keys=[]),i.keys.push(g.google.spanner.admin.database.v1.SplitPoints.Key.decode(e,e.uint32(),void 0,o+1));break;case 5:i.expireTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Be.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Be.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";if(null!=e.index&&Object.hasOwnProperty.call(e,"index")&&!d.isString(e.index))return"index: string expected";if(null!=e.keys&&Object.hasOwnProperty.call(e,"keys")){if(!Array.isArray(e.keys))return"keys: array expected";for(var n=0;n<e.keys.length;++n)if(o=g.google.spanner.admin.database.v1.SplitPoints.Key.verify(e.keys[n],t+1))return"keys."+o}var o;if(null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(o=g.google.protobuf.Timestamp.verify(e.expireTime,t+1)))return"expireTime."+o;return null},Be.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.SplitPoints)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.SplitPoints: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.SplitPoints;if(null!=e.table&&(n.table=String(e.table)),null!=e.index&&(n.index=String(e.index)),e.keys){if(!Array.isArray(e.keys))throw TypeError(".google.spanner.admin.database.v1.SplitPoints.keys: array expected");n.keys=[];for(var o=0;o<e.keys.length;++o){if(!d.isObject(e.keys[o]))throw TypeError(".google.spanner.admin.database.v1.SplitPoints.keys: object expected");n.keys[o]=g.google.spanner.admin.database.v1.SplitPoints.Key.fromObject(e.keys[o],t+1)}}if(null!=e.expireTime){if(!d.isObject(e.expireTime))throw TypeError(".google.spanner.admin.database.v1.SplitPoints.expireTime: object expected");n.expireTime=g.google.protobuf.Timestamp.fromObject(e.expireTime,t+1)}return n},Be.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.keys=[]),t.defaults&&(o.table="",o.index="",o.expireTime=null),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(o.table=e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&(o.index=e.index),e.keys&&e.keys.length){o.keys=[];for(var r=0;r<e.keys.length;++r)o.keys[r]=g.google.spanner.admin.database.v1.SplitPoints.Key.toObject(e.keys[r],t,n+1)}return null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(o.expireTime=g.google.protobuf.Timestamp.toObject(e.expireTime,t,n+1)),o},Be.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Be.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.SplitPoints"},Be.Key=(Ue.prototype.keyParts=null,Ue.create=function(e){return new Ue(e)},Ue.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.keyParts&&Object.hasOwnProperty.call(e,"keyParts")&&g.google.protobuf.ListValue.encode(e.keyParts,t.uint32(10).fork(),n+1).ldelim(),t},Ue.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ue.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.SplitPoints.Key;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.keyParts=g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},Ue.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ue.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.keyParts&&Object.hasOwnProperty.call(e,"keyParts")){e=g.google.protobuf.ListValue.verify(e.keyParts,t+1);if(e)return"keyParts."+e}return null},Ue.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.SplitPoints.Key)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.SplitPoints.Key: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.SplitPoints.Key;if(null!=e.keyParts){if(!d.isObject(e.keyParts))throw TypeError(".google.spanner.admin.database.v1.SplitPoints.Key.keyParts: object expected");n.keyParts=g.google.protobuf.ListValue.fromObject(e.keyParts,t+1)}return n},Ue.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.keyParts=null),null!=e.keyParts&&Object.hasOwnProperty.call(e,"keyParts")&&(o.keyParts=g.google.protobuf.ListValue.toObject(e.keyParts,t,n+1)),o},Ue.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ue.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.SplitPoints.Key"},Ue),Be),n.InternalUpdateGraphOperationRequest=(Me.prototype.database="",Me.prototype.operationId="",Me.prototype.vmIdentityToken="",Me.prototype.progress=0,Me.prototype.status=null,Me.create=function(e){return new Me(e)},Me.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),null!=e.operationId&&Object.hasOwnProperty.call(e,"operationId")&&t.uint32(18).string(e.operationId),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&t.uint32(25).double(e.progress),null!=e.vmIdentityToken&&Object.hasOwnProperty.call(e,"vmIdentityToken")&&t.uint32(42).string(e.vmIdentityToken),null!=e.status&&Object.hasOwnProperty.call(e,"status")&&g.google.rpc.Status.encode(e.status,t.uint32(50).fork(),n+1).ldelim(),t},Me.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Me.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.database.v1.InternalUpdateGraphOperationRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.database=e.string();break;case 2:i.operationId=e.string();break;case 5:i.vmIdentityToken=e.string();break;case 3:i.progress=e.double();break;case 6:i.status=g.google.rpc.Status.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Me.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Me.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database))return"database: string expected";if(null!=e.operationId&&Object.hasOwnProperty.call(e,"operationId")&&!d.isString(e.operationId))return"operationId: string expected";if(null!=e.vmIdentityToken&&Object.hasOwnProperty.call(e,"vmIdentityToken")&&!d.isString(e.vmIdentityToken))return"vmIdentityToken: string expected";if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&"number"!=typeof e.progress)return"progress: number expected";if(null!=e.status&&Object.hasOwnProperty.call(e,"status")){e=g.google.rpc.Status.verify(e.status,t+1);if(e)return"status."+e}return null},Me.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.database.v1.InternalUpdateGraphOperationRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.database.v1.InternalUpdateGraphOperationRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.database.v1.InternalUpdateGraphOperationRequest;if(null!=e.database&&(n.database=String(e.database)),null!=e.operationId&&(n.operationId=String(e.operationId)),null!=e.vmIdentityToken&&(n.vmIdentityToken=String(e.vmIdentityToken)),null!=e.progress&&(n.progress=Number(e.progress)),null!=e.status){if(!d.isObject(e.status))throw TypeError(".google.spanner.admin.database.v1.InternalUpdateGraphOperationRequest.status: object expected");n.status=g.google.rpc.Status.fromObject(e.status,t+1)}return n},Me.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.database="",o.operationId="",o.progress=0,o.vmIdentityToken="",o.status=null),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o.database=e.database),null!=e.operationId&&Object.hasOwnProperty.call(e,"operationId")&&(o.operationId=e.operationId),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(o.progress=t.json&&!isFinite(e.progress)?String(e.progress):e.progress),null!=e.vmIdentityToken&&Object.hasOwnProperty.call(e,"vmIdentityToken")&&(o.vmIdentityToken=e.vmIdentityToken),null!=e.status&&Object.hasOwnProperty.call(e,"status")&&(o.status=g.google.rpc.Status.toObject(e.status,t,n+1)),o},Me.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Me.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.InternalUpdateGraphOperationRequest"},Me),n.InternalUpdateGraphOperationResponse=(qe.create=function(e){return new qe(e)},qe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return t},qe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},qe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,t=new g.google.spanner.admin.database.v1.InternalUpdateGraphOperationResponse;e.pos<r;){var i=e.uint32();if(i===n)break;e.skipType(7&i,o)}return t},qe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},qe.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null},qe.fromObject=function(e,t){return e instanceof g.google.spanner.admin.database.v1.InternalUpdateGraphOperationResponse?e:new g.google.spanner.admin.database.v1.InternalUpdateGraphOperationResponse},qe.toObject=function(){return{}},qe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},qe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.database.v1.InternalUpdateGraphOperationResponse"},qe),n),e),r.instance=((a={}).v1=((t={}).OperationProgress=(Ve.prototype.progressPercent=0,Ve.prototype.startTime=null,Ve.prototype.endTime=null,Ve.create=function(e){return new Ve(e)},Ve.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.progressPercent&&Object.hasOwnProperty.call(e,"progressPercent")&&t.uint32(8).int32(e.progressPercent),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&g.google.protobuf.Timestamp.encode(e.startTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&g.google.protobuf.Timestamp.encode(e.endTime,t.uint32(26).fork(),n+1).ldelim(),t},Ve.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ve.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.OperationProgress;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.progressPercent=e.int32();break;case 2:i.startTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.endTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ve.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ve.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.progressPercent&&Object.hasOwnProperty.call(e,"progressPercent")&&!d.isInteger(e.progressPercent))return"progressPercent: integer expected";var n;if(null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(n=g.google.protobuf.Timestamp.verify(e.startTime,t+1)))return"startTime."+n;if(null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(n=g.google.protobuf.Timestamp.verify(e.endTime,t+1)))return"endTime."+n;return null},Ve.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.OperationProgress)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.OperationProgress: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.OperationProgress;if(null!=e.progressPercent&&(n.progressPercent=0|e.progressPercent),null!=e.startTime){if(!d.isObject(e.startTime))throw TypeError(".google.spanner.admin.instance.v1.OperationProgress.startTime: object expected");n.startTime=g.google.protobuf.Timestamp.fromObject(e.startTime,t+1)}if(null!=e.endTime){if(!d.isObject(e.endTime))throw TypeError(".google.spanner.admin.instance.v1.OperationProgress.endTime: object expected");n.endTime=g.google.protobuf.Timestamp.fromObject(e.endTime,t+1)}return n},Ve.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.progressPercent=0,o.startTime=null,o.endTime=null),null!=e.progressPercent&&Object.hasOwnProperty.call(e,"progressPercent")&&(o.progressPercent=e.progressPercent),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(o.startTime=g.google.protobuf.Timestamp.toObject(e.startTime,t,n+1)),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(o.endTime=g.google.protobuf.Timestamp.toObject(e.endTime,t,n+1)),o},Ve.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ve.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.OperationProgress"},Ve),t.FulfillmentPeriod=(n={},(e=Object.create(n))[n[0]="FULFILLMENT_PERIOD_UNSPECIFIED"]=0,e[n[1]="FULFILLMENT_PERIOD_NORMAL"]=1,e[n[2]="FULFILLMENT_PERIOD_EXTENDED"]=2,e),t.ReplicaSelection=(Fe.prototype.location="",Fe.create=function(e){return new Fe(e)},Fe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.location&&Object.hasOwnProperty.call(e,"location")&&t.uint32(10).string(e.location),t},Fe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Fe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ReplicaSelection;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.location=e.string():e.skipType(7&a,o)}return i},Fe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Fe.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.location&&Object.hasOwnProperty.call(e,"location")&&!d.isString(e.location)?"location: string expected":null},Fe.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ReplicaSelection)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ReplicaSelection: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.ReplicaSelection;return null!=e.location&&(t.location=String(e.location)),t},Fe.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.location=""),null!=e.location&&Object.hasOwnProperty.call(e,"location")&&(n.location=e.location),n},Fe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Fe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ReplicaSelection"},Fe),t.InstanceAdmin=(((f.prototype=Object.create(o.rpc.Service.prototype)).constructor=f).create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(f.prototype.listInstanceConfigs=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.ListInstanceConfigsRequest,g.google.spanner.admin.instance.v1.ListInstanceConfigsResponse,t,n)},"name",{value:"ListInstanceConfigs"}),Object.defineProperty(f.prototype.getInstanceConfig=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.GetInstanceConfigRequest,g.google.spanner.admin.instance.v1.InstanceConfig,t,n)},"name",{value:"GetInstanceConfig"}),Object.defineProperty(f.prototype.createInstanceConfig=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.CreateInstanceConfigRequest,g.google.longrunning.Operation,t,n)},"name",{value:"CreateInstanceConfig"}),Object.defineProperty(f.prototype.updateInstanceConfig=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.UpdateInstanceConfigRequest,g.google.longrunning.Operation,t,n)},"name",{value:"UpdateInstanceConfig"}),Object.defineProperty(f.prototype.deleteInstanceConfig=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.DeleteInstanceConfigRequest,g.google.protobuf.Empty,t,n)},"name",{value:"DeleteInstanceConfig"}),Object.defineProperty(f.prototype.listInstanceConfigOperations=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.ListInstanceConfigOperationsRequest,g.google.spanner.admin.instance.v1.ListInstanceConfigOperationsResponse,t,n)},"name",{value:"ListInstanceConfigOperations"}),Object.defineProperty(f.prototype.listInstances=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.ListInstancesRequest,g.google.spanner.admin.instance.v1.ListInstancesResponse,t,n)},"name",{value:"ListInstances"}),Object.defineProperty(f.prototype.listInstancePartitions=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.ListInstancePartitionsRequest,g.google.spanner.admin.instance.v1.ListInstancePartitionsResponse,t,n)},"name",{value:"ListInstancePartitions"}),Object.defineProperty(f.prototype.getInstance=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.GetInstanceRequest,g.google.spanner.admin.instance.v1.Instance,t,n)},"name",{value:"GetInstance"}),Object.defineProperty(f.prototype.createInstance=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.CreateInstanceRequest,g.google.longrunning.Operation,t,n)},"name",{value:"CreateInstance"}),Object.defineProperty(f.prototype.updateInstance=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.UpdateInstanceRequest,g.google.longrunning.Operation,t,n)},"name",{value:"UpdateInstance"}),Object.defineProperty(f.prototype.deleteInstance=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.DeleteInstanceRequest,g.google.protobuf.Empty,t,n)},"name",{value:"DeleteInstance"}),Object.defineProperty(f.prototype.setIamPolicy=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.iam.v1.SetIamPolicyRequest,g.google.iam.v1.Policy,t,n)},"name",{value:"SetIamPolicy"}),Object.defineProperty(f.prototype.getIamPolicy=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.iam.v1.GetIamPolicyRequest,g.google.iam.v1.Policy,t,n)},"name",{value:"GetIamPolicy"}),Object.defineProperty(f.prototype.testIamPermissions=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.iam.v1.TestIamPermissionsRequest,g.google.iam.v1.TestIamPermissionsResponse,t,n)},"name",{value:"TestIamPermissions"}),Object.defineProperty(f.prototype.getInstancePartition=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.GetInstancePartitionRequest,g.google.spanner.admin.instance.v1.InstancePartition,t,n)},"name",{value:"GetInstancePartition"}),Object.defineProperty(f.prototype.createInstancePartition=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.CreateInstancePartitionRequest,g.google.longrunning.Operation,t,n)},"name",{value:"CreateInstancePartition"}),Object.defineProperty(f.prototype.deleteInstancePartition=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.DeleteInstancePartitionRequest,g.google.protobuf.Empty,t,n)},"name",{value:"DeleteInstancePartition"}),Object.defineProperty(f.prototype.updateInstancePartition=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.UpdateInstancePartitionRequest,g.google.longrunning.Operation,t,n)},"name",{value:"UpdateInstancePartition"}),Object.defineProperty(f.prototype.listInstancePartitionOperations=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.ListInstancePartitionOperationsRequest,g.google.spanner.admin.instance.v1.ListInstancePartitionOperationsResponse,t,n)},"name",{value:"ListInstancePartitionOperations"}),Object.defineProperty(f.prototype.moveInstance=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.admin.instance.v1.MoveInstanceRequest,g.google.longrunning.Operation,t,n)},"name",{value:"MoveInstance"}),f),t.ReplicaInfo=(Ge.prototype.location="",Ge.prototype.type=0,Ge.prototype.defaultLeaderLocation=!1,Ge.create=function(e){return new Ge(e)},Ge.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.location&&Object.hasOwnProperty.call(e,"location")&&t.uint32(10).string(e.location),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&t.uint32(16).int32(e.type),null!=e.defaultLeaderLocation&&Object.hasOwnProperty.call(e,"defaultLeaderLocation")&&t.uint32(24).bool(e.defaultLeaderLocation),t},Ge.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ge.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ReplicaInfo;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.location=e.string();break;case 2:i.type=e.int32();break;case 3:i.defaultLeaderLocation=e.bool();break;default:e.skipType(7&a,o)}}return i},Ge.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ge.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.location&&Object.hasOwnProperty.call(e,"location")&&!d.isString(e.location))return"location: string expected";if(null!=e.type&&Object.hasOwnProperty.call(e,"type"))switch(e.type){default:return"type: enum value expected";case 0:case 1:case 2:case 3:}return null!=e.defaultLeaderLocation&&Object.hasOwnProperty.call(e,"defaultLeaderLocation")&&"boolean"!=typeof e.defaultLeaderLocation?"defaultLeaderLocation: boolean expected":null},Ge.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ReplicaInfo)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ReplicaInfo: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ReplicaInfo;switch(null!=e.location&&(n.location=String(e.location)),e.type){default:"number"==typeof e.type&&(n.type=e.type);break;case"TYPE_UNSPECIFIED":case 0:n.type=0;break;case"READ_WRITE":case 1:n.type=1;break;case"READ_ONLY":case 2:n.type=2;break;case"WITNESS":case 3:n.type=3}return null!=e.defaultLeaderLocation&&(n.defaultLeaderLocation=Boolean(e.defaultLeaderLocation)),n},Ge.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.location="",n.type=t.enums===String?"TYPE_UNSPECIFIED":0,n.defaultLeaderLocation=!1),null!=e.location&&Object.hasOwnProperty.call(e,"location")&&(n.location=e.location),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(n.type=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.ReplicaInfo.ReplicaType[e.type]?e.type:g.google.spanner.admin.instance.v1.ReplicaInfo.ReplicaType[e.type]),null!=e.defaultLeaderLocation&&Object.hasOwnProperty.call(e,"defaultLeaderLocation")&&(n.defaultLeaderLocation=e.defaultLeaderLocation),n},Ge.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ge.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ReplicaInfo"},Ge.ReplicaType=(n={},(e=Object.create(n))[n[0]="TYPE_UNSPECIFIED"]=0,e[n[1]="READ_WRITE"]=1,e[n[2]="READ_ONLY"]=2,e[n[3]="WITNESS"]=3,e),Ge),t.InstanceConfig=(m.prototype.name="",m.prototype.displayName="",m.prototype.configType=0,m.prototype.replicas=d.emptyArray,m.prototype.optionalReplicas=d.emptyArray,m.prototype.baseConfig="",m.prototype.labels=d.emptyObject,m.prototype.etag="",m.prototype.leaderOptions=d.emptyArray,m.prototype.reconciling=!1,m.prototype.state=0,m.prototype.freeInstanceAvailability=0,m.prototype.quorumType=0,m.prototype.storageLimitPerProcessingUnit=d.Long?d.Long.fromBits(0,0,!1):0,m.create=function(e){return new m(e)},m.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&t.uint32(18).string(e.displayName),null!=e.replicas&&e.replicas.length)for(var o=0;o<e.replicas.length;++o)g.google.spanner.admin.instance.v1.ReplicaInfo.encode(e.replicas[o],t.uint32(26).fork(),n+1).ldelim();if(null!=e.leaderOptions&&e.leaderOptions.length)for(o=0;o<e.leaderOptions.length;++o)t.uint32(34).string(e.leaderOptions[o]);if(null!=e.configType&&Object.hasOwnProperty.call(e,"configType")&&t.uint32(40).int32(e.configType),null!=e.optionalReplicas&&e.optionalReplicas.length)for(o=0;o<e.optionalReplicas.length;++o)g.google.spanner.admin.instance.v1.ReplicaInfo.encode(e.optionalReplicas[o],t.uint32(50).fork(),n+1).ldelim();if(null!=e.baseConfig&&Object.hasOwnProperty.call(e,"baseConfig")&&t.uint32(58).string(e.baseConfig),null!=e.labels&&Object.hasOwnProperty.call(e,"labels"))for(var r=Object.keys(e.labels),o=0;o<r.length;++o)t.uint32(66).fork().uint32(10).string(r[o]).uint32(18).string(e.labels[r[o]]).ldelim();return null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&t.uint32(74).string(e.etag),null!=e.reconciling&&Object.hasOwnProperty.call(e,"reconciling")&&t.uint32(80).bool(e.reconciling),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&t.uint32(88).int32(e.state),null!=e.freeInstanceAvailability&&Object.hasOwnProperty.call(e,"freeInstanceAvailability")&&t.uint32(96).int32(e.freeInstanceAvailability),null!=e.quorumType&&Object.hasOwnProperty.call(e,"quorumType")&&t.uint32(144).int32(e.quorumType),null!=e.storageLimitPerProcessingUnit&&Object.hasOwnProperty.call(e,"storageLimitPerProcessingUnit")&&t.uint32(152).int64(e.storageLimitPerProcessingUnit),t},m.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},m.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.InstanceConfig;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.displayName=e.string();break;case 5:i.configType=e.int32();break;case 3:i.replicas&&i.replicas.length||(i.replicas=[]),i.replicas.push(g.google.spanner.admin.instance.v1.ReplicaInfo.decode(e,e.uint32(),void 0,o+1));break;case 6:i.optionalReplicas&&i.optionalReplicas.length||(i.optionalReplicas=[]),i.optionalReplicas.push(g.google.spanner.admin.instance.v1.ReplicaInfo.decode(e,e.uint32(),void 0,o+1));break;case 7:i.baseConfig=e.string();break;case 8:i.labels===d.emptyObject&&(i.labels={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.labels,c),i.labels[c]=l;break;case 9:i.etag=e.string();break;case 4:i.leaderOptions&&i.leaderOptions.length||(i.leaderOptions=[]),i.leaderOptions.push(e.string());break;case 10:i.reconciling=e.bool();break;case 11:i.state=e.int32();break;case 12:i.freeInstanceAvailability=e.int32();break;case 18:i.quorumType=e.int32();break;case 19:i.storageLimitPerProcessingUnit=e.int64();break;default:e.skipType(7&a,o)}}return i},m.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},m.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&!d.isString(e.displayName))return"displayName: string expected";if(null!=e.configType&&Object.hasOwnProperty.call(e,"configType"))switch(e.configType){default:return"configType: enum value expected";case 0:case 1:case 2:}if(null!=e.replicas&&Object.hasOwnProperty.call(e,"replicas")){if(!Array.isArray(e.replicas))return"replicas: array expected";for(var n=0;n<e.replicas.length;++n)if(o=g.google.spanner.admin.instance.v1.ReplicaInfo.verify(e.replicas[n],t+1))return"replicas."+o}if(null!=e.optionalReplicas&&Object.hasOwnProperty.call(e,"optionalReplicas")){if(!Array.isArray(e.optionalReplicas))return"optionalReplicas: array expected";for(var o,n=0;n<e.optionalReplicas.length;++n)if(o=g.google.spanner.admin.instance.v1.ReplicaInfo.verify(e.optionalReplicas[n],t+1))return"optionalReplicas."+o}if(null!=e.baseConfig&&Object.hasOwnProperty.call(e,"baseConfig")&&!d.isString(e.baseConfig))return"baseConfig: string expected";if(null!=e.labels&&Object.hasOwnProperty.call(e,"labels")){if(!d.isObject(e.labels))return"labels: object expected";for(var r=Object.keys(e.labels),n=0;n<r.length;++n)if(!d.isString(e.labels[r[n]]))return"labels: string{k:string} expected"}if(null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&!d.isString(e.etag))return"etag: string expected";if(null!=e.leaderOptions&&Object.hasOwnProperty.call(e,"leaderOptions")){if(!Array.isArray(e.leaderOptions))return"leaderOptions: array expected";for(n=0;n<e.leaderOptions.length;++n)if(!d.isString(e.leaderOptions[n]))return"leaderOptions: string[] expected"}if(null!=e.reconciling&&Object.hasOwnProperty.call(e,"reconciling")&&"boolean"!=typeof e.reconciling)return"reconciling: boolean expected";if(null!=e.state&&Object.hasOwnProperty.call(e,"state"))switch(e.state){default:return"state: enum value expected";case 0:case 1:case 2:}if(null!=e.freeInstanceAvailability&&Object.hasOwnProperty.call(e,"freeInstanceAvailability"))switch(e.freeInstanceAvailability){default:return"freeInstanceAvailability: enum value expected";case 0:case 1:case 2:case 3:case 4:}if(null!=e.quorumType&&Object.hasOwnProperty.call(e,"quorumType"))switch(e.quorumType){default:return"quorumType: enum value expected";case 0:case 1:case 2:case 3:}return null!=e.storageLimitPerProcessingUnit&&Object.hasOwnProperty.call(e,"storageLimitPerProcessingUnit")&&!(d.isInteger(e.storageLimitPerProcessingUnit)||e.storageLimitPerProcessingUnit&&d.isInteger(e.storageLimitPerProcessingUnit.low)&&d.isInteger(e.storageLimitPerProcessingUnit.high))?"storageLimitPerProcessingUnit: integer|Long expected":null},m.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.InstanceConfig)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.InstanceConfig: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.InstanceConfig;switch(null!=e.name&&(n.name=String(e.name)),null!=e.displayName&&(n.displayName=String(e.displayName)),e.configType){default:"number"==typeof e.configType&&(n.configType=e.configType);break;case"TYPE_UNSPECIFIED":case 0:n.configType=0;break;case"GOOGLE_MANAGED":case 1:n.configType=1;break;case"USER_MANAGED":case 2:n.configType=2}if(e.replicas){if(!Array.isArray(e.replicas))throw TypeError(".google.spanner.admin.instance.v1.InstanceConfig.replicas: array expected");n.replicas=[];for(var o=0;o<e.replicas.length;++o){if(!d.isObject(e.replicas[o]))throw TypeError(".google.spanner.admin.instance.v1.InstanceConfig.replicas: object expected");n.replicas[o]=g.google.spanner.admin.instance.v1.ReplicaInfo.fromObject(e.replicas[o],t+1)}}if(e.optionalReplicas){if(!Array.isArray(e.optionalReplicas))throw TypeError(".google.spanner.admin.instance.v1.InstanceConfig.optionalReplicas: array expected");n.optionalReplicas=[];for(o=0;o<e.optionalReplicas.length;++o){if(!d.isObject(e.optionalReplicas[o]))throw TypeError(".google.spanner.admin.instance.v1.InstanceConfig.optionalReplicas: object expected");n.optionalReplicas[o]=g.google.spanner.admin.instance.v1.ReplicaInfo.fromObject(e.optionalReplicas[o],t+1)}}if(null!=e.baseConfig&&(n.baseConfig=String(e.baseConfig)),e.labels){if(!d.isObject(e.labels))throw TypeError(".google.spanner.admin.instance.v1.InstanceConfig.labels: object expected");n.labels={};for(var r=Object.keys(e.labels),o=0;o<r.length;++o)"__proto__"===r[o]&&d.makeProp(n.labels,r[o]),n.labels[r[o]]=String(e.labels[r[o]])}if(null!=e.etag&&(n.etag=String(e.etag)),e.leaderOptions){if(!Array.isArray(e.leaderOptions))throw TypeError(".google.spanner.admin.instance.v1.InstanceConfig.leaderOptions: array expected");n.leaderOptions=[];for(o=0;o<e.leaderOptions.length;++o)n.leaderOptions[o]=String(e.leaderOptions[o])}switch(null!=e.reconciling&&(n.reconciling=Boolean(e.reconciling)),e.state){default:"number"==typeof e.state&&(n.state=e.state);break;case"STATE_UNSPECIFIED":case 0:n.state=0;break;case"CREATING":case 1:n.state=1;break;case"READY":case 2:n.state=2}switch(e.freeInstanceAvailability){default:"number"==typeof e.freeInstanceAvailability&&(n.freeInstanceAvailability=e.freeInstanceAvailability);break;case"FREE_INSTANCE_AVAILABILITY_UNSPECIFIED":case 0:n.freeInstanceAvailability=0;break;case"AVAILABLE":case 1:n.freeInstanceAvailability=1;break;case"UNSUPPORTED":case 2:n.freeInstanceAvailability=2;break;case"DISABLED":case 3:n.freeInstanceAvailability=3;break;case"QUOTA_EXCEEDED":case 4:n.freeInstanceAvailability=4}switch(e.quorumType){default:"number"==typeof e.quorumType&&(n.quorumType=e.quorumType);break;case"QUORUM_TYPE_UNSPECIFIED":case 0:n.quorumType=0;break;case"REGION":case 1:n.quorumType=1;break;case"DUAL_REGION":case 2:n.quorumType=2;break;case"MULTI_REGION":case 3:n.quorumType=3}return null!=e.storageLimitPerProcessingUnit&&(d.Long?n.storageLimitPerProcessingUnit=d.Long.fromValue(e.storageLimitPerProcessingUnit,!1):"string"==typeof e.storageLimitPerProcessingUnit?n.storageLimitPerProcessingUnit=parseInt(e.storageLimitPerProcessingUnit,10):"number"==typeof e.storageLimitPerProcessingUnit?n.storageLimitPerProcessingUnit=e.storageLimitPerProcessingUnit:"object"==typeof e.storageLimitPerProcessingUnit&&(n.storageLimitPerProcessingUnit=new d.LongBits(e.storageLimitPerProcessingUnit.low>>>0,e.storageLimitPerProcessingUnit.high>>>0).toNumber())),n},m.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r,i={};if((t.arrays||t.defaults)&&(i.replicas=[],i.leaderOptions=[],i.optionalReplicas=[]),(t.objects||t.defaults)&&(i.labels={}),t.defaults&&(i.name="",i.displayName="",i.configType=t.enums===String?"TYPE_UNSPECIFIED":0,i.baseConfig="",i.etag="",i.reconciling=!1,i.state=t.enums===String?"STATE_UNSPECIFIED":0,i.freeInstanceAvailability=t.enums===String?"FREE_INSTANCE_AVAILABILITY_UNSPECIFIED":0,i.quorumType=t.enums===String?"QUORUM_TYPE_UNSPECIFIED":0,d.Long?(o=new d.Long(0,0,!1),i.storageLimitPerProcessingUnit=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):i.storageLimitPerProcessingUnit=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(i.name=e.name),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&(i.displayName=e.displayName),e.replicas&&e.replicas.length){i.replicas=[];for(var a=0;a<e.replicas.length;++a)i.replicas[a]=g.google.spanner.admin.instance.v1.ReplicaInfo.toObject(e.replicas[a],t,n+1)}if(e.leaderOptions&&e.leaderOptions.length){i.leaderOptions=[];for(a=0;a<e.leaderOptions.length;++a)i.leaderOptions[a]=e.leaderOptions[a]}if(null!=e.configType&&Object.hasOwnProperty.call(e,"configType")&&(i.configType=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.InstanceConfig.Type[e.configType]?e.configType:g.google.spanner.admin.instance.v1.InstanceConfig.Type[e.configType]),e.optionalReplicas&&e.optionalReplicas.length){i.optionalReplicas=[];for(a=0;a<e.optionalReplicas.length;++a)i.optionalReplicas[a]=g.google.spanner.admin.instance.v1.ReplicaInfo.toObject(e.optionalReplicas[a],t,n+1)}if(null!=e.baseConfig&&Object.hasOwnProperty.call(e,"baseConfig")&&(i.baseConfig=e.baseConfig),e.labels&&(r=Object.keys(e.labels)).length){i.labels={};for(a=0;a<r.length;++a)"__proto__"===r[a]&&d.makeProp(i.labels,r[a]),i.labels[r[a]]=e.labels[r[a]]}return null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&(i.etag=e.etag),null!=e.reconciling&&Object.hasOwnProperty.call(e,"reconciling")&&(i.reconciling=e.reconciling),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&(i.state=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.InstanceConfig.State[e.state]?e.state:g.google.spanner.admin.instance.v1.InstanceConfig.State[e.state]),null!=e.freeInstanceAvailability&&Object.hasOwnProperty.call(e,"freeInstanceAvailability")&&(i.freeInstanceAvailability=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.InstanceConfig.FreeInstanceAvailability[e.freeInstanceAvailability]?e.freeInstanceAvailability:g.google.spanner.admin.instance.v1.InstanceConfig.FreeInstanceAvailability[e.freeInstanceAvailability]),null!=e.quorumType&&Object.hasOwnProperty.call(e,"quorumType")&&(i.quorumType=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.InstanceConfig.QuorumType[e.quorumType]?e.quorumType:g.google.spanner.admin.instance.v1.InstanceConfig.QuorumType[e.quorumType]),null!=e.storageLimitPerProcessingUnit&&Object.hasOwnProperty.call(e,"storageLimitPerProcessingUnit")&&("undefined"!=typeof BigInt&&t.longs===BigInt?i.storageLimitPerProcessingUnit="number"==typeof e.storageLimitPerProcessingUnit?BigInt(e.storageLimitPerProcessingUnit):d.Long.fromBits(e.storageLimitPerProcessingUnit.low>>>0,e.storageLimitPerProcessingUnit.high>>>0,!1).toBigInt():"number"==typeof e.storageLimitPerProcessingUnit?i.storageLimitPerProcessingUnit=t.longs===String?String(e.storageLimitPerProcessingUnit):e.storageLimitPerProcessingUnit:i.storageLimitPerProcessingUnit=t.longs===String?d.Long.prototype.toString.call(e.storageLimitPerProcessingUnit):t.longs===Number?new d.LongBits(e.storageLimitPerProcessingUnit.low>>>0,e.storageLimitPerProcessingUnit.high>>>0).toNumber():e.storageLimitPerProcessingUnit),i},m.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},m.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.InstanceConfig"},m.Type=(n={},(e=Object.create(n))[n[0]="TYPE_UNSPECIFIED"]=0,e[n[1]="GOOGLE_MANAGED"]=1,e[n[2]="USER_MANAGED"]=2,e),m.State=(n={},(e=Object.create(n))[n[0]="STATE_UNSPECIFIED"]=0,e[n[1]="CREATING"]=1,e[n[2]="READY"]=2,e),m.FreeInstanceAvailability=(n={},(e=Object.create(n))[n[0]="FREE_INSTANCE_AVAILABILITY_UNSPECIFIED"]=0,e[n[1]="AVAILABLE"]=1,e[n[2]="UNSUPPORTED"]=2,e[n[3]="DISABLED"]=3,e[n[4]="QUOTA_EXCEEDED"]=4,e),m.QuorumType=(n={},(e=Object.create(n))[n[0]="QUORUM_TYPE_UNSPECIFIED"]=0,e[n[1]="REGION"]=1,e[n[2]="DUAL_REGION"]=2,e[n[3]="MULTI_REGION"]=3,e),m),t.ReplicaComputeCapacity=(Je.prototype.replicaSelection=null,Je.prototype.nodeCount=null,Je.prototype.processingUnits=null,Object.defineProperty(Je.prototype,"computeCapacity",{get:d.oneOfGetter(n=["nodeCount","processingUnits"]),set:d.oneOfSetter(n)}),Je.create=function(e){return new Je(e)},Je.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.replicaSelection&&Object.hasOwnProperty.call(e,"replicaSelection")&&g.google.spanner.admin.instance.v1.ReplicaSelection.encode(e.replicaSelection,t.uint32(10).fork(),n+1).ldelim(),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&t.uint32(16).int32(e.nodeCount),null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&t.uint32(24).int32(e.processingUnits),t},Je.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Je.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ReplicaComputeCapacity;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.replicaSelection=g.google.spanner.admin.instance.v1.ReplicaSelection.decode(e,e.uint32(),void 0,o+1);break;case 2:i.nodeCount=e.int32();break;case 3:i.processingUnits=e.int32();break;default:e.skipType(7&a,o)}}return i},Je.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Je.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n={};if(null!=e.replicaSelection&&Object.hasOwnProperty.call(e,"replicaSelection")){t=g.google.spanner.admin.instance.v1.ReplicaSelection.verify(e.replicaSelection,t+1);if(t)return"replicaSelection."+t}if(null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&(n.computeCapacity=1,!d.isInteger(e.nodeCount)))return"nodeCount: integer expected";if(null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")){if(1===n.computeCapacity)return"computeCapacity: multiple values";if(n.computeCapacity=1,!d.isInteger(e.processingUnits))return"processingUnits: integer expected"}return null},Je.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ReplicaComputeCapacity)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ReplicaComputeCapacity: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ReplicaComputeCapacity;if(null!=e.replicaSelection){if(!d.isObject(e.replicaSelection))throw TypeError(".google.spanner.admin.instance.v1.ReplicaComputeCapacity.replicaSelection: object expected");n.replicaSelection=g.google.spanner.admin.instance.v1.ReplicaSelection.fromObject(e.replicaSelection,t+1)}return null!=e.nodeCount&&(n.nodeCount=0|e.nodeCount),null!=e.processingUnits&&(n.processingUnits=0|e.processingUnits),n},Je.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.replicaSelection=null),null!=e.replicaSelection&&Object.hasOwnProperty.call(e,"replicaSelection")&&(o.replicaSelection=g.google.spanner.admin.instance.v1.ReplicaSelection.toObject(e.replicaSelection,t,n+1)),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&(o.nodeCount=e.nodeCount,t.oneofs)&&(o.computeCapacity="nodeCount"),null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&(o.processingUnits=e.processingUnits,t.oneofs)&&(o.computeCapacity="processingUnits"),o},Je.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Je.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ReplicaComputeCapacity"},Je),t.AutoscalingConfig=(ze.prototype.autoscalingLimits=null,ze.prototype.autoscalingTargets=null,ze.prototype.asymmetricAutoscalingOptions=d.emptyArray,ze.create=function(e){return new ze(e)},ze.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.autoscalingLimits&&Object.hasOwnProperty.call(e,"autoscalingLimits")&&g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.encode(e.autoscalingLimits,t.uint32(10).fork(),n+1).ldelim(),null!=e.autoscalingTargets&&Object.hasOwnProperty.call(e,"autoscalingTargets")&&g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets.encode(e.autoscalingTargets,t.uint32(18).fork(),n+1).ldelim(),null!=e.asymmetricAutoscalingOptions&&e.asymmetricAutoscalingOptions.length)for(var o=0;o<e.asymmetricAutoscalingOptions.length;++o)g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.encode(e.asymmetricAutoscalingOptions[o],t.uint32(26).fork(),n+1).ldelim();return t},ze.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ze.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.AutoscalingConfig;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.autoscalingLimits=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.decode(e,e.uint32(),void 0,o+1);break;case 2:i.autoscalingTargets=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets.decode(e,e.uint32(),void 0,o+1);break;case 3:i.asymmetricAutoscalingOptions&&i.asymmetricAutoscalingOptions.length||(i.asymmetricAutoscalingOptions=[]),i.asymmetricAutoscalingOptions.push(g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},ze.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ze.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.autoscalingLimits&&Object.hasOwnProperty.call(e,"autoscalingLimits")&&(n=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.verify(e.autoscalingLimits,t+1)))return"autoscalingLimits."+n;if(null!=e.autoscalingTargets&&Object.hasOwnProperty.call(e,"autoscalingTargets")&&(n=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets.verify(e.autoscalingTargets,t+1)))return"autoscalingTargets."+n;if(null!=e.asymmetricAutoscalingOptions&&Object.hasOwnProperty.call(e,"asymmetricAutoscalingOptions")){if(!Array.isArray(e.asymmetricAutoscalingOptions))return"asymmetricAutoscalingOptions: array expected";for(var n,o=0;o<e.asymmetricAutoscalingOptions.length;++o)if(n=g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.verify(e.asymmetricAutoscalingOptions[o],t+1))return"asymmetricAutoscalingOptions."+n}return null},ze.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.AutoscalingConfig)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.AutoscalingConfig;if(null!=e.autoscalingLimits){if(!d.isObject(e.autoscalingLimits))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.autoscalingLimits: object expected");n.autoscalingLimits=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.fromObject(e.autoscalingLimits,t+1)}if(null!=e.autoscalingTargets){if(!d.isObject(e.autoscalingTargets))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.autoscalingTargets: object expected");n.autoscalingTargets=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets.fromObject(e.autoscalingTargets,t+1)}if(e.asymmetricAutoscalingOptions){if(!Array.isArray(e.asymmetricAutoscalingOptions))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.asymmetricAutoscalingOptions: array expected");n.asymmetricAutoscalingOptions=[];for(var o=0;o<e.asymmetricAutoscalingOptions.length;++o){if(!d.isObject(e.asymmetricAutoscalingOptions[o]))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.asymmetricAutoscalingOptions: object expected");n.asymmetricAutoscalingOptions[o]=g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.fromObject(e.asymmetricAutoscalingOptions[o],t+1)}}return n},ze.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.asymmetricAutoscalingOptions=[]),t.defaults&&(o.autoscalingLimits=null,o.autoscalingTargets=null),null!=e.autoscalingLimits&&Object.hasOwnProperty.call(e,"autoscalingLimits")&&(o.autoscalingLimits=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.toObject(e.autoscalingLimits,t,n+1)),null!=e.autoscalingTargets&&Object.hasOwnProperty.call(e,"autoscalingTargets")&&(o.autoscalingTargets=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets.toObject(e.autoscalingTargets,t,n+1)),e.asymmetricAutoscalingOptions&&e.asymmetricAutoscalingOptions.length){o.asymmetricAutoscalingOptions=[];for(var r=0;r<e.asymmetricAutoscalingOptions.length;++r)o.asymmetricAutoscalingOptions[r]=g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.toObject(e.asymmetricAutoscalingOptions[r],t,n+1)}return o},ze.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ze.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.AutoscalingConfig"},ze.AutoscalingLimits=(Ke.prototype.minNodes=null,Ke.prototype.minProcessingUnits=null,Ke.prototype.maxNodes=null,Ke.prototype.maxProcessingUnits=null,Object.defineProperty(Ke.prototype,"minLimit",{get:d.oneOfGetter(e=["minNodes","minProcessingUnits"]),set:d.oneOfSetter(e)}),Object.defineProperty(Ke.prototype,"maxLimit",{get:d.oneOfGetter(e=["maxNodes","maxProcessingUnits"]),set:d.oneOfSetter(e)}),Ke.create=function(e){return new Ke(e)},Ke.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.minNodes&&Object.hasOwnProperty.call(e,"minNodes")&&t.uint32(8).int32(e.minNodes),null!=e.minProcessingUnits&&Object.hasOwnProperty.call(e,"minProcessingUnits")&&t.uint32(16).int32(e.minProcessingUnits),null!=e.maxNodes&&Object.hasOwnProperty.call(e,"maxNodes")&&t.uint32(24).int32(e.maxNodes),null!=e.maxProcessingUnits&&Object.hasOwnProperty.call(e,"maxProcessingUnits")&&t.uint32(32).int32(e.maxProcessingUnits),t},Ke.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ke.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.minNodes=e.int32();break;case 2:i.minProcessingUnits=e.int32();break;case 3:i.maxNodes=e.int32();break;case 4:i.maxProcessingUnits=e.int32();break;default:e.skipType(7&a,o)}}return i},Ke.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ke.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";t={};if(null!=e.minNodes&&Object.hasOwnProperty.call(e,"minNodes")&&(t.minLimit=1,!d.isInteger(e.minNodes)))return"minNodes: integer expected";if(null!=e.minProcessingUnits&&Object.hasOwnProperty.call(e,"minProcessingUnits")){if(1===t.minLimit)return"minLimit: multiple values";if(t.minLimit=1,!d.isInteger(e.minProcessingUnits))return"minProcessingUnits: integer expected"}if(null!=e.maxNodes&&Object.hasOwnProperty.call(e,"maxNodes")&&(t.maxLimit=1,!d.isInteger(e.maxNodes)))return"maxNodes: integer expected";if(null!=e.maxProcessingUnits&&Object.hasOwnProperty.call(e,"maxProcessingUnits")){if(1===t.maxLimit)return"maxLimit: multiple values";if(t.maxLimit=1,!d.isInteger(e.maxProcessingUnits))return"maxProcessingUnits: integer expected"}return null},Ke.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits;return null!=e.minNodes&&(t.minNodes=0|e.minNodes),null!=e.minProcessingUnits&&(t.minProcessingUnits=0|e.minProcessingUnits),null!=e.maxNodes&&(t.maxNodes=0|e.maxNodes),null!=e.maxProcessingUnits&&(t.maxProcessingUnits=0|e.maxProcessingUnits),t},Ke.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return null!=e.minNodes&&Object.hasOwnProperty.call(e,"minNodes")&&(n.minNodes=e.minNodes,t.oneofs)&&(n.minLimit="minNodes"),null!=e.minProcessingUnits&&Object.hasOwnProperty.call(e,"minProcessingUnits")&&(n.minProcessingUnits=e.minProcessingUnits,t.oneofs)&&(n.minLimit="minProcessingUnits"),null!=e.maxNodes&&Object.hasOwnProperty.call(e,"maxNodes")&&(n.maxNodes=e.maxNodes,t.oneofs)&&(n.maxLimit="maxNodes"),null!=e.maxProcessingUnits&&Object.hasOwnProperty.call(e,"maxProcessingUnits")&&(n.maxProcessingUnits=e.maxProcessingUnits,t.oneofs)&&(n.maxLimit="maxProcessingUnits"),n},Ke.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ke.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits"},Ke),ze.AutoscalingTargets=(He.prototype.highPriorityCpuUtilizationPercent=0,He.prototype.totalCpuUtilizationPercent=0,He.prototype.storageUtilizationPercent=0,He.create=function(e){return new He(e)},He.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.highPriorityCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"highPriorityCpuUtilizationPercent")&&t.uint32(8).int32(e.highPriorityCpuUtilizationPercent),null!=e.storageUtilizationPercent&&Object.hasOwnProperty.call(e,"storageUtilizationPercent")&&t.uint32(16).int32(e.storageUtilizationPercent),null!=e.totalCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"totalCpuUtilizationPercent")&&t.uint32(32).int32(e.totalCpuUtilizationPercent),t},He.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},He.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.highPriorityCpuUtilizationPercent=e.int32();break;case 4:i.totalCpuUtilizationPercent=e.int32();break;case 2:i.storageUtilizationPercent=e.int32();break;default:e.skipType(7&a,o)}}return i},He.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},He.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.highPriorityCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"highPriorityCpuUtilizationPercent")&&!d.isInteger(e.highPriorityCpuUtilizationPercent)?"highPriorityCpuUtilizationPercent: integer expected":null!=e.totalCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"totalCpuUtilizationPercent")&&!d.isInteger(e.totalCpuUtilizationPercent)?"totalCpuUtilizationPercent: integer expected":null!=e.storageUtilizationPercent&&Object.hasOwnProperty.call(e,"storageUtilizationPercent")&&!d.isInteger(e.storageUtilizationPercent)?"storageUtilizationPercent: integer expected":null},He.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets;return null!=e.highPriorityCpuUtilizationPercent&&(t.highPriorityCpuUtilizationPercent=0|e.highPriorityCpuUtilizationPercent),null!=e.totalCpuUtilizationPercent&&(t.totalCpuUtilizationPercent=0|e.totalCpuUtilizationPercent),null!=e.storageUtilizationPercent&&(t.storageUtilizationPercent=0|e.storageUtilizationPercent),t},He.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.highPriorityCpuUtilizationPercent=0,n.storageUtilizationPercent=0,n.totalCpuUtilizationPercent=0),null!=e.highPriorityCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"highPriorityCpuUtilizationPercent")&&(n.highPriorityCpuUtilizationPercent=e.highPriorityCpuUtilizationPercent),null!=e.storageUtilizationPercent&&Object.hasOwnProperty.call(e,"storageUtilizationPercent")&&(n.storageUtilizationPercent=e.storageUtilizationPercent),null!=e.totalCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"totalCpuUtilizationPercent")&&(n.totalCpuUtilizationPercent=e.totalCpuUtilizationPercent),n},He.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},He.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingTargets"},He),ze.AsymmetricAutoscalingOption=(Ye.prototype.replicaSelection=null,Ye.prototype.overrides=null,Ye.create=function(e){return new Ye(e)},Ye.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.replicaSelection&&Object.hasOwnProperty.call(e,"replicaSelection")&&g.google.spanner.admin.instance.v1.ReplicaSelection.encode(e.replicaSelection,t.uint32(10).fork(),n+1).ldelim(),null!=e.overrides&&Object.hasOwnProperty.call(e,"overrides")&&g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides.encode(e.overrides,t.uint32(18).fork(),n+1).ldelim(),t},Ye.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ye.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.replicaSelection=g.google.spanner.admin.instance.v1.ReplicaSelection.decode(e,e.uint32(),void 0,o+1);break;case 2:i.overrides=g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ye.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ye.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.replicaSelection&&Object.hasOwnProperty.call(e,"replicaSelection")&&(n=g.google.spanner.admin.instance.v1.ReplicaSelection.verify(e.replicaSelection,t+1)))return"replicaSelection."+n;if(null!=e.overrides&&Object.hasOwnProperty.call(e,"overrides")&&(n=g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides.verify(e.overrides,t+1)))return"overrides."+n;return null},Ye.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption;if(null!=e.replicaSelection){if(!d.isObject(e.replicaSelection))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.replicaSelection: object expected");n.replicaSelection=g.google.spanner.admin.instance.v1.ReplicaSelection.fromObject(e.replicaSelection,t+1)}if(null!=e.overrides){if(!d.isObject(e.overrides))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.overrides: object expected");n.overrides=g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides.fromObject(e.overrides,t+1)}return n},Ye.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.replicaSelection=null,o.overrides=null),null!=e.replicaSelection&&Object.hasOwnProperty.call(e,"replicaSelection")&&(o.replicaSelection=g.google.spanner.admin.instance.v1.ReplicaSelection.toObject(e.replicaSelection,t,n+1)),null!=e.overrides&&Object.hasOwnProperty.call(e,"overrides")&&(o.overrides=g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides.toObject(e.overrides,t,n+1)),o},Ye.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ye.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption"},Ye.AutoscalingConfigOverrides=(Qe.prototype.autoscalingLimits=null,Qe.prototype.autoscalingTargetHighPriorityCpuUtilizationPercent=0,Qe.prototype.autoscalingTargetTotalCpuUtilizationPercent=0,Qe.prototype.disableHighPriorityCpuAutoscaling=!1,Qe.prototype.disableTotalCpuAutoscaling=!1,Qe.create=function(e){return new Qe(e)},Qe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.autoscalingLimits&&Object.hasOwnProperty.call(e,"autoscalingLimits")&&g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.encode(e.autoscalingLimits,t.uint32(10).fork(),n+1).ldelim(),null!=e.autoscalingTargetHighPriorityCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"autoscalingTargetHighPriorityCpuUtilizationPercent")&&t.uint32(16).int32(e.autoscalingTargetHighPriorityCpuUtilizationPercent),null!=e.autoscalingTargetTotalCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"autoscalingTargetTotalCpuUtilizationPercent")&&t.uint32(32).int32(e.autoscalingTargetTotalCpuUtilizationPercent),null!=e.disableHighPriorityCpuAutoscaling&&Object.hasOwnProperty.call(e,"disableHighPriorityCpuAutoscaling")&&t.uint32(40).bool(e.disableHighPriorityCpuAutoscaling),null!=e.disableTotalCpuAutoscaling&&Object.hasOwnProperty.call(e,"disableTotalCpuAutoscaling")&&t.uint32(48).bool(e.disableTotalCpuAutoscaling),t},Qe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Qe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.autoscalingLimits=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.decode(e,e.uint32(),void 0,o+1);break;case 2:i.autoscalingTargetHighPriorityCpuUtilizationPercent=e.int32();break;case 4:i.autoscalingTargetTotalCpuUtilizationPercent=e.int32();break;case 5:i.disableHighPriorityCpuAutoscaling=e.bool();break;case 6:i.disableTotalCpuAutoscaling=e.bool();break;default:e.skipType(7&a,o)}}return i},Qe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Qe.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.autoscalingLimits&&Object.hasOwnProperty.call(e,"autoscalingLimits")){t=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.verify(e.autoscalingLimits,t+1);if(t)return"autoscalingLimits."+t}return null!=e.autoscalingTargetHighPriorityCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"autoscalingTargetHighPriorityCpuUtilizationPercent")&&!d.isInteger(e.autoscalingTargetHighPriorityCpuUtilizationPercent)?"autoscalingTargetHighPriorityCpuUtilizationPercent: integer expected":null!=e.autoscalingTargetTotalCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"autoscalingTargetTotalCpuUtilizationPercent")&&!d.isInteger(e.autoscalingTargetTotalCpuUtilizationPercent)?"autoscalingTargetTotalCpuUtilizationPercent: integer expected":null!=e.disableHighPriorityCpuAutoscaling&&Object.hasOwnProperty.call(e,"disableHighPriorityCpuAutoscaling")&&"boolean"!=typeof e.disableHighPriorityCpuAutoscaling?"disableHighPriorityCpuAutoscaling: boolean expected":null!=e.disableTotalCpuAutoscaling&&Object.hasOwnProperty.call(e,"disableTotalCpuAutoscaling")&&"boolean"!=typeof e.disableTotalCpuAutoscaling?"disableTotalCpuAutoscaling: boolean expected":null},Qe.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides;if(null!=e.autoscalingLimits){if(!d.isObject(e.autoscalingLimits))throw TypeError(".google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides.autoscalingLimits: object expected");n.autoscalingLimits=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.fromObject(e.autoscalingLimits,t+1)}return null!=e.autoscalingTargetHighPriorityCpuUtilizationPercent&&(n.autoscalingTargetHighPriorityCpuUtilizationPercent=0|e.autoscalingTargetHighPriorityCpuUtilizationPercent),null!=e.autoscalingTargetTotalCpuUtilizationPercent&&(n.autoscalingTargetTotalCpuUtilizationPercent=0|e.autoscalingTargetTotalCpuUtilizationPercent),null!=e.disableHighPriorityCpuAutoscaling&&(n.disableHighPriorityCpuAutoscaling=Boolean(e.disableHighPriorityCpuAutoscaling)),null!=e.disableTotalCpuAutoscaling&&(n.disableTotalCpuAutoscaling=Boolean(e.disableTotalCpuAutoscaling)),n},Qe.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.autoscalingLimits=null,o.autoscalingTargetHighPriorityCpuUtilizationPercent=0,o.autoscalingTargetTotalCpuUtilizationPercent=0,o.disableHighPriorityCpuAutoscaling=!1,o.disableTotalCpuAutoscaling=!1),null!=e.autoscalingLimits&&Object.hasOwnProperty.call(e,"autoscalingLimits")&&(o.autoscalingLimits=g.google.spanner.admin.instance.v1.AutoscalingConfig.AutoscalingLimits.toObject(e.autoscalingLimits,t,n+1)),null!=e.autoscalingTargetHighPriorityCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"autoscalingTargetHighPriorityCpuUtilizationPercent")&&(o.autoscalingTargetHighPriorityCpuUtilizationPercent=e.autoscalingTargetHighPriorityCpuUtilizationPercent),null!=e.autoscalingTargetTotalCpuUtilizationPercent&&Object.hasOwnProperty.call(e,"autoscalingTargetTotalCpuUtilizationPercent")&&(o.autoscalingTargetTotalCpuUtilizationPercent=e.autoscalingTargetTotalCpuUtilizationPercent),null!=e.disableHighPriorityCpuAutoscaling&&Object.hasOwnProperty.call(e,"disableHighPriorityCpuAutoscaling")&&(o.disableHighPriorityCpuAutoscaling=e.disableHighPriorityCpuAutoscaling),null!=e.disableTotalCpuAutoscaling&&Object.hasOwnProperty.call(e,"disableTotalCpuAutoscaling")&&(o.disableTotalCpuAutoscaling=e.disableTotalCpuAutoscaling),o},Qe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Qe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.AutoscalingConfig.AsymmetricAutoscalingOption.AutoscalingConfigOverrides"},Qe),Ye),ze),t.Instance=(b.prototype.name="",b.prototype.config="",b.prototype.displayName="",b.prototype.nodeCount=0,b.prototype.processingUnits=0,b.prototype.replicaComputeCapacity=d.emptyArray,b.prototype.autoscalingConfig=null,b.prototype.state=0,b.prototype.labels=d.emptyObject,b.prototype.instanceType=0,b.prototype.endpointUris=d.emptyArray,b.prototype.createTime=null,b.prototype.updateTime=null,b.prototype.freeInstanceMetadata=null,b.prototype.edition=0,b.prototype.defaultBackupScheduleType=0,b.create=function(e){return new b(e)},b.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.config&&Object.hasOwnProperty.call(e,"config")&&t.uint32(18).string(e.config),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&t.uint32(26).string(e.displayName),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&t.uint32(40).int32(e.nodeCount),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&t.uint32(48).int32(e.state),null!=e.labels&&Object.hasOwnProperty.call(e,"labels"))for(var o=Object.keys(e.labels),r=0;r<o.length;++r)t.uint32(58).fork().uint32(10).string(o[r]).uint32(18).string(e.labels[o[r]]).ldelim();if(null!=e.endpointUris&&e.endpointUris.length)for(r=0;r<e.endpointUris.length;++r)t.uint32(66).string(e.endpointUris[r]);if(null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&t.uint32(72).int32(e.processingUnits),null!=e.instanceType&&Object.hasOwnProperty.call(e,"instanceType")&&t.uint32(80).int32(e.instanceType),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&g.google.protobuf.Timestamp.encode(e.createTime,t.uint32(90).fork(),n+1).ldelim(),null!=e.updateTime&&Object.hasOwnProperty.call(e,"updateTime")&&g.google.protobuf.Timestamp.encode(e.updateTime,t.uint32(98).fork(),n+1).ldelim(),null!=e.freeInstanceMetadata&&Object.hasOwnProperty.call(e,"freeInstanceMetadata")&&g.google.spanner.admin.instance.v1.FreeInstanceMetadata.encode(e.freeInstanceMetadata,t.uint32(106).fork(),n+1).ldelim(),null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&g.google.spanner.admin.instance.v1.AutoscalingConfig.encode(e.autoscalingConfig,t.uint32(138).fork(),n+1).ldelim(),null!=e.replicaComputeCapacity&&e.replicaComputeCapacity.length)for(r=0;r<e.replicaComputeCapacity.length;++r)g.google.spanner.admin.instance.v1.ReplicaComputeCapacity.encode(e.replicaComputeCapacity[r],t.uint32(154).fork(),n+1).ldelim();return null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&t.uint32(160).int32(e.edition),null!=e.defaultBackupScheduleType&&Object.hasOwnProperty.call(e,"defaultBackupScheduleType")&&t.uint32(184).int32(e.defaultBackupScheduleType),t},b.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},b.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.Instance;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.config=e.string();break;case 3:i.displayName=e.string();break;case 5:i.nodeCount=e.int32();break;case 9:i.processingUnits=e.int32();break;case 19:i.replicaComputeCapacity&&i.replicaComputeCapacity.length||(i.replicaComputeCapacity=[]),i.replicaComputeCapacity.push(g.google.spanner.admin.instance.v1.ReplicaComputeCapacity.decode(e,e.uint32(),void 0,o+1));break;case 17:i.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.decode(e,e.uint32(),void 0,o+1);break;case 6:i.state=e.int32();break;case 7:i.labels===d.emptyObject&&(i.labels={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.labels,c),i.labels[c]=l;break;case 10:i.instanceType=e.int32();break;case 8:i.endpointUris&&i.endpointUris.length||(i.endpointUris=[]),i.endpointUris.push(e.string());break;case 11:i.createTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 12:i.updateTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 13:i.freeInstanceMetadata=g.google.spanner.admin.instance.v1.FreeInstanceMetadata.decode(e,e.uint32(),void 0,o+1);break;case 20:i.edition=e.int32();break;case 23:i.defaultBackupScheduleType=e.int32();break;default:e.skipType(7&a,o)}}return i},b.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},b.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.config&&Object.hasOwnProperty.call(e,"config")&&!d.isString(e.config))return"config: string expected";if(null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&!d.isString(e.displayName))return"displayName: string expected";if(null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&!d.isInteger(e.nodeCount))return"nodeCount: integer expected";if(null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&!d.isInteger(e.processingUnits))return"processingUnits: integer expected";if(null!=e.replicaComputeCapacity&&Object.hasOwnProperty.call(e,"replicaComputeCapacity")){if(!Array.isArray(e.replicaComputeCapacity))return"replicaComputeCapacity: array expected";for(var n=0;n<e.replicaComputeCapacity.length;++n)if(o=g.google.spanner.admin.instance.v1.ReplicaComputeCapacity.verify(e.replicaComputeCapacity[n],t+1))return"replicaComputeCapacity."+o}var o;if(null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&(o=g.google.spanner.admin.instance.v1.AutoscalingConfig.verify(e.autoscalingConfig,t+1)))return"autoscalingConfig."+o;if(null!=e.state&&Object.hasOwnProperty.call(e,"state"))switch(e.state){default:return"state: enum value expected";case 0:case 1:case 2:}if(null!=e.labels&&Object.hasOwnProperty.call(e,"labels")){if(!d.isObject(e.labels))return"labels: object expected";for(var r=Object.keys(e.labels),n=0;n<r.length;++n)if(!d.isString(e.labels[r[n]]))return"labels: string{k:string} expected"}if(null!=e.instanceType&&Object.hasOwnProperty.call(e,"instanceType"))switch(e.instanceType){default:return"instanceType: enum value expected";case 0:case 1:case 2:}if(null!=e.endpointUris&&Object.hasOwnProperty.call(e,"endpointUris")){if(!Array.isArray(e.endpointUris))return"endpointUris: array expected";for(n=0;n<e.endpointUris.length;++n)if(!d.isString(e.endpointUris[n]))return"endpointUris: string[] expected"}if(null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(o=g.google.protobuf.Timestamp.verify(e.createTime,t+1)))return"createTime."+o;if(null!=e.updateTime&&Object.hasOwnProperty.call(e,"updateTime")&&(o=g.google.protobuf.Timestamp.verify(e.updateTime,t+1)))return"updateTime."+o;if(null!=e.freeInstanceMetadata&&Object.hasOwnProperty.call(e,"freeInstanceMetadata")&&(o=g.google.spanner.admin.instance.v1.FreeInstanceMetadata.verify(e.freeInstanceMetadata,t+1)))return"freeInstanceMetadata."+o;if(null!=e.edition&&Object.hasOwnProperty.call(e,"edition"))switch(e.edition){default:return"edition: enum value expected";case 0:case 1:case 2:case 3:}if(null!=e.defaultBackupScheduleType&&Object.hasOwnProperty.call(e,"defaultBackupScheduleType"))switch(e.defaultBackupScheduleType){default:return"defaultBackupScheduleType: enum value expected";case 0:case 1:case 2:}return null},b.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.Instance)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.Instance: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.Instance;if(null!=e.name&&(n.name=String(e.name)),null!=e.config&&(n.config=String(e.config)),null!=e.displayName&&(n.displayName=String(e.displayName)),null!=e.nodeCount&&(n.nodeCount=0|e.nodeCount),null!=e.processingUnits&&(n.processingUnits=0|e.processingUnits),e.replicaComputeCapacity){if(!Array.isArray(e.replicaComputeCapacity))throw TypeError(".google.spanner.admin.instance.v1.Instance.replicaComputeCapacity: array expected");n.replicaComputeCapacity=[];for(var o=0;o<e.replicaComputeCapacity.length;++o){if(!d.isObject(e.replicaComputeCapacity[o]))throw TypeError(".google.spanner.admin.instance.v1.Instance.replicaComputeCapacity: object expected");n.replicaComputeCapacity[o]=g.google.spanner.admin.instance.v1.ReplicaComputeCapacity.fromObject(e.replicaComputeCapacity[o],t+1)}}if(null!=e.autoscalingConfig){if(!d.isObject(e.autoscalingConfig))throw TypeError(".google.spanner.admin.instance.v1.Instance.autoscalingConfig: object expected");n.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.fromObject(e.autoscalingConfig,t+1)}switch(e.state){default:"number"==typeof e.state&&(n.state=e.state);break;case"STATE_UNSPECIFIED":case 0:n.state=0;break;case"CREATING":case 1:n.state=1;break;case"READY":case 2:n.state=2}if(e.labels){if(!d.isObject(e.labels))throw TypeError(".google.spanner.admin.instance.v1.Instance.labels: object expected");n.labels={};for(var r=Object.keys(e.labels),o=0;o<r.length;++o)"__proto__"===r[o]&&d.makeProp(n.labels,r[o]),n.labels[r[o]]=String(e.labels[r[o]])}switch(e.instanceType){default:"number"==typeof e.instanceType&&(n.instanceType=e.instanceType);break;case"INSTANCE_TYPE_UNSPECIFIED":case 0:n.instanceType=0;break;case"PROVISIONED":case 1:n.instanceType=1;break;case"FREE_INSTANCE":case 2:n.instanceType=2}if(e.endpointUris){if(!Array.isArray(e.endpointUris))throw TypeError(".google.spanner.admin.instance.v1.Instance.endpointUris: array expected");n.endpointUris=[];for(o=0;o<e.endpointUris.length;++o)n.endpointUris[o]=String(e.endpointUris[o])}if(null!=e.createTime){if(!d.isObject(e.createTime))throw TypeError(".google.spanner.admin.instance.v1.Instance.createTime: object expected");n.createTime=g.google.protobuf.Timestamp.fromObject(e.createTime,t+1)}if(null!=e.updateTime){if(!d.isObject(e.updateTime))throw TypeError(".google.spanner.admin.instance.v1.Instance.updateTime: object expected");n.updateTime=g.google.protobuf.Timestamp.fromObject(e.updateTime,t+1)}if(null!=e.freeInstanceMetadata){if(!d.isObject(e.freeInstanceMetadata))throw TypeError(".google.spanner.admin.instance.v1.Instance.freeInstanceMetadata: object expected");n.freeInstanceMetadata=g.google.spanner.admin.instance.v1.FreeInstanceMetadata.fromObject(e.freeInstanceMetadata,t+1)}switch(e.edition){default:"number"==typeof e.edition&&(n.edition=e.edition);break;case"EDITION_UNSPECIFIED":case 0:n.edition=0;break;case"STANDARD":case 1:n.edition=1;break;case"ENTERPRISE":case 2:n.edition=2;break;case"ENTERPRISE_PLUS":case 3:n.edition=3}switch(e.defaultBackupScheduleType){default:"number"==typeof e.defaultBackupScheduleType&&(n.defaultBackupScheduleType=e.defaultBackupScheduleType);break;case"DEFAULT_BACKUP_SCHEDULE_TYPE_UNSPECIFIED":case 0:n.defaultBackupScheduleType=0;break;case"NONE":case 1:n.defaultBackupScheduleType=1;break;case"AUTOMATIC":case 2:n.defaultBackupScheduleType=2}return n},b.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.endpointUris=[],r.replicaComputeCapacity=[]),(t.objects||t.defaults)&&(r.labels={}),t.defaults&&(r.name="",r.config="",r.displayName="",r.nodeCount=0,r.state=t.enums===String?"STATE_UNSPECIFIED":0,r.processingUnits=0,r.instanceType=t.enums===String?"INSTANCE_TYPE_UNSPECIFIED":0,r.createTime=null,r.updateTime=null,r.freeInstanceMetadata=null,r.autoscalingConfig=null,r.edition=t.enums===String?"EDITION_UNSPECIFIED":0,r.defaultBackupScheduleType=t.enums===String?"DEFAULT_BACKUP_SCHEDULE_TYPE_UNSPECIFIED":0),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(r.name=e.name),null!=e.config&&Object.hasOwnProperty.call(e,"config")&&(r.config=e.config),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&(r.displayName=e.displayName),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&(r.nodeCount=e.nodeCount),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&(r.state=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.Instance.State[e.state]?e.state:g.google.spanner.admin.instance.v1.Instance.State[e.state]),e.labels&&(o=Object.keys(e.labels)).length){r.labels={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.labels,o[i]),r.labels[o[i]]=e.labels[o[i]]}if(e.endpointUris&&e.endpointUris.length){r.endpointUris=[];for(i=0;i<e.endpointUris.length;++i)r.endpointUris[i]=e.endpointUris[i]}if(null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&(r.processingUnits=e.processingUnits),null!=e.instanceType&&Object.hasOwnProperty.call(e,"instanceType")&&(r.instanceType=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.Instance.InstanceType[e.instanceType]?e.instanceType:g.google.spanner.admin.instance.v1.Instance.InstanceType[e.instanceType]),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(r.createTime=g.google.protobuf.Timestamp.toObject(e.createTime,t,n+1)),null!=e.updateTime&&Object.hasOwnProperty.call(e,"updateTime")&&(r.updateTime=g.google.protobuf.Timestamp.toObject(e.updateTime,t,n+1)),null!=e.freeInstanceMetadata&&Object.hasOwnProperty.call(e,"freeInstanceMetadata")&&(r.freeInstanceMetadata=g.google.spanner.admin.instance.v1.FreeInstanceMetadata.toObject(e.freeInstanceMetadata,t,n+1)),null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&(r.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.toObject(e.autoscalingConfig,t,n+1)),e.replicaComputeCapacity&&e.replicaComputeCapacity.length){r.replicaComputeCapacity=[];for(i=0;i<e.replicaComputeCapacity.length;++i)r.replicaComputeCapacity[i]=g.google.spanner.admin.instance.v1.ReplicaComputeCapacity.toObject(e.replicaComputeCapacity[i],t,n+1)}return null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&(r.edition=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.Instance.Edition[e.edition]?e.edition:g.google.spanner.admin.instance.v1.Instance.Edition[e.edition]),null!=e.defaultBackupScheduleType&&Object.hasOwnProperty.call(e,"defaultBackupScheduleType")&&(r.defaultBackupScheduleType=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.Instance.DefaultBackupScheduleType[e.defaultBackupScheduleType]?e.defaultBackupScheduleType:g.google.spanner.admin.instance.v1.Instance.DefaultBackupScheduleType[e.defaultBackupScheduleType]),r},b.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},b.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.Instance"},b.State=(n={},(e=Object.create(n))[n[0]="STATE_UNSPECIFIED"]=0,e[n[1]="CREATING"]=1,e[n[2]="READY"]=2,e),b.InstanceType=(n={},(e=Object.create(n))[n[0]="INSTANCE_TYPE_UNSPECIFIED"]=0,e[n[1]="PROVISIONED"]=1,e[n[2]="FREE_INSTANCE"]=2,e),b.Edition=(n={},(e=Object.create(n))[n[0]="EDITION_UNSPECIFIED"]=0,e[n[1]="STANDARD"]=1,e[n[2]="ENTERPRISE"]=2,e[n[3]="ENTERPRISE_PLUS"]=3,e),b.DefaultBackupScheduleType=(n={},(e=Object.create(n))[n[0]="DEFAULT_BACKUP_SCHEDULE_TYPE_UNSPECIFIED"]=0,e[n[1]="NONE"]=1,e[n[2]="AUTOMATIC"]=2,e),b),t.ListInstanceConfigsRequest=(We.prototype.parent="",We.prototype.pageSize=0,We.prototype.pageToken="",We.create=function(e){return new We(e)},We.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(16).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(26).string(e.pageToken),t},We.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},We.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstanceConfigsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.pageSize=e.int32();break;case 3:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},We.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},We.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent)?"parent: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},We.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstanceConfigsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstanceConfigsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.ListInstanceConfigsRequest;return null!=e.parent&&(t.parent=String(e.parent)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},We.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.parent="",n.pageSize=0,n.pageToken=""),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(n.parent=e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},We.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},We.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstanceConfigsRequest"},We),t.ListInstanceConfigsResponse=(Xe.prototype.instanceConfigs=d.emptyArray,Xe.prototype.nextPageToken="",Xe.create=function(e){return new Xe(e)},Xe.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.instanceConfigs&&e.instanceConfigs.length)for(var o=0;o<e.instanceConfigs.length;++o)g.google.spanner.admin.instance.v1.InstanceConfig.encode(e.instanceConfigs[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},Xe.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Xe.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstanceConfigsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceConfigs&&i.instanceConfigs.length||(i.instanceConfigs=[]),i.instanceConfigs.push(g.google.spanner.admin.instance.v1.InstanceConfig.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},Xe.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Xe.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.instanceConfigs&&Object.hasOwnProperty.call(e,"instanceConfigs")){if(!Array.isArray(e.instanceConfigs))return"instanceConfigs: array expected";for(var n=0;n<e.instanceConfigs.length;++n){var o=g.google.spanner.admin.instance.v1.InstanceConfig.verify(e.instanceConfigs[n],t+1);if(o)return"instanceConfigs."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},Xe.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstanceConfigsResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstanceConfigsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ListInstanceConfigsResponse;if(e.instanceConfigs){if(!Array.isArray(e.instanceConfigs))throw TypeError(".google.spanner.admin.instance.v1.ListInstanceConfigsResponse.instanceConfigs: array expected");n.instanceConfigs=[];for(var o=0;o<e.instanceConfigs.length;++o){if(!d.isObject(e.instanceConfigs[o]))throw TypeError(".google.spanner.admin.instance.v1.ListInstanceConfigsResponse.instanceConfigs: object expected");n.instanceConfigs[o]=g.google.spanner.admin.instance.v1.InstanceConfig.fromObject(e.instanceConfigs[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},Xe.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.instanceConfigs=[]),t.defaults&&(o.nextPageToken=""),e.instanceConfigs&&e.instanceConfigs.length){o.instanceConfigs=[];for(var r=0;r<e.instanceConfigs.length;++r)o.instanceConfigs[r]=g.google.spanner.admin.instance.v1.InstanceConfig.toObject(e.instanceConfigs[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},Xe.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Xe.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstanceConfigsResponse"},Xe),t.GetInstanceConfigRequest=(Ze.prototype.name="",Ze.create=function(e){return new Ze(e)},Ze.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},Ze.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ze.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.GetInstanceConfigRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},Ze.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ze.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},Ze.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.GetInstanceConfigRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.GetInstanceConfigRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.GetInstanceConfigRequest;return null!=e.name&&(t.name=String(e.name)),t},Ze.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},Ze.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ze.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.GetInstanceConfigRequest"},Ze),t.CreateInstanceConfigRequest=($e.prototype.parent="",$e.prototype.instanceConfigId="",$e.prototype.instanceConfig=null,$e.prototype.validateOnly=!1,$e.create=function(e){return new $e(e)},$e.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.instanceConfigId&&Object.hasOwnProperty.call(e,"instanceConfigId")&&t.uint32(18).string(e.instanceConfigId),null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&g.google.spanner.admin.instance.v1.InstanceConfig.encode(e.instanceConfig,t.uint32(26).fork(),n+1).ldelim(),null!=e.validateOnly&&Object.hasOwnProperty.call(e,"validateOnly")&&t.uint32(32).bool(e.validateOnly),t},$e.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},$e.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.CreateInstanceConfigRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.instanceConfigId=e.string();break;case 3:i.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.decode(e,e.uint32(),void 0,o+1);break;case 4:i.validateOnly=e.bool();break;default:e.skipType(7&a,o)}}return i},$e.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},$e.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.instanceConfigId&&Object.hasOwnProperty.call(e,"instanceConfigId")&&!d.isString(e.instanceConfigId))return"instanceConfigId: string expected";if(null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")){t=g.google.spanner.admin.instance.v1.InstanceConfig.verify(e.instanceConfig,t+1);if(t)return"instanceConfig."+t}return null!=e.validateOnly&&Object.hasOwnProperty.call(e,"validateOnly")&&"boolean"!=typeof e.validateOnly?"validateOnly: boolean expected":null},$e.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.CreateInstanceConfigRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceConfigRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.CreateInstanceConfigRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.instanceConfigId&&(n.instanceConfigId=String(e.instanceConfigId)),null!=e.instanceConfig){if(!d.isObject(e.instanceConfig))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceConfigRequest.instanceConfig: object expected");n.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.fromObject(e.instanceConfig,t+1)}return null!=e.validateOnly&&(n.validateOnly=Boolean(e.validateOnly)),n},$e.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.instanceConfigId="",o.instanceConfig=null,o.validateOnly=!1),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.instanceConfigId&&Object.hasOwnProperty.call(e,"instanceConfigId")&&(o.instanceConfigId=e.instanceConfigId),null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&(o.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.toObject(e.instanceConfig,t,n+1)),null!=e.validateOnly&&Object.hasOwnProperty.call(e,"validateOnly")&&(o.validateOnly=e.validateOnly),o},$e.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},$e.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.CreateInstanceConfigRequest"},$e),t.UpdateInstanceConfigRequest=(et.prototype.instanceConfig=null,et.prototype.updateMask=null,et.prototype.validateOnly=!1,et.create=function(e){return new et(e)},et.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&g.google.spanner.admin.instance.v1.InstanceConfig.encode(e.instanceConfig,t.uint32(10).fork(),n+1).ldelim(),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&g.google.protobuf.FieldMask.encode(e.updateMask,t.uint32(18).fork(),n+1).ldelim(),null!=e.validateOnly&&Object.hasOwnProperty.call(e,"validateOnly")&&t.uint32(24).bool(e.validateOnly),t},et.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},et.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.UpdateInstanceConfigRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.decode(e,e.uint32(),void 0,o+1);break;case 2:i.updateMask=g.google.protobuf.FieldMask.decode(e,e.uint32(),void 0,o+1);break;case 3:i.validateOnly=e.bool();break;default:e.skipType(7&a,o)}}return i},et.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},et.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&(n=g.google.spanner.admin.instance.v1.InstanceConfig.verify(e.instanceConfig,t+1)))return"instanceConfig."+n;if(null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(n=g.google.protobuf.FieldMask.verify(e.updateMask,t+1)))return"updateMask."+n;return null!=e.validateOnly&&Object.hasOwnProperty.call(e,"validateOnly")&&"boolean"!=typeof e.validateOnly?"validateOnly: boolean expected":null},et.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.UpdateInstanceConfigRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceConfigRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.UpdateInstanceConfigRequest;if(null!=e.instanceConfig){if(!d.isObject(e.instanceConfig))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceConfigRequest.instanceConfig: object expected");n.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.fromObject(e.instanceConfig,t+1)}if(null!=e.updateMask){if(!d.isObject(e.updateMask))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceConfigRequest.updateMask: object expected");n.updateMask=g.google.protobuf.FieldMask.fromObject(e.updateMask,t+1)}return null!=e.validateOnly&&(n.validateOnly=Boolean(e.validateOnly)),n},et.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.instanceConfig=null,o.updateMask=null,o.validateOnly=!1),null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&(o.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.toObject(e.instanceConfig,t,n+1)),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(o.updateMask=g.google.protobuf.FieldMask.toObject(e.updateMask,t,n+1)),null!=e.validateOnly&&Object.hasOwnProperty.call(e,"validateOnly")&&(o.validateOnly=e.validateOnly),o},et.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},et.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.UpdateInstanceConfigRequest"},et),t.DeleteInstanceConfigRequest=(tt.prototype.name="",tt.prototype.etag="",tt.prototype.validateOnly=!1,tt.create=function(e){return new tt(e)},tt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&t.uint32(18).string(e.etag),null!=e.validateOnly&&Object.hasOwnProperty.call(e,"validateOnly")&&t.uint32(24).bool(e.validateOnly),t},tt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},tt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.DeleteInstanceConfigRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.etag=e.string();break;case 3:i.validateOnly=e.bool();break;default:e.skipType(7&a,o)}}return i},tt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},tt.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&!d.isString(e.etag)?"etag: string expected":null!=e.validateOnly&&Object.hasOwnProperty.call(e,"validateOnly")&&"boolean"!=typeof e.validateOnly?"validateOnly: boolean expected":null},tt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.DeleteInstanceConfigRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.DeleteInstanceConfigRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.DeleteInstanceConfigRequest;return null!=e.name&&(t.name=String(e.name)),null!=e.etag&&(t.etag=String(e.etag)),null!=e.validateOnly&&(t.validateOnly=Boolean(e.validateOnly)),t},tt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name="",n.etag="",n.validateOnly=!1),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&(n.etag=e.etag),null!=e.validateOnly&&Object.hasOwnProperty.call(e,"validateOnly")&&(n.validateOnly=e.validateOnly),n},tt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},tt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.DeleteInstanceConfigRequest"},tt),t.ListInstanceConfigOperationsRequest=(nt.prototype.parent="",nt.prototype.filter="",nt.prototype.pageSize=0,nt.prototype.pageToken="",nt.create=function(e){return new nt(e)},nt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(18).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(24).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(34).string(e.pageToken),t},nt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},nt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstanceConfigOperationsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.filter=e.string();break;case 3:i.pageSize=e.int32();break;case 4:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},nt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},nt.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent)?"parent: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},nt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstanceConfigOperationsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstanceConfigOperationsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.ListInstanceConfigOperationsRequest;return null!=e.parent&&(t.parent=String(e.parent)),null!=e.filter&&(t.filter=String(e.filter)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},nt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.parent="",n.filter="",n.pageSize=0,n.pageToken=""),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(n.parent=e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},nt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},nt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstanceConfigOperationsRequest"},nt),t.ListInstanceConfigOperationsResponse=(ot.prototype.operations=d.emptyArray,ot.prototype.nextPageToken="",ot.create=function(e){return new ot(e)},ot.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.operations&&e.operations.length)for(var o=0;o<e.operations.length;++o)g.google.longrunning.Operation.encode(e.operations[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},ot.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ot.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstanceConfigOperationsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.operations&&i.operations.length||(i.operations=[]),i.operations.push(g.google.longrunning.Operation.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},ot.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ot.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.operations&&Object.hasOwnProperty.call(e,"operations")){if(!Array.isArray(e.operations))return"operations: array expected";for(var n=0;n<e.operations.length;++n){var o=g.google.longrunning.Operation.verify(e.operations[n],t+1);if(o)return"operations."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},ot.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstanceConfigOperationsResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstanceConfigOperationsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ListInstanceConfigOperationsResponse;if(e.operations){if(!Array.isArray(e.operations))throw TypeError(".google.spanner.admin.instance.v1.ListInstanceConfigOperationsResponse.operations: array expected");n.operations=[];for(var o=0;o<e.operations.length;++o){if(!d.isObject(e.operations[o]))throw TypeError(".google.spanner.admin.instance.v1.ListInstanceConfigOperationsResponse.operations: object expected");n.operations[o]=g.google.longrunning.Operation.fromObject(e.operations[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},ot.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.operations=[]),t.defaults&&(o.nextPageToken=""),e.operations&&e.operations.length){o.operations=[];for(var r=0;r<e.operations.length;++r)o.operations[r]=g.google.longrunning.Operation.toObject(e.operations[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},ot.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ot.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstanceConfigOperationsResponse"},ot),t.GetInstanceRequest=(rt.prototype.name="",rt.prototype.fieldMask=null,rt.create=function(e){return new rt(e)},rt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.fieldMask&&Object.hasOwnProperty.call(e,"fieldMask")&&g.google.protobuf.FieldMask.encode(e.fieldMask,t.uint32(18).fork(),n+1).ldelim(),t},rt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},rt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.GetInstanceRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.fieldMask=g.google.protobuf.FieldMask.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},rt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},rt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.fieldMask&&Object.hasOwnProperty.call(e,"fieldMask")){e=g.google.protobuf.FieldMask.verify(e.fieldMask,t+1);if(e)return"fieldMask."+e}return null},rt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.GetInstanceRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.GetInstanceRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.GetInstanceRequest;if(null!=e.name&&(n.name=String(e.name)),null!=e.fieldMask){if(!d.isObject(e.fieldMask))throw TypeError(".google.spanner.admin.instance.v1.GetInstanceRequest.fieldMask: object expected");n.fieldMask=g.google.protobuf.FieldMask.fromObject(e.fieldMask,t+1)}return n},rt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.fieldMask=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.fieldMask&&Object.hasOwnProperty.call(e,"fieldMask")&&(o.fieldMask=g.google.protobuf.FieldMask.toObject(e.fieldMask,t,n+1)),o},rt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},rt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.GetInstanceRequest"},rt),t.CreateInstanceRequest=(it.prototype.parent="",it.prototype.instanceId="",it.prototype.instance=null,it.create=function(e){return new it(e)},it.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&g.google.spanner.admin.instance.v1.Instance.encode(e.instance,t.uint32(26).fork(),n+1).ldelim(),t},it.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},it.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.CreateInstanceRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.instance=g.google.spanner.admin.instance.v1.Instance.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},it.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},it.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId))return"instanceId: string expected";if(null!=e.instance&&Object.hasOwnProperty.call(e,"instance")){e=g.google.spanner.admin.instance.v1.Instance.verify(e.instance,t+1);if(e)return"instance."+e}return null},it.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.CreateInstanceRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.CreateInstanceRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.instanceId&&(n.instanceId=String(e.instanceId)),null!=e.instance){if(!d.isObject(e.instance))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceRequest.instance: object expected");n.instance=g.google.spanner.admin.instance.v1.Instance.fromObject(e.instance,t+1)}return n},it.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.instanceId="",o.instance=null),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(o.instanceId=e.instanceId),null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&(o.instance=g.google.spanner.admin.instance.v1.Instance.toObject(e.instance,t,n+1)),o},it.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},it.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.CreateInstanceRequest"},it),t.ListInstancesRequest=(at.prototype.parent="",at.prototype.pageSize=0,at.prototype.pageToken="",at.prototype.filter="",at.prototype.instanceDeadline=null,at.create=function(e){return new at(e)},at.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(16).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(26).string(e.pageToken),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(34).string(e.filter),null!=e.instanceDeadline&&Object.hasOwnProperty.call(e,"instanceDeadline")&&g.google.protobuf.Timestamp.encode(e.instanceDeadline,t.uint32(42).fork(),n+1).ldelim(),t},at.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},at.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstancesRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.pageSize=e.int32();break;case 3:i.pageToken=e.string();break;case 4:i.filter=e.string();break;case 5:i.instanceDeadline=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},at.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},at.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize))return"pageSize: integer expected";if(null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken))return"pageToken: string expected";if(null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter))return"filter: string expected";if(null!=e.instanceDeadline&&Object.hasOwnProperty.call(e,"instanceDeadline")){e=g.google.protobuf.Timestamp.verify(e.instanceDeadline,t+1);if(e)return"instanceDeadline."+e}return null},at.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstancesRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstancesRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ListInstancesRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.pageSize&&(n.pageSize=0|e.pageSize),null!=e.pageToken&&(n.pageToken=String(e.pageToken)),null!=e.filter&&(n.filter=String(e.filter)),null!=e.instanceDeadline){if(!d.isObject(e.instanceDeadline))throw TypeError(".google.spanner.admin.instance.v1.ListInstancesRequest.instanceDeadline: object expected");n.instanceDeadline=g.google.protobuf.Timestamp.fromObject(e.instanceDeadline,t+1)}return n},at.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.pageSize=0,o.pageToken="",o.filter="",o.instanceDeadline=null),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(o.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(o.pageToken=e.pageToken),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(o.filter=e.filter),null!=e.instanceDeadline&&Object.hasOwnProperty.call(e,"instanceDeadline")&&(o.instanceDeadline=g.google.protobuf.Timestamp.toObject(e.instanceDeadline,t,n+1)),o},at.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},at.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstancesRequest"},at),t.ListInstancesResponse=(st.prototype.instances=d.emptyArray,st.prototype.nextPageToken="",st.prototype.unreachable=d.emptyArray,st.create=function(e){return new st(e)},st.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.instances&&e.instances.length)for(var o=0;o<e.instances.length;++o)g.google.spanner.admin.instance.v1.Instance.encode(e.instances[o],t.uint32(10).fork(),n+1).ldelim();if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),null!=e.unreachable&&e.unreachable.length)for(o=0;o<e.unreachable.length;++o)t.uint32(26).string(e.unreachable[o]);return t},st.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},st.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstancesResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instances&&i.instances.length||(i.instances=[]),i.instances.push(g.google.spanner.admin.instance.v1.Instance.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;case 3:i.unreachable&&i.unreachable.length||(i.unreachable=[]),i.unreachable.push(e.string());break;default:e.skipType(7&a,o)}}return i},st.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},st.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.instances&&Object.hasOwnProperty.call(e,"instances")){if(!Array.isArray(e.instances))return"instances: array expected";for(var n=0;n<e.instances.length;++n){var o=g.google.spanner.admin.instance.v1.Instance.verify(e.instances[n],t+1);if(o)return"instances."+o}}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken))return"nextPageToken: string expected";if(null!=e.unreachable&&Object.hasOwnProperty.call(e,"unreachable")){if(!Array.isArray(e.unreachable))return"unreachable: array expected";for(n=0;n<e.unreachable.length;++n)if(!d.isString(e.unreachable[n]))return"unreachable: string[] expected"}return null},st.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstancesResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstancesResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ListInstancesResponse;if(e.instances){if(!Array.isArray(e.instances))throw TypeError(".google.spanner.admin.instance.v1.ListInstancesResponse.instances: array expected");n.instances=[];for(var o=0;o<e.instances.length;++o){if(!d.isObject(e.instances[o]))throw TypeError(".google.spanner.admin.instance.v1.ListInstancesResponse.instances: object expected");n.instances[o]=g.google.spanner.admin.instance.v1.Instance.fromObject(e.instances[o],t+1)}}if(null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),e.unreachable){if(!Array.isArray(e.unreachable))throw TypeError(".google.spanner.admin.instance.v1.ListInstancesResponse.unreachable: array expected");n.unreachable=[];for(o=0;o<e.unreachable.length;++o)n.unreachable[o]=String(e.unreachable[o])}return n},st.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.instances=[],o.unreachable=[]),t.defaults&&(o.nextPageToken=""),e.instances&&e.instances.length){o.instances=[];for(var r=0;r<e.instances.length;++r)o.instances[r]=g.google.spanner.admin.instance.v1.Instance.toObject(e.instances[r],t,n+1)}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),e.unreachable&&e.unreachable.length){o.unreachable=[];for(r=0;r<e.unreachable.length;++r)o.unreachable[r]=e.unreachable[r]}return o},st.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},st.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstancesResponse"},st),t.UpdateInstanceRequest=(ct.prototype.instance=null,ct.prototype.fieldMask=null,ct.create=function(e){return new ct(e)},ct.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&g.google.spanner.admin.instance.v1.Instance.encode(e.instance,t.uint32(10).fork(),n+1).ldelim(),null!=e.fieldMask&&Object.hasOwnProperty.call(e,"fieldMask")&&g.google.protobuf.FieldMask.encode(e.fieldMask,t.uint32(18).fork(),n+1).ldelim(),t},ct.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ct.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.UpdateInstanceRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instance=g.google.spanner.admin.instance.v1.Instance.decode(e,e.uint32(),void 0,o+1);break;case 2:i.fieldMask=g.google.protobuf.FieldMask.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ct.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ct.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&(n=g.google.spanner.admin.instance.v1.Instance.verify(e.instance,t+1)))return"instance."+n;if(null!=e.fieldMask&&Object.hasOwnProperty.call(e,"fieldMask")&&(n=g.google.protobuf.FieldMask.verify(e.fieldMask,t+1)))return"fieldMask."+n;return null},ct.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.UpdateInstanceRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.UpdateInstanceRequest;if(null!=e.instance){if(!d.isObject(e.instance))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceRequest.instance: object expected");n.instance=g.google.spanner.admin.instance.v1.Instance.fromObject(e.instance,t+1)}if(null!=e.fieldMask){if(!d.isObject(e.fieldMask))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceRequest.fieldMask: object expected");n.fieldMask=g.google.protobuf.FieldMask.fromObject(e.fieldMask,t+1)}return n},ct.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.instance=null,o.fieldMask=null),null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&(o.instance=g.google.spanner.admin.instance.v1.Instance.toObject(e.instance,t,n+1)),null!=e.fieldMask&&Object.hasOwnProperty.call(e,"fieldMask")&&(o.fieldMask=g.google.protobuf.FieldMask.toObject(e.fieldMask,t,n+1)),o},ct.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ct.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.UpdateInstanceRequest"},ct),t.DeleteInstanceRequest=(lt.prototype.name="",lt.create=function(e){return new lt(e)},lt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},lt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},lt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.DeleteInstanceRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},lt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},lt.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},lt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.DeleteInstanceRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.DeleteInstanceRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.DeleteInstanceRequest;return null!=e.name&&(t.name=String(e.name)),t},lt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},lt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},lt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.DeleteInstanceRequest"},lt),t.CreateInstanceMetadata=(ut.prototype.instance=null,ut.prototype.startTime=null,ut.prototype.cancelTime=null,ut.prototype.endTime=null,ut.prototype.expectedFulfillmentPeriod=0,ut.create=function(e){return new ut(e)},ut.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&g.google.spanner.admin.instance.v1.Instance.encode(e.instance,t.uint32(10).fork(),n+1).ldelim(),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&g.google.protobuf.Timestamp.encode(e.startTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(26).fork(),n+1).ldelim(),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&g.google.protobuf.Timestamp.encode(e.endTime,t.uint32(34).fork(),n+1).ldelim(),null!=e.expectedFulfillmentPeriod&&Object.hasOwnProperty.call(e,"expectedFulfillmentPeriod")&&t.uint32(40).int32(e.expectedFulfillmentPeriod),t},ut.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ut.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.CreateInstanceMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instance=g.google.spanner.admin.instance.v1.Instance.decode(e,e.uint32(),void 0,o+1);break;case 2:i.startTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 4:i.endTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 5:i.expectedFulfillmentPeriod=e.int32();break;default:e.skipType(7&a,o)}}return i},ut.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ut.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&(n=g.google.spanner.admin.instance.v1.Instance.verify(e.instance,t+1)))return"instance."+n;if(null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(n=g.google.protobuf.Timestamp.verify(e.startTime,t+1)))return"startTime."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;if(null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(n=g.google.protobuf.Timestamp.verify(e.endTime,t+1)))return"endTime."+n;if(null!=e.expectedFulfillmentPeriod&&Object.hasOwnProperty.call(e,"expectedFulfillmentPeriod"))switch(e.expectedFulfillmentPeriod){default:return"expectedFulfillmentPeriod: enum value expected";case 0:case 1:case 2:}return null},ut.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.CreateInstanceMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.CreateInstanceMetadata;if(null!=e.instance){if(!d.isObject(e.instance))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceMetadata.instance: object expected");n.instance=g.google.spanner.admin.instance.v1.Instance.fromObject(e.instance,t+1)}if(null!=e.startTime){if(!d.isObject(e.startTime))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceMetadata.startTime: object expected");n.startTime=g.google.protobuf.Timestamp.fromObject(e.startTime,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}if(null!=e.endTime){if(!d.isObject(e.endTime))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceMetadata.endTime: object expected");n.endTime=g.google.protobuf.Timestamp.fromObject(e.endTime,t+1)}switch(e.expectedFulfillmentPeriod){default:"number"==typeof e.expectedFulfillmentPeriod&&(n.expectedFulfillmentPeriod=e.expectedFulfillmentPeriod);break;case"FULFILLMENT_PERIOD_UNSPECIFIED":case 0:n.expectedFulfillmentPeriod=0;break;case"FULFILLMENT_PERIOD_NORMAL":case 1:n.expectedFulfillmentPeriod=1;break;case"FULFILLMENT_PERIOD_EXTENDED":case 2:n.expectedFulfillmentPeriod=2}return n},ut.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.instance=null,o.startTime=null,o.cancelTime=null,o.endTime=null,o.expectedFulfillmentPeriod=t.enums===String?"FULFILLMENT_PERIOD_UNSPECIFIED":0),null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&(o.instance=g.google.spanner.admin.instance.v1.Instance.toObject(e.instance,t,n+1)),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(o.startTime=g.google.protobuf.Timestamp.toObject(e.startTime,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(o.endTime=g.google.protobuf.Timestamp.toObject(e.endTime,t,n+1)),null!=e.expectedFulfillmentPeriod&&Object.hasOwnProperty.call(e,"expectedFulfillmentPeriod")&&(o.expectedFulfillmentPeriod=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.FulfillmentPeriod[e.expectedFulfillmentPeriod]?e.expectedFulfillmentPeriod:g.google.spanner.admin.instance.v1.FulfillmentPeriod[e.expectedFulfillmentPeriod]),o},ut.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ut.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.CreateInstanceMetadata"},ut),t.UpdateInstanceMetadata=(pt.prototype.instance=null,pt.prototype.startTime=null,pt.prototype.cancelTime=null,pt.prototype.endTime=null,pt.prototype.expectedFulfillmentPeriod=0,pt.create=function(e){return new pt(e)},pt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&g.google.spanner.admin.instance.v1.Instance.encode(e.instance,t.uint32(10).fork(),n+1).ldelim(),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&g.google.protobuf.Timestamp.encode(e.startTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(26).fork(),n+1).ldelim(),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&g.google.protobuf.Timestamp.encode(e.endTime,t.uint32(34).fork(),n+1).ldelim(),null!=e.expectedFulfillmentPeriod&&Object.hasOwnProperty.call(e,"expectedFulfillmentPeriod")&&t.uint32(40).int32(e.expectedFulfillmentPeriod),t},pt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},pt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.UpdateInstanceMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instance=g.google.spanner.admin.instance.v1.Instance.decode(e,e.uint32(),void 0,o+1);break;case 2:i.startTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 4:i.endTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 5:i.expectedFulfillmentPeriod=e.int32();break;default:e.skipType(7&a,o)}}return i},pt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},pt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&(n=g.google.spanner.admin.instance.v1.Instance.verify(e.instance,t+1)))return"instance."+n;if(null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(n=g.google.protobuf.Timestamp.verify(e.startTime,t+1)))return"startTime."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;if(null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(n=g.google.protobuf.Timestamp.verify(e.endTime,t+1)))return"endTime."+n;if(null!=e.expectedFulfillmentPeriod&&Object.hasOwnProperty.call(e,"expectedFulfillmentPeriod"))switch(e.expectedFulfillmentPeriod){default:return"expectedFulfillmentPeriod: enum value expected";case 0:case 1:case 2:}return null},pt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.UpdateInstanceMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.UpdateInstanceMetadata;if(null!=e.instance){if(!d.isObject(e.instance))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceMetadata.instance: object expected");n.instance=g.google.spanner.admin.instance.v1.Instance.fromObject(e.instance,t+1)}if(null!=e.startTime){if(!d.isObject(e.startTime))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceMetadata.startTime: object expected");n.startTime=g.google.protobuf.Timestamp.fromObject(e.startTime,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}if(null!=e.endTime){if(!d.isObject(e.endTime))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceMetadata.endTime: object expected");n.endTime=g.google.protobuf.Timestamp.fromObject(e.endTime,t+1)}switch(e.expectedFulfillmentPeriod){default:"number"==typeof e.expectedFulfillmentPeriod&&(n.expectedFulfillmentPeriod=e.expectedFulfillmentPeriod);break;case"FULFILLMENT_PERIOD_UNSPECIFIED":case 0:n.expectedFulfillmentPeriod=0;break;case"FULFILLMENT_PERIOD_NORMAL":case 1:n.expectedFulfillmentPeriod=1;break;case"FULFILLMENT_PERIOD_EXTENDED":case 2:n.expectedFulfillmentPeriod=2}return n},pt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.instance=null,o.startTime=null,o.cancelTime=null,o.endTime=null,o.expectedFulfillmentPeriod=t.enums===String?"FULFILLMENT_PERIOD_UNSPECIFIED":0),null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&(o.instance=g.google.spanner.admin.instance.v1.Instance.toObject(e.instance,t,n+1)),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(o.startTime=g.google.protobuf.Timestamp.toObject(e.startTime,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(o.endTime=g.google.protobuf.Timestamp.toObject(e.endTime,t,n+1)),null!=e.expectedFulfillmentPeriod&&Object.hasOwnProperty.call(e,"expectedFulfillmentPeriod")&&(o.expectedFulfillmentPeriod=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.FulfillmentPeriod[e.expectedFulfillmentPeriod]?e.expectedFulfillmentPeriod:g.google.spanner.admin.instance.v1.FulfillmentPeriod[e.expectedFulfillmentPeriod]),o},pt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},pt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.UpdateInstanceMetadata"},pt),t.FreeInstanceMetadata=(dt.prototype.expireTime=null,dt.prototype.upgradeTime=null,dt.prototype.expireBehavior=0,dt.create=function(e){return new dt(e)},dt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&g.google.protobuf.Timestamp.encode(e.expireTime,t.uint32(10).fork(),n+1).ldelim(),null!=e.upgradeTime&&Object.hasOwnProperty.call(e,"upgradeTime")&&g.google.protobuf.Timestamp.encode(e.upgradeTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.expireBehavior&&Object.hasOwnProperty.call(e,"expireBehavior")&&t.uint32(24).int32(e.expireBehavior),t},dt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},dt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.FreeInstanceMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.expireTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.upgradeTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.expireBehavior=e.int32();break;default:e.skipType(7&a,o)}}return i},dt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},dt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(n=g.google.protobuf.Timestamp.verify(e.expireTime,t+1)))return"expireTime."+n;if(null!=e.upgradeTime&&Object.hasOwnProperty.call(e,"upgradeTime")&&(n=g.google.protobuf.Timestamp.verify(e.upgradeTime,t+1)))return"upgradeTime."+n;if(null!=e.expireBehavior&&Object.hasOwnProperty.call(e,"expireBehavior"))switch(e.expireBehavior){default:return"expireBehavior: enum value expected";case 0:case 1:case 2:}return null},dt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.FreeInstanceMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.FreeInstanceMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.FreeInstanceMetadata;if(null!=e.expireTime){if(!d.isObject(e.expireTime))throw TypeError(".google.spanner.admin.instance.v1.FreeInstanceMetadata.expireTime: object expected");n.expireTime=g.google.protobuf.Timestamp.fromObject(e.expireTime,t+1)}if(null!=e.upgradeTime){if(!d.isObject(e.upgradeTime))throw TypeError(".google.spanner.admin.instance.v1.FreeInstanceMetadata.upgradeTime: object expected");n.upgradeTime=g.google.protobuf.Timestamp.fromObject(e.upgradeTime,t+1)}switch(e.expireBehavior){default:"number"==typeof e.expireBehavior&&(n.expireBehavior=e.expireBehavior);break;case"EXPIRE_BEHAVIOR_UNSPECIFIED":case 0:n.expireBehavior=0;break;case"FREE_TO_PROVISIONED":case 1:n.expireBehavior=1;break;case"REMOVE_AFTER_GRACE_PERIOD":case 2:n.expireBehavior=2}return n},dt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.expireTime=null,o.upgradeTime=null,o.expireBehavior=t.enums===String?"EXPIRE_BEHAVIOR_UNSPECIFIED":0),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(o.expireTime=g.google.protobuf.Timestamp.toObject(e.expireTime,t,n+1)),null!=e.upgradeTime&&Object.hasOwnProperty.call(e,"upgradeTime")&&(o.upgradeTime=g.google.protobuf.Timestamp.toObject(e.upgradeTime,t,n+1)),null!=e.expireBehavior&&Object.hasOwnProperty.call(e,"expireBehavior")&&(o.expireBehavior=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.FreeInstanceMetadata.ExpireBehavior[e.expireBehavior]?e.expireBehavior:g.google.spanner.admin.instance.v1.FreeInstanceMetadata.ExpireBehavior[e.expireBehavior]),o},dt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},dt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.FreeInstanceMetadata"},dt.ExpireBehavior=(n={},(e=Object.create(n))[n[0]="EXPIRE_BEHAVIOR_UNSPECIFIED"]=0,e[n[1]="FREE_TO_PROVISIONED"]=1,e[n[2]="REMOVE_AFTER_GRACE_PERIOD"]=2,e),dt),t.CreateInstanceConfigMetadata=(gt.prototype.instanceConfig=null,gt.prototype.progress=null,gt.prototype.cancelTime=null,gt.create=function(e){return new gt(e)},gt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&g.google.spanner.admin.instance.v1.InstanceConfig.encode(e.instanceConfig,t.uint32(10).fork(),n+1).ldelim(),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&g.google.spanner.admin.instance.v1.OperationProgress.encode(e.progress,t.uint32(18).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(26).fork(),n+1).ldelim(),t},gt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},gt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.CreateInstanceConfigMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.decode(e,e.uint32(),void 0,o+1);break;case 2:i.progress=g.google.spanner.admin.instance.v1.OperationProgress.decode(e,e.uint32(),void 0,o+1);break;case 3:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},gt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},gt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&(n=g.google.spanner.admin.instance.v1.InstanceConfig.verify(e.instanceConfig,t+1)))return"instanceConfig."+n;if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(n=g.google.spanner.admin.instance.v1.OperationProgress.verify(e.progress,t+1)))return"progress."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;return null},gt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.CreateInstanceConfigMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceConfigMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.CreateInstanceConfigMetadata;if(null!=e.instanceConfig){if(!d.isObject(e.instanceConfig))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceConfigMetadata.instanceConfig: object expected");n.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.fromObject(e.instanceConfig,t+1)}if(null!=e.progress){if(!d.isObject(e.progress))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceConfigMetadata.progress: object expected");n.progress=g.google.spanner.admin.instance.v1.OperationProgress.fromObject(e.progress,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.instance.v1.CreateInstanceConfigMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}return n},gt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.instanceConfig=null,o.progress=null,o.cancelTime=null),null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&(o.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.toObject(e.instanceConfig,t,n+1)),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(o.progress=g.google.spanner.admin.instance.v1.OperationProgress.toObject(e.progress,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),o},gt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},gt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.CreateInstanceConfigMetadata"},gt),t.UpdateInstanceConfigMetadata=(ft.prototype.instanceConfig=null,ft.prototype.progress=null,ft.prototype.cancelTime=null,ft.create=function(e){return new ft(e)},ft.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&g.google.spanner.admin.instance.v1.InstanceConfig.encode(e.instanceConfig,t.uint32(10).fork(),n+1).ldelim(),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&g.google.spanner.admin.instance.v1.OperationProgress.encode(e.progress,t.uint32(18).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(26).fork(),n+1).ldelim(),t},ft.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ft.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.UpdateInstanceConfigMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.decode(e,e.uint32(),void 0,o+1);break;case 2:i.progress=g.google.spanner.admin.instance.v1.OperationProgress.decode(e,e.uint32(),void 0,o+1);break;case 3:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ft.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ft.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&(n=g.google.spanner.admin.instance.v1.InstanceConfig.verify(e.instanceConfig,t+1)))return"instanceConfig."+n;if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(n=g.google.spanner.admin.instance.v1.OperationProgress.verify(e.progress,t+1)))return"progress."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;return null},ft.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.UpdateInstanceConfigMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceConfigMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.UpdateInstanceConfigMetadata;if(null!=e.instanceConfig){if(!d.isObject(e.instanceConfig))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceConfigMetadata.instanceConfig: object expected");n.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.fromObject(e.instanceConfig,t+1)}if(null!=e.progress){if(!d.isObject(e.progress))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceConfigMetadata.progress: object expected");n.progress=g.google.spanner.admin.instance.v1.OperationProgress.fromObject(e.progress,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstanceConfigMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}return n},ft.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.instanceConfig=null,o.progress=null,o.cancelTime=null),null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&(o.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.toObject(e.instanceConfig,t,n+1)),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(o.progress=g.google.spanner.admin.instance.v1.OperationProgress.toObject(e.progress,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),o},ft.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ft.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.UpdateInstanceConfigMetadata"},ft),t.InstancePartition=(y.prototype.name="",y.prototype.config="",y.prototype.displayName="",y.prototype.nodeCount=null,y.prototype.processingUnits=null,y.prototype.autoscalingConfig=null,y.prototype.state=0,y.prototype.createTime=null,y.prototype.updateTime=null,y.prototype.referencingDatabases=d.emptyArray,y.prototype.referencingBackups=d.emptyArray,y.prototype.etag="",Object.defineProperty(y.prototype,"computeCapacity",{get:d.oneOfGetter(n=["nodeCount","processingUnits"]),set:d.oneOfSetter(n)}),y.create=function(e){return new y(e)},y.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.config&&Object.hasOwnProperty.call(e,"config")&&t.uint32(18).string(e.config),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&t.uint32(26).string(e.displayName),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&t.uint32(40).int32(e.nodeCount),null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&t.uint32(48).int32(e.processingUnits),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&t.uint32(56).int32(e.state),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&g.google.protobuf.Timestamp.encode(e.createTime,t.uint32(66).fork(),n+1).ldelim(),null!=e.updateTime&&Object.hasOwnProperty.call(e,"updateTime")&&g.google.protobuf.Timestamp.encode(e.updateTime,t.uint32(74).fork(),n+1).ldelim(),null!=e.referencingDatabases&&e.referencingDatabases.length)for(var o=0;o<e.referencingDatabases.length;++o)t.uint32(82).string(e.referencingDatabases[o]);if(null!=e.referencingBackups&&e.referencingBackups.length)for(o=0;o<e.referencingBackups.length;++o)t.uint32(90).string(e.referencingBackups[o]);return null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&t.uint32(98).string(e.etag),null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&g.google.spanner.admin.instance.v1.AutoscalingConfig.encode(e.autoscalingConfig,t.uint32(106).fork(),n+1).ldelim(),t},y.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},y.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.InstancePartition;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.config=e.string();break;case 3:i.displayName=e.string();break;case 5:i.nodeCount=e.int32();break;case 6:i.processingUnits=e.int32();break;case 13:i.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.decode(e,e.uint32(),void 0,o+1);break;case 7:i.state=e.int32();break;case 8:i.createTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 9:i.updateTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 10:i.referencingDatabases&&i.referencingDatabases.length||(i.referencingDatabases=[]),i.referencingDatabases.push(e.string());break;case 11:i.referencingBackups&&i.referencingBackups.length||(i.referencingBackups=[]),i.referencingBackups.push(e.string());break;case 12:i.etag=e.string();break;default:e.skipType(7&a,o)}}return i},y.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},y.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.config&&Object.hasOwnProperty.call(e,"config")&&!d.isString(e.config))return"config: string expected";if(null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&!d.isString(e.displayName))return"displayName: string expected";if(null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&(o.computeCapacity=1,!d.isInteger(e.nodeCount)))return"nodeCount: integer expected";if(null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")){if(1===o.computeCapacity)return"computeCapacity: multiple values";if(o.computeCapacity=1,!d.isInteger(e.processingUnits))return"processingUnits: integer expected"}if(null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&(n=g.google.spanner.admin.instance.v1.AutoscalingConfig.verify(e.autoscalingConfig,t+1)))return"autoscalingConfig."+n;if(null!=e.state&&Object.hasOwnProperty.call(e,"state"))switch(e.state){default:return"state: enum value expected";case 0:case 1:case 2:}if(null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(n=g.google.protobuf.Timestamp.verify(e.createTime,t+1)))return"createTime."+n;if(null!=e.updateTime&&Object.hasOwnProperty.call(e,"updateTime")&&(n=g.google.protobuf.Timestamp.verify(e.updateTime,t+1)))return"updateTime."+n;if(null!=e.referencingDatabases&&Object.hasOwnProperty.call(e,"referencingDatabases")){if(!Array.isArray(e.referencingDatabases))return"referencingDatabases: array expected";for(var r=0;r<e.referencingDatabases.length;++r)if(!d.isString(e.referencingDatabases[r]))return"referencingDatabases: string[] expected"}if(null!=e.referencingBackups&&Object.hasOwnProperty.call(e,"referencingBackups")){if(!Array.isArray(e.referencingBackups))return"referencingBackups: array expected";for(r=0;r<e.referencingBackups.length;++r)if(!d.isString(e.referencingBackups[r]))return"referencingBackups: string[] expected"}return null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&!d.isString(e.etag)?"etag: string expected":null},y.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.InstancePartition)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.InstancePartition: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.InstancePartition;if(null!=e.name&&(n.name=String(e.name)),null!=e.config&&(n.config=String(e.config)),null!=e.displayName&&(n.displayName=String(e.displayName)),null!=e.nodeCount&&(n.nodeCount=0|e.nodeCount),null!=e.processingUnits&&(n.processingUnits=0|e.processingUnits),null!=e.autoscalingConfig){if(!d.isObject(e.autoscalingConfig))throw TypeError(".google.spanner.admin.instance.v1.InstancePartition.autoscalingConfig: object expected");n.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.fromObject(e.autoscalingConfig,t+1)}switch(e.state){default:"number"==typeof e.state&&(n.state=e.state);break;case"STATE_UNSPECIFIED":case 0:n.state=0;break;case"CREATING":case 1:n.state=1;break;case"READY":case 2:n.state=2}if(null!=e.createTime){if(!d.isObject(e.createTime))throw TypeError(".google.spanner.admin.instance.v1.InstancePartition.createTime: object expected");n.createTime=g.google.protobuf.Timestamp.fromObject(e.createTime,t+1)}if(null!=e.updateTime){if(!d.isObject(e.updateTime))throw TypeError(".google.spanner.admin.instance.v1.InstancePartition.updateTime: object expected");n.updateTime=g.google.protobuf.Timestamp.fromObject(e.updateTime,t+1)}if(e.referencingDatabases){if(!Array.isArray(e.referencingDatabases))throw TypeError(".google.spanner.admin.instance.v1.InstancePartition.referencingDatabases: array expected");n.referencingDatabases=[];for(var o=0;o<e.referencingDatabases.length;++o)n.referencingDatabases[o]=String(e.referencingDatabases[o])}if(e.referencingBackups){if(!Array.isArray(e.referencingBackups))throw TypeError(".google.spanner.admin.instance.v1.InstancePartition.referencingBackups: array expected");n.referencingBackups=[];for(o=0;o<e.referencingBackups.length;++o)n.referencingBackups[o]=String(e.referencingBackups[o])}return null!=e.etag&&(n.etag=String(e.etag)),n},y.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.referencingDatabases=[],o.referencingBackups=[]),t.defaults&&(o.name="",o.config="",o.displayName="",o.state=t.enums===String?"STATE_UNSPECIFIED":0,o.createTime=null,o.updateTime=null,o.etag="",o.autoscalingConfig=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.config&&Object.hasOwnProperty.call(e,"config")&&(o.config=e.config),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&(o.displayName=e.displayName),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&(o.nodeCount=e.nodeCount,t.oneofs)&&(o.computeCapacity="nodeCount"),null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&(o.processingUnits=e.processingUnits,t.oneofs)&&(o.computeCapacity="processingUnits"),null!=e.state&&Object.hasOwnProperty.call(e,"state")&&(o.state=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.InstancePartition.State[e.state]?e.state:g.google.spanner.admin.instance.v1.InstancePartition.State[e.state]),null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(o.createTime=g.google.protobuf.Timestamp.toObject(e.createTime,t,n+1)),null!=e.updateTime&&Object.hasOwnProperty.call(e,"updateTime")&&(o.updateTime=g.google.protobuf.Timestamp.toObject(e.updateTime,t,n+1)),e.referencingDatabases&&e.referencingDatabases.length){o.referencingDatabases=[];for(var r=0;r<e.referencingDatabases.length;++r)o.referencingDatabases[r]=e.referencingDatabases[r]}if(e.referencingBackups&&e.referencingBackups.length){o.referencingBackups=[];for(r=0;r<e.referencingBackups.length;++r)o.referencingBackups[r]=e.referencingBackups[r]}return null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&(o.etag=e.etag),null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&(o.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.toObject(e.autoscalingConfig,t,n+1)),o},y.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},y.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.InstancePartition"},y.State=(n={},(e=Object.create(n))[n[0]="STATE_UNSPECIFIED"]=0,e[n[1]="CREATING"]=1,e[n[2]="READY"]=2,e),y),t.CreateInstancePartitionMetadata=(mt.prototype.instancePartition=null,mt.prototype.startTime=null,mt.prototype.cancelTime=null,mt.prototype.endTime=null,mt.create=function(e){return new mt(e)},mt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&g.google.spanner.admin.instance.v1.InstancePartition.encode(e.instancePartition,t.uint32(10).fork(),n+1).ldelim(),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&g.google.protobuf.Timestamp.encode(e.startTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(26).fork(),n+1).ldelim(),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&g.google.protobuf.Timestamp.encode(e.endTime,t.uint32(34).fork(),n+1).ldelim(),t},mt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},mt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.CreateInstancePartitionMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.decode(e,e.uint32(),void 0,o+1);break;case 2:i.startTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 4:i.endTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},mt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},mt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&(n=g.google.spanner.admin.instance.v1.InstancePartition.verify(e.instancePartition,t+1)))return"instancePartition."+n;if(null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(n=g.google.protobuf.Timestamp.verify(e.startTime,t+1)))return"startTime."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;if(null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(n=g.google.protobuf.Timestamp.verify(e.endTime,t+1)))return"endTime."+n;return null},mt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.CreateInstancePartitionMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.CreateInstancePartitionMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.CreateInstancePartitionMetadata;if(null!=e.instancePartition){if(!d.isObject(e.instancePartition))throw TypeError(".google.spanner.admin.instance.v1.CreateInstancePartitionMetadata.instancePartition: object expected");n.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.fromObject(e.instancePartition,t+1)}if(null!=e.startTime){if(!d.isObject(e.startTime))throw TypeError(".google.spanner.admin.instance.v1.CreateInstancePartitionMetadata.startTime: object expected");n.startTime=g.google.protobuf.Timestamp.fromObject(e.startTime,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.instance.v1.CreateInstancePartitionMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}if(null!=e.endTime){if(!d.isObject(e.endTime))throw TypeError(".google.spanner.admin.instance.v1.CreateInstancePartitionMetadata.endTime: object expected");n.endTime=g.google.protobuf.Timestamp.fromObject(e.endTime,t+1)}return n},mt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.instancePartition=null,o.startTime=null,o.cancelTime=null,o.endTime=null),null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&(o.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.toObject(e.instancePartition,t,n+1)),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(o.startTime=g.google.protobuf.Timestamp.toObject(e.startTime,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(o.endTime=g.google.protobuf.Timestamp.toObject(e.endTime,t,n+1)),o},mt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},mt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.CreateInstancePartitionMetadata"},mt),t.CreateInstancePartitionRequest=(bt.prototype.parent="",bt.prototype.instancePartitionId="",bt.prototype.instancePartition=null,bt.create=function(e){return new bt(e)},bt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.instancePartitionId&&Object.hasOwnProperty.call(e,"instancePartitionId")&&t.uint32(18).string(e.instancePartitionId),null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&g.google.spanner.admin.instance.v1.InstancePartition.encode(e.instancePartition,t.uint32(26).fork(),n+1).ldelim(),t},bt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},bt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.CreateInstancePartitionRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.instancePartitionId=e.string();break;case 3:i.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},bt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},bt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.instancePartitionId&&Object.hasOwnProperty.call(e,"instancePartitionId")&&!d.isString(e.instancePartitionId))return"instancePartitionId: string expected";if(null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")){e=g.google.spanner.admin.instance.v1.InstancePartition.verify(e.instancePartition,t+1);if(e)return"instancePartition."+e}return null},bt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.CreateInstancePartitionRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.CreateInstancePartitionRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.CreateInstancePartitionRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.instancePartitionId&&(n.instancePartitionId=String(e.instancePartitionId)),null!=e.instancePartition){if(!d.isObject(e.instancePartition))throw TypeError(".google.spanner.admin.instance.v1.CreateInstancePartitionRequest.instancePartition: object expected");n.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.fromObject(e.instancePartition,t+1)}return n},bt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.instancePartitionId="",o.instancePartition=null),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.instancePartitionId&&Object.hasOwnProperty.call(e,"instancePartitionId")&&(o.instancePartitionId=e.instancePartitionId),null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&(o.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.toObject(e.instancePartition,t,n+1)),o},bt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},bt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.CreateInstancePartitionRequest"},bt),t.DeleteInstancePartitionRequest=(yt.prototype.name="",yt.prototype.etag="",yt.create=function(e){return new yt(e)},yt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&t.uint32(18).string(e.etag),t},yt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},yt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.DeleteInstancePartitionRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.etag=e.string();break;default:e.skipType(7&a,o)}}return i},yt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},yt.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&!d.isString(e.etag)?"etag: string expected":null},yt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.DeleteInstancePartitionRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.DeleteInstancePartitionRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.DeleteInstancePartitionRequest;return null!=e.name&&(t.name=String(e.name)),null!=e.etag&&(t.etag=String(e.etag)),t},yt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name="",n.etag=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&(n.etag=e.etag),n},yt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},yt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.DeleteInstancePartitionRequest"},yt),t.GetInstancePartitionRequest=(ht.prototype.name="",ht.create=function(e){return new ht(e)},ht.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},ht.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ht.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.GetInstancePartitionRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},ht.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ht.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},ht.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.GetInstancePartitionRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.GetInstancePartitionRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.GetInstancePartitionRequest;return null!=e.name&&(t.name=String(e.name)),t},ht.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},ht.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ht.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.GetInstancePartitionRequest"},ht),t.UpdateInstancePartitionRequest=(Ot.prototype.instancePartition=null,Ot.prototype.fieldMask=null,Ot.create=function(e){return new Ot(e)},Ot.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&g.google.spanner.admin.instance.v1.InstancePartition.encode(e.instancePartition,t.uint32(10).fork(),n+1).ldelim(),null!=e.fieldMask&&Object.hasOwnProperty.call(e,"fieldMask")&&g.google.protobuf.FieldMask.encode(e.fieldMask,t.uint32(18).fork(),n+1).ldelim(),t},Ot.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ot.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.UpdateInstancePartitionRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.decode(e,e.uint32(),void 0,o+1);break;case 2:i.fieldMask=g.google.protobuf.FieldMask.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ot.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ot.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&(n=g.google.spanner.admin.instance.v1.InstancePartition.verify(e.instancePartition,t+1)))return"instancePartition."+n;if(null!=e.fieldMask&&Object.hasOwnProperty.call(e,"fieldMask")&&(n=g.google.protobuf.FieldMask.verify(e.fieldMask,t+1)))return"fieldMask."+n;return null},Ot.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.UpdateInstancePartitionRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstancePartitionRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.UpdateInstancePartitionRequest;if(null!=e.instancePartition){if(!d.isObject(e.instancePartition))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstancePartitionRequest.instancePartition: object expected");n.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.fromObject(e.instancePartition,t+1)}if(null!=e.fieldMask){if(!d.isObject(e.fieldMask))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstancePartitionRequest.fieldMask: object expected");n.fieldMask=g.google.protobuf.FieldMask.fromObject(e.fieldMask,t+1)}return n},Ot.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.instancePartition=null,o.fieldMask=null),null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&(o.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.toObject(e.instancePartition,t,n+1)),null!=e.fieldMask&&Object.hasOwnProperty.call(e,"fieldMask")&&(o.fieldMask=g.google.protobuf.FieldMask.toObject(e.fieldMask,t,n+1)),o},Ot.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ot.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.UpdateInstancePartitionRequest"},Ot),t.UpdateInstancePartitionMetadata=(vt.prototype.instancePartition=null,vt.prototype.startTime=null,vt.prototype.cancelTime=null,vt.prototype.endTime=null,vt.create=function(e){return new vt(e)},vt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&g.google.spanner.admin.instance.v1.InstancePartition.encode(e.instancePartition,t.uint32(10).fork(),n+1).ldelim(),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&g.google.protobuf.Timestamp.encode(e.startTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(26).fork(),n+1).ldelim(),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&g.google.protobuf.Timestamp.encode(e.endTime,t.uint32(34).fork(),n+1).ldelim(),t},vt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},vt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.UpdateInstancePartitionMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.decode(e,e.uint32(),void 0,o+1);break;case 2:i.startTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 4:i.endTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},vt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},vt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&(n=g.google.spanner.admin.instance.v1.InstancePartition.verify(e.instancePartition,t+1)))return"instancePartition."+n;if(null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(n=g.google.protobuf.Timestamp.verify(e.startTime,t+1)))return"startTime."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;if(null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(n=g.google.protobuf.Timestamp.verify(e.endTime,t+1)))return"endTime."+n;return null},vt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.UpdateInstancePartitionMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstancePartitionMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.UpdateInstancePartitionMetadata;if(null!=e.instancePartition){if(!d.isObject(e.instancePartition))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstancePartitionMetadata.instancePartition: object expected");n.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.fromObject(e.instancePartition,t+1)}if(null!=e.startTime){if(!d.isObject(e.startTime))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstancePartitionMetadata.startTime: object expected");n.startTime=g.google.protobuf.Timestamp.fromObject(e.startTime,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstancePartitionMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}if(null!=e.endTime){if(!d.isObject(e.endTime))throw TypeError(".google.spanner.admin.instance.v1.UpdateInstancePartitionMetadata.endTime: object expected");n.endTime=g.google.protobuf.Timestamp.fromObject(e.endTime,t+1)}return n},vt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.instancePartition=null,o.startTime=null,o.cancelTime=null,o.endTime=null),null!=e.instancePartition&&Object.hasOwnProperty.call(e,"instancePartition")&&(o.instancePartition=g.google.spanner.admin.instance.v1.InstancePartition.toObject(e.instancePartition,t,n+1)),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(o.startTime=g.google.protobuf.Timestamp.toObject(e.startTime,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(o.endTime=g.google.protobuf.Timestamp.toObject(e.endTime,t,n+1)),o},vt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},vt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.UpdateInstancePartitionMetadata"},vt),t.ListInstancePartitionsRequest=(jt.prototype.parent="",jt.prototype.pageSize=0,jt.prototype.pageToken="",jt.prototype.instancePartitionDeadline=null,jt.create=function(e){return new jt(e)},jt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(16).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(26).string(e.pageToken),null!=e.instancePartitionDeadline&&Object.hasOwnProperty.call(e,"instancePartitionDeadline")&&g.google.protobuf.Timestamp.encode(e.instancePartitionDeadline,t.uint32(34).fork(),n+1).ldelim(),t},jt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},jt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstancePartitionsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.pageSize=e.int32();break;case 3:i.pageToken=e.string();break;case 4:i.instancePartitionDeadline=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},jt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},jt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize))return"pageSize: integer expected";if(null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken))return"pageToken: string expected";if(null!=e.instancePartitionDeadline&&Object.hasOwnProperty.call(e,"instancePartitionDeadline")){e=g.google.protobuf.Timestamp.verify(e.instancePartitionDeadline,t+1);if(e)return"instancePartitionDeadline."+e}return null},jt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstancePartitionsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ListInstancePartitionsRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.pageSize&&(n.pageSize=0|e.pageSize),null!=e.pageToken&&(n.pageToken=String(e.pageToken)),null!=e.instancePartitionDeadline){if(!d.isObject(e.instancePartitionDeadline))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionsRequest.instancePartitionDeadline: object expected");n.instancePartitionDeadline=g.google.protobuf.Timestamp.fromObject(e.instancePartitionDeadline,t+1)}return n},jt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.pageSize=0,o.pageToken="",o.instancePartitionDeadline=null),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(o.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(o.pageToken=e.pageToken),null!=e.instancePartitionDeadline&&Object.hasOwnProperty.call(e,"instancePartitionDeadline")&&(o.instancePartitionDeadline=g.google.protobuf.Timestamp.toObject(e.instancePartitionDeadline,t,n+1)),o},jt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},jt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstancePartitionsRequest"},jt),t.ListInstancePartitionsResponse=(xt.prototype.instancePartitions=d.emptyArray,xt.prototype.nextPageToken="",xt.prototype.unreachable=d.emptyArray,xt.create=function(e){return new xt(e)},xt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.instancePartitions&&e.instancePartitions.length)for(var o=0;o<e.instancePartitions.length;++o)g.google.spanner.admin.instance.v1.InstancePartition.encode(e.instancePartitions[o],t.uint32(10).fork(),n+1).ldelim();if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),null!=e.unreachable&&e.unreachable.length)for(o=0;o<e.unreachable.length;++o)t.uint32(26).string(e.unreachable[o]);return t},xt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},xt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstancePartitionsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instancePartitions&&i.instancePartitions.length||(i.instancePartitions=[]),i.instancePartitions.push(g.google.spanner.admin.instance.v1.InstancePartition.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;case 3:i.unreachable&&i.unreachable.length||(i.unreachable=[]),i.unreachable.push(e.string());break;default:e.skipType(7&a,o)}}return i},xt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},xt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.instancePartitions&&Object.hasOwnProperty.call(e,"instancePartitions")){if(!Array.isArray(e.instancePartitions))return"instancePartitions: array expected";for(var n=0;n<e.instancePartitions.length;++n){var o=g.google.spanner.admin.instance.v1.InstancePartition.verify(e.instancePartitions[n],t+1);if(o)return"instancePartitions."+o}}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken))return"nextPageToken: string expected";if(null!=e.unreachable&&Object.hasOwnProperty.call(e,"unreachable")){if(!Array.isArray(e.unreachable))return"unreachable: array expected";for(n=0;n<e.unreachable.length;++n)if(!d.isString(e.unreachable[n]))return"unreachable: string[] expected"}return null},xt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstancePartitionsResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ListInstancePartitionsResponse;if(e.instancePartitions){if(!Array.isArray(e.instancePartitions))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionsResponse.instancePartitions: array expected");n.instancePartitions=[];for(var o=0;o<e.instancePartitions.length;++o){if(!d.isObject(e.instancePartitions[o]))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionsResponse.instancePartitions: object expected");n.instancePartitions[o]=g.google.spanner.admin.instance.v1.InstancePartition.fromObject(e.instancePartitions[o],t+1)}}if(null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),e.unreachable){if(!Array.isArray(e.unreachable))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionsResponse.unreachable: array expected");n.unreachable=[];for(o=0;o<e.unreachable.length;++o)n.unreachable[o]=String(e.unreachable[o])}return n},xt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.instancePartitions=[],o.unreachable=[]),t.defaults&&(o.nextPageToken=""),e.instancePartitions&&e.instancePartitions.length){o.instancePartitions=[];for(var r=0;r<e.instancePartitions.length;++r)o.instancePartitions[r]=g.google.spanner.admin.instance.v1.InstancePartition.toObject(e.instancePartitions[r],t,n+1)}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),e.unreachable&&e.unreachable.length){o.unreachable=[];for(r=0;r<e.unreachable.length;++r)o.unreachable[r]=e.unreachable[r]}return o},xt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},xt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstancePartitionsResponse"},xt),t.ListInstancePartitionOperationsRequest=(wt.prototype.parent="",wt.prototype.filter="",wt.prototype.pageSize=0,wt.prototype.pageToken="",wt.prototype.instancePartitionDeadline=null,wt.create=function(e){return new wt(e)},wt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&t.uint32(10).string(e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(18).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(24).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(34).string(e.pageToken),null!=e.instancePartitionDeadline&&Object.hasOwnProperty.call(e,"instancePartitionDeadline")&&g.google.protobuf.Timestamp.encode(e.instancePartitionDeadline,t.uint32(42).fork(),n+1).ldelim(),t},wt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},wt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstancePartitionOperationsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.parent=e.string();break;case 2:i.filter=e.string();break;case 3:i.pageSize=e.int32();break;case 4:i.pageToken=e.string();break;case 5:i.instancePartitionDeadline=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},wt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},wt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&!d.isString(e.parent))return"parent: string expected";if(null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter))return"filter: string expected";if(null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize))return"pageSize: integer expected";if(null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken))return"pageToken: string expected";if(null!=e.instancePartitionDeadline&&Object.hasOwnProperty.call(e,"instancePartitionDeadline")){e=g.google.protobuf.Timestamp.verify(e.instancePartitionDeadline,t+1);if(e)return"instancePartitionDeadline."+e}return null},wt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstancePartitionOperationsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionOperationsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ListInstancePartitionOperationsRequest;if(null!=e.parent&&(n.parent=String(e.parent)),null!=e.filter&&(n.filter=String(e.filter)),null!=e.pageSize&&(n.pageSize=0|e.pageSize),null!=e.pageToken&&(n.pageToken=String(e.pageToken)),null!=e.instancePartitionDeadline){if(!d.isObject(e.instancePartitionDeadline))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionOperationsRequest.instancePartitionDeadline: object expected");n.instancePartitionDeadline=g.google.protobuf.Timestamp.fromObject(e.instancePartitionDeadline,t+1)}return n},wt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.parent="",o.filter="",o.pageSize=0,o.pageToken="",o.instancePartitionDeadline=null),null!=e.parent&&Object.hasOwnProperty.call(e,"parent")&&(o.parent=e.parent),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(o.filter=e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(o.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(o.pageToken=e.pageToken),null!=e.instancePartitionDeadline&&Object.hasOwnProperty.call(e,"instancePartitionDeadline")&&(o.instancePartitionDeadline=g.google.protobuf.Timestamp.toObject(e.instancePartitionDeadline,t,n+1)),o},wt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},wt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstancePartitionOperationsRequest"},wt),t.ListInstancePartitionOperationsResponse=(Tt.prototype.operations=d.emptyArray,Tt.prototype.nextPageToken="",Tt.prototype.unreachableInstancePartitions=d.emptyArray,Tt.create=function(e){return new Tt(e)},Tt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.operations&&e.operations.length)for(var o=0;o<e.operations.length;++o)g.google.longrunning.Operation.encode(e.operations[o],t.uint32(10).fork(),n+1).ldelim();if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),null!=e.unreachableInstancePartitions&&e.unreachableInstancePartitions.length)for(o=0;o<e.unreachableInstancePartitions.length;++o)t.uint32(26).string(e.unreachableInstancePartitions[o]);return t},Tt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Tt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.ListInstancePartitionOperationsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.operations&&i.operations.length||(i.operations=[]),i.operations.push(g.google.longrunning.Operation.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;case 3:i.unreachableInstancePartitions&&i.unreachableInstancePartitions.length||(i.unreachableInstancePartitions=[]),i.unreachableInstancePartitions.push(e.string());break;default:e.skipType(7&a,o)}}return i},Tt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Tt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.operations&&Object.hasOwnProperty.call(e,"operations")){if(!Array.isArray(e.operations))return"operations: array expected";for(var n=0;n<e.operations.length;++n){var o=g.google.longrunning.Operation.verify(e.operations[n],t+1);if(o)return"operations."+o}}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken))return"nextPageToken: string expected";if(null!=e.unreachableInstancePartitions&&Object.hasOwnProperty.call(e,"unreachableInstancePartitions")){if(!Array.isArray(e.unreachableInstancePartitions))return"unreachableInstancePartitions: array expected";for(n=0;n<e.unreachableInstancePartitions.length;++n)if(!d.isString(e.unreachableInstancePartitions[n]))return"unreachableInstancePartitions: string[] expected"}return null},Tt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.ListInstancePartitionOperationsResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionOperationsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.ListInstancePartitionOperationsResponse;if(e.operations){if(!Array.isArray(e.operations))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionOperationsResponse.operations: array expected");n.operations=[];for(var o=0;o<e.operations.length;++o){if(!d.isObject(e.operations[o]))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionOperationsResponse.operations: object expected");n.operations[o]=g.google.longrunning.Operation.fromObject(e.operations[o],t+1)}}if(null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),e.unreachableInstancePartitions){if(!Array.isArray(e.unreachableInstancePartitions))throw TypeError(".google.spanner.admin.instance.v1.ListInstancePartitionOperationsResponse.unreachableInstancePartitions: array expected");n.unreachableInstancePartitions=[];for(o=0;o<e.unreachableInstancePartitions.length;++o)n.unreachableInstancePartitions[o]=String(e.unreachableInstancePartitions[o])}return n},Tt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.operations=[],o.unreachableInstancePartitions=[]),t.defaults&&(o.nextPageToken=""),e.operations&&e.operations.length){o.operations=[];for(var r=0;r<e.operations.length;++r)o.operations[r]=g.google.longrunning.Operation.toObject(e.operations[r],t,n+1)}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),e.unreachableInstancePartitions&&e.unreachableInstancePartitions.length){o.unreachableInstancePartitions=[];for(r=0;r<e.unreachableInstancePartitions.length;++r)o.unreachableInstancePartitions[r]=e.unreachableInstancePartitions[r]}return o},Tt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Tt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.ListInstancePartitionOperationsResponse"},Tt),t.MoveInstanceRequest=(kt.prototype.name="",kt.prototype.targetConfig="",kt.create=function(e){return new kt(e)},kt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.targetConfig&&Object.hasOwnProperty.call(e,"targetConfig")&&t.uint32(18).string(e.targetConfig),t},kt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},kt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.MoveInstanceRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.targetConfig=e.string();break;default:e.skipType(7&a,o)}}return i},kt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},kt.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null!=e.targetConfig&&Object.hasOwnProperty.call(e,"targetConfig")&&!d.isString(e.targetConfig)?"targetConfig: string expected":null},kt.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.MoveInstanceRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.MoveInstanceRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.admin.instance.v1.MoveInstanceRequest;return null!=e.name&&(t.name=String(e.name)),null!=e.targetConfig&&(t.targetConfig=String(e.targetConfig)),t},kt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name="",n.targetConfig=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),null!=e.targetConfig&&Object.hasOwnProperty.call(e,"targetConfig")&&(n.targetConfig=e.targetConfig),n},kt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},kt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.MoveInstanceRequest"},kt),t.MoveInstanceResponse=(Pt.create=function(e){return new Pt(e)},Pt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return t},Pt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Pt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,t=new g.google.spanner.admin.instance.v1.MoveInstanceResponse;e.pos<r;){var i=e.uint32();if(i===n)break;e.skipType(7&i,o)}return t},Pt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Pt.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null},Pt.fromObject=function(e,t){return e instanceof g.google.spanner.admin.instance.v1.MoveInstanceResponse?e:new g.google.spanner.admin.instance.v1.MoveInstanceResponse},Pt.toObject=function(){return{}},Pt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Pt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.MoveInstanceResponse"},Pt),t.MoveInstanceMetadata=(St.prototype.targetConfig="",St.prototype.progress=null,St.prototype.cancelTime=null,St.create=function(e){return new St(e)},St.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.targetConfig&&Object.hasOwnProperty.call(e,"targetConfig")&&t.uint32(10).string(e.targetConfig),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&g.google.spanner.admin.instance.v1.OperationProgress.encode(e.progress,t.uint32(18).fork(),n+1).ldelim(),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&g.google.protobuf.Timestamp.encode(e.cancelTime,t.uint32(26).fork(),n+1).ldelim(),t},St.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},St.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.admin.instance.v1.MoveInstanceMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.targetConfig=e.string();break;case 2:i.progress=g.google.spanner.admin.instance.v1.OperationProgress.decode(e,e.uint32(),void 0,o+1);break;case 3:i.cancelTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},St.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},St.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.targetConfig&&Object.hasOwnProperty.call(e,"targetConfig")&&!d.isString(e.targetConfig))return"targetConfig: string expected";var n;if(null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(n=g.google.spanner.admin.instance.v1.OperationProgress.verify(e.progress,t+1)))return"progress."+n;if(null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(n=g.google.protobuf.Timestamp.verify(e.cancelTime,t+1)))return"cancelTime."+n;return null},St.fromObject=function(e,t){if(e instanceof g.google.spanner.admin.instance.v1.MoveInstanceMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.admin.instance.v1.MoveInstanceMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.admin.instance.v1.MoveInstanceMetadata;if(null!=e.targetConfig&&(n.targetConfig=String(e.targetConfig)),null!=e.progress){if(!d.isObject(e.progress))throw TypeError(".google.spanner.admin.instance.v1.MoveInstanceMetadata.progress: object expected");n.progress=g.google.spanner.admin.instance.v1.OperationProgress.fromObject(e.progress,t+1)}if(null!=e.cancelTime){if(!d.isObject(e.cancelTime))throw TypeError(".google.spanner.admin.instance.v1.MoveInstanceMetadata.cancelTime: object expected");n.cancelTime=g.google.protobuf.Timestamp.fromObject(e.cancelTime,t+1)}return n},St.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.targetConfig="",o.progress=null,o.cancelTime=null),null!=e.targetConfig&&Object.hasOwnProperty.call(e,"targetConfig")&&(o.targetConfig=e.targetConfig),null!=e.progress&&Object.hasOwnProperty.call(e,"progress")&&(o.progress=g.google.spanner.admin.instance.v1.OperationProgress.toObject(e.progress,t,n+1)),null!=e.cancelTime&&Object.hasOwnProperty.call(e,"cancelTime")&&(o.cancelTime=g.google.protobuf.Timestamp.toObject(e.cancelTime,t,n+1)),o},St.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},St.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.admin.instance.v1.MoveInstanceMetadata"},St),t),a),r),i.executor=((n={}).v1=((e={}).SpannerExecutorProxy=(((It.prototype=Object.create(o.rpc.Service.prototype)).constructor=It).create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(It.prototype.executeActionAsync=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.executor.v1.SpannerAsyncActionRequest,g.google.spanner.executor.v1.SpannerAsyncActionResponse,t,n)},"name",{value:"ExecuteActionAsync"}),It),e.SpannerAsyncActionRequest=(Et.prototype.actionId=0,Et.prototype.action=null,Et.create=function(e){return new Et(e)},Et.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.actionId&&Object.hasOwnProperty.call(e,"actionId")&&t.uint32(8).int32(e.actionId),null!=e.action&&Object.hasOwnProperty.call(e,"action")&&g.google.spanner.executor.v1.SpannerAction.encode(e.action,t.uint32(18).fork(),n+1).ldelim(),t},Et.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Et.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.SpannerAsyncActionRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.actionId=e.int32();break;case 2:i.action=g.google.spanner.executor.v1.SpannerAction.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Et.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Et.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.actionId&&Object.hasOwnProperty.call(e,"actionId")&&!d.isInteger(e.actionId))return"actionId: integer expected";if(null!=e.action&&Object.hasOwnProperty.call(e,"action")){e=g.google.spanner.executor.v1.SpannerAction.verify(e.action,t+1);if(e)return"action."+e}return null},Et.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.SpannerAsyncActionRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.SpannerAsyncActionRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.SpannerAsyncActionRequest;if(null!=e.actionId&&(n.actionId=0|e.actionId),null!=e.action){if(!d.isObject(e.action))throw TypeError(".google.spanner.executor.v1.SpannerAsyncActionRequest.action: object expected");n.action=g.google.spanner.executor.v1.SpannerAction.fromObject(e.action,t+1)}return n},Et.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.actionId=0,o.action=null),null!=e.actionId&&Object.hasOwnProperty.call(e,"actionId")&&(o.actionId=e.actionId),null!=e.action&&Object.hasOwnProperty.call(e,"action")&&(o.action=g.google.spanner.executor.v1.SpannerAction.toObject(e.action,t,n+1)),o},Et.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Et.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.SpannerAsyncActionRequest"},Et),e.SpannerAsyncActionResponse=(Ct.prototype.actionId=0,Ct.prototype.outcome=null,Ct.create=function(e){return new Ct(e)},Ct.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.actionId&&Object.hasOwnProperty.call(e,"actionId")&&t.uint32(8).int32(e.actionId),null!=e.outcome&&Object.hasOwnProperty.call(e,"outcome")&&g.google.spanner.executor.v1.SpannerActionOutcome.encode(e.outcome,t.uint32(18).fork(),n+1).ldelim(),t},Ct.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ct.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.SpannerAsyncActionResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.actionId=e.int32();break;case 2:i.outcome=g.google.spanner.executor.v1.SpannerActionOutcome.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ct.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ct.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.actionId&&Object.hasOwnProperty.call(e,"actionId")&&!d.isInteger(e.actionId))return"actionId: integer expected";if(null!=e.outcome&&Object.hasOwnProperty.call(e,"outcome")){e=g.google.spanner.executor.v1.SpannerActionOutcome.verify(e.outcome,t+1);if(e)return"outcome."+e}return null},Ct.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.SpannerAsyncActionResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.SpannerAsyncActionResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.SpannerAsyncActionResponse;if(null!=e.actionId&&(n.actionId=0|e.actionId),null!=e.outcome){if(!d.isObject(e.outcome))throw TypeError(".google.spanner.executor.v1.SpannerAsyncActionResponse.outcome: object expected");n.outcome=g.google.spanner.executor.v1.SpannerActionOutcome.fromObject(e.outcome,t+1)}return n},Ct.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.actionId=0,o.outcome=null),null!=e.actionId&&Object.hasOwnProperty.call(e,"actionId")&&(o.actionId=e.actionId),null!=e.outcome&&Object.hasOwnProperty.call(e,"outcome")&&(o.outcome=g.google.spanner.executor.v1.SpannerActionOutcome.toObject(e.outcome,t,n+1)),o},Ct.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ct.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.SpannerAsyncActionResponse"},Ct),e.SpannerAction=(h.prototype.databasePath="",h.prototype.spannerOptions=null,h.prototype.start=null,h.prototype.finish=null,h.prototype.read=null,h.prototype.query=null,h.prototype.mutation=null,h.prototype.dml=null,h.prototype.batchDml=null,h.prototype.write=null,h.prototype.partitionedUpdate=null,h.prototype.admin=null,h.prototype.startBatchTxn=null,h.prototype.closeBatchTxn=null,h.prototype.generateDbPartitionsRead=null,h.prototype.generateDbPartitionsQuery=null,h.prototype.executePartition=null,h.prototype.executeChangeStreamQuery=null,h.prototype.queryCancellation=null,h.prototype.adaptMessage=null,Object.defineProperty(h.prototype,"action",{get:d.oneOfGetter(t=["start","finish","read","query","mutation","dml","batchDml","write","partitionedUpdate","admin","startBatchTxn","closeBatchTxn","generateDbPartitionsRead","generateDbPartitionsQuery","executePartition","executeChangeStreamQuery","queryCancellation","adaptMessage"]),set:d.oneOfSetter(t)}),h.create=function(e){return new h(e)},h.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.databasePath&&Object.hasOwnProperty.call(e,"databasePath")&&t.uint32(10).string(e.databasePath),null!=e.spannerOptions&&Object.hasOwnProperty.call(e,"spannerOptions")&&g.google.spanner.executor.v1.SpannerOptions.encode(e.spannerOptions,t.uint32(18).fork(),n+1).ldelim(),null!=e.start&&Object.hasOwnProperty.call(e,"start")&&g.google.spanner.executor.v1.StartTransactionAction.encode(e.start,t.uint32(82).fork(),n+1).ldelim(),null!=e.finish&&Object.hasOwnProperty.call(e,"finish")&&g.google.spanner.executor.v1.FinishTransactionAction.encode(e.finish,t.uint32(90).fork(),n+1).ldelim(),null!=e.read&&Object.hasOwnProperty.call(e,"read")&&g.google.spanner.executor.v1.ReadAction.encode(e.read,t.uint32(162).fork(),n+1).ldelim(),null!=e.query&&Object.hasOwnProperty.call(e,"query")&&g.google.spanner.executor.v1.QueryAction.encode(e.query,t.uint32(170).fork(),n+1).ldelim(),null!=e.mutation&&Object.hasOwnProperty.call(e,"mutation")&&g.google.spanner.executor.v1.MutationAction.encode(e.mutation,t.uint32(178).fork(),n+1).ldelim(),null!=e.dml&&Object.hasOwnProperty.call(e,"dml")&&g.google.spanner.executor.v1.DmlAction.encode(e.dml,t.uint32(186).fork(),n+1).ldelim(),null!=e.batchDml&&Object.hasOwnProperty.call(e,"batchDml")&&g.google.spanner.executor.v1.BatchDmlAction.encode(e.batchDml,t.uint32(194).fork(),n+1).ldelim(),null!=e.write&&Object.hasOwnProperty.call(e,"write")&&g.google.spanner.executor.v1.WriteMutationsAction.encode(e.write,t.uint32(202).fork(),n+1).ldelim(),null!=e.partitionedUpdate&&Object.hasOwnProperty.call(e,"partitionedUpdate")&&g.google.spanner.executor.v1.PartitionedUpdateAction.encode(e.partitionedUpdate,t.uint32(218).fork(),n+1).ldelim(),null!=e.admin&&Object.hasOwnProperty.call(e,"admin")&&g.google.spanner.executor.v1.AdminAction.encode(e.admin,t.uint32(242).fork(),n+1).ldelim(),null!=e.startBatchTxn&&Object.hasOwnProperty.call(e,"startBatchTxn")&&g.google.spanner.executor.v1.StartBatchTransactionAction.encode(e.startBatchTxn,t.uint32(322).fork(),n+1).ldelim(),null!=e.closeBatchTxn&&Object.hasOwnProperty.call(e,"closeBatchTxn")&&g.google.spanner.executor.v1.CloseBatchTransactionAction.encode(e.closeBatchTxn,t.uint32(330).fork(),n+1).ldelim(),null!=e.generateDbPartitionsRead&&Object.hasOwnProperty.call(e,"generateDbPartitionsRead")&&g.google.spanner.executor.v1.GenerateDbPartitionsForReadAction.encode(e.generateDbPartitionsRead,t.uint32(338).fork(),n+1).ldelim(),null!=e.generateDbPartitionsQuery&&Object.hasOwnProperty.call(e,"generateDbPartitionsQuery")&&g.google.spanner.executor.v1.GenerateDbPartitionsForQueryAction.encode(e.generateDbPartitionsQuery,t.uint32(346).fork(),n+1).ldelim(),null!=e.executePartition&&Object.hasOwnProperty.call(e,"executePartition")&&g.google.spanner.executor.v1.ExecutePartitionAction.encode(e.executePartition,t.uint32(354).fork(),n+1).ldelim(),null!=e.executeChangeStreamQuery&&Object.hasOwnProperty.call(e,"executeChangeStreamQuery")&&g.google.spanner.executor.v1.ExecuteChangeStreamQuery.encode(e.executeChangeStreamQuery,t.uint32(402).fork(),n+1).ldelim(),null!=e.queryCancellation&&Object.hasOwnProperty.call(e,"queryCancellation")&&g.google.spanner.executor.v1.QueryCancellationAction.encode(e.queryCancellation,t.uint32(410).fork(),n+1).ldelim(),null!=e.adaptMessage&&Object.hasOwnProperty.call(e,"adaptMessage")&&g.google.spanner.executor.v1.AdaptMessageAction.encode(e.adaptMessage,t.uint32(418).fork(),n+1).ldelim(),t},h.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},h.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.SpannerAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.databasePath=e.string();break;case 2:i.spannerOptions=g.google.spanner.executor.v1.SpannerOptions.decode(e,e.uint32(),void 0,o+1);break;case 10:i.start=g.google.spanner.executor.v1.StartTransactionAction.decode(e,e.uint32(),void 0,o+1);break;case 11:i.finish=g.google.spanner.executor.v1.FinishTransactionAction.decode(e,e.uint32(),void 0,o+1);break;case 20:i.read=g.google.spanner.executor.v1.ReadAction.decode(e,e.uint32(),void 0,o+1);break;case 21:i.query=g.google.spanner.executor.v1.QueryAction.decode(e,e.uint32(),void 0,o+1);break;case 22:i.mutation=g.google.spanner.executor.v1.MutationAction.decode(e,e.uint32(),void 0,o+1);break;case 23:i.dml=g.google.spanner.executor.v1.DmlAction.decode(e,e.uint32(),void 0,o+1);break;case 24:i.batchDml=g.google.spanner.executor.v1.BatchDmlAction.decode(e,e.uint32(),void 0,o+1);break;case 25:i.write=g.google.spanner.executor.v1.WriteMutationsAction.decode(e,e.uint32(),void 0,o+1);break;case 27:i.partitionedUpdate=g.google.spanner.executor.v1.PartitionedUpdateAction.decode(e,e.uint32(),void 0,o+1);break;case 30:i.admin=g.google.spanner.executor.v1.AdminAction.decode(e,e.uint32(),void 0,o+1);break;case 40:i.startBatchTxn=g.google.spanner.executor.v1.StartBatchTransactionAction.decode(e,e.uint32(),void 0,o+1);break;case 41:i.closeBatchTxn=g.google.spanner.executor.v1.CloseBatchTransactionAction.decode(e,e.uint32(),void 0,o+1);break;case 42:i.generateDbPartitionsRead=g.google.spanner.executor.v1.GenerateDbPartitionsForReadAction.decode(e,e.uint32(),void 0,o+1);break;case 43:i.generateDbPartitionsQuery=g.google.spanner.executor.v1.GenerateDbPartitionsForQueryAction.decode(e,e.uint32(),void 0,o+1);break;case 44:i.executePartition=g.google.spanner.executor.v1.ExecutePartitionAction.decode(e,e.uint32(),void 0,o+1);break;case 50:i.executeChangeStreamQuery=g.google.spanner.executor.v1.ExecuteChangeStreamQuery.decode(e,e.uint32(),void 0,o+1);break;case 51:i.queryCancellation=g.google.spanner.executor.v1.QueryCancellationAction.decode(e,e.uint32(),void 0,o+1);break;case 52:i.adaptMessage=g.google.spanner.executor.v1.AdaptMessageAction.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},h.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},h.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.databasePath&&Object.hasOwnProperty.call(e,"databasePath")&&!d.isString(e.databasePath))return"databasePath: string expected";if(null!=e.spannerOptions&&Object.hasOwnProperty.call(e,"spannerOptions")&&(n=g.google.spanner.executor.v1.SpannerOptions.verify(e.spannerOptions,t+1)))return"spannerOptions."+n;if(null!=e.start&&Object.hasOwnProperty.call(e,"start")&&(n=g.google.spanner.executor.v1.StartTransactionAction.verify(e.start,t+(o.action=1))))return"start."+n;if(null!=e.finish&&Object.hasOwnProperty.call(e,"finish")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.FinishTransactionAction.verify(e.finish,t+(o.action=1)))return"finish."+n}if(null!=e.read&&Object.hasOwnProperty.call(e,"read")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ReadAction.verify(e.read,t+(o.action=1)))return"read."+n}if(null!=e.query&&Object.hasOwnProperty.call(e,"query")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.QueryAction.verify(e.query,t+(o.action=1)))return"query."+n}if(null!=e.mutation&&Object.hasOwnProperty.call(e,"mutation")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.MutationAction.verify(e.mutation,t+(o.action=1)))return"mutation."+n}if(null!=e.dml&&Object.hasOwnProperty.call(e,"dml")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.DmlAction.verify(e.dml,t+(o.action=1)))return"dml."+n}if(null!=e.batchDml&&Object.hasOwnProperty.call(e,"batchDml")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.BatchDmlAction.verify(e.batchDml,t+(o.action=1)))return"batchDml."+n}if(null!=e.write&&Object.hasOwnProperty.call(e,"write")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.WriteMutationsAction.verify(e.write,t+(o.action=1)))return"write."+n}if(null!=e.partitionedUpdate&&Object.hasOwnProperty.call(e,"partitionedUpdate")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.PartitionedUpdateAction.verify(e.partitionedUpdate,t+(o.action=1)))return"partitionedUpdate."+n}if(null!=e.admin&&Object.hasOwnProperty.call(e,"admin")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.AdminAction.verify(e.admin,t+(o.action=1)))return"admin."+n}if(null!=e.startBatchTxn&&Object.hasOwnProperty.call(e,"startBatchTxn")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.StartBatchTransactionAction.verify(e.startBatchTxn,t+(o.action=1)))return"startBatchTxn."+n}if(null!=e.closeBatchTxn&&Object.hasOwnProperty.call(e,"closeBatchTxn")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.CloseBatchTransactionAction.verify(e.closeBatchTxn,t+(o.action=1)))return"closeBatchTxn."+n}if(null!=e.generateDbPartitionsRead&&Object.hasOwnProperty.call(e,"generateDbPartitionsRead")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.GenerateDbPartitionsForReadAction.verify(e.generateDbPartitionsRead,t+(o.action=1)))return"generateDbPartitionsRead."+n}if(null!=e.generateDbPartitionsQuery&&Object.hasOwnProperty.call(e,"generateDbPartitionsQuery")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.GenerateDbPartitionsForQueryAction.verify(e.generateDbPartitionsQuery,t+(o.action=1)))return"generateDbPartitionsQuery."+n}if(null!=e.executePartition&&Object.hasOwnProperty.call(e,"executePartition")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ExecutePartitionAction.verify(e.executePartition,t+(o.action=1)))return"executePartition."+n}if(null!=e.executeChangeStreamQuery&&Object.hasOwnProperty.call(e,"executeChangeStreamQuery")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ExecuteChangeStreamQuery.verify(e.executeChangeStreamQuery,t+(o.action=1)))return"executeChangeStreamQuery."+n}if(null!=e.queryCancellation&&Object.hasOwnProperty.call(e,"queryCancellation")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.QueryCancellationAction.verify(e.queryCancellation,t+(o.action=1)))return"queryCancellation."+n}if(null!=e.adaptMessage&&Object.hasOwnProperty.call(e,"adaptMessage")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.AdaptMessageAction.verify(e.adaptMessage,t+(o.action=1)))return"adaptMessage."+n}return null},h.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.SpannerAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.SpannerAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.SpannerAction;if(null!=e.databasePath&&(n.databasePath=String(e.databasePath)),null!=e.spannerOptions){if(!d.isObject(e.spannerOptions))throw TypeError(".google.spanner.executor.v1.SpannerAction.spannerOptions: object expected");n.spannerOptions=g.google.spanner.executor.v1.SpannerOptions.fromObject(e.spannerOptions,t+1)}if(null!=e.start){if(!d.isObject(e.start))throw TypeError(".google.spanner.executor.v1.SpannerAction.start: object expected");n.start=g.google.spanner.executor.v1.StartTransactionAction.fromObject(e.start,t+1)}if(null!=e.finish){if(!d.isObject(e.finish))throw TypeError(".google.spanner.executor.v1.SpannerAction.finish: object expected");n.finish=g.google.spanner.executor.v1.FinishTransactionAction.fromObject(e.finish,t+1)}if(null!=e.read){if(!d.isObject(e.read))throw TypeError(".google.spanner.executor.v1.SpannerAction.read: object expected");n.read=g.google.spanner.executor.v1.ReadAction.fromObject(e.read,t+1)}if(null!=e.query){if(!d.isObject(e.query))throw TypeError(".google.spanner.executor.v1.SpannerAction.query: object expected");n.query=g.google.spanner.executor.v1.QueryAction.fromObject(e.query,t+1)}if(null!=e.mutation){if(!d.isObject(e.mutation))throw TypeError(".google.spanner.executor.v1.SpannerAction.mutation: object expected");n.mutation=g.google.spanner.executor.v1.MutationAction.fromObject(e.mutation,t+1)}if(null!=e.dml){if(!d.isObject(e.dml))throw TypeError(".google.spanner.executor.v1.SpannerAction.dml: object expected");n.dml=g.google.spanner.executor.v1.DmlAction.fromObject(e.dml,t+1)}if(null!=e.batchDml){if(!d.isObject(e.batchDml))throw TypeError(".google.spanner.executor.v1.SpannerAction.batchDml: object expected");n.batchDml=g.google.spanner.executor.v1.BatchDmlAction.fromObject(e.batchDml,t+1)}if(null!=e.write){if(!d.isObject(e.write))throw TypeError(".google.spanner.executor.v1.SpannerAction.write: object expected");n.write=g.google.spanner.executor.v1.WriteMutationsAction.fromObject(e.write,t+1)}if(null!=e.partitionedUpdate){if(!d.isObject(e.partitionedUpdate))throw TypeError(".google.spanner.executor.v1.SpannerAction.partitionedUpdate: object expected");n.partitionedUpdate=g.google.spanner.executor.v1.PartitionedUpdateAction.fromObject(e.partitionedUpdate,t+1)}if(null!=e.admin){if(!d.isObject(e.admin))throw TypeError(".google.spanner.executor.v1.SpannerAction.admin: object expected");n.admin=g.google.spanner.executor.v1.AdminAction.fromObject(e.admin,t+1)}if(null!=e.startBatchTxn){if(!d.isObject(e.startBatchTxn))throw TypeError(".google.spanner.executor.v1.SpannerAction.startBatchTxn: object expected");n.startBatchTxn=g.google.spanner.executor.v1.StartBatchTransactionAction.fromObject(e.startBatchTxn,t+1)}if(null!=e.closeBatchTxn){if(!d.isObject(e.closeBatchTxn))throw TypeError(".google.spanner.executor.v1.SpannerAction.closeBatchTxn: object expected");n.closeBatchTxn=g.google.spanner.executor.v1.CloseBatchTransactionAction.fromObject(e.closeBatchTxn,t+1)}if(null!=e.generateDbPartitionsRead){if(!d.isObject(e.generateDbPartitionsRead))throw TypeError(".google.spanner.executor.v1.SpannerAction.generateDbPartitionsRead: object expected");n.generateDbPartitionsRead=g.google.spanner.executor.v1.GenerateDbPartitionsForReadAction.fromObject(e.generateDbPartitionsRead,t+1)}if(null!=e.generateDbPartitionsQuery){if(!d.isObject(e.generateDbPartitionsQuery))throw TypeError(".google.spanner.executor.v1.SpannerAction.generateDbPartitionsQuery: object expected");n.generateDbPartitionsQuery=g.google.spanner.executor.v1.GenerateDbPartitionsForQueryAction.fromObject(e.generateDbPartitionsQuery,t+1)}if(null!=e.executePartition){if(!d.isObject(e.executePartition))throw TypeError(".google.spanner.executor.v1.SpannerAction.executePartition: object expected");n.executePartition=g.google.spanner.executor.v1.ExecutePartitionAction.fromObject(e.executePartition,t+1)}if(null!=e.executeChangeStreamQuery){if(!d.isObject(e.executeChangeStreamQuery))throw TypeError(".google.spanner.executor.v1.SpannerAction.executeChangeStreamQuery: object expected");n.executeChangeStreamQuery=g.google.spanner.executor.v1.ExecuteChangeStreamQuery.fromObject(e.executeChangeStreamQuery,t+1)}if(null!=e.queryCancellation){if(!d.isObject(e.queryCancellation))throw TypeError(".google.spanner.executor.v1.SpannerAction.queryCancellation: object expected");n.queryCancellation=g.google.spanner.executor.v1.QueryCancellationAction.fromObject(e.queryCancellation,t+1)}if(null!=e.adaptMessage){if(!d.isObject(e.adaptMessage))throw TypeError(".google.spanner.executor.v1.SpannerAction.adaptMessage: object expected");n.adaptMessage=g.google.spanner.executor.v1.AdaptMessageAction.fromObject(e.adaptMessage,t+1)}return n},h.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.databasePath="",o.spannerOptions=null),null!=e.databasePath&&Object.hasOwnProperty.call(e,"databasePath")&&(o.databasePath=e.databasePath),null!=e.spannerOptions&&Object.hasOwnProperty.call(e,"spannerOptions")&&(o.spannerOptions=g.google.spanner.executor.v1.SpannerOptions.toObject(e.spannerOptions,t,n+1)),null!=e.start&&Object.hasOwnProperty.call(e,"start")&&(o.start=g.google.spanner.executor.v1.StartTransactionAction.toObject(e.start,t,n+1),t.oneofs)&&(o.action="start"),null!=e.finish&&Object.hasOwnProperty.call(e,"finish")&&(o.finish=g.google.spanner.executor.v1.FinishTransactionAction.toObject(e.finish,t,n+1),t.oneofs)&&(o.action="finish"),null!=e.read&&Object.hasOwnProperty.call(e,"read")&&(o.read=g.google.spanner.executor.v1.ReadAction.toObject(e.read,t,n+1),t.oneofs)&&(o.action="read"),null!=e.query&&Object.hasOwnProperty.call(e,"query")&&(o.query=g.google.spanner.executor.v1.QueryAction.toObject(e.query,t,n+1),t.oneofs)&&(o.action="query"),null!=e.mutation&&Object.hasOwnProperty.call(e,"mutation")&&(o.mutation=g.google.spanner.executor.v1.MutationAction.toObject(e.mutation,t,n+1),t.oneofs)&&(o.action="mutation"),null!=e.dml&&Object.hasOwnProperty.call(e,"dml")&&(o.dml=g.google.spanner.executor.v1.DmlAction.toObject(e.dml,t,n+1),t.oneofs)&&(o.action="dml"),null!=e.batchDml&&Object.hasOwnProperty.call(e,"batchDml")&&(o.batchDml=g.google.spanner.executor.v1.BatchDmlAction.toObject(e.batchDml,t,n+1),t.oneofs)&&(o.action="batchDml"),null!=e.write&&Object.hasOwnProperty.call(e,"write")&&(o.write=g.google.spanner.executor.v1.WriteMutationsAction.toObject(e.write,t,n+1),t.oneofs)&&(o.action="write"),null!=e.partitionedUpdate&&Object.hasOwnProperty.call(e,"partitionedUpdate")&&(o.partitionedUpdate=g.google.spanner.executor.v1.PartitionedUpdateAction.toObject(e.partitionedUpdate,t,n+1),t.oneofs)&&(o.action="partitionedUpdate"),null!=e.admin&&Object.hasOwnProperty.call(e,"admin")&&(o.admin=g.google.spanner.executor.v1.AdminAction.toObject(e.admin,t,n+1),t.oneofs)&&(o.action="admin"),null!=e.startBatchTxn&&Object.hasOwnProperty.call(e,"startBatchTxn")&&(o.startBatchTxn=g.google.spanner.executor.v1.StartBatchTransactionAction.toObject(e.startBatchTxn,t,n+1),t.oneofs)&&(o.action="startBatchTxn"),null!=e.closeBatchTxn&&Object.hasOwnProperty.call(e,"closeBatchTxn")&&(o.closeBatchTxn=g.google.spanner.executor.v1.CloseBatchTransactionAction.toObject(e.closeBatchTxn,t,n+1),t.oneofs)&&(o.action="closeBatchTxn"),null!=e.generateDbPartitionsRead&&Object.hasOwnProperty.call(e,"generateDbPartitionsRead")&&(o.generateDbPartitionsRead=g.google.spanner.executor.v1.GenerateDbPartitionsForReadAction.toObject(e.generateDbPartitionsRead,t,n+1),t.oneofs)&&(o.action="generateDbPartitionsRead"),null!=e.generateDbPartitionsQuery&&Object.hasOwnProperty.call(e,"generateDbPartitionsQuery")&&(o.generateDbPartitionsQuery=g.google.spanner.executor.v1.GenerateDbPartitionsForQueryAction.toObject(e.generateDbPartitionsQuery,t,n+1),t.oneofs)&&(o.action="generateDbPartitionsQuery"),null!=e.executePartition&&Object.hasOwnProperty.call(e,"executePartition")&&(o.executePartition=g.google.spanner.executor.v1.ExecutePartitionAction.toObject(e.executePartition,t,n+1),t.oneofs)&&(o.action="executePartition"),null!=e.executeChangeStreamQuery&&Object.hasOwnProperty.call(e,"executeChangeStreamQuery")&&(o.executeChangeStreamQuery=g.google.spanner.executor.v1.ExecuteChangeStreamQuery.toObject(e.executeChangeStreamQuery,t,n+1),t.oneofs)&&(o.action="executeChangeStreamQuery"),null!=e.queryCancellation&&Object.hasOwnProperty.call(e,"queryCancellation")&&(o.queryCancellation=g.google.spanner.executor.v1.QueryCancellationAction.toObject(e.queryCancellation,t,n+1),t.oneofs)&&(o.action="queryCancellation"),null!=e.adaptMessage&&Object.hasOwnProperty.call(e,"adaptMessage")&&(o.adaptMessage=g.google.spanner.executor.v1.AdaptMessageAction.toObject(e.adaptMessage,t,n+1),t.oneofs)&&(o.action="adaptMessage"),o},h.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},h.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.SpannerAction"},h),e.ReadAction=(Rt.prototype.table="",Rt.prototype.index=null,Rt.prototype.column=d.emptyArray,Rt.prototype.keys=null,Rt.prototype.limit=0,Object.defineProperty(Rt.prototype,"_index",{get:d.oneOfGetter(t=["index"]),set:d.oneOfSetter(t)}),Rt.create=function(e){return new Rt(e)},Rt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(10).string(e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&t.uint32(18).string(e.index),null!=e.column&&e.column.length)for(var o=0;o<e.column.length;++o)t.uint32(26).string(e.column[o]);return null!=e.keys&&Object.hasOwnProperty.call(e,"keys")&&g.google.spanner.executor.v1.KeySet.encode(e.keys,t.uint32(34).fork(),n+1).ldelim(),null!=e.limit&&Object.hasOwnProperty.call(e,"limit")&&t.uint32(40).int32(e.limit),t},Rt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Rt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ReadAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.table=e.string();break;case 2:i.index=e.string();break;case 3:i.column&&i.column.length||(i.column=[]),i.column.push(e.string());break;case 4:i.keys=g.google.spanner.executor.v1.KeySet.decode(e,e.uint32(),void 0,o+1);break;case 5:i.limit=e.int32();break;default:e.skipType(7&a,o)}}return i},Rt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Rt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";if(null!=e.index&&Object.hasOwnProperty.call(e,"index")&&!d.isString(e.index))return"index: string expected";if(null!=e.column&&Object.hasOwnProperty.call(e,"column")){if(!Array.isArray(e.column))return"column: array expected";for(var n=0;n<e.column.length;++n)if(!d.isString(e.column[n]))return"column: string[] expected"}if(null!=e.keys&&Object.hasOwnProperty.call(e,"keys")){t=g.google.spanner.executor.v1.KeySet.verify(e.keys,t+1);if(t)return"keys."+t}return null!=e.limit&&Object.hasOwnProperty.call(e,"limit")&&!d.isInteger(e.limit)?"limit: integer expected":null},Rt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ReadAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ReadAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ReadAction;if(null!=e.table&&(n.table=String(e.table)),null!=e.index&&(n.index=String(e.index)),e.column){if(!Array.isArray(e.column))throw TypeError(".google.spanner.executor.v1.ReadAction.column: array expected");n.column=[];for(var o=0;o<e.column.length;++o)n.column[o]=String(e.column[o])}if(null!=e.keys){if(!d.isObject(e.keys))throw TypeError(".google.spanner.executor.v1.ReadAction.keys: object expected");n.keys=g.google.spanner.executor.v1.KeySet.fromObject(e.keys,t+1)}return null!=e.limit&&(n.limit=0|e.limit),n},Rt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.column=[]),t.defaults&&(o.table="",o.keys=null,o.limit=0),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(o.table=e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&(o.index=e.index,t.oneofs)&&(o._index="index"),e.column&&e.column.length){o.column=[];for(var r=0;r<e.column.length;++r)o.column[r]=e.column[r]}return null!=e.keys&&Object.hasOwnProperty.call(e,"keys")&&(o.keys=g.google.spanner.executor.v1.KeySet.toObject(e.keys,t,n+1)),null!=e.limit&&Object.hasOwnProperty.call(e,"limit")&&(o.limit=e.limit),o},Rt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Rt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ReadAction"},Rt),e.QueryAction=(Dt.prototype.sql="",Dt.prototype.params=d.emptyArray,Dt.prototype.secureContext=d.emptyObject,Dt.create=function(e){return new Dt(e)},Dt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&t.uint32(10).string(e.sql),null!=e.params&&e.params.length)for(var o=0;o<e.params.length;++o)g.google.spanner.executor.v1.QueryAction.Parameter.encode(e.params[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.secureContext&&Object.hasOwnProperty.call(e,"secureContext"))for(var r=Object.keys(e.secureContext),o=0;o<r.length;++o)t.uint32(26).fork().uint32(10).string(r[o]),g.google.spanner.executor.v1.Value.encode(e.secureContext[r[o]],t.uint32(18).fork(),n+1).ldelim().ldelim();return t},Dt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Dt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.QueryAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.sql=e.string();break;case 2:i.params&&i.params.length||(i.params=[]),i.params.push(g.google.spanner.executor.v1.QueryAction.Parameter.decode(e,e.uint32(),void 0,o+1));break;case 3:i.secureContext===d.emptyObject&&(i.secureContext={});for(var s=e.uint32()+e.pos,c="",l=null;e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=g.google.spanner.executor.v1.Value.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.secureContext,c),i.secureContext[c]=l;break;default:e.skipType(7&a,o)}}return i},Dt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Dt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&!d.isString(e.sql))return"sql: string expected";if(null!=e.params&&Object.hasOwnProperty.call(e,"params")){if(!Array.isArray(e.params))return"params: array expected";for(var n=0;n<e.params.length;++n)if(o=g.google.spanner.executor.v1.QueryAction.Parameter.verify(e.params[n],t+1))return"params."+o}if(null!=e.secureContext&&Object.hasOwnProperty.call(e,"secureContext")){if(!d.isObject(e.secureContext))return"secureContext: object expected";for(var o,r=Object.keys(e.secureContext),n=0;n<r.length;++n)if(o=g.google.spanner.executor.v1.Value.verify(e.secureContext[r[n]],t+1))return"secureContext."+o}return null},Dt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.QueryAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.QueryAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.QueryAction;if(null!=e.sql&&(n.sql=String(e.sql)),e.params){if(!Array.isArray(e.params))throw TypeError(".google.spanner.executor.v1.QueryAction.params: array expected");n.params=[];for(var o=0;o<e.params.length;++o){if(!d.isObject(e.params[o]))throw TypeError(".google.spanner.executor.v1.QueryAction.params: object expected");n.params[o]=g.google.spanner.executor.v1.QueryAction.Parameter.fromObject(e.params[o],t+1)}}if(e.secureContext){if(!d.isObject(e.secureContext))throw TypeError(".google.spanner.executor.v1.QueryAction.secureContext: object expected");n.secureContext={};for(var r=Object.keys(e.secureContext),o=0;o<r.length;++o){if("__proto__"===r[o]&&d.makeProp(n.secureContext,r[o]),!d.isObject(e.secureContext[r[o]]))throw TypeError(".google.spanner.executor.v1.QueryAction.secureContext: object expected");n.secureContext[r[o]]=g.google.spanner.executor.v1.Value.fromObject(e.secureContext[r[o]],t+1)}}return n},Dt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.params=[]),(t.objects||t.defaults)&&(r.secureContext={}),t.defaults&&(r.sql=""),null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&(r.sql=e.sql),e.params&&e.params.length){r.params=[];for(var i=0;i<e.params.length;++i)r.params[i]=g.google.spanner.executor.v1.QueryAction.Parameter.toObject(e.params[i],t,n+1)}if(e.secureContext&&(o=Object.keys(e.secureContext)).length){r.secureContext={};for(i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.secureContext,o[i]),r.secureContext[o[i]]=g.google.spanner.executor.v1.Value.toObject(e.secureContext[o[i]],t,n+1)}return r},Dt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Dt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.QueryAction"},Dt.Parameter=(Lt.prototype.name="",Lt.prototype.type=null,Lt.prototype.value=null,Lt.create=function(e){return new Lt(e)},Lt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&g.google.spanner.v1.Type.encode(e.type,t.uint32(18).fork(),n+1).ldelim(),null!=e.value&&Object.hasOwnProperty.call(e,"value")&&g.google.spanner.executor.v1.Value.encode(e.value,t.uint32(26).fork(),n+1).ldelim(),t},Lt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Lt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.QueryAction.Parameter;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.type=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;case 3:i.value=g.google.spanner.executor.v1.Value.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Lt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Lt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";var n;if(null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(n=g.google.spanner.v1.Type.verify(e.type,t+1)))return"type."+n;if(null!=e.value&&Object.hasOwnProperty.call(e,"value")&&(n=g.google.spanner.executor.v1.Value.verify(e.value,t+1)))return"value."+n;return null},Lt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.QueryAction.Parameter)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.QueryAction.Parameter: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.QueryAction.Parameter;if(null!=e.name&&(n.name=String(e.name)),null!=e.type){if(!d.isObject(e.type))throw TypeError(".google.spanner.executor.v1.QueryAction.Parameter.type: object expected");n.type=g.google.spanner.v1.Type.fromObject(e.type,t+1)}if(null!=e.value){if(!d.isObject(e.value))throw TypeError(".google.spanner.executor.v1.QueryAction.Parameter.value: object expected");n.value=g.google.spanner.executor.v1.Value.fromObject(e.value,t+1)}return n},Lt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.type=null,o.value=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(o.type=g.google.spanner.v1.Type.toObject(e.type,t,n+1)),null!=e.value&&Object.hasOwnProperty.call(e,"value")&&(o.value=g.google.spanner.executor.v1.Value.toObject(e.value,t,n+1)),o},Lt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Lt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.QueryAction.Parameter"},Lt),Dt),e.DmlAction=(At.prototype.update=null,At.prototype.autocommitIfSupported=null,At.prototype.lastStatement=null,Object.defineProperty(At.prototype,"_autocommitIfSupported",{get:d.oneOfGetter(t=["autocommitIfSupported"]),set:d.oneOfSetter(t)}),Object.defineProperty(At.prototype,"_lastStatement",{get:d.oneOfGetter(t=["lastStatement"]),set:d.oneOfSetter(t)}),At.create=function(e){return new At(e)},At.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.update&&Object.hasOwnProperty.call(e,"update")&&g.google.spanner.executor.v1.QueryAction.encode(e.update,t.uint32(10).fork(),n+1).ldelim(),null!=e.autocommitIfSupported&&Object.hasOwnProperty.call(e,"autocommitIfSupported")&&t.uint32(16).bool(e.autocommitIfSupported),null!=e.lastStatement&&Object.hasOwnProperty.call(e,"lastStatement")&&t.uint32(24).bool(e.lastStatement),t},At.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},At.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.DmlAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.update=g.google.spanner.executor.v1.QueryAction.decode(e,e.uint32(),void 0,o+1);break;case 2:i.autocommitIfSupported=e.bool();break;case 3:i.lastStatement=e.bool();break;default:e.skipType(7&a,o)}}return i},At.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},At.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.update&&Object.hasOwnProperty.call(e,"update")){t=g.google.spanner.executor.v1.QueryAction.verify(e.update,t+1);if(t)return"update."+t}return null!=e.autocommitIfSupported&&Object.hasOwnProperty.call(e,"autocommitIfSupported")&&"boolean"!=typeof e.autocommitIfSupported?"autocommitIfSupported: boolean expected":null!=e.lastStatement&&Object.hasOwnProperty.call(e,"lastStatement")&&"boolean"!=typeof e.lastStatement?"lastStatement: boolean expected":null},At.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.DmlAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.DmlAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.DmlAction;if(null!=e.update){if(!d.isObject(e.update))throw TypeError(".google.spanner.executor.v1.DmlAction.update: object expected");n.update=g.google.spanner.executor.v1.QueryAction.fromObject(e.update,t+1)}return null!=e.autocommitIfSupported&&(n.autocommitIfSupported=Boolean(e.autocommitIfSupported)),null!=e.lastStatement&&(n.lastStatement=Boolean(e.lastStatement)),n},At.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.update=null),null!=e.update&&Object.hasOwnProperty.call(e,"update")&&(o.update=g.google.spanner.executor.v1.QueryAction.toObject(e.update,t,n+1)),null!=e.autocommitIfSupported&&Object.hasOwnProperty.call(e,"autocommitIfSupported")&&(o.autocommitIfSupported=e.autocommitIfSupported,t.oneofs)&&(o._autocommitIfSupported="autocommitIfSupported"),null!=e.lastStatement&&Object.hasOwnProperty.call(e,"lastStatement")&&(o.lastStatement=e.lastStatement,t.oneofs)&&(o._lastStatement="lastStatement"),o},At.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},At.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.DmlAction"},At),e.BatchDmlAction=(Nt.prototype.updates=d.emptyArray,Nt.prototype.lastStatements=null,Object.defineProperty(Nt.prototype,"_lastStatements",{get:d.oneOfGetter(t=["lastStatements"]),set:d.oneOfSetter(t)}),Nt.create=function(e){return new Nt(e)},Nt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.updates&&e.updates.length)for(var o=0;o<e.updates.length;++o)g.google.spanner.executor.v1.QueryAction.encode(e.updates[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.lastStatements&&Object.hasOwnProperty.call(e,"lastStatements")&&t.uint32(16).bool(e.lastStatements),t},Nt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Nt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.BatchDmlAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.updates&&i.updates.length||(i.updates=[]),i.updates.push(g.google.spanner.executor.v1.QueryAction.decode(e,e.uint32(),void 0,o+1));break;case 2:i.lastStatements=e.bool();break;default:e.skipType(7&a,o)}}return i},Nt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Nt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.updates&&Object.hasOwnProperty.call(e,"updates")){if(!Array.isArray(e.updates))return"updates: array expected";for(var n=0;n<e.updates.length;++n){var o=g.google.spanner.executor.v1.QueryAction.verify(e.updates[n],t+1);if(o)return"updates."+o}}return null!=e.lastStatements&&Object.hasOwnProperty.call(e,"lastStatements")&&"boolean"!=typeof e.lastStatements?"lastStatements: boolean expected":null},Nt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.BatchDmlAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.BatchDmlAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.BatchDmlAction;if(e.updates){if(!Array.isArray(e.updates))throw TypeError(".google.spanner.executor.v1.BatchDmlAction.updates: array expected");n.updates=[];for(var o=0;o<e.updates.length;++o){if(!d.isObject(e.updates[o]))throw TypeError(".google.spanner.executor.v1.BatchDmlAction.updates: object expected");n.updates[o]=g.google.spanner.executor.v1.QueryAction.fromObject(e.updates[o],t+1)}}return null!=e.lastStatements&&(n.lastStatements=Boolean(e.lastStatements)),n},Nt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.updates=[]),e.updates&&e.updates.length){o.updates=[];for(var r=0;r<e.updates.length;++r)o.updates[r]=g.google.spanner.executor.v1.QueryAction.toObject(e.updates[r],t,n+1)}return null!=e.lastStatements&&Object.hasOwnProperty.call(e,"lastStatements")&&(o.lastStatements=e.lastStatements,t.oneofs)&&(o._lastStatements="lastStatements"),o},Nt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Nt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.BatchDmlAction"},Nt),e.Value=(O.prototype.isNull=null,O.prototype.intValue=null,O.prototype.boolValue=null,O.prototype.doubleValue=null,O.prototype.bytesValue=null,O.prototype.stringValue=null,O.prototype.structValue=null,O.prototype.timestampValue=null,O.prototype.dateDaysValue=null,O.prototype.isCommitTimestamp=null,O.prototype.arrayValue=null,O.prototype.arrayType=null,Object.defineProperty(O.prototype,"valueType",{get:d.oneOfGetter(t=["isNull","intValue","boolValue","doubleValue","bytesValue","stringValue","structValue","timestampValue","dateDaysValue","isCommitTimestamp","arrayValue"]),set:d.oneOfSetter(t)}),Object.defineProperty(O.prototype,"_arrayType",{get:d.oneOfGetter(t=["arrayType"]),set:d.oneOfSetter(t)}),O.create=function(e){return new O(e)},O.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.isNull&&Object.hasOwnProperty.call(e,"isNull")&&t.uint32(8).bool(e.isNull),null!=e.intValue&&Object.hasOwnProperty.call(e,"intValue")&&t.uint32(16).int64(e.intValue),null!=e.boolValue&&Object.hasOwnProperty.call(e,"boolValue")&&t.uint32(24).bool(e.boolValue),null!=e.doubleValue&&Object.hasOwnProperty.call(e,"doubleValue")&&t.uint32(33).double(e.doubleValue),null!=e.bytesValue&&Object.hasOwnProperty.call(e,"bytesValue")&&t.uint32(42).bytes(e.bytesValue),null!=e.stringValue&&Object.hasOwnProperty.call(e,"stringValue")&&t.uint32(50).string(e.stringValue),null!=e.structValue&&Object.hasOwnProperty.call(e,"structValue")&&g.google.spanner.executor.v1.ValueList.encode(e.structValue,t.uint32(58).fork(),n+1).ldelim(),null!=e.timestampValue&&Object.hasOwnProperty.call(e,"timestampValue")&&g.google.protobuf.Timestamp.encode(e.timestampValue,t.uint32(66).fork(),n+1).ldelim(),null!=e.dateDaysValue&&Object.hasOwnProperty.call(e,"dateDaysValue")&&t.uint32(72).int32(e.dateDaysValue),null!=e.isCommitTimestamp&&Object.hasOwnProperty.call(e,"isCommitTimestamp")&&t.uint32(80).bool(e.isCommitTimestamp),null!=e.arrayValue&&Object.hasOwnProperty.call(e,"arrayValue")&&g.google.spanner.executor.v1.ValueList.encode(e.arrayValue,t.uint32(90).fork(),n+1).ldelim(),null!=e.arrayType&&Object.hasOwnProperty.call(e,"arrayType")&&g.google.spanner.v1.Type.encode(e.arrayType,t.uint32(98).fork(),n+1).ldelim(),t},O.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},O.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.Value;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.isNull=e.bool();break;case 2:i.intValue=e.int64();break;case 3:i.boolValue=e.bool();break;case 4:i.doubleValue=e.double();break;case 5:i.bytesValue=e.bytes();break;case 6:i.stringValue=e.string();break;case 7:i.structValue=g.google.spanner.executor.v1.ValueList.decode(e,e.uint32(),void 0,o+1);break;case 8:i.timestampValue=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 9:i.dateDaysValue=e.int32();break;case 10:i.isCommitTimestamp=e.bool();break;case 11:i.arrayValue=g.google.spanner.executor.v1.ValueList.decode(e,e.uint32(),void 0,o+1);break;case 12:i.arrayType=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},O.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},O.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.isNull&&Object.hasOwnProperty.call(e,"isNull")&&(o.valueType=1,"boolean"!=typeof e.isNull))return"isNull: boolean expected";if(null!=e.intValue&&Object.hasOwnProperty.call(e,"intValue")){if(1===o.valueType)return"valueType: multiple values";if(o.valueType=1,!(d.isInteger(e.intValue)||e.intValue&&d.isInteger(e.intValue.low)&&d.isInteger(e.intValue.high)))return"intValue: integer|Long expected"}if(null!=e.boolValue&&Object.hasOwnProperty.call(e,"boolValue")){if(1===o.valueType)return"valueType: multiple values";if(o.valueType=1,"boolean"!=typeof e.boolValue)return"boolValue: boolean expected"}if(null!=e.doubleValue&&Object.hasOwnProperty.call(e,"doubleValue")){if(1===o.valueType)return"valueType: multiple values";if(o.valueType=1,"number"!=typeof e.doubleValue)return"doubleValue: number expected"}if(null!=e.bytesValue&&Object.hasOwnProperty.call(e,"bytesValue")){if(1===o.valueType)return"valueType: multiple values";if(o.valueType=1,!(e.bytesValue&&"number"==typeof e.bytesValue.length||d.isString(e.bytesValue)))return"bytesValue: buffer expected"}if(null!=e.stringValue&&Object.hasOwnProperty.call(e,"stringValue")){if(1===o.valueType)return"valueType: multiple values";if(o.valueType=1,!d.isString(e.stringValue))return"stringValue: string expected"}if(null!=e.structValue&&Object.hasOwnProperty.call(e,"structValue")){if(1===o.valueType)return"valueType: multiple values";if(n=g.google.spanner.executor.v1.ValueList.verify(e.structValue,t+(o.valueType=1)))return"structValue."+n}if(null!=e.timestampValue&&Object.hasOwnProperty.call(e,"timestampValue")){if(1===o.valueType)return"valueType: multiple values";if(n=g.google.protobuf.Timestamp.verify(e.timestampValue,t+(o.valueType=1)))return"timestampValue."+n}if(null!=e.dateDaysValue&&Object.hasOwnProperty.call(e,"dateDaysValue")){if(1===o.valueType)return"valueType: multiple values";if(o.valueType=1,!d.isInteger(e.dateDaysValue))return"dateDaysValue: integer expected"}if(null!=e.isCommitTimestamp&&Object.hasOwnProperty.call(e,"isCommitTimestamp")){if(1===o.valueType)return"valueType: multiple values";if(o.valueType=1,"boolean"!=typeof e.isCommitTimestamp)return"isCommitTimestamp: boolean expected"}if(null!=e.arrayValue&&Object.hasOwnProperty.call(e,"arrayValue")){if(1===o.valueType)return"valueType: multiple values";if(n=g.google.spanner.executor.v1.ValueList.verify(e.arrayValue,t+(o.valueType=1)))return"arrayValue."+n}if(null!=e.arrayType&&Object.hasOwnProperty.call(e,"arrayType")&&(n=g.google.spanner.v1.Type.verify(e.arrayType,t+(o._arrayType=1))))return"arrayType."+n;return null},O.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.Value)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.Value: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.Value;if(null!=e.isNull&&(n.isNull=Boolean(e.isNull)),null!=e.intValue&&(d.Long?n.intValue=d.Long.fromValue(e.intValue,!1):"string"==typeof e.intValue?n.intValue=parseInt(e.intValue,10):"number"==typeof e.intValue?n.intValue=e.intValue:"object"==typeof e.intValue&&(n.intValue=new d.LongBits(e.intValue.low>>>0,e.intValue.high>>>0).toNumber())),null!=e.boolValue&&(n.boolValue=Boolean(e.boolValue)),null!=e.doubleValue&&(n.doubleValue=Number(e.doubleValue)),null!=e.bytesValue&&("string"==typeof e.bytesValue?d.base64.decode(e.bytesValue,n.bytesValue=d.newBuffer(d.base64.length(e.bytesValue)),0):0<=e.bytesValue.length&&(n.bytesValue=e.bytesValue)),null!=e.stringValue&&(n.stringValue=String(e.stringValue)),null!=e.structValue){if(!d.isObject(e.structValue))throw TypeError(".google.spanner.executor.v1.Value.structValue: object expected");n.structValue=g.google.spanner.executor.v1.ValueList.fromObject(e.structValue,t+1)}if(null!=e.timestampValue){if(!d.isObject(e.timestampValue))throw TypeError(".google.spanner.executor.v1.Value.timestampValue: object expected");n.timestampValue=g.google.protobuf.Timestamp.fromObject(e.timestampValue,t+1)}if(null!=e.dateDaysValue&&(n.dateDaysValue=0|e.dateDaysValue),null!=e.isCommitTimestamp&&(n.isCommitTimestamp=Boolean(e.isCommitTimestamp)),null!=e.arrayValue){if(!d.isObject(e.arrayValue))throw TypeError(".google.spanner.executor.v1.Value.arrayValue: object expected");n.arrayValue=g.google.spanner.executor.v1.ValueList.fromObject(e.arrayValue,t+1)}if(null!=e.arrayType){if(!d.isObject(e.arrayType))throw TypeError(".google.spanner.executor.v1.Value.arrayType: object expected");n.arrayType=g.google.spanner.v1.Type.fromObject(e.arrayType,t+1)}return n},O.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.isNull&&Object.hasOwnProperty.call(e,"isNull")&&(o.isNull=e.isNull,t.oneofs)&&(o.valueType="isNull"),null!=e.intValue&&Object.hasOwnProperty.call(e,"intValue")&&("undefined"!=typeof BigInt&&t.longs===BigInt?o.intValue="number"==typeof e.intValue?BigInt(e.intValue):d.Long.fromBits(e.intValue.low>>>0,e.intValue.high>>>0,!1).toBigInt():"number"==typeof e.intValue?o.intValue=t.longs===String?String(e.intValue):e.intValue:o.intValue=t.longs===String?d.Long.prototype.toString.call(e.intValue):t.longs===Number?new d.LongBits(e.intValue.low>>>0,e.intValue.high>>>0).toNumber():e.intValue,t.oneofs)&&(o.valueType="intValue"),null!=e.boolValue&&Object.hasOwnProperty.call(e,"boolValue")&&(o.boolValue=e.boolValue,t.oneofs)&&(o.valueType="boolValue"),null!=e.doubleValue&&Object.hasOwnProperty.call(e,"doubleValue")&&(o.doubleValue=t.json&&!isFinite(e.doubleValue)?String(e.doubleValue):e.doubleValue,t.oneofs)&&(o.valueType="doubleValue"),null!=e.bytesValue&&Object.hasOwnProperty.call(e,"bytesValue")&&(o.bytesValue=t.bytes===String?d.base64.encode(e.bytesValue,0,e.bytesValue.length):t.bytes===Array?Array.prototype.slice.call(e.bytesValue):e.bytesValue,t.oneofs)&&(o.valueType="bytesValue"),null!=e.stringValue&&Object.hasOwnProperty.call(e,"stringValue")&&(o.stringValue=e.stringValue,t.oneofs)&&(o.valueType="stringValue"),null!=e.structValue&&Object.hasOwnProperty.call(e,"structValue")&&(o.structValue=g.google.spanner.executor.v1.ValueList.toObject(e.structValue,t,n+1),t.oneofs)&&(o.valueType="structValue"),null!=e.timestampValue&&Object.hasOwnProperty.call(e,"timestampValue")&&(o.timestampValue=g.google.protobuf.Timestamp.toObject(e.timestampValue,t,n+1),t.oneofs)&&(o.valueType="timestampValue"),null!=e.dateDaysValue&&Object.hasOwnProperty.call(e,"dateDaysValue")&&(o.dateDaysValue=e.dateDaysValue,t.oneofs)&&(o.valueType="dateDaysValue"),null!=e.isCommitTimestamp&&Object.hasOwnProperty.call(e,"isCommitTimestamp")&&(o.isCommitTimestamp=e.isCommitTimestamp,t.oneofs)&&(o.valueType="isCommitTimestamp"),null!=e.arrayValue&&Object.hasOwnProperty.call(e,"arrayValue")&&(o.arrayValue=g.google.spanner.executor.v1.ValueList.toObject(e.arrayValue,t,n+1),t.oneofs)&&(o.valueType="arrayValue"),null!=e.arrayType&&Object.hasOwnProperty.call(e,"arrayType")&&(o.arrayType=g.google.spanner.v1.Type.toObject(e.arrayType,t,n+1),t.oneofs)&&(o._arrayType="arrayType"),o},O.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},O.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.Value"},O),e.KeyRange=(_t.prototype.start=null,_t.prototype.limit=null,_t.prototype.type=null,Object.defineProperty(_t.prototype,"_type",{get:d.oneOfGetter(t=["type"]),set:d.oneOfSetter(t)}),_t.create=function(e){return new _t(e)},_t.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.start&&Object.hasOwnProperty.call(e,"start")&&g.google.spanner.executor.v1.ValueList.encode(e.start,t.uint32(10).fork(),n+1).ldelim(),null!=e.limit&&Object.hasOwnProperty.call(e,"limit")&&g.google.spanner.executor.v1.ValueList.encode(e.limit,t.uint32(18).fork(),n+1).ldelim(),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&t.uint32(24).int32(e.type),t},_t.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},_t.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.KeyRange;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.start=g.google.spanner.executor.v1.ValueList.decode(e,e.uint32(),void 0,o+1);break;case 2:i.limit=g.google.spanner.executor.v1.ValueList.decode(e,e.uint32(),void 0,o+1);break;case 3:i.type=e.int32();break;default:e.skipType(7&a,o)}}return i},_t.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},_t.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.start&&Object.hasOwnProperty.call(e,"start")&&(n=g.google.spanner.executor.v1.ValueList.verify(e.start,t+1)))return"start."+n;if(null!=e.limit&&Object.hasOwnProperty.call(e,"limit")&&(n=g.google.spanner.executor.v1.ValueList.verify(e.limit,t+1)))return"limit."+n;if(null!=e.type&&Object.hasOwnProperty.call(e,"type"))switch(e.type){default:return"type: enum value expected";case 0:case 1:case 2:case 3:case 4:}return null},_t.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.KeyRange)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.KeyRange: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.KeyRange;if(null!=e.start){if(!d.isObject(e.start))throw TypeError(".google.spanner.executor.v1.KeyRange.start: object expected");n.start=g.google.spanner.executor.v1.ValueList.fromObject(e.start,t+1)}if(null!=e.limit){if(!d.isObject(e.limit))throw TypeError(".google.spanner.executor.v1.KeyRange.limit: object expected");n.limit=g.google.spanner.executor.v1.ValueList.fromObject(e.limit,t+1)}switch(e.type){default:"number"==typeof e.type&&(n.type=e.type);break;case"TYPE_UNSPECIFIED":case 0:n.type=0;break;case"CLOSED_CLOSED":case 1:n.type=1;break;case"CLOSED_OPEN":case 2:n.type=2;break;case"OPEN_CLOSED":case 3:n.type=3;break;case"OPEN_OPEN":case 4:n.type=4}return n},_t.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.start=null,o.limit=null),null!=e.start&&Object.hasOwnProperty.call(e,"start")&&(o.start=g.google.spanner.executor.v1.ValueList.toObject(e.start,t,n+1)),null!=e.limit&&Object.hasOwnProperty.call(e,"limit")&&(o.limit=g.google.spanner.executor.v1.ValueList.toObject(e.limit,t,n+1)),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(o.type=t.enums!==String||void 0===g.google.spanner.executor.v1.KeyRange.Type[e.type]?e.type:g.google.spanner.executor.v1.KeyRange.Type[e.type],t.oneofs)&&(o._type="type"),o},_t.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},_t.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.KeyRange"},_t.Type=(t={},(a=Object.create(t))[t[0]="TYPE_UNSPECIFIED"]=0,a[t[1]="CLOSED_CLOSED"]=1,a[t[2]="CLOSED_OPEN"]=2,a[t[3]="OPEN_CLOSED"]=3,a[t[4]="OPEN_OPEN"]=4,a),_t),e.KeySet=(Bt.prototype.point=d.emptyArray,Bt.prototype.range=d.emptyArray,Bt.prototype.all=!1,Bt.create=function(e){return new Bt(e)},Bt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.point&&e.point.length)for(var o=0;o<e.point.length;++o)g.google.spanner.executor.v1.ValueList.encode(e.point[o],t.uint32(10).fork(),n+1).ldelim();if(null!=e.range&&e.range.length)for(o=0;o<e.range.length;++o)g.google.spanner.executor.v1.KeyRange.encode(e.range[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.all&&Object.hasOwnProperty.call(e,"all")&&t.uint32(24).bool(e.all),t},Bt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Bt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.KeySet;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.point&&i.point.length||(i.point=[]),i.point.push(g.google.spanner.executor.v1.ValueList.decode(e,e.uint32(),void 0,o+1));break;case 2:i.range&&i.range.length||(i.range=[]),i.range.push(g.google.spanner.executor.v1.KeyRange.decode(e,e.uint32(),void 0,o+1));break;case 3:i.all=e.bool();break;default:e.skipType(7&a,o)}}return i},Bt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Bt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.point&&Object.hasOwnProperty.call(e,"point")){if(!Array.isArray(e.point))return"point: array expected";for(var n=0;n<e.point.length;++n)if(o=g.google.spanner.executor.v1.ValueList.verify(e.point[n],t+1))return"point."+o}if(null!=e.range&&Object.hasOwnProperty.call(e,"range")){if(!Array.isArray(e.range))return"range: array expected";for(var o,n=0;n<e.range.length;++n)if(o=g.google.spanner.executor.v1.KeyRange.verify(e.range[n],t+1))return"range."+o}return null!=e.all&&Object.hasOwnProperty.call(e,"all")&&"boolean"!=typeof e.all?"all: boolean expected":null},Bt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.KeySet)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.KeySet: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.KeySet;if(e.point){if(!Array.isArray(e.point))throw TypeError(".google.spanner.executor.v1.KeySet.point: array expected");n.point=[];for(var o=0;o<e.point.length;++o){if(!d.isObject(e.point[o]))throw TypeError(".google.spanner.executor.v1.KeySet.point: object expected");n.point[o]=g.google.spanner.executor.v1.ValueList.fromObject(e.point[o],t+1)}}if(e.range){if(!Array.isArray(e.range))throw TypeError(".google.spanner.executor.v1.KeySet.range: array expected");n.range=[];for(o=0;o<e.range.length;++o){if(!d.isObject(e.range[o]))throw TypeError(".google.spanner.executor.v1.KeySet.range: object expected");n.range[o]=g.google.spanner.executor.v1.KeyRange.fromObject(e.range[o],t+1)}}return null!=e.all&&(n.all=Boolean(e.all)),n},Bt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.point=[],o.range=[]),t.defaults&&(o.all=!1),e.point&&e.point.length){o.point=[];for(var r=0;r<e.point.length;++r)o.point[r]=g.google.spanner.executor.v1.ValueList.toObject(e.point[r],t,n+1)}if(e.range&&e.range.length){o.range=[];for(r=0;r<e.range.length;++r)o.range[r]=g.google.spanner.executor.v1.KeyRange.toObject(e.range[r],t,n+1)}return null!=e.all&&Object.hasOwnProperty.call(e,"all")&&(o.all=e.all),o},Bt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Bt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.KeySet"},Bt),e.ValueList=(Ut.prototype.value=d.emptyArray,Ut.create=function(e){return new Ut(e)},Ut.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.value&&e.value.length)for(var o=0;o<e.value.length;++o)g.google.spanner.executor.v1.Value.encode(e.value[o],t.uint32(10).fork(),n+1).ldelim();return t},Ut.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ut.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ValueList;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.value&&i.value.length||(i.value=[]),i.value.push(g.google.spanner.executor.v1.Value.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},Ut.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ut.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.value&&Object.hasOwnProperty.call(e,"value")){if(!Array.isArray(e.value))return"value: array expected";for(var n=0;n<e.value.length;++n){var o=g.google.spanner.executor.v1.Value.verify(e.value[n],t+1);if(o)return"value."+o}}return null},Ut.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ValueList)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ValueList: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ValueList;if(e.value){if(!Array.isArray(e.value))throw TypeError(".google.spanner.executor.v1.ValueList.value: array expected");n.value=[];for(var o=0;o<e.value.length;++o){if(!d.isObject(e.value[o]))throw TypeError(".google.spanner.executor.v1.ValueList.value: object expected");n.value[o]=g.google.spanner.executor.v1.Value.fromObject(e.value[o],t+1)}}return n},Ut.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.value=[]),e.value&&e.value.length){o.value=[];for(var r=0;r<e.value.length;++r)o.value[r]=g.google.spanner.executor.v1.Value.toObject(e.value[r],t,n+1)}return o},Ut.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ut.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ValueList"},Ut),e.MutationAction=(Mt.prototype.mod=d.emptyArray,Mt.create=function(e){return new Mt(e)},Mt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.mod&&e.mod.length)for(var o=0;o<e.mod.length;++o)g.google.spanner.executor.v1.MutationAction.Mod.encode(e.mod[o],t.uint32(10).fork(),n+1).ldelim();return t},Mt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Mt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.MutationAction;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.mod&&i.mod.length||(i.mod=[]),i.mod.push(g.google.spanner.executor.v1.MutationAction.Mod.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},Mt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Mt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.mod&&Object.hasOwnProperty.call(e,"mod")){if(!Array.isArray(e.mod))return"mod: array expected";for(var n=0;n<e.mod.length;++n){var o=g.google.spanner.executor.v1.MutationAction.Mod.verify(e.mod[n],t+1);if(o)return"mod."+o}}return null},Mt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.MutationAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.MutationAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.MutationAction;if(e.mod){if(!Array.isArray(e.mod))throw TypeError(".google.spanner.executor.v1.MutationAction.mod: array expected");n.mod=[];for(var o=0;o<e.mod.length;++o){if(!d.isObject(e.mod[o]))throw TypeError(".google.spanner.executor.v1.MutationAction.mod: object expected");n.mod[o]=g.google.spanner.executor.v1.MutationAction.Mod.fromObject(e.mod[o],t+1)}}return n},Mt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.mod=[]),e.mod&&e.mod.length){o.mod=[];for(var r=0;r<e.mod.length;++r)o.mod[r]=g.google.spanner.executor.v1.MutationAction.Mod.toObject(e.mod[r],t,n+1)}return o},Mt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Mt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.MutationAction"},Mt.InsertArgs=(qt.prototype.column=d.emptyArray,qt.prototype.type=d.emptyArray,qt.prototype.values=d.emptyArray,qt.create=function(e){return new qt(e)},qt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.column&&e.column.length)for(var o=0;o<e.column.length;++o)t.uint32(10).string(e.column[o]);if(null!=e.type&&e.type.length)for(o=0;o<e.type.length;++o)g.google.spanner.v1.Type.encode(e.type[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.values&&e.values.length)for(o=0;o<e.values.length;++o)g.google.spanner.executor.v1.ValueList.encode(e.values[o],t.uint32(26).fork(),n+1).ldelim();return t},qt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},qt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.MutationAction.InsertArgs;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.column&&i.column.length||(i.column=[]),i.column.push(e.string());break;case 2:i.type&&i.type.length||(i.type=[]),i.type.push(g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1));break;case 3:i.values&&i.values.length||(i.values=[]),i.values.push(g.google.spanner.executor.v1.ValueList.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},qt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},qt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.column&&Object.hasOwnProperty.call(e,"column")){if(!Array.isArray(e.column))return"column: array expected";for(var n=0;n<e.column.length;++n)if(!d.isString(e.column[n]))return"column: string[] expected"}if(null!=e.type&&Object.hasOwnProperty.call(e,"type")){if(!Array.isArray(e.type))return"type: array expected";for(n=0;n<e.type.length;++n)if(o=g.google.spanner.v1.Type.verify(e.type[n],t+1))return"type."+o}if(null!=e.values&&Object.hasOwnProperty.call(e,"values")){if(!Array.isArray(e.values))return"values: array expected";for(var o,n=0;n<e.values.length;++n)if(o=g.google.spanner.executor.v1.ValueList.verify(e.values[n],t+1))return"values."+o}return null},qt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.MutationAction.InsertArgs)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.MutationAction.InsertArgs: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.MutationAction.InsertArgs;if(e.column){if(!Array.isArray(e.column))throw TypeError(".google.spanner.executor.v1.MutationAction.InsertArgs.column: array expected");n.column=[];for(var o=0;o<e.column.length;++o)n.column[o]=String(e.column[o])}if(e.type){if(!Array.isArray(e.type))throw TypeError(".google.spanner.executor.v1.MutationAction.InsertArgs.type: array expected");n.type=[];for(o=0;o<e.type.length;++o){if(!d.isObject(e.type[o]))throw TypeError(".google.spanner.executor.v1.MutationAction.InsertArgs.type: object expected");n.type[o]=g.google.spanner.v1.Type.fromObject(e.type[o],t+1)}}if(e.values){if(!Array.isArray(e.values))throw TypeError(".google.spanner.executor.v1.MutationAction.InsertArgs.values: array expected");n.values=[];for(o=0;o<e.values.length;++o){if(!d.isObject(e.values[o]))throw TypeError(".google.spanner.executor.v1.MutationAction.InsertArgs.values: object expected");n.values[o]=g.google.spanner.executor.v1.ValueList.fromObject(e.values[o],t+1)}}return n},qt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.column=[],o.type=[],o.values=[]),e.column&&e.column.length){o.column=[];for(var r=0;r<e.column.length;++r)o.column[r]=e.column[r]}if(e.type&&e.type.length){o.type=[];for(r=0;r<e.type.length;++r)o.type[r]=g.google.spanner.v1.Type.toObject(e.type[r],t,n+1)}if(e.values&&e.values.length){o.values=[];for(r=0;r<e.values.length;++r)o.values[r]=g.google.spanner.executor.v1.ValueList.toObject(e.values[r],t,n+1)}return o},qt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},qt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.MutationAction.InsertArgs"},qt),Mt.UpdateArgs=(Vt.prototype.column=d.emptyArray,Vt.prototype.type=d.emptyArray,Vt.prototype.values=d.emptyArray,Vt.create=function(e){return new Vt(e)},Vt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.column&&e.column.length)for(var o=0;o<e.column.length;++o)t.uint32(10).string(e.column[o]);if(null!=e.type&&e.type.length)for(o=0;o<e.type.length;++o)g.google.spanner.v1.Type.encode(e.type[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.values&&e.values.length)for(o=0;o<e.values.length;++o)g.google.spanner.executor.v1.ValueList.encode(e.values[o],t.uint32(26).fork(),n+1).ldelim();return t},Vt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Vt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.MutationAction.UpdateArgs;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.column&&i.column.length||(i.column=[]),i.column.push(e.string());break;case 2:i.type&&i.type.length||(i.type=[]),i.type.push(g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1));break;case 3:i.values&&i.values.length||(i.values=[]),i.values.push(g.google.spanner.executor.v1.ValueList.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Vt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Vt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.column&&Object.hasOwnProperty.call(e,"column")){if(!Array.isArray(e.column))return"column: array expected";for(var n=0;n<e.column.length;++n)if(!d.isString(e.column[n]))return"column: string[] expected"}if(null!=e.type&&Object.hasOwnProperty.call(e,"type")){if(!Array.isArray(e.type))return"type: array expected";for(n=0;n<e.type.length;++n)if(o=g.google.spanner.v1.Type.verify(e.type[n],t+1))return"type."+o}if(null!=e.values&&Object.hasOwnProperty.call(e,"values")){if(!Array.isArray(e.values))return"values: array expected";for(var o,n=0;n<e.values.length;++n)if(o=g.google.spanner.executor.v1.ValueList.verify(e.values[n],t+1))return"values."+o}return null},Vt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.MutationAction.UpdateArgs)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.MutationAction.UpdateArgs: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.MutationAction.UpdateArgs;if(e.column){if(!Array.isArray(e.column))throw TypeError(".google.spanner.executor.v1.MutationAction.UpdateArgs.column: array expected");n.column=[];for(var o=0;o<e.column.length;++o)n.column[o]=String(e.column[o])}if(e.type){if(!Array.isArray(e.type))throw TypeError(".google.spanner.executor.v1.MutationAction.UpdateArgs.type: array expected");n.type=[];for(o=0;o<e.type.length;++o){if(!d.isObject(e.type[o]))throw TypeError(".google.spanner.executor.v1.MutationAction.UpdateArgs.type: object expected");n.type[o]=g.google.spanner.v1.Type.fromObject(e.type[o],t+1)}}if(e.values){if(!Array.isArray(e.values))throw TypeError(".google.spanner.executor.v1.MutationAction.UpdateArgs.values: array expected");n.values=[];for(o=0;o<e.values.length;++o){if(!d.isObject(e.values[o]))throw TypeError(".google.spanner.executor.v1.MutationAction.UpdateArgs.values: object expected");n.values[o]=g.google.spanner.executor.v1.ValueList.fromObject(e.values[o],t+1)}}return n},Vt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.column=[],o.type=[],o.values=[]),e.column&&e.column.length){o.column=[];for(var r=0;r<e.column.length;++r)o.column[r]=e.column[r]}if(e.type&&e.type.length){o.type=[];for(r=0;r<e.type.length;++r)o.type[r]=g.google.spanner.v1.Type.toObject(e.type[r],t,n+1)}if(e.values&&e.values.length){o.values=[];for(r=0;r<e.values.length;++r)o.values[r]=g.google.spanner.executor.v1.ValueList.toObject(e.values[r],t,n+1)}return o},Vt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Vt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.MutationAction.UpdateArgs"},Vt),Mt.Mod=(Ft.prototype.table="",Ft.prototype.insert=null,Ft.prototype.update=null,Ft.prototype.insertOrUpdate=null,Ft.prototype.replace=null,Ft.prototype.deleteKeys=null,Ft.create=function(e){return new Ft(e)},Ft.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(10).string(e.table),null!=e.insert&&Object.hasOwnProperty.call(e,"insert")&&g.google.spanner.executor.v1.MutationAction.InsertArgs.encode(e.insert,t.uint32(18).fork(),n+1).ldelim(),null!=e.update&&Object.hasOwnProperty.call(e,"update")&&g.google.spanner.executor.v1.MutationAction.UpdateArgs.encode(e.update,t.uint32(26).fork(),n+1).ldelim(),null!=e.insertOrUpdate&&Object.hasOwnProperty.call(e,"insertOrUpdate")&&g.google.spanner.executor.v1.MutationAction.InsertArgs.encode(e.insertOrUpdate,t.uint32(34).fork(),n+1).ldelim(),null!=e.replace&&Object.hasOwnProperty.call(e,"replace")&&g.google.spanner.executor.v1.MutationAction.InsertArgs.encode(e.replace,t.uint32(42).fork(),n+1).ldelim(),null!=e.deleteKeys&&Object.hasOwnProperty.call(e,"deleteKeys")&&g.google.spanner.executor.v1.KeySet.encode(e.deleteKeys,t.uint32(50).fork(),n+1).ldelim(),t},Ft.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ft.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.MutationAction.Mod;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.table=e.string();break;case 2:i.insert=g.google.spanner.executor.v1.MutationAction.InsertArgs.decode(e,e.uint32(),void 0,o+1);break;case 3:i.update=g.google.spanner.executor.v1.MutationAction.UpdateArgs.decode(e,e.uint32(),void 0,o+1);break;case 4:i.insertOrUpdate=g.google.spanner.executor.v1.MutationAction.InsertArgs.decode(e,e.uint32(),void 0,o+1);break;case 5:i.replace=g.google.spanner.executor.v1.MutationAction.InsertArgs.decode(e,e.uint32(),void 0,o+1);break;case 6:i.deleteKeys=g.google.spanner.executor.v1.KeySet.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ft.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ft.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";var n;if(null!=e.insert&&Object.hasOwnProperty.call(e,"insert")&&(n=g.google.spanner.executor.v1.MutationAction.InsertArgs.verify(e.insert,t+1)))return"insert."+n;if(null!=e.update&&Object.hasOwnProperty.call(e,"update")&&(n=g.google.spanner.executor.v1.MutationAction.UpdateArgs.verify(e.update,t+1)))return"update."+n;if(null!=e.insertOrUpdate&&Object.hasOwnProperty.call(e,"insertOrUpdate")&&(n=g.google.spanner.executor.v1.MutationAction.InsertArgs.verify(e.insertOrUpdate,t+1)))return"insertOrUpdate."+n;if(null!=e.replace&&Object.hasOwnProperty.call(e,"replace")&&(n=g.google.spanner.executor.v1.MutationAction.InsertArgs.verify(e.replace,t+1)))return"replace."+n;if(null!=e.deleteKeys&&Object.hasOwnProperty.call(e,"deleteKeys")&&(n=g.google.spanner.executor.v1.KeySet.verify(e.deleteKeys,t+1)))return"deleteKeys."+n;return null},Ft.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.MutationAction.Mod)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.MutationAction.Mod: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.MutationAction.Mod;if(null!=e.table&&(n.table=String(e.table)),null!=e.insert){if(!d.isObject(e.insert))throw TypeError(".google.spanner.executor.v1.MutationAction.Mod.insert: object expected");n.insert=g.google.spanner.executor.v1.MutationAction.InsertArgs.fromObject(e.insert,t+1)}if(null!=e.update){if(!d.isObject(e.update))throw TypeError(".google.spanner.executor.v1.MutationAction.Mod.update: object expected");n.update=g.google.spanner.executor.v1.MutationAction.UpdateArgs.fromObject(e.update,t+1)}if(null!=e.insertOrUpdate){if(!d.isObject(e.insertOrUpdate))throw TypeError(".google.spanner.executor.v1.MutationAction.Mod.insertOrUpdate: object expected");n.insertOrUpdate=g.google.spanner.executor.v1.MutationAction.InsertArgs.fromObject(e.insertOrUpdate,t+1)}if(null!=e.replace){if(!d.isObject(e.replace))throw TypeError(".google.spanner.executor.v1.MutationAction.Mod.replace: object expected");n.replace=g.google.spanner.executor.v1.MutationAction.InsertArgs.fromObject(e.replace,t+1)}if(null!=e.deleteKeys){if(!d.isObject(e.deleteKeys))throw TypeError(".google.spanner.executor.v1.MutationAction.Mod.deleteKeys: object expected");n.deleteKeys=g.google.spanner.executor.v1.KeySet.fromObject(e.deleteKeys,t+1)}return n},Ft.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.table="",o.insert=null,o.update=null,o.insertOrUpdate=null,o.replace=null,o.deleteKeys=null),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(o.table=e.table),null!=e.insert&&Object.hasOwnProperty.call(e,"insert")&&(o.insert=g.google.spanner.executor.v1.MutationAction.InsertArgs.toObject(e.insert,t,n+1)),null!=e.update&&Object.hasOwnProperty.call(e,"update")&&(o.update=g.google.spanner.executor.v1.MutationAction.UpdateArgs.toObject(e.update,t,n+1)),null!=e.insertOrUpdate&&Object.hasOwnProperty.call(e,"insertOrUpdate")&&(o.insertOrUpdate=g.google.spanner.executor.v1.MutationAction.InsertArgs.toObject(e.insertOrUpdate,t,n+1)),null!=e.replace&&Object.hasOwnProperty.call(e,"replace")&&(o.replace=g.google.spanner.executor.v1.MutationAction.InsertArgs.toObject(e.replace,t,n+1)),null!=e.deleteKeys&&Object.hasOwnProperty.call(e,"deleteKeys")&&(o.deleteKeys=g.google.spanner.executor.v1.KeySet.toObject(e.deleteKeys,t,n+1)),o},Ft.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ft.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.MutationAction.Mod"},Ft),Mt),e.WriteMutationsAction=(Gt.prototype.mutation=null,Gt.create=function(e){return new Gt(e)},Gt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.mutation&&Object.hasOwnProperty.call(e,"mutation")&&g.google.spanner.executor.v1.MutationAction.encode(e.mutation,t.uint32(10).fork(),n+1).ldelim(),t},Gt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Gt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.WriteMutationsAction;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.mutation=g.google.spanner.executor.v1.MutationAction.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},Gt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Gt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.mutation&&Object.hasOwnProperty.call(e,"mutation")){e=g.google.spanner.executor.v1.MutationAction.verify(e.mutation,t+1);if(e)return"mutation."+e}return null},Gt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.WriteMutationsAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.WriteMutationsAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.WriteMutationsAction;if(null!=e.mutation){if(!d.isObject(e.mutation))throw TypeError(".google.spanner.executor.v1.WriteMutationsAction.mutation: object expected");n.mutation=g.google.spanner.executor.v1.MutationAction.fromObject(e.mutation,t+1)}return n},Gt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.mutation=null),null!=e.mutation&&Object.hasOwnProperty.call(e,"mutation")&&(o.mutation=g.google.spanner.executor.v1.MutationAction.toObject(e.mutation,t,n+1)),o},Gt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Gt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.WriteMutationsAction"},Gt),e.PartitionedUpdateAction=(Jt.prototype.options=null,Jt.prototype.update=null,Object.defineProperty(Jt.prototype,"_options",{get:d.oneOfGetter(t=["options"]),set:d.oneOfSetter(t)}),Jt.create=function(e){return new Jt(e)},Jt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions.encode(e.options,t.uint32(10).fork(),n+1).ldelim(),null!=e.update&&Object.hasOwnProperty.call(e,"update")&&g.google.spanner.executor.v1.QueryAction.encode(e.update,t.uint32(18).fork(),n+1).ldelim(),t},Jt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Jt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.PartitionedUpdateAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.options=g.google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions.decode(e,e.uint32(),void 0,o+1);break;case 2:i.update=g.google.spanner.executor.v1.QueryAction.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Jt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Jt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(n=g.google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions.verify(e.options,t+1)))return"options."+n;if(null!=e.update&&Object.hasOwnProperty.call(e,"update")&&(n=g.google.spanner.executor.v1.QueryAction.verify(e.update,t+1)))return"update."+n;return null},Jt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.PartitionedUpdateAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.PartitionedUpdateAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.PartitionedUpdateAction;if(null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.spanner.executor.v1.PartitionedUpdateAction.options: object expected");n.options=g.google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions.fromObject(e.options,t+1)}if(null!=e.update){if(!d.isObject(e.update))throw TypeError(".google.spanner.executor.v1.PartitionedUpdateAction.update: object expected");n.update=g.google.spanner.executor.v1.QueryAction.fromObject(e.update,t+1)}return n},Jt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.update=null),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions.toObject(e.options,t,n+1),t.oneofs)&&(o._options="options"),null!=e.update&&Object.hasOwnProperty.call(e,"update")&&(o.update=g.google.spanner.executor.v1.QueryAction.toObject(e.update,t,n+1)),o},Jt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Jt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.PartitionedUpdateAction"},Jt.ExecutePartitionedUpdateOptions=(zt.prototype.rpcPriority=null,zt.prototype.tag=null,Object.defineProperty(zt.prototype,"_rpcPriority",{get:d.oneOfGetter(t=["rpcPriority"]),set:d.oneOfSetter(t)}),Object.defineProperty(zt.prototype,"_tag",{get:d.oneOfGetter(t=["tag"]),set:d.oneOfSetter(t)}),zt.create=function(e){return new zt(e)},zt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.rpcPriority&&Object.hasOwnProperty.call(e,"rpcPriority")&&t.uint32(8).int32(e.rpcPriority),null!=e.tag&&Object.hasOwnProperty.call(e,"tag")&&t.uint32(18).string(e.tag),t},zt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},zt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.rpcPriority=e.int32();break;case 2:i.tag=e.string();break;default:e.skipType(7&a,o)}}return i},zt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},zt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.rpcPriority&&Object.hasOwnProperty.call(e,"rpcPriority"))switch(e.rpcPriority){default:return"rpcPriority: enum value expected";case 0:case 1:case 2:case 3:}return null!=e.tag&&Object.hasOwnProperty.call(e,"tag")&&!d.isString(e.tag)?"tag: string expected":null},zt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions;switch(e.rpcPriority){default:"number"==typeof e.rpcPriority&&(n.rpcPriority=e.rpcPriority);break;case"PRIORITY_UNSPECIFIED":case 0:n.rpcPriority=0;break;case"PRIORITY_LOW":case 1:n.rpcPriority=1;break;case"PRIORITY_MEDIUM":case 2:n.rpcPriority=2;break;case"PRIORITY_HIGH":case 3:n.rpcPriority=3}return null!=e.tag&&(n.tag=String(e.tag)),n},zt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return null!=e.rpcPriority&&Object.hasOwnProperty.call(e,"rpcPriority")&&(n.rpcPriority=t.enums!==String||void 0===g.google.spanner.v1.RequestOptions.Priority[e.rpcPriority]?e.rpcPriority:g.google.spanner.v1.RequestOptions.Priority[e.rpcPriority],t.oneofs)&&(n._rpcPriority="rpcPriority"),null!=e.tag&&Object.hasOwnProperty.call(e,"tag")&&(n.tag=e.tag,t.oneofs)&&(n._tag="tag"),n},zt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},zt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.PartitionedUpdateAction.ExecutePartitionedUpdateOptions"},zt),Jt),e.StartTransactionAction=(Kt.prototype.concurrency=null,Kt.prototype.table=d.emptyArray,Kt.prototype.transactionSeed="",Kt.prototype.executionOptions=null,Object.defineProperty(Kt.prototype,"_concurrency",{get:d.oneOfGetter(a=["concurrency"]),set:d.oneOfSetter(a)}),Object.defineProperty(Kt.prototype,"_executionOptions",{get:d.oneOfGetter(a=["executionOptions"]),set:d.oneOfSetter(a)}),Kt.create=function(e){return new Kt(e)},Kt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.concurrency&&Object.hasOwnProperty.call(e,"concurrency")&&g.google.spanner.executor.v1.Concurrency.encode(e.concurrency,t.uint32(10).fork(),n+1).ldelim(),null!=e.table&&e.table.length)for(var o=0;o<e.table.length;++o)g.google.spanner.executor.v1.TableMetadata.encode(e.table[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.transactionSeed&&Object.hasOwnProperty.call(e,"transactionSeed")&&t.uint32(26).string(e.transactionSeed),null!=e.executionOptions&&Object.hasOwnProperty.call(e,"executionOptions")&&g.google.spanner.executor.v1.TransactionExecutionOptions.encode(e.executionOptions,t.uint32(34).fork(),n+1).ldelim(),t},Kt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Kt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.StartTransactionAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.concurrency=g.google.spanner.executor.v1.Concurrency.decode(e,e.uint32(),void 0,o+1);break;case 2:i.table&&i.table.length||(i.table=[]),i.table.push(g.google.spanner.executor.v1.TableMetadata.decode(e,e.uint32(),void 0,o+1));break;case 3:i.transactionSeed=e.string();break;case 4:i.executionOptions=g.google.spanner.executor.v1.TransactionExecutionOptions.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Kt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Kt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.concurrency&&Object.hasOwnProperty.call(e,"concurrency")&&(n=g.google.spanner.executor.v1.Concurrency.verify(e.concurrency,t+1)))return"concurrency."+n;if(null!=e.table&&Object.hasOwnProperty.call(e,"table")){if(!Array.isArray(e.table))return"table: array expected";for(var n,o=0;o<e.table.length;++o)if(n=g.google.spanner.executor.v1.TableMetadata.verify(e.table[o],t+1))return"table."+n}if(null!=e.transactionSeed&&Object.hasOwnProperty.call(e,"transactionSeed")&&!d.isString(e.transactionSeed))return"transactionSeed: string expected";if(null!=e.executionOptions&&Object.hasOwnProperty.call(e,"executionOptions")&&(n=g.google.spanner.executor.v1.TransactionExecutionOptions.verify(e.executionOptions,t+1)))return"executionOptions."+n;return null},Kt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.StartTransactionAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.StartTransactionAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.StartTransactionAction;if(null!=e.concurrency){if(!d.isObject(e.concurrency))throw TypeError(".google.spanner.executor.v1.StartTransactionAction.concurrency: object expected");n.concurrency=g.google.spanner.executor.v1.Concurrency.fromObject(e.concurrency,t+1)}if(e.table){if(!Array.isArray(e.table))throw TypeError(".google.spanner.executor.v1.StartTransactionAction.table: array expected");n.table=[];for(var o=0;o<e.table.length;++o){if(!d.isObject(e.table[o]))throw TypeError(".google.spanner.executor.v1.StartTransactionAction.table: object expected");n.table[o]=g.google.spanner.executor.v1.TableMetadata.fromObject(e.table[o],t+1)}}if(null!=e.transactionSeed&&(n.transactionSeed=String(e.transactionSeed)),null!=e.executionOptions){if(!d.isObject(e.executionOptions))throw TypeError(".google.spanner.executor.v1.StartTransactionAction.executionOptions: object expected");n.executionOptions=g.google.spanner.executor.v1.TransactionExecutionOptions.fromObject(e.executionOptions,t+1)}return n},Kt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.table=[]),t.defaults&&(o.transactionSeed=""),null!=e.concurrency&&Object.hasOwnProperty.call(e,"concurrency")&&(o.concurrency=g.google.spanner.executor.v1.Concurrency.toObject(e.concurrency,t,n+1),t.oneofs)&&(o._concurrency="concurrency"),e.table&&e.table.length){o.table=[];for(var r=0;r<e.table.length;++r)o.table[r]=g.google.spanner.executor.v1.TableMetadata.toObject(e.table[r],t,n+1)}return null!=e.transactionSeed&&Object.hasOwnProperty.call(e,"transactionSeed")&&(o.transactionSeed=e.transactionSeed),null!=e.executionOptions&&Object.hasOwnProperty.call(e,"executionOptions")&&(o.executionOptions=g.google.spanner.executor.v1.TransactionExecutionOptions.toObject(e.executionOptions,t,n+1),t.oneofs)&&(o._executionOptions="executionOptions"),o},Kt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Kt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.StartTransactionAction"},Kt),e.Concurrency=(Ht.prototype.stalenessSeconds=null,Ht.prototype.minReadTimestampMicros=null,Ht.prototype.maxStalenessSeconds=null,Ht.prototype.exactTimestampMicros=null,Ht.prototype.strong=null,Ht.prototype.batch=null,Ht.prototype.snapshotEpochRead=!1,Ht.prototype.snapshotEpochRootTable="",Ht.prototype.batchReadTimestampMicros=d.Long?d.Long.fromBits(0,0,!1):0,Object.defineProperty(Ht.prototype,"concurrencyMode",{get:d.oneOfGetter(t=["stalenessSeconds","minReadTimestampMicros","maxStalenessSeconds","exactTimestampMicros","strong","batch"]),set:d.oneOfSetter(t)}),Ht.create=function(e){return new Ht(e)},Ht.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.stalenessSeconds&&Object.hasOwnProperty.call(e,"stalenessSeconds")&&t.uint32(9).double(e.stalenessSeconds),null!=e.minReadTimestampMicros&&Object.hasOwnProperty.call(e,"minReadTimestampMicros")&&t.uint32(16).int64(e.minReadTimestampMicros),null!=e.maxStalenessSeconds&&Object.hasOwnProperty.call(e,"maxStalenessSeconds")&&t.uint32(25).double(e.maxStalenessSeconds),null!=e.exactTimestampMicros&&Object.hasOwnProperty.call(e,"exactTimestampMicros")&&t.uint32(32).int64(e.exactTimestampMicros),null!=e.strong&&Object.hasOwnProperty.call(e,"strong")&&t.uint32(40).bool(e.strong),null!=e.batch&&Object.hasOwnProperty.call(e,"batch")&&t.uint32(48).bool(e.batch),null!=e.snapshotEpochRead&&Object.hasOwnProperty.call(e,"snapshotEpochRead")&&t.uint32(56).bool(e.snapshotEpochRead),null!=e.snapshotEpochRootTable&&Object.hasOwnProperty.call(e,"snapshotEpochRootTable")&&t.uint32(66).string(e.snapshotEpochRootTable),null!=e.batchReadTimestampMicros&&Object.hasOwnProperty.call(e,"batchReadTimestampMicros")&&t.uint32(72).int64(e.batchReadTimestampMicros),t},Ht.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ht.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.Concurrency;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.stalenessSeconds=e.double();break;case 2:i.minReadTimestampMicros=e.int64();break;case 3:i.maxStalenessSeconds=e.double();break;case 4:i.exactTimestampMicros=e.int64();break;case 5:i.strong=e.bool();break;case 6:i.batch=e.bool();break;case 7:i.snapshotEpochRead=e.bool();break;case 8:i.snapshotEpochRootTable=e.string();break;case 9:i.batchReadTimestampMicros=e.int64();break;default:e.skipType(7&a,o)}}return i},Ht.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ht.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";t={};if(null!=e.stalenessSeconds&&Object.hasOwnProperty.call(e,"stalenessSeconds")&&(t.concurrencyMode=1,"number"!=typeof e.stalenessSeconds))return"stalenessSeconds: number expected";if(null!=e.minReadTimestampMicros&&Object.hasOwnProperty.call(e,"minReadTimestampMicros")){if(1===t.concurrencyMode)return"concurrencyMode: multiple values";if(t.concurrencyMode=1,!(d.isInteger(e.minReadTimestampMicros)||e.minReadTimestampMicros&&d.isInteger(e.minReadTimestampMicros.low)&&d.isInteger(e.minReadTimestampMicros.high)))return"minReadTimestampMicros: integer|Long expected"}if(null!=e.maxStalenessSeconds&&Object.hasOwnProperty.call(e,"maxStalenessSeconds")){if(1===t.concurrencyMode)return"concurrencyMode: multiple values";if(t.concurrencyMode=1,"number"!=typeof e.maxStalenessSeconds)return"maxStalenessSeconds: number expected"}if(null!=e.exactTimestampMicros&&Object.hasOwnProperty.call(e,"exactTimestampMicros")){if(1===t.concurrencyMode)return"concurrencyMode: multiple values";if(t.concurrencyMode=1,!(d.isInteger(e.exactTimestampMicros)||e.exactTimestampMicros&&d.isInteger(e.exactTimestampMicros.low)&&d.isInteger(e.exactTimestampMicros.high)))return"exactTimestampMicros: integer|Long expected"}if(null!=e.strong&&Object.hasOwnProperty.call(e,"strong")){if(1===t.concurrencyMode)return"concurrencyMode: multiple values";if(t.concurrencyMode=1,"boolean"!=typeof e.strong)return"strong: boolean expected"}if(null!=e.batch&&Object.hasOwnProperty.call(e,"batch")){if(1===t.concurrencyMode)return"concurrencyMode: multiple values";if(t.concurrencyMode=1,"boolean"!=typeof e.batch)return"batch: boolean expected"}return null!=e.snapshotEpochRead&&Object.hasOwnProperty.call(e,"snapshotEpochRead")&&"boolean"!=typeof e.snapshotEpochRead?"snapshotEpochRead: boolean expected":null!=e.snapshotEpochRootTable&&Object.hasOwnProperty.call(e,"snapshotEpochRootTable")&&!d.isString(e.snapshotEpochRootTable)?"snapshotEpochRootTable: string expected":null!=e.batchReadTimestampMicros&&Object.hasOwnProperty.call(e,"batchReadTimestampMicros")&&!(d.isInteger(e.batchReadTimestampMicros)||e.batchReadTimestampMicros&&d.isInteger(e.batchReadTimestampMicros.low)&&d.isInteger(e.batchReadTimestampMicros.high))?"batchReadTimestampMicros: integer|Long expected":null},Ht.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.Concurrency)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.Concurrency: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.Concurrency;return null!=e.stalenessSeconds&&(t.stalenessSeconds=Number(e.stalenessSeconds)),null!=e.minReadTimestampMicros&&(d.Long?t.minReadTimestampMicros=d.Long.fromValue(e.minReadTimestampMicros,!1):"string"==typeof e.minReadTimestampMicros?t.minReadTimestampMicros=parseInt(e.minReadTimestampMicros,10):"number"==typeof e.minReadTimestampMicros?t.minReadTimestampMicros=e.minReadTimestampMicros:"object"==typeof e.minReadTimestampMicros&&(t.minReadTimestampMicros=new d.LongBits(e.minReadTimestampMicros.low>>>0,e.minReadTimestampMicros.high>>>0).toNumber())),null!=e.maxStalenessSeconds&&(t.maxStalenessSeconds=Number(e.maxStalenessSeconds)),null!=e.exactTimestampMicros&&(d.Long?t.exactTimestampMicros=d.Long.fromValue(e.exactTimestampMicros,!1):"string"==typeof e.exactTimestampMicros?t.exactTimestampMicros=parseInt(e.exactTimestampMicros,10):"number"==typeof e.exactTimestampMicros?t.exactTimestampMicros=e.exactTimestampMicros:"object"==typeof e.exactTimestampMicros&&(t.exactTimestampMicros=new d.LongBits(e.exactTimestampMicros.low>>>0,e.exactTimestampMicros.high>>>0).toNumber())),null!=e.strong&&(t.strong=Boolean(e.strong)),null!=e.batch&&(t.batch=Boolean(e.batch)),null!=e.snapshotEpochRead&&(t.snapshotEpochRead=Boolean(e.snapshotEpochRead)),null!=e.snapshotEpochRootTable&&(t.snapshotEpochRootTable=String(e.snapshotEpochRootTable)),null!=e.batchReadTimestampMicros&&(d.Long?t.batchReadTimestampMicros=d.Long.fromValue(e.batchReadTimestampMicros,!1):"string"==typeof e.batchReadTimestampMicros?t.batchReadTimestampMicros=parseInt(e.batchReadTimestampMicros,10):"number"==typeof e.batchReadTimestampMicros?t.batchReadTimestampMicros=e.batchReadTimestampMicros:"object"==typeof e.batchReadTimestampMicros&&(t.batchReadTimestampMicros=new d.LongBits(e.batchReadTimestampMicros.low>>>0,e.batchReadTimestampMicros.high>>>0).toNumber())),t},Ht.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,n={};return t.defaults&&(n.snapshotEpochRead=!1,n.snapshotEpochRootTable="",d.Long?(o=new d.Long(0,0,!1),n.batchReadTimestampMicros=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.batchReadTimestampMicros=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0),null!=e.stalenessSeconds&&Object.hasOwnProperty.call(e,"stalenessSeconds")&&(n.stalenessSeconds=t.json&&!isFinite(e.stalenessSeconds)?String(e.stalenessSeconds):e.stalenessSeconds,t.oneofs)&&(n.concurrencyMode="stalenessSeconds"),null!=e.minReadTimestampMicros&&Object.hasOwnProperty.call(e,"minReadTimestampMicros")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.minReadTimestampMicros="number"==typeof e.minReadTimestampMicros?BigInt(e.minReadTimestampMicros):d.Long.fromBits(e.minReadTimestampMicros.low>>>0,e.minReadTimestampMicros.high>>>0,!1).toBigInt():"number"==typeof e.minReadTimestampMicros?n.minReadTimestampMicros=t.longs===String?String(e.minReadTimestampMicros):e.minReadTimestampMicros:n.minReadTimestampMicros=t.longs===String?d.Long.prototype.toString.call(e.minReadTimestampMicros):t.longs===Number?new d.LongBits(e.minReadTimestampMicros.low>>>0,e.minReadTimestampMicros.high>>>0).toNumber():e.minReadTimestampMicros,t.oneofs)&&(n.concurrencyMode="minReadTimestampMicros"),null!=e.maxStalenessSeconds&&Object.hasOwnProperty.call(e,"maxStalenessSeconds")&&(n.maxStalenessSeconds=t.json&&!isFinite(e.maxStalenessSeconds)?String(e.maxStalenessSeconds):e.maxStalenessSeconds,t.oneofs)&&(n.concurrencyMode="maxStalenessSeconds"),null!=e.exactTimestampMicros&&Object.hasOwnProperty.call(e,"exactTimestampMicros")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.exactTimestampMicros="number"==typeof e.exactTimestampMicros?BigInt(e.exactTimestampMicros):d.Long.fromBits(e.exactTimestampMicros.low>>>0,e.exactTimestampMicros.high>>>0,!1).toBigInt():"number"==typeof e.exactTimestampMicros?n.exactTimestampMicros=t.longs===String?String(e.exactTimestampMicros):e.exactTimestampMicros:n.exactTimestampMicros=t.longs===String?d.Long.prototype.toString.call(e.exactTimestampMicros):t.longs===Number?new d.LongBits(e.exactTimestampMicros.low>>>0,e.exactTimestampMicros.high>>>0).toNumber():e.exactTimestampMicros,t.oneofs)&&(n.concurrencyMode="exactTimestampMicros"),null!=e.strong&&Object.hasOwnProperty.call(e,"strong")&&(n.strong=e.strong,t.oneofs)&&(n.concurrencyMode="strong"),null!=e.batch&&Object.hasOwnProperty.call(e,"batch")&&(n.batch=e.batch,t.oneofs)&&(n.concurrencyMode="batch"),null!=e.snapshotEpochRead&&Object.hasOwnProperty.call(e,"snapshotEpochRead")&&(n.snapshotEpochRead=e.snapshotEpochRead),null!=e.snapshotEpochRootTable&&Object.hasOwnProperty.call(e,"snapshotEpochRootTable")&&(n.snapshotEpochRootTable=e.snapshotEpochRootTable),null!=e.batchReadTimestampMicros&&Object.hasOwnProperty.call(e,"batchReadTimestampMicros")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.batchReadTimestampMicros="number"==typeof e.batchReadTimestampMicros?BigInt(e.batchReadTimestampMicros):d.Long.fromBits(e.batchReadTimestampMicros.low>>>0,e.batchReadTimestampMicros.high>>>0,!1).toBigInt():"number"==typeof e.batchReadTimestampMicros?n.batchReadTimestampMicros=t.longs===String?String(e.batchReadTimestampMicros):e.batchReadTimestampMicros:n.batchReadTimestampMicros=t.longs===String?d.Long.prototype.toString.call(e.batchReadTimestampMicros):t.longs===Number?new d.LongBits(e.batchReadTimestampMicros.low>>>0,e.batchReadTimestampMicros.high>>>0).toNumber():e.batchReadTimestampMicros),n},Ht.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ht.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.Concurrency"},Ht),e.TableMetadata=(Yt.prototype.name="",Yt.prototype.column=d.emptyArray,Yt.prototype.keyColumn=d.emptyArray,Yt.create=function(e){return new Yt(e)},Yt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.column&&e.column.length)for(var o=0;o<e.column.length;++o)g.google.spanner.executor.v1.ColumnMetadata.encode(e.column[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.keyColumn&&e.keyColumn.length)for(o=0;o<e.keyColumn.length;++o)g.google.spanner.executor.v1.ColumnMetadata.encode(e.keyColumn[o],t.uint32(26).fork(),n+1).ldelim();return t},Yt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Yt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.TableMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.column&&i.column.length||(i.column=[]),i.column.push(g.google.spanner.executor.v1.ColumnMetadata.decode(e,e.uint32(),void 0,o+1));break;case 3:i.keyColumn&&i.keyColumn.length||(i.keyColumn=[]),i.keyColumn.push(g.google.spanner.executor.v1.ColumnMetadata.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Yt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Yt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.column&&Object.hasOwnProperty.call(e,"column")){if(!Array.isArray(e.column))return"column: array expected";for(var n=0;n<e.column.length;++n)if(o=g.google.spanner.executor.v1.ColumnMetadata.verify(e.column[n],t+1))return"column."+o}if(null!=e.keyColumn&&Object.hasOwnProperty.call(e,"keyColumn")){if(!Array.isArray(e.keyColumn))return"keyColumn: array expected";for(var o,n=0;n<e.keyColumn.length;++n)if(o=g.google.spanner.executor.v1.ColumnMetadata.verify(e.keyColumn[n],t+1))return"keyColumn."+o}return null},Yt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.TableMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.TableMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.TableMetadata;if(null!=e.name&&(n.name=String(e.name)),e.column){if(!Array.isArray(e.column))throw TypeError(".google.spanner.executor.v1.TableMetadata.column: array expected");n.column=[];for(var o=0;o<e.column.length;++o){if(!d.isObject(e.column[o]))throw TypeError(".google.spanner.executor.v1.TableMetadata.column: object expected");n.column[o]=g.google.spanner.executor.v1.ColumnMetadata.fromObject(e.column[o],t+1)}}if(e.keyColumn){if(!Array.isArray(e.keyColumn))throw TypeError(".google.spanner.executor.v1.TableMetadata.keyColumn: array expected");n.keyColumn=[];for(o=0;o<e.keyColumn.length;++o){if(!d.isObject(e.keyColumn[o]))throw TypeError(".google.spanner.executor.v1.TableMetadata.keyColumn: object expected");n.keyColumn[o]=g.google.spanner.executor.v1.ColumnMetadata.fromObject(e.keyColumn[o],t+1)}}return n},Yt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.column=[],o.keyColumn=[]),t.defaults&&(o.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),e.column&&e.column.length){o.column=[];for(var r=0;r<e.column.length;++r)o.column[r]=g.google.spanner.executor.v1.ColumnMetadata.toObject(e.column[r],t,n+1)}if(e.keyColumn&&e.keyColumn.length){o.keyColumn=[];for(r=0;r<e.keyColumn.length;++r)o.keyColumn[r]=g.google.spanner.executor.v1.ColumnMetadata.toObject(e.keyColumn[r],t,n+1)}return o},Yt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Yt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.TableMetadata"},Yt),e.ColumnMetadata=(Qt.prototype.name="",Qt.prototype.type=null,Qt.create=function(e){return new Qt(e)},Qt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&g.google.spanner.v1.Type.encode(e.type,t.uint32(18).fork(),n+1).ldelim(),t},Qt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Qt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ColumnMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.type=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Qt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Qt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.type&&Object.hasOwnProperty.call(e,"type")){e=g.google.spanner.v1.Type.verify(e.type,t+1);if(e)return"type."+e}return null},Qt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ColumnMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ColumnMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ColumnMetadata;if(null!=e.name&&(n.name=String(e.name)),null!=e.type){if(!d.isObject(e.type))throw TypeError(".google.spanner.executor.v1.ColumnMetadata.type: object expected");n.type=g.google.spanner.v1.Type.fromObject(e.type,t+1)}return n},Qt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.type=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(o.type=g.google.spanner.v1.Type.toObject(e.type,t,n+1)),o},Qt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Qt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ColumnMetadata"},Qt),e.TransactionExecutionOptions=(Wt.prototype.optimistic=!1,Wt.prototype.excludeFromChangeStreams=!1,Wt.prototype.serializableOptimistic=!1,Wt.prototype.snapshotIsolationOptimistic=!1,Wt.prototype.snapshotIsolationPessimistic=!1,Wt.prototype.excludeTxnFromChangeStreams=!1,Wt.create=function(e){return new Wt(e)},Wt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.optimistic&&Object.hasOwnProperty.call(e,"optimistic")&&t.uint32(8).bool(e.optimistic),null!=e.excludeFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeFromChangeStreams")&&t.uint32(16).bool(e.excludeFromChangeStreams),null!=e.serializableOptimistic&&Object.hasOwnProperty.call(e,"serializableOptimistic")&&t.uint32(24).bool(e.serializableOptimistic),null!=e.snapshotIsolationOptimistic&&Object.hasOwnProperty.call(e,"snapshotIsolationOptimistic")&&t.uint32(32).bool(e.snapshotIsolationOptimistic),null!=e.snapshotIsolationPessimistic&&Object.hasOwnProperty.call(e,"snapshotIsolationPessimistic")&&t.uint32(40).bool(e.snapshotIsolationPessimistic),null!=e.excludeTxnFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeTxnFromChangeStreams")&&t.uint32(48).bool(e.excludeTxnFromChangeStreams),t},Wt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Wt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.TransactionExecutionOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.optimistic=e.bool();break;case 2:i.excludeFromChangeStreams=e.bool();break;case 3:i.serializableOptimistic=e.bool();break;case 4:i.snapshotIsolationOptimistic=e.bool();break;case 5:i.snapshotIsolationPessimistic=e.bool();break;case 6:i.excludeTxnFromChangeStreams=e.bool();break;default:e.skipType(7&a,o)}}return i},Wt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Wt.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.optimistic&&Object.hasOwnProperty.call(e,"optimistic")&&"boolean"!=typeof e.optimistic?"optimistic: boolean expected":null!=e.excludeFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeFromChangeStreams")&&"boolean"!=typeof e.excludeFromChangeStreams?"excludeFromChangeStreams: boolean expected":null!=e.serializableOptimistic&&Object.hasOwnProperty.call(e,"serializableOptimistic")&&"boolean"!=typeof e.serializableOptimistic?"serializableOptimistic: boolean expected":null!=e.snapshotIsolationOptimistic&&Object.hasOwnProperty.call(e,"snapshotIsolationOptimistic")&&"boolean"!=typeof e.snapshotIsolationOptimistic?"snapshotIsolationOptimistic: boolean expected":null!=e.snapshotIsolationPessimistic&&Object.hasOwnProperty.call(e,"snapshotIsolationPessimistic")&&"boolean"!=typeof e.snapshotIsolationPessimistic?"snapshotIsolationPessimistic: boolean expected":null!=e.excludeTxnFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeTxnFromChangeStreams")&&"boolean"!=typeof e.excludeTxnFromChangeStreams?"excludeTxnFromChangeStreams: boolean expected":null},Wt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.TransactionExecutionOptions)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.TransactionExecutionOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.TransactionExecutionOptions;return null!=e.optimistic&&(t.optimistic=Boolean(e.optimistic)),null!=e.excludeFromChangeStreams&&(t.excludeFromChangeStreams=Boolean(e.excludeFromChangeStreams)),null!=e.serializableOptimistic&&(t.serializableOptimistic=Boolean(e.serializableOptimistic)),null!=e.snapshotIsolationOptimistic&&(t.snapshotIsolationOptimistic=Boolean(e.snapshotIsolationOptimistic)),null!=e.snapshotIsolationPessimistic&&(t.snapshotIsolationPessimistic=Boolean(e.snapshotIsolationPessimistic)),null!=e.excludeTxnFromChangeStreams&&(t.excludeTxnFromChangeStreams=Boolean(e.excludeTxnFromChangeStreams)),t},Wt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.optimistic=!1,n.excludeFromChangeStreams=!1,n.serializableOptimistic=!1,n.snapshotIsolationOptimistic=!1,n.snapshotIsolationPessimistic=!1,n.excludeTxnFromChangeStreams=!1),null!=e.optimistic&&Object.hasOwnProperty.call(e,"optimistic")&&(n.optimistic=e.optimistic),null!=e.excludeFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeFromChangeStreams")&&(n.excludeFromChangeStreams=e.excludeFromChangeStreams),null!=e.serializableOptimistic&&Object.hasOwnProperty.call(e,"serializableOptimistic")&&(n.serializableOptimistic=e.serializableOptimistic),null!=e.snapshotIsolationOptimistic&&Object.hasOwnProperty.call(e,"snapshotIsolationOptimistic")&&(n.snapshotIsolationOptimistic=e.snapshotIsolationOptimistic),null!=e.snapshotIsolationPessimistic&&Object.hasOwnProperty.call(e,"snapshotIsolationPessimistic")&&(n.snapshotIsolationPessimistic=e.snapshotIsolationPessimistic),null!=e.excludeTxnFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeTxnFromChangeStreams")&&(n.excludeTxnFromChangeStreams=e.excludeTxnFromChangeStreams),n},Wt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Wt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.TransactionExecutionOptions"},Wt),e.FinishTransactionAction=(Xt.prototype.mode=0,Xt.create=function(e){return new Xt(e)},Xt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.mode&&Object.hasOwnProperty.call(e,"mode")&&t.uint32(8).int32(e.mode),t},Xt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Xt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.FinishTransactionAction;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.mode=e.int32():e.skipType(7&a,o)}return i},Xt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Xt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.mode&&Object.hasOwnProperty.call(e,"mode"))switch(e.mode){default:return"mode: enum value expected";case 0:case 1:case 2:}return null},Xt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.FinishTransactionAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.FinishTransactionAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.FinishTransactionAction;switch(e.mode){default:"number"==typeof e.mode&&(n.mode=e.mode);break;case"MODE_UNSPECIFIED":case 0:n.mode=0;break;case"COMMIT":case 1:n.mode=1;break;case"ABANDON":case 2:n.mode=2}return n},Xt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.mode=t.enums===String?"MODE_UNSPECIFIED":0),null!=e.mode&&Object.hasOwnProperty.call(e,"mode")&&(n.mode=t.enums!==String||void 0===g.google.spanner.executor.v1.FinishTransactionAction.Mode[e.mode]?e.mode:g.google.spanner.executor.v1.FinishTransactionAction.Mode[e.mode]),n},Xt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Xt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.FinishTransactionAction"},Xt.Mode=(a={},(t=Object.create(a))[a[0]="MODE_UNSPECIFIED"]=0,t[a[1]="COMMIT"]=1,t[a[2]="ABANDON"]=2,t),Xt),e.AdminAction=(v.prototype.createUserInstanceConfig=null,v.prototype.updateUserInstanceConfig=null,v.prototype.deleteUserInstanceConfig=null,v.prototype.getCloudInstanceConfig=null,v.prototype.listInstanceConfigs=null,v.prototype.createCloudInstance=null,v.prototype.updateCloudInstance=null,v.prototype.deleteCloudInstance=null,v.prototype.listCloudInstances=null,v.prototype.getCloudInstance=null,v.prototype.createCloudDatabase=null,v.prototype.updateCloudDatabaseDdl=null,v.prototype.updateCloudDatabase=null,v.prototype.dropCloudDatabase=null,v.prototype.listCloudDatabases=null,v.prototype.listCloudDatabaseOperations=null,v.prototype.restoreCloudDatabase=null,v.prototype.getCloudDatabase=null,v.prototype.createCloudBackup=null,v.prototype.copyCloudBackup=null,v.prototype.getCloudBackup=null,v.prototype.updateCloudBackup=null,v.prototype.deleteCloudBackup=null,v.prototype.listCloudBackups=null,v.prototype.listCloudBackupOperations=null,v.prototype.getOperation=null,v.prototype.cancelOperation=null,v.prototype.changeQuorumCloudDatabase=null,v.prototype.addSplitPoints=null,Object.defineProperty(v.prototype,"action",{get:d.oneOfGetter(a=["createUserInstanceConfig","updateUserInstanceConfig","deleteUserInstanceConfig","getCloudInstanceConfig","listInstanceConfigs","createCloudInstance","updateCloudInstance","deleteCloudInstance","listCloudInstances","getCloudInstance","createCloudDatabase","updateCloudDatabaseDdl","updateCloudDatabase","dropCloudDatabase","listCloudDatabases","listCloudDatabaseOperations","restoreCloudDatabase","getCloudDatabase","createCloudBackup","copyCloudBackup","getCloudBackup","updateCloudBackup","deleteCloudBackup","listCloudBackups","listCloudBackupOperations","getOperation","cancelOperation","changeQuorumCloudDatabase","addSplitPoints"]),set:d.oneOfSetter(a)}),v.create=function(e){return new v(e)},v.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.createUserInstanceConfig&&Object.hasOwnProperty.call(e,"createUserInstanceConfig")&&g.google.spanner.executor.v1.CreateUserInstanceConfigAction.encode(e.createUserInstanceConfig,t.uint32(10).fork(),n+1).ldelim(),null!=e.updateUserInstanceConfig&&Object.hasOwnProperty.call(e,"updateUserInstanceConfig")&&g.google.spanner.executor.v1.UpdateUserInstanceConfigAction.encode(e.updateUserInstanceConfig,t.uint32(18).fork(),n+1).ldelim(),null!=e.deleteUserInstanceConfig&&Object.hasOwnProperty.call(e,"deleteUserInstanceConfig")&&g.google.spanner.executor.v1.DeleteUserInstanceConfigAction.encode(e.deleteUserInstanceConfig,t.uint32(26).fork(),n+1).ldelim(),null!=e.getCloudInstanceConfig&&Object.hasOwnProperty.call(e,"getCloudInstanceConfig")&&g.google.spanner.executor.v1.GetCloudInstanceConfigAction.encode(e.getCloudInstanceConfig,t.uint32(34).fork(),n+1).ldelim(),null!=e.listInstanceConfigs&&Object.hasOwnProperty.call(e,"listInstanceConfigs")&&g.google.spanner.executor.v1.ListCloudInstanceConfigsAction.encode(e.listInstanceConfigs,t.uint32(42).fork(),n+1).ldelim(),null!=e.createCloudInstance&&Object.hasOwnProperty.call(e,"createCloudInstance")&&g.google.spanner.executor.v1.CreateCloudInstanceAction.encode(e.createCloudInstance,t.uint32(50).fork(),n+1).ldelim(),null!=e.updateCloudInstance&&Object.hasOwnProperty.call(e,"updateCloudInstance")&&g.google.spanner.executor.v1.UpdateCloudInstanceAction.encode(e.updateCloudInstance,t.uint32(58).fork(),n+1).ldelim(),null!=e.deleteCloudInstance&&Object.hasOwnProperty.call(e,"deleteCloudInstance")&&g.google.spanner.executor.v1.DeleteCloudInstanceAction.encode(e.deleteCloudInstance,t.uint32(66).fork(),n+1).ldelim(),null!=e.listCloudInstances&&Object.hasOwnProperty.call(e,"listCloudInstances")&&g.google.spanner.executor.v1.ListCloudInstancesAction.encode(e.listCloudInstances,t.uint32(74).fork(),n+1).ldelim(),null!=e.getCloudInstance&&Object.hasOwnProperty.call(e,"getCloudInstance")&&g.google.spanner.executor.v1.GetCloudInstanceAction.encode(e.getCloudInstance,t.uint32(82).fork(),n+1).ldelim(),null!=e.createCloudDatabase&&Object.hasOwnProperty.call(e,"createCloudDatabase")&&g.google.spanner.executor.v1.CreateCloudDatabaseAction.encode(e.createCloudDatabase,t.uint32(90).fork(),n+1).ldelim(),null!=e.updateCloudDatabaseDdl&&Object.hasOwnProperty.call(e,"updateCloudDatabaseDdl")&&g.google.spanner.executor.v1.UpdateCloudDatabaseDdlAction.encode(e.updateCloudDatabaseDdl,t.uint32(98).fork(),n+1).ldelim(),null!=e.dropCloudDatabase&&Object.hasOwnProperty.call(e,"dropCloudDatabase")&&g.google.spanner.executor.v1.DropCloudDatabaseAction.encode(e.dropCloudDatabase,t.uint32(106).fork(),n+1).ldelim(),null!=e.listCloudDatabases&&Object.hasOwnProperty.call(e,"listCloudDatabases")&&g.google.spanner.executor.v1.ListCloudDatabasesAction.encode(e.listCloudDatabases,t.uint32(114).fork(),n+1).ldelim(),null!=e.listCloudDatabaseOperations&&Object.hasOwnProperty.call(e,"listCloudDatabaseOperations")&&g.google.spanner.executor.v1.ListCloudDatabaseOperationsAction.encode(e.listCloudDatabaseOperations,t.uint32(122).fork(),n+1).ldelim(),null!=e.restoreCloudDatabase&&Object.hasOwnProperty.call(e,"restoreCloudDatabase")&&g.google.spanner.executor.v1.RestoreCloudDatabaseAction.encode(e.restoreCloudDatabase,t.uint32(130).fork(),n+1).ldelim(),null!=e.getCloudDatabase&&Object.hasOwnProperty.call(e,"getCloudDatabase")&&g.google.spanner.executor.v1.GetCloudDatabaseAction.encode(e.getCloudDatabase,t.uint32(138).fork(),n+1).ldelim(),null!=e.createCloudBackup&&Object.hasOwnProperty.call(e,"createCloudBackup")&&g.google.spanner.executor.v1.CreateCloudBackupAction.encode(e.createCloudBackup,t.uint32(146).fork(),n+1).ldelim(),null!=e.copyCloudBackup&&Object.hasOwnProperty.call(e,"copyCloudBackup")&&g.google.spanner.executor.v1.CopyCloudBackupAction.encode(e.copyCloudBackup,t.uint32(154).fork(),n+1).ldelim(),null!=e.getCloudBackup&&Object.hasOwnProperty.call(e,"getCloudBackup")&&g.google.spanner.executor.v1.GetCloudBackupAction.encode(e.getCloudBackup,t.uint32(162).fork(),n+1).ldelim(),null!=e.updateCloudBackup&&Object.hasOwnProperty.call(e,"updateCloudBackup")&&g.google.spanner.executor.v1.UpdateCloudBackupAction.encode(e.updateCloudBackup,t.uint32(170).fork(),n+1).ldelim(),null!=e.deleteCloudBackup&&Object.hasOwnProperty.call(e,"deleteCloudBackup")&&g.google.spanner.executor.v1.DeleteCloudBackupAction.encode(e.deleteCloudBackup,t.uint32(178).fork(),n+1).ldelim(),null!=e.listCloudBackups&&Object.hasOwnProperty.call(e,"listCloudBackups")&&g.google.spanner.executor.v1.ListCloudBackupsAction.encode(e.listCloudBackups,t.uint32(186).fork(),n+1).ldelim(),null!=e.listCloudBackupOperations&&Object.hasOwnProperty.call(e,"listCloudBackupOperations")&&g.google.spanner.executor.v1.ListCloudBackupOperationsAction.encode(e.listCloudBackupOperations,t.uint32(194).fork(),n+1).ldelim(),null!=e.getOperation&&Object.hasOwnProperty.call(e,"getOperation")&&g.google.spanner.executor.v1.GetOperationAction.encode(e.getOperation,t.uint32(202).fork(),n+1).ldelim(),null!=e.cancelOperation&&Object.hasOwnProperty.call(e,"cancelOperation")&&g.google.spanner.executor.v1.CancelOperationAction.encode(e.cancelOperation,t.uint32(210).fork(),n+1).ldelim(),null!=e.updateCloudDatabase&&Object.hasOwnProperty.call(e,"updateCloudDatabase")&&g.google.spanner.executor.v1.UpdateCloudDatabaseAction.encode(e.updateCloudDatabase,t.uint32(218).fork(),n+1).ldelim(),null!=e.changeQuorumCloudDatabase&&Object.hasOwnProperty.call(e,"changeQuorumCloudDatabase")&&g.google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction.encode(e.changeQuorumCloudDatabase,t.uint32(226).fork(),n+1).ldelim(),null!=e.addSplitPoints&&Object.hasOwnProperty.call(e,"addSplitPoints")&&g.google.spanner.executor.v1.AddSplitPointsAction.encode(e.addSplitPoints,t.uint32(234).fork(),n+1).ldelim(),t},v.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},v.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.AdminAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.createUserInstanceConfig=g.google.spanner.executor.v1.CreateUserInstanceConfigAction.decode(e,e.uint32(),void 0,o+1);break;case 2:i.updateUserInstanceConfig=g.google.spanner.executor.v1.UpdateUserInstanceConfigAction.decode(e,e.uint32(),void 0,o+1);break;case 3:i.deleteUserInstanceConfig=g.google.spanner.executor.v1.DeleteUserInstanceConfigAction.decode(e,e.uint32(),void 0,o+1);break;case 4:i.getCloudInstanceConfig=g.google.spanner.executor.v1.GetCloudInstanceConfigAction.decode(e,e.uint32(),void 0,o+1);break;case 5:i.listInstanceConfigs=g.google.spanner.executor.v1.ListCloudInstanceConfigsAction.decode(e,e.uint32(),void 0,o+1);break;case 6:i.createCloudInstance=g.google.spanner.executor.v1.CreateCloudInstanceAction.decode(e,e.uint32(),void 0,o+1);break;case 7:i.updateCloudInstance=g.google.spanner.executor.v1.UpdateCloudInstanceAction.decode(e,e.uint32(),void 0,o+1);break;case 8:i.deleteCloudInstance=g.google.spanner.executor.v1.DeleteCloudInstanceAction.decode(e,e.uint32(),void 0,o+1);break;case 9:i.listCloudInstances=g.google.spanner.executor.v1.ListCloudInstancesAction.decode(e,e.uint32(),void 0,o+1);break;case 10:i.getCloudInstance=g.google.spanner.executor.v1.GetCloudInstanceAction.decode(e,e.uint32(),void 0,o+1);break;case 11:i.createCloudDatabase=g.google.spanner.executor.v1.CreateCloudDatabaseAction.decode(e,e.uint32(),void 0,o+1);break;case 12:i.updateCloudDatabaseDdl=g.google.spanner.executor.v1.UpdateCloudDatabaseDdlAction.decode(e,e.uint32(),void 0,o+1);break;case 27:i.updateCloudDatabase=g.google.spanner.executor.v1.UpdateCloudDatabaseAction.decode(e,e.uint32(),void 0,o+1);break;case 13:i.dropCloudDatabase=g.google.spanner.executor.v1.DropCloudDatabaseAction.decode(e,e.uint32(),void 0,o+1);break;case 14:i.listCloudDatabases=g.google.spanner.executor.v1.ListCloudDatabasesAction.decode(e,e.uint32(),void 0,o+1);break;case 15:i.listCloudDatabaseOperations=g.google.spanner.executor.v1.ListCloudDatabaseOperationsAction.decode(e,e.uint32(),void 0,o+1);break;case 16:i.restoreCloudDatabase=g.google.spanner.executor.v1.RestoreCloudDatabaseAction.decode(e,e.uint32(),void 0,o+1);break;case 17:i.getCloudDatabase=g.google.spanner.executor.v1.GetCloudDatabaseAction.decode(e,e.uint32(),void 0,o+1);break;case 18:i.createCloudBackup=g.google.spanner.executor.v1.CreateCloudBackupAction.decode(e,e.uint32(),void 0,o+1);break;case 19:i.copyCloudBackup=g.google.spanner.executor.v1.CopyCloudBackupAction.decode(e,e.uint32(),void 0,o+1);break;case 20:i.getCloudBackup=g.google.spanner.executor.v1.GetCloudBackupAction.decode(e,e.uint32(),void 0,o+1);break;case 21:i.updateCloudBackup=g.google.spanner.executor.v1.UpdateCloudBackupAction.decode(e,e.uint32(),void 0,o+1);break;case 22:i.deleteCloudBackup=g.google.spanner.executor.v1.DeleteCloudBackupAction.decode(e,e.uint32(),void 0,o+1);break;case 23:i.listCloudBackups=g.google.spanner.executor.v1.ListCloudBackupsAction.decode(e,e.uint32(),void 0,o+1);break;case 24:i.listCloudBackupOperations=g.google.spanner.executor.v1.ListCloudBackupOperationsAction.decode(e,e.uint32(),void 0,o+1);break;case 25:i.getOperation=g.google.spanner.executor.v1.GetOperationAction.decode(e,e.uint32(),void 0,o+1);break;case 26:i.cancelOperation=g.google.spanner.executor.v1.CancelOperationAction.decode(e,e.uint32(),void 0,o+1);break;case 28:i.changeQuorumCloudDatabase=g.google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction.decode(e,e.uint32(),void 0,o+1);break;case 29:i.addSplitPoints=g.google.spanner.executor.v1.AddSplitPointsAction.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},v.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},v.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.createUserInstanceConfig&&Object.hasOwnProperty.call(e,"createUserInstanceConfig")&&(n=g.google.spanner.executor.v1.CreateUserInstanceConfigAction.verify(e.createUserInstanceConfig,t+(o.action=1))))return"createUserInstanceConfig."+n;if(null!=e.updateUserInstanceConfig&&Object.hasOwnProperty.call(e,"updateUserInstanceConfig")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.UpdateUserInstanceConfigAction.verify(e.updateUserInstanceConfig,t+(o.action=1)))return"updateUserInstanceConfig."+n}if(null!=e.deleteUserInstanceConfig&&Object.hasOwnProperty.call(e,"deleteUserInstanceConfig")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.DeleteUserInstanceConfigAction.verify(e.deleteUserInstanceConfig,t+(o.action=1)))return"deleteUserInstanceConfig."+n}if(null!=e.getCloudInstanceConfig&&Object.hasOwnProperty.call(e,"getCloudInstanceConfig")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.GetCloudInstanceConfigAction.verify(e.getCloudInstanceConfig,t+(o.action=1)))return"getCloudInstanceConfig."+n}if(null!=e.listInstanceConfigs&&Object.hasOwnProperty.call(e,"listInstanceConfigs")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ListCloudInstanceConfigsAction.verify(e.listInstanceConfigs,t+(o.action=1)))return"listInstanceConfigs."+n}if(null!=e.createCloudInstance&&Object.hasOwnProperty.call(e,"createCloudInstance")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.CreateCloudInstanceAction.verify(e.createCloudInstance,t+(o.action=1)))return"createCloudInstance."+n}if(null!=e.updateCloudInstance&&Object.hasOwnProperty.call(e,"updateCloudInstance")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.UpdateCloudInstanceAction.verify(e.updateCloudInstance,t+(o.action=1)))return"updateCloudInstance."+n}if(null!=e.deleteCloudInstance&&Object.hasOwnProperty.call(e,"deleteCloudInstance")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.DeleteCloudInstanceAction.verify(e.deleteCloudInstance,t+(o.action=1)))return"deleteCloudInstance."+n}if(null!=e.listCloudInstances&&Object.hasOwnProperty.call(e,"listCloudInstances")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ListCloudInstancesAction.verify(e.listCloudInstances,t+(o.action=1)))return"listCloudInstances."+n}if(null!=e.getCloudInstance&&Object.hasOwnProperty.call(e,"getCloudInstance")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.GetCloudInstanceAction.verify(e.getCloudInstance,t+(o.action=1)))return"getCloudInstance."+n}if(null!=e.createCloudDatabase&&Object.hasOwnProperty.call(e,"createCloudDatabase")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.CreateCloudDatabaseAction.verify(e.createCloudDatabase,t+(o.action=1)))return"createCloudDatabase."+n}if(null!=e.updateCloudDatabaseDdl&&Object.hasOwnProperty.call(e,"updateCloudDatabaseDdl")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.UpdateCloudDatabaseDdlAction.verify(e.updateCloudDatabaseDdl,t+(o.action=1)))return"updateCloudDatabaseDdl."+n}if(null!=e.updateCloudDatabase&&Object.hasOwnProperty.call(e,"updateCloudDatabase")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.UpdateCloudDatabaseAction.verify(e.updateCloudDatabase,t+(o.action=1)))return"updateCloudDatabase."+n}if(null!=e.dropCloudDatabase&&Object.hasOwnProperty.call(e,"dropCloudDatabase")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.DropCloudDatabaseAction.verify(e.dropCloudDatabase,t+(o.action=1)))return"dropCloudDatabase."+n}if(null!=e.listCloudDatabases&&Object.hasOwnProperty.call(e,"listCloudDatabases")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ListCloudDatabasesAction.verify(e.listCloudDatabases,t+(o.action=1)))return"listCloudDatabases."+n}if(null!=e.listCloudDatabaseOperations&&Object.hasOwnProperty.call(e,"listCloudDatabaseOperations")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ListCloudDatabaseOperationsAction.verify(e.listCloudDatabaseOperations,t+(o.action=1)))return"listCloudDatabaseOperations."+n}if(null!=e.restoreCloudDatabase&&Object.hasOwnProperty.call(e,"restoreCloudDatabase")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.RestoreCloudDatabaseAction.verify(e.restoreCloudDatabase,t+(o.action=1)))return"restoreCloudDatabase."+n}if(null!=e.getCloudDatabase&&Object.hasOwnProperty.call(e,"getCloudDatabase")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.GetCloudDatabaseAction.verify(e.getCloudDatabase,t+(o.action=1)))return"getCloudDatabase."+n}if(null!=e.createCloudBackup&&Object.hasOwnProperty.call(e,"createCloudBackup")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.CreateCloudBackupAction.verify(e.createCloudBackup,t+(o.action=1)))return"createCloudBackup."+n}if(null!=e.copyCloudBackup&&Object.hasOwnProperty.call(e,"copyCloudBackup")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.CopyCloudBackupAction.verify(e.copyCloudBackup,t+(o.action=1)))return"copyCloudBackup."+n}if(null!=e.getCloudBackup&&Object.hasOwnProperty.call(e,"getCloudBackup")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.GetCloudBackupAction.verify(e.getCloudBackup,t+(o.action=1)))return"getCloudBackup."+n}if(null!=e.updateCloudBackup&&Object.hasOwnProperty.call(e,"updateCloudBackup")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.UpdateCloudBackupAction.verify(e.updateCloudBackup,t+(o.action=1)))return"updateCloudBackup."+n}if(null!=e.deleteCloudBackup&&Object.hasOwnProperty.call(e,"deleteCloudBackup")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.DeleteCloudBackupAction.verify(e.deleteCloudBackup,t+(o.action=1)))return"deleteCloudBackup."+n}if(null!=e.listCloudBackups&&Object.hasOwnProperty.call(e,"listCloudBackups")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ListCloudBackupsAction.verify(e.listCloudBackups,t+(o.action=1)))return"listCloudBackups."+n}if(null!=e.listCloudBackupOperations&&Object.hasOwnProperty.call(e,"listCloudBackupOperations")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ListCloudBackupOperationsAction.verify(e.listCloudBackupOperations,t+(o.action=1)))return"listCloudBackupOperations."+n}if(null!=e.getOperation&&Object.hasOwnProperty.call(e,"getOperation")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.GetOperationAction.verify(e.getOperation,t+(o.action=1)))return"getOperation."+n}if(null!=e.cancelOperation&&Object.hasOwnProperty.call(e,"cancelOperation")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.CancelOperationAction.verify(e.cancelOperation,t+(o.action=1)))return"cancelOperation."+n}if(null!=e.changeQuorumCloudDatabase&&Object.hasOwnProperty.call(e,"changeQuorumCloudDatabase")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction.verify(e.changeQuorumCloudDatabase,t+(o.action=1)))return"changeQuorumCloudDatabase."+n}if(null!=e.addSplitPoints&&Object.hasOwnProperty.call(e,"addSplitPoints")){if(1===o.action)return"action: multiple values";if(n=g.google.spanner.executor.v1.AddSplitPointsAction.verify(e.addSplitPoints,t+(o.action=1)))return"addSplitPoints."+n}return null},v.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.AdminAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.AdminAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.AdminAction;if(null!=e.createUserInstanceConfig){if(!d.isObject(e.createUserInstanceConfig))throw TypeError(".google.spanner.executor.v1.AdminAction.createUserInstanceConfig: object expected");n.createUserInstanceConfig=g.google.spanner.executor.v1.CreateUserInstanceConfigAction.fromObject(e.createUserInstanceConfig,t+1)}if(null!=e.updateUserInstanceConfig){if(!d.isObject(e.updateUserInstanceConfig))throw TypeError(".google.spanner.executor.v1.AdminAction.updateUserInstanceConfig: object expected");n.updateUserInstanceConfig=g.google.spanner.executor.v1.UpdateUserInstanceConfigAction.fromObject(e.updateUserInstanceConfig,t+1)}if(null!=e.deleteUserInstanceConfig){if(!d.isObject(e.deleteUserInstanceConfig))throw TypeError(".google.spanner.executor.v1.AdminAction.deleteUserInstanceConfig: object expected");n.deleteUserInstanceConfig=g.google.spanner.executor.v1.DeleteUserInstanceConfigAction.fromObject(e.deleteUserInstanceConfig,t+1)}if(null!=e.getCloudInstanceConfig){if(!d.isObject(e.getCloudInstanceConfig))throw TypeError(".google.spanner.executor.v1.AdminAction.getCloudInstanceConfig: object expected");n.getCloudInstanceConfig=g.google.spanner.executor.v1.GetCloudInstanceConfigAction.fromObject(e.getCloudInstanceConfig,t+1)}if(null!=e.listInstanceConfigs){if(!d.isObject(e.listInstanceConfigs))throw TypeError(".google.spanner.executor.v1.AdminAction.listInstanceConfigs: object expected");n.listInstanceConfigs=g.google.spanner.executor.v1.ListCloudInstanceConfigsAction.fromObject(e.listInstanceConfigs,t+1)}if(null!=e.createCloudInstance){if(!d.isObject(e.createCloudInstance))throw TypeError(".google.spanner.executor.v1.AdminAction.createCloudInstance: object expected");n.createCloudInstance=g.google.spanner.executor.v1.CreateCloudInstanceAction.fromObject(e.createCloudInstance,t+1)}if(null!=e.updateCloudInstance){if(!d.isObject(e.updateCloudInstance))throw TypeError(".google.spanner.executor.v1.AdminAction.updateCloudInstance: object expected");n.updateCloudInstance=g.google.spanner.executor.v1.UpdateCloudInstanceAction.fromObject(e.updateCloudInstance,t+1)}if(null!=e.deleteCloudInstance){if(!d.isObject(e.deleteCloudInstance))throw TypeError(".google.spanner.executor.v1.AdminAction.deleteCloudInstance: object expected");n.deleteCloudInstance=g.google.spanner.executor.v1.DeleteCloudInstanceAction.fromObject(e.deleteCloudInstance,t+1)}if(null!=e.listCloudInstances){if(!d.isObject(e.listCloudInstances))throw TypeError(".google.spanner.executor.v1.AdminAction.listCloudInstances: object expected");n.listCloudInstances=g.google.spanner.executor.v1.ListCloudInstancesAction.fromObject(e.listCloudInstances,t+1)}if(null!=e.getCloudInstance){if(!d.isObject(e.getCloudInstance))throw TypeError(".google.spanner.executor.v1.AdminAction.getCloudInstance: object expected");n.getCloudInstance=g.google.spanner.executor.v1.GetCloudInstanceAction.fromObject(e.getCloudInstance,t+1)}if(null!=e.createCloudDatabase){if(!d.isObject(e.createCloudDatabase))throw TypeError(".google.spanner.executor.v1.AdminAction.createCloudDatabase: object expected");n.createCloudDatabase=g.google.spanner.executor.v1.CreateCloudDatabaseAction.fromObject(e.createCloudDatabase,t+1)}if(null!=e.updateCloudDatabaseDdl){if(!d.isObject(e.updateCloudDatabaseDdl))throw TypeError(".google.spanner.executor.v1.AdminAction.updateCloudDatabaseDdl: object expected");n.updateCloudDatabaseDdl=g.google.spanner.executor.v1.UpdateCloudDatabaseDdlAction.fromObject(e.updateCloudDatabaseDdl,t+1)}if(null!=e.updateCloudDatabase){if(!d.isObject(e.updateCloudDatabase))throw TypeError(".google.spanner.executor.v1.AdminAction.updateCloudDatabase: object expected");n.updateCloudDatabase=g.google.spanner.executor.v1.UpdateCloudDatabaseAction.fromObject(e.updateCloudDatabase,t+1)}if(null!=e.dropCloudDatabase){if(!d.isObject(e.dropCloudDatabase))throw TypeError(".google.spanner.executor.v1.AdminAction.dropCloudDatabase: object expected");n.dropCloudDatabase=g.google.spanner.executor.v1.DropCloudDatabaseAction.fromObject(e.dropCloudDatabase,t+1)}if(null!=e.listCloudDatabases){if(!d.isObject(e.listCloudDatabases))throw TypeError(".google.spanner.executor.v1.AdminAction.listCloudDatabases: object expected");n.listCloudDatabases=g.google.spanner.executor.v1.ListCloudDatabasesAction.fromObject(e.listCloudDatabases,t+1)}if(null!=e.listCloudDatabaseOperations){if(!d.isObject(e.listCloudDatabaseOperations))throw TypeError(".google.spanner.executor.v1.AdminAction.listCloudDatabaseOperations: object expected");n.listCloudDatabaseOperations=g.google.spanner.executor.v1.ListCloudDatabaseOperationsAction.fromObject(e.listCloudDatabaseOperations,t+1)}if(null!=e.restoreCloudDatabase){if(!d.isObject(e.restoreCloudDatabase))throw TypeError(".google.spanner.executor.v1.AdminAction.restoreCloudDatabase: object expected");n.restoreCloudDatabase=g.google.spanner.executor.v1.RestoreCloudDatabaseAction.fromObject(e.restoreCloudDatabase,t+1)}if(null!=e.getCloudDatabase){if(!d.isObject(e.getCloudDatabase))throw TypeError(".google.spanner.executor.v1.AdminAction.getCloudDatabase: object expected");n.getCloudDatabase=g.google.spanner.executor.v1.GetCloudDatabaseAction.fromObject(e.getCloudDatabase,t+1)}if(null!=e.createCloudBackup){if(!d.isObject(e.createCloudBackup))throw TypeError(".google.spanner.executor.v1.AdminAction.createCloudBackup: object expected");n.createCloudBackup=g.google.spanner.executor.v1.CreateCloudBackupAction.fromObject(e.createCloudBackup,t+1)}if(null!=e.copyCloudBackup){if(!d.isObject(e.copyCloudBackup))throw TypeError(".google.spanner.executor.v1.AdminAction.copyCloudBackup: object expected");n.copyCloudBackup=g.google.spanner.executor.v1.CopyCloudBackupAction.fromObject(e.copyCloudBackup,t+1)}if(null!=e.getCloudBackup){if(!d.isObject(e.getCloudBackup))throw TypeError(".google.spanner.executor.v1.AdminAction.getCloudBackup: object expected");n.getCloudBackup=g.google.spanner.executor.v1.GetCloudBackupAction.fromObject(e.getCloudBackup,t+1)}if(null!=e.updateCloudBackup){if(!d.isObject(e.updateCloudBackup))throw TypeError(".google.spanner.executor.v1.AdminAction.updateCloudBackup: object expected");n.updateCloudBackup=g.google.spanner.executor.v1.UpdateCloudBackupAction.fromObject(e.updateCloudBackup,t+1)}if(null!=e.deleteCloudBackup){if(!d.isObject(e.deleteCloudBackup))throw TypeError(".google.spanner.executor.v1.AdminAction.deleteCloudBackup: object expected");n.deleteCloudBackup=g.google.spanner.executor.v1.DeleteCloudBackupAction.fromObject(e.deleteCloudBackup,t+1)}if(null!=e.listCloudBackups){if(!d.isObject(e.listCloudBackups))throw TypeError(".google.spanner.executor.v1.AdminAction.listCloudBackups: object expected");n.listCloudBackups=g.google.spanner.executor.v1.ListCloudBackupsAction.fromObject(e.listCloudBackups,t+1)}if(null!=e.listCloudBackupOperations){if(!d.isObject(e.listCloudBackupOperations))throw TypeError(".google.spanner.executor.v1.AdminAction.listCloudBackupOperations: object expected");n.listCloudBackupOperations=g.google.spanner.executor.v1.ListCloudBackupOperationsAction.fromObject(e.listCloudBackupOperations,t+1)}if(null!=e.getOperation){if(!d.isObject(e.getOperation))throw TypeError(".google.spanner.executor.v1.AdminAction.getOperation: object expected");n.getOperation=g.google.spanner.executor.v1.GetOperationAction.fromObject(e.getOperation,t+1)}if(null!=e.cancelOperation){if(!d.isObject(e.cancelOperation))throw TypeError(".google.spanner.executor.v1.AdminAction.cancelOperation: object expected");n.cancelOperation=g.google.spanner.executor.v1.CancelOperationAction.fromObject(e.cancelOperation,t+1)}if(null!=e.changeQuorumCloudDatabase){if(!d.isObject(e.changeQuorumCloudDatabase))throw TypeError(".google.spanner.executor.v1.AdminAction.changeQuorumCloudDatabase: object expected");n.changeQuorumCloudDatabase=g.google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction.fromObject(e.changeQuorumCloudDatabase,t+1)}if(null!=e.addSplitPoints){if(!d.isObject(e.addSplitPoints))throw TypeError(".google.spanner.executor.v1.AdminAction.addSplitPoints: object expected");n.addSplitPoints=g.google.spanner.executor.v1.AddSplitPointsAction.fromObject(e.addSplitPoints,t+1)}return n},v.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.createUserInstanceConfig&&Object.hasOwnProperty.call(e,"createUserInstanceConfig")&&(o.createUserInstanceConfig=g.google.spanner.executor.v1.CreateUserInstanceConfigAction.toObject(e.createUserInstanceConfig,t,n+1),t.oneofs)&&(o.action="createUserInstanceConfig"),null!=e.updateUserInstanceConfig&&Object.hasOwnProperty.call(e,"updateUserInstanceConfig")&&(o.updateUserInstanceConfig=g.google.spanner.executor.v1.UpdateUserInstanceConfigAction.toObject(e.updateUserInstanceConfig,t,n+1),t.oneofs)&&(o.action="updateUserInstanceConfig"),null!=e.deleteUserInstanceConfig&&Object.hasOwnProperty.call(e,"deleteUserInstanceConfig")&&(o.deleteUserInstanceConfig=g.google.spanner.executor.v1.DeleteUserInstanceConfigAction.toObject(e.deleteUserInstanceConfig,t,n+1),t.oneofs)&&(o.action="deleteUserInstanceConfig"),null!=e.getCloudInstanceConfig&&Object.hasOwnProperty.call(e,"getCloudInstanceConfig")&&(o.getCloudInstanceConfig=g.google.spanner.executor.v1.GetCloudInstanceConfigAction.toObject(e.getCloudInstanceConfig,t,n+1),t.oneofs)&&(o.action="getCloudInstanceConfig"),null!=e.listInstanceConfigs&&Object.hasOwnProperty.call(e,"listInstanceConfigs")&&(o.listInstanceConfigs=g.google.spanner.executor.v1.ListCloudInstanceConfigsAction.toObject(e.listInstanceConfigs,t,n+1),t.oneofs)&&(o.action="listInstanceConfigs"),null!=e.createCloudInstance&&Object.hasOwnProperty.call(e,"createCloudInstance")&&(o.createCloudInstance=g.google.spanner.executor.v1.CreateCloudInstanceAction.toObject(e.createCloudInstance,t,n+1),t.oneofs)&&(o.action="createCloudInstance"),null!=e.updateCloudInstance&&Object.hasOwnProperty.call(e,"updateCloudInstance")&&(o.updateCloudInstance=g.google.spanner.executor.v1.UpdateCloudInstanceAction.toObject(e.updateCloudInstance,t,n+1),t.oneofs)&&(o.action="updateCloudInstance"),null!=e.deleteCloudInstance&&Object.hasOwnProperty.call(e,"deleteCloudInstance")&&(o.deleteCloudInstance=g.google.spanner.executor.v1.DeleteCloudInstanceAction.toObject(e.deleteCloudInstance,t,n+1),t.oneofs)&&(o.action="deleteCloudInstance"),null!=e.listCloudInstances&&Object.hasOwnProperty.call(e,"listCloudInstances")&&(o.listCloudInstances=g.google.spanner.executor.v1.ListCloudInstancesAction.toObject(e.listCloudInstances,t,n+1),t.oneofs)&&(o.action="listCloudInstances"),null!=e.getCloudInstance&&Object.hasOwnProperty.call(e,"getCloudInstance")&&(o.getCloudInstance=g.google.spanner.executor.v1.GetCloudInstanceAction.toObject(e.getCloudInstance,t,n+1),t.oneofs)&&(o.action="getCloudInstance"),null!=e.createCloudDatabase&&Object.hasOwnProperty.call(e,"createCloudDatabase")&&(o.createCloudDatabase=g.google.spanner.executor.v1.CreateCloudDatabaseAction.toObject(e.createCloudDatabase,t,n+1),t.oneofs)&&(o.action="createCloudDatabase"),null!=e.updateCloudDatabaseDdl&&Object.hasOwnProperty.call(e,"updateCloudDatabaseDdl")&&(o.updateCloudDatabaseDdl=g.google.spanner.executor.v1.UpdateCloudDatabaseDdlAction.toObject(e.updateCloudDatabaseDdl,t,n+1),t.oneofs)&&(o.action="updateCloudDatabaseDdl"),null!=e.dropCloudDatabase&&Object.hasOwnProperty.call(e,"dropCloudDatabase")&&(o.dropCloudDatabase=g.google.spanner.executor.v1.DropCloudDatabaseAction.toObject(e.dropCloudDatabase,t,n+1),t.oneofs)&&(o.action="dropCloudDatabase"),null!=e.listCloudDatabases&&Object.hasOwnProperty.call(e,"listCloudDatabases")&&(o.listCloudDatabases=g.google.spanner.executor.v1.ListCloudDatabasesAction.toObject(e.listCloudDatabases,t,n+1),t.oneofs)&&(o.action="listCloudDatabases"),null!=e.listCloudDatabaseOperations&&Object.hasOwnProperty.call(e,"listCloudDatabaseOperations")&&(o.listCloudDatabaseOperations=g.google.spanner.executor.v1.ListCloudDatabaseOperationsAction.toObject(e.listCloudDatabaseOperations,t,n+1),t.oneofs)&&(o.action="listCloudDatabaseOperations"),null!=e.restoreCloudDatabase&&Object.hasOwnProperty.call(e,"restoreCloudDatabase")&&(o.restoreCloudDatabase=g.google.spanner.executor.v1.RestoreCloudDatabaseAction.toObject(e.restoreCloudDatabase,t,n+1),t.oneofs)&&(o.action="restoreCloudDatabase"),null!=e.getCloudDatabase&&Object.hasOwnProperty.call(e,"getCloudDatabase")&&(o.getCloudDatabase=g.google.spanner.executor.v1.GetCloudDatabaseAction.toObject(e.getCloudDatabase,t,n+1),t.oneofs)&&(o.action="getCloudDatabase"),null!=e.createCloudBackup&&Object.hasOwnProperty.call(e,"createCloudBackup")&&(o.createCloudBackup=g.google.spanner.executor.v1.CreateCloudBackupAction.toObject(e.createCloudBackup,t,n+1),t.oneofs)&&(o.action="createCloudBackup"),null!=e.copyCloudBackup&&Object.hasOwnProperty.call(e,"copyCloudBackup")&&(o.copyCloudBackup=g.google.spanner.executor.v1.CopyCloudBackupAction.toObject(e.copyCloudBackup,t,n+1),t.oneofs)&&(o.action="copyCloudBackup"),null!=e.getCloudBackup&&Object.hasOwnProperty.call(e,"getCloudBackup")&&(o.getCloudBackup=g.google.spanner.executor.v1.GetCloudBackupAction.toObject(e.getCloudBackup,t,n+1),t.oneofs)&&(o.action="getCloudBackup"),null!=e.updateCloudBackup&&Object.hasOwnProperty.call(e,"updateCloudBackup")&&(o.updateCloudBackup=g.google.spanner.executor.v1.UpdateCloudBackupAction.toObject(e.updateCloudBackup,t,n+1),t.oneofs)&&(o.action="updateCloudBackup"),null!=e.deleteCloudBackup&&Object.hasOwnProperty.call(e,"deleteCloudBackup")&&(o.deleteCloudBackup=g.google.spanner.executor.v1.DeleteCloudBackupAction.toObject(e.deleteCloudBackup,t,n+1),t.oneofs)&&(o.action="deleteCloudBackup"),null!=e.listCloudBackups&&Object.hasOwnProperty.call(e,"listCloudBackups")&&(o.listCloudBackups=g.google.spanner.executor.v1.ListCloudBackupsAction.toObject(e.listCloudBackups,t,n+1),t.oneofs)&&(o.action="listCloudBackups"),null!=e.listCloudBackupOperations&&Object.hasOwnProperty.call(e,"listCloudBackupOperations")&&(o.listCloudBackupOperations=g.google.spanner.executor.v1.ListCloudBackupOperationsAction.toObject(e.listCloudBackupOperations,t,n+1),t.oneofs)&&(o.action="listCloudBackupOperations"),null!=e.getOperation&&Object.hasOwnProperty.call(e,"getOperation")&&(o.getOperation=g.google.spanner.executor.v1.GetOperationAction.toObject(e.getOperation,t,n+1),t.oneofs)&&(o.action="getOperation"),null!=e.cancelOperation&&Object.hasOwnProperty.call(e,"cancelOperation")&&(o.cancelOperation=g.google.spanner.executor.v1.CancelOperationAction.toObject(e.cancelOperation,t,n+1),t.oneofs)&&(o.action="cancelOperation"),null!=e.updateCloudDatabase&&Object.hasOwnProperty.call(e,"updateCloudDatabase")&&(o.updateCloudDatabase=g.google.spanner.executor.v1.UpdateCloudDatabaseAction.toObject(e.updateCloudDatabase,t,n+1),t.oneofs)&&(o.action="updateCloudDatabase"),null!=e.changeQuorumCloudDatabase&&Object.hasOwnProperty.call(e,"changeQuorumCloudDatabase")&&(o.changeQuorumCloudDatabase=g.google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction.toObject(e.changeQuorumCloudDatabase,t,n+1),t.oneofs)&&(o.action="changeQuorumCloudDatabase"),null!=e.addSplitPoints&&Object.hasOwnProperty.call(e,"addSplitPoints")&&(o.addSplitPoints=g.google.spanner.executor.v1.AddSplitPointsAction.toObject(e.addSplitPoints,t,n+1),t.oneofs)&&(o.action="addSplitPoints"),o},v.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},v.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.AdminAction"},v),e.CreateUserInstanceConfigAction=(Zt.prototype.userConfigId="",Zt.prototype.projectId="",Zt.prototype.baseConfigId="",Zt.prototype.replicas=d.emptyArray,Zt.create=function(e){return new Zt(e)},Zt.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.userConfigId&&Object.hasOwnProperty.call(e,"userConfigId")&&t.uint32(10).string(e.userConfigId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),null!=e.baseConfigId&&Object.hasOwnProperty.call(e,"baseConfigId")&&t.uint32(26).string(e.baseConfigId),null!=e.replicas&&e.replicas.length)for(var o=0;o<e.replicas.length;++o)g.google.spanner.admin.instance.v1.ReplicaInfo.encode(e.replicas[o],t.uint32(34).fork(),n+1).ldelim();return t},Zt.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Zt.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CreateUserInstanceConfigAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.userConfigId=e.string();break;case 2:i.projectId=e.string();break;case 3:i.baseConfigId=e.string();break;case 4:i.replicas&&i.replicas.length||(i.replicas=[]),i.replicas.push(g.google.spanner.admin.instance.v1.ReplicaInfo.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Zt.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Zt.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.userConfigId&&Object.hasOwnProperty.call(e,"userConfigId")&&!d.isString(e.userConfigId))return"userConfigId: string expected";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.baseConfigId&&Object.hasOwnProperty.call(e,"baseConfigId")&&!d.isString(e.baseConfigId))return"baseConfigId: string expected";if(null!=e.replicas&&Object.hasOwnProperty.call(e,"replicas")){if(!Array.isArray(e.replicas))return"replicas: array expected";for(var n=0;n<e.replicas.length;++n){var o=g.google.spanner.admin.instance.v1.ReplicaInfo.verify(e.replicas[n],t+1);if(o)return"replicas."+o}}return null},Zt.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CreateUserInstanceConfigAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CreateUserInstanceConfigAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.CreateUserInstanceConfigAction;if(null!=e.userConfigId&&(n.userConfigId=String(e.userConfigId)),null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.baseConfigId&&(n.baseConfigId=String(e.baseConfigId)),e.replicas){if(!Array.isArray(e.replicas))throw TypeError(".google.spanner.executor.v1.CreateUserInstanceConfigAction.replicas: array expected");n.replicas=[];for(var o=0;o<e.replicas.length;++o){if(!d.isObject(e.replicas[o]))throw TypeError(".google.spanner.executor.v1.CreateUserInstanceConfigAction.replicas: object expected");n.replicas[o]=g.google.spanner.admin.instance.v1.ReplicaInfo.fromObject(e.replicas[o],t+1)}}return n},Zt.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.replicas=[]),t.defaults&&(o.userConfigId="",o.projectId="",o.baseConfigId=""),null!=e.userConfigId&&Object.hasOwnProperty.call(e,"userConfigId")&&(o.userConfigId=e.userConfigId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(o.projectId=e.projectId),null!=e.baseConfigId&&Object.hasOwnProperty.call(e,"baseConfigId")&&(o.baseConfigId=e.baseConfigId),e.replicas&&e.replicas.length){o.replicas=[];for(var r=0;r<e.replicas.length;++r)o.replicas[r]=g.google.spanner.admin.instance.v1.ReplicaInfo.toObject(e.replicas[r],t,n+1)}return o},Zt.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Zt.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CreateUserInstanceConfigAction"},Zt),e.UpdateUserInstanceConfigAction=($t.prototype.userConfigId="",$t.prototype.projectId="",$t.prototype.displayName=null,$t.prototype.labels=d.emptyObject,Object.defineProperty($t.prototype,"_displayName",{get:d.oneOfGetter(t=["displayName"]),set:d.oneOfSetter(t)}),$t.create=function(e){return new $t(e)},$t.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.userConfigId&&Object.hasOwnProperty.call(e,"userConfigId")&&t.uint32(10).string(e.userConfigId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&t.uint32(26).string(e.displayName),null!=e.labels&&Object.hasOwnProperty.call(e,"labels"))for(var o=Object.keys(e.labels),r=0;r<o.length;++r)t.uint32(34).fork().uint32(10).string(o[r]).uint32(18).string(e.labels[o[r]]).ldelim();return t},$t.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},$t.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.UpdateUserInstanceConfigAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.userConfigId=e.string();break;case 2:i.projectId=e.string();break;case 3:i.displayName=e.string();break;case 4:i.labels===d.emptyObject&&(i.labels={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.labels,c),i.labels[c]=l;break;default:e.skipType(7&a,o)}}return i},$t.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},$t.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.userConfigId&&Object.hasOwnProperty.call(e,"userConfigId")&&!d.isString(e.userConfigId))return"userConfigId: string expected";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&!d.isString(e.displayName))return"displayName: string expected";if(null!=e.labels&&Object.hasOwnProperty.call(e,"labels")){if(!d.isObject(e.labels))return"labels: object expected";for(var n=Object.keys(e.labels),o=0;o<n.length;++o)if(!d.isString(e.labels[n[o]]))return"labels: string{k:string} expected"}return null},$t.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.UpdateUserInstanceConfigAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.UpdateUserInstanceConfigAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.UpdateUserInstanceConfigAction;if(null!=e.userConfigId&&(n.userConfigId=String(e.userConfigId)),null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.displayName&&(n.displayName=String(e.displayName)),e.labels){if(!d.isObject(e.labels))throw TypeError(".google.spanner.executor.v1.UpdateUserInstanceConfigAction.labels: object expected");n.labels={};for(var o=Object.keys(e.labels),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.labels,o[r]),n.labels[o[r]]=String(e.labels[o[r]])}return n},$t.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.labels={}),t.defaults&&(r.userConfigId="",r.projectId=""),null!=e.userConfigId&&Object.hasOwnProperty.call(e,"userConfigId")&&(r.userConfigId=e.userConfigId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(r.projectId=e.projectId),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&(r.displayName=e.displayName,t.oneofs)&&(r._displayName="displayName"),e.labels&&(o=Object.keys(e.labels)).length){r.labels={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.labels,o[i]),r.labels[o[i]]=e.labels[o[i]]}return r},$t.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},$t.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.UpdateUserInstanceConfigAction"},$t),e.GetCloudInstanceConfigAction=(en.prototype.instanceConfigId="",en.prototype.projectId="",en.create=function(e){return new en(e)},en.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instanceConfigId&&Object.hasOwnProperty.call(e,"instanceConfigId")&&t.uint32(10).string(e.instanceConfigId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),t},en.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},en.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.GetCloudInstanceConfigAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceConfigId=e.string();break;case 2:i.projectId=e.string();break;default:e.skipType(7&a,o)}}return i},en.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},en.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.instanceConfigId&&Object.hasOwnProperty.call(e,"instanceConfigId")&&!d.isString(e.instanceConfigId)?"instanceConfigId: string expected":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null},en.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.GetCloudInstanceConfigAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.GetCloudInstanceConfigAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.GetCloudInstanceConfigAction;return null!=e.instanceConfigId&&(t.instanceConfigId=String(e.instanceConfigId)),null!=e.projectId&&(t.projectId=String(e.projectId)),t},en.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.instanceConfigId="",n.projectId=""),null!=e.instanceConfigId&&Object.hasOwnProperty.call(e,"instanceConfigId")&&(n.instanceConfigId=e.instanceConfigId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),n},en.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},en.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.GetCloudInstanceConfigAction"},en),e.DeleteUserInstanceConfigAction=(tn.prototype.userConfigId="",tn.prototype.projectId="",tn.create=function(e){return new tn(e)},tn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.userConfigId&&Object.hasOwnProperty.call(e,"userConfigId")&&t.uint32(10).string(e.userConfigId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),t},tn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},tn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.DeleteUserInstanceConfigAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.userConfigId=e.string();break;case 2:i.projectId=e.string();break;default:e.skipType(7&a,o)}}return i},tn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},tn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.userConfigId&&Object.hasOwnProperty.call(e,"userConfigId")&&!d.isString(e.userConfigId)?"userConfigId: string expected":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null},tn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.DeleteUserInstanceConfigAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.DeleteUserInstanceConfigAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.DeleteUserInstanceConfigAction;return null!=e.userConfigId&&(t.userConfigId=String(e.userConfigId)),null!=e.projectId&&(t.projectId=String(e.projectId)),t},tn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.userConfigId="",n.projectId=""),null!=e.userConfigId&&Object.hasOwnProperty.call(e,"userConfigId")&&(n.userConfigId=e.userConfigId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),n},tn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},tn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.DeleteUserInstanceConfigAction"},tn),e.ListCloudInstanceConfigsAction=(nn.prototype.projectId="",nn.prototype.pageSize=null,nn.prototype.pageToken=null,Object.defineProperty(nn.prototype,"_pageSize",{get:d.oneOfGetter(a=["pageSize"]),set:d.oneOfSetter(a)}),Object.defineProperty(nn.prototype,"_pageToken",{get:d.oneOfGetter(a=["pageToken"]),set:d.oneOfSetter(a)}),nn.create=function(e){return new nn(e)},nn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(16).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(26).string(e.pageToken),t},nn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},nn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ListCloudInstanceConfigsAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.pageSize=e.int32();break;case 3:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},nn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},nn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},nn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ListCloudInstanceConfigsAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ListCloudInstanceConfigsAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.ListCloudInstanceConfigsAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},nn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize,t.oneofs)&&(n._pageSize="pageSize"),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken,t.oneofs)&&(n._pageToken="pageToken"),n},nn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},nn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ListCloudInstanceConfigsAction"},nn),e.CreateCloudInstanceAction=(j.prototype.instanceId="",j.prototype.projectId="",j.prototype.instanceConfigId="",j.prototype.nodeCount=null,j.prototype.processingUnits=null,j.prototype.autoscalingConfig=null,j.prototype.labels=d.emptyObject,j.prototype.edition=0,Object.defineProperty(j.prototype,"_nodeCount",{get:d.oneOfGetter(t=["nodeCount"]),set:d.oneOfSetter(t)}),Object.defineProperty(j.prototype,"_processingUnits",{get:d.oneOfGetter(t=["processingUnits"]),set:d.oneOfSetter(t)}),Object.defineProperty(j.prototype,"_autoscalingConfig",{get:d.oneOfGetter(t=["autoscalingConfig"]),set:d.oneOfSetter(t)}),j.create=function(e){return new j(e)},j.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(10).string(e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),null!=e.instanceConfigId&&Object.hasOwnProperty.call(e,"instanceConfigId")&&t.uint32(26).string(e.instanceConfigId),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&t.uint32(32).int32(e.nodeCount),null!=e.labels&&Object.hasOwnProperty.call(e,"labels"))for(var o=Object.keys(e.labels),r=0;r<o.length;++r)t.uint32(42).fork().uint32(10).string(o[r]).uint32(18).string(e.labels[o[r]]).ldelim();return null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&t.uint32(48).int32(e.processingUnits),null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&g.google.spanner.admin.instance.v1.AutoscalingConfig.encode(e.autoscalingConfig,t.uint32(58).fork(),n+1).ldelim(),null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&t.uint32(64).int32(e.edition),t},j.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},j.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CreateCloudInstanceAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceId=e.string();break;case 2:i.projectId=e.string();break;case 3:i.instanceConfigId=e.string();break;case 4:i.nodeCount=e.int32();break;case 6:i.processingUnits=e.int32();break;case 7:i.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.decode(e,e.uint32(),void 0,o+1);break;case 5:i.labels===d.emptyObject&&(i.labels={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.labels,c),i.labels[c]=l;break;case 8:i.edition=e.int32();break;default:e.skipType(7&a,o)}}return i},j.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},j.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId))return"instanceId: string expected";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.instanceConfigId&&Object.hasOwnProperty.call(e,"instanceConfigId")&&!d.isString(e.instanceConfigId))return"instanceConfigId: string expected";if(null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&!d.isInteger(e.nodeCount))return"nodeCount: integer expected";if(null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&!d.isInteger(e.processingUnits))return"processingUnits: integer expected";if(null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")){t=g.google.spanner.admin.instance.v1.AutoscalingConfig.verify(e.autoscalingConfig,t+1);if(t)return"autoscalingConfig."+t}if(null!=e.labels&&Object.hasOwnProperty.call(e,"labels")){if(!d.isObject(e.labels))return"labels: object expected";for(var n=Object.keys(e.labels),o=0;o<n.length;++o)if(!d.isString(e.labels[n[o]]))return"labels: string{k:string} expected"}if(null!=e.edition&&Object.hasOwnProperty.call(e,"edition"))switch(e.edition){default:return"edition: enum value expected";case 0:case 1:case 2:case 3:}return null},j.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CreateCloudInstanceAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CreateCloudInstanceAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.CreateCloudInstanceAction;if(null!=e.instanceId&&(n.instanceId=String(e.instanceId)),null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.instanceConfigId&&(n.instanceConfigId=String(e.instanceConfigId)),null!=e.nodeCount&&(n.nodeCount=0|e.nodeCount),null!=e.processingUnits&&(n.processingUnits=0|e.processingUnits),null!=e.autoscalingConfig){if(!d.isObject(e.autoscalingConfig))throw TypeError(".google.spanner.executor.v1.CreateCloudInstanceAction.autoscalingConfig: object expected");n.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.fromObject(e.autoscalingConfig,t+1)}if(e.labels){if(!d.isObject(e.labels))throw TypeError(".google.spanner.executor.v1.CreateCloudInstanceAction.labels: object expected");n.labels={};for(var o=Object.keys(e.labels),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.labels,o[r]),n.labels[o[r]]=String(e.labels[o[r]])}switch(e.edition){default:"number"==typeof e.edition&&(n.edition=e.edition);break;case"EDITION_UNSPECIFIED":case 0:n.edition=0;break;case"STANDARD":case 1:n.edition=1;break;case"ENTERPRISE":case 2:n.edition=2;break;case"ENTERPRISE_PLUS":case 3:n.edition=3}return n},j.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.labels={}),t.defaults&&(r.instanceId="",r.projectId="",r.instanceConfigId="",r.edition=t.enums===String?"EDITION_UNSPECIFIED":0),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(r.instanceId=e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(r.projectId=e.projectId),null!=e.instanceConfigId&&Object.hasOwnProperty.call(e,"instanceConfigId")&&(r.instanceConfigId=e.instanceConfigId),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&(r.nodeCount=e.nodeCount,t.oneofs)&&(r._nodeCount="nodeCount"),e.labels&&(o=Object.keys(e.labels)).length){r.labels={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.labels,o[i]),r.labels[o[i]]=e.labels[o[i]]}return null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&(r.processingUnits=e.processingUnits,t.oneofs)&&(r._processingUnits="processingUnits"),null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&(r.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.toObject(e.autoscalingConfig,t,n+1),t.oneofs)&&(r._autoscalingConfig="autoscalingConfig"),null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&(r.edition=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.Instance.Edition[e.edition]?e.edition:g.google.spanner.admin.instance.v1.Instance.Edition[e.edition]),r},j.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},j.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CreateCloudInstanceAction"},j),e.UpdateCloudInstanceAction=(x.prototype.instanceId="",x.prototype.projectId="",x.prototype.displayName=null,x.prototype.nodeCount=null,x.prototype.processingUnits=null,x.prototype.autoscalingConfig=null,x.prototype.labels=d.emptyObject,x.prototype.edition=0,Object.defineProperty(x.prototype,"_displayName",{get:d.oneOfGetter(a=["displayName"]),set:d.oneOfSetter(a)}),Object.defineProperty(x.prototype,"_nodeCount",{get:d.oneOfGetter(a=["nodeCount"]),set:d.oneOfSetter(a)}),Object.defineProperty(x.prototype,"_processingUnits",{get:d.oneOfGetter(a=["processingUnits"]),set:d.oneOfSetter(a)}),Object.defineProperty(x.prototype,"_autoscalingConfig",{get:d.oneOfGetter(a=["autoscalingConfig"]),set:d.oneOfSetter(a)}),x.create=function(e){return new x(e)},x.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(10).string(e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&t.uint32(26).string(e.displayName),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&t.uint32(32).int32(e.nodeCount),null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&t.uint32(40).int32(e.processingUnits),null!=e.labels&&Object.hasOwnProperty.call(e,"labels"))for(var o=Object.keys(e.labels),r=0;r<o.length;++r)t.uint32(50).fork().uint32(10).string(o[r]).uint32(18).string(e.labels[o[r]]).ldelim();return null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&g.google.spanner.admin.instance.v1.AutoscalingConfig.encode(e.autoscalingConfig,t.uint32(58).fork(),n+1).ldelim(),null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&t.uint32(64).int32(e.edition),t},x.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},x.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.UpdateCloudInstanceAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceId=e.string();break;case 2:i.projectId=e.string();break;case 3:i.displayName=e.string();break;case 4:i.nodeCount=e.int32();break;case 5:i.processingUnits=e.int32();break;case 7:i.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.decode(e,e.uint32(),void 0,o+1);break;case 6:i.labels===d.emptyObject&&(i.labels={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.labels,c),i.labels[c]=l;break;case 8:i.edition=e.int32();break;default:e.skipType(7&a,o)}}return i},x.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},x.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId))return"instanceId: string expected";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&!d.isString(e.displayName))return"displayName: string expected";if(null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&!d.isInteger(e.nodeCount))return"nodeCount: integer expected";if(null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&!d.isInteger(e.processingUnits))return"processingUnits: integer expected";if(null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")){t=g.google.spanner.admin.instance.v1.AutoscalingConfig.verify(e.autoscalingConfig,t+1);if(t)return"autoscalingConfig."+t}if(null!=e.labels&&Object.hasOwnProperty.call(e,"labels")){if(!d.isObject(e.labels))return"labels: object expected";for(var n=Object.keys(e.labels),o=0;o<n.length;++o)if(!d.isString(e.labels[n[o]]))return"labels: string{k:string} expected"}if(null!=e.edition&&Object.hasOwnProperty.call(e,"edition"))switch(e.edition){default:return"edition: enum value expected";case 0:case 1:case 2:case 3:}return null},x.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.UpdateCloudInstanceAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.UpdateCloudInstanceAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.UpdateCloudInstanceAction;if(null!=e.instanceId&&(n.instanceId=String(e.instanceId)),null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.displayName&&(n.displayName=String(e.displayName)),null!=e.nodeCount&&(n.nodeCount=0|e.nodeCount),null!=e.processingUnits&&(n.processingUnits=0|e.processingUnits),null!=e.autoscalingConfig){if(!d.isObject(e.autoscalingConfig))throw TypeError(".google.spanner.executor.v1.UpdateCloudInstanceAction.autoscalingConfig: object expected");n.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.fromObject(e.autoscalingConfig,t+1)}if(e.labels){if(!d.isObject(e.labels))throw TypeError(".google.spanner.executor.v1.UpdateCloudInstanceAction.labels: object expected");n.labels={};for(var o=Object.keys(e.labels),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.labels,o[r]),n.labels[o[r]]=String(e.labels[o[r]])}switch(e.edition){default:"number"==typeof e.edition&&(n.edition=e.edition);break;case"EDITION_UNSPECIFIED":case 0:n.edition=0;break;case"STANDARD":case 1:n.edition=1;break;case"ENTERPRISE":case 2:n.edition=2;break;case"ENTERPRISE_PLUS":case 3:n.edition=3}return n},x.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.labels={}),t.defaults&&(r.instanceId="",r.projectId="",r.edition=t.enums===String?"EDITION_UNSPECIFIED":0),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(r.instanceId=e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(r.projectId=e.projectId),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&(r.displayName=e.displayName,t.oneofs)&&(r._displayName="displayName"),null!=e.nodeCount&&Object.hasOwnProperty.call(e,"nodeCount")&&(r.nodeCount=e.nodeCount,t.oneofs)&&(r._nodeCount="nodeCount"),null!=e.processingUnits&&Object.hasOwnProperty.call(e,"processingUnits")&&(r.processingUnits=e.processingUnits,t.oneofs)&&(r._processingUnits="processingUnits"),e.labels&&(o=Object.keys(e.labels)).length){r.labels={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.labels,o[i]),r.labels[o[i]]=e.labels[o[i]]}return null!=e.autoscalingConfig&&Object.hasOwnProperty.call(e,"autoscalingConfig")&&(r.autoscalingConfig=g.google.spanner.admin.instance.v1.AutoscalingConfig.toObject(e.autoscalingConfig,t,n+1),t.oneofs)&&(r._autoscalingConfig="autoscalingConfig"),null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&(r.edition=t.enums!==String||void 0===g.google.spanner.admin.instance.v1.Instance.Edition[e.edition]?e.edition:g.google.spanner.admin.instance.v1.Instance.Edition[e.edition]),r},x.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},x.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.UpdateCloudInstanceAction"},x),e.DeleteCloudInstanceAction=(on.prototype.instanceId="",on.prototype.projectId="",on.create=function(e){return new on(e)},on.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(10).string(e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),t},on.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},on.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.DeleteCloudInstanceAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceId=e.string();break;case 2:i.projectId=e.string();break;default:e.skipType(7&a,o)}}return i},on.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},on.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null},on.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.DeleteCloudInstanceAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.DeleteCloudInstanceAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.DeleteCloudInstanceAction;return null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.projectId&&(t.projectId=String(e.projectId)),t},on.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.instanceId="",n.projectId=""),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),n},on.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},on.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.DeleteCloudInstanceAction"},on),e.CreateCloudDatabaseAction=(rn.prototype.instanceId="",rn.prototype.projectId="",rn.prototype.databaseId="",rn.prototype.sdlStatement=d.emptyArray,rn.prototype.encryptionConfig=null,rn.prototype.dialect=null,rn.prototype.protoDescriptors=null,Object.defineProperty(rn.prototype,"_dialect",{get:d.oneOfGetter(t=["dialect"]),set:d.oneOfSetter(t)}),Object.defineProperty(rn.prototype,"_protoDescriptors",{get:d.oneOfGetter(t=["protoDescriptors"]),set:d.oneOfSetter(t)}),rn.create=function(e){return new rn(e)},rn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(10).string(e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(26).string(e.databaseId),null!=e.sdlStatement&&e.sdlStatement.length)for(var o=0;o<e.sdlStatement.length;++o)t.uint32(34).string(e.sdlStatement[o]);return null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&g.google.spanner.admin.database.v1.EncryptionConfig.encode(e.encryptionConfig,t.uint32(42).fork(),n+1).ldelim(),null!=e.dialect&&Object.hasOwnProperty.call(e,"dialect")&&t.uint32(50).string(e.dialect),null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&t.uint32(58).bytes(e.protoDescriptors),t},rn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},rn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CreateCloudDatabaseAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceId=e.string();break;case 2:i.projectId=e.string();break;case 3:i.databaseId=e.string();break;case 4:i.sdlStatement&&i.sdlStatement.length||(i.sdlStatement=[]),i.sdlStatement.push(e.string());break;case 5:i.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.decode(e,e.uint32(),void 0,o+1);break;case 6:i.dialect=e.string();break;case 7:i.protoDescriptors=e.bytes();break;default:e.skipType(7&a,o)}}return i},rn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},rn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId))return"instanceId: string expected";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!d.isString(e.databaseId))return"databaseId: string expected";if(null!=e.sdlStatement&&Object.hasOwnProperty.call(e,"sdlStatement")){if(!Array.isArray(e.sdlStatement))return"sdlStatement: array expected";for(var n=0;n<e.sdlStatement.length;++n)if(!d.isString(e.sdlStatement[n]))return"sdlStatement: string[] expected"}if(null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")){t=g.google.spanner.admin.database.v1.EncryptionConfig.verify(e.encryptionConfig,t+1);if(t)return"encryptionConfig."+t}return null!=e.dialect&&Object.hasOwnProperty.call(e,"dialect")&&!d.isString(e.dialect)?"dialect: string expected":null==e.protoDescriptors||!Object.hasOwnProperty.call(e,"protoDescriptors")||e.protoDescriptors&&"number"==typeof e.protoDescriptors.length||d.isString(e.protoDescriptors)?null:"protoDescriptors: buffer expected"},rn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CreateCloudDatabaseAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CreateCloudDatabaseAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.CreateCloudDatabaseAction;if(null!=e.instanceId&&(n.instanceId=String(e.instanceId)),null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.databaseId&&(n.databaseId=String(e.databaseId)),e.sdlStatement){if(!Array.isArray(e.sdlStatement))throw TypeError(".google.spanner.executor.v1.CreateCloudDatabaseAction.sdlStatement: array expected");n.sdlStatement=[];for(var o=0;o<e.sdlStatement.length;++o)n.sdlStatement[o]=String(e.sdlStatement[o])}if(null!=e.encryptionConfig){if(!d.isObject(e.encryptionConfig))throw TypeError(".google.spanner.executor.v1.CreateCloudDatabaseAction.encryptionConfig: object expected");n.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.fromObject(e.encryptionConfig,t+1)}return null!=e.dialect&&(n.dialect=String(e.dialect)),null!=e.protoDescriptors&&("string"==typeof e.protoDescriptors?d.base64.decode(e.protoDescriptors,n.protoDescriptors=d.newBuffer(d.base64.length(e.protoDescriptors)),0):0<=e.protoDescriptors.length&&(n.protoDescriptors=e.protoDescriptors)),n},rn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.sdlStatement=[]),t.defaults&&(o.instanceId="",o.projectId="",o.databaseId="",o.encryptionConfig=null),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(o.instanceId=e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(o.projectId=e.projectId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&(o.databaseId=e.databaseId),e.sdlStatement&&e.sdlStatement.length){o.sdlStatement=[];for(var r=0;r<e.sdlStatement.length;++r)o.sdlStatement[r]=e.sdlStatement[r]}return null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(o.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.toObject(e.encryptionConfig,t,n+1)),null!=e.dialect&&Object.hasOwnProperty.call(e,"dialect")&&(o.dialect=e.dialect,t.oneofs)&&(o._dialect="dialect"),null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&(o.protoDescriptors=t.bytes===String?d.base64.encode(e.protoDescriptors,0,e.protoDescriptors.length):t.bytes===Array?Array.prototype.slice.call(e.protoDescriptors):e.protoDescriptors,t.oneofs)&&(o._protoDescriptors="protoDescriptors"),o},rn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},rn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CreateCloudDatabaseAction"},rn),e.UpdateCloudDatabaseDdlAction=(an.prototype.instanceId="",an.prototype.projectId="",an.prototype.databaseId="",an.prototype.sdlStatement=d.emptyArray,an.prototype.operationId="",an.prototype.protoDescriptors=null,Object.defineProperty(an.prototype,"_protoDescriptors",{get:d.oneOfGetter(a=["protoDescriptors"]),set:d.oneOfSetter(a)}),an.create=function(e){return new an(e)},an.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(10).string(e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(26).string(e.databaseId),null!=e.sdlStatement&&e.sdlStatement.length)for(var o=0;o<e.sdlStatement.length;++o)t.uint32(34).string(e.sdlStatement[o]);return null!=e.operationId&&Object.hasOwnProperty.call(e,"operationId")&&t.uint32(42).string(e.operationId),null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&t.uint32(50).bytes(e.protoDescriptors),t},an.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},an.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.UpdateCloudDatabaseDdlAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceId=e.string();break;case 2:i.projectId=e.string();break;case 3:i.databaseId=e.string();break;case 4:i.sdlStatement&&i.sdlStatement.length||(i.sdlStatement=[]),i.sdlStatement.push(e.string());break;case 5:i.operationId=e.string();break;case 6:i.protoDescriptors=e.bytes();break;default:e.skipType(7&a,o)}}return i},an.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},an.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId))return"instanceId: string expected";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!d.isString(e.databaseId))return"databaseId: string expected";if(null!=e.sdlStatement&&Object.hasOwnProperty.call(e,"sdlStatement")){if(!Array.isArray(e.sdlStatement))return"sdlStatement: array expected";for(var n=0;n<e.sdlStatement.length;++n)if(!d.isString(e.sdlStatement[n]))return"sdlStatement: string[] expected"}return null!=e.operationId&&Object.hasOwnProperty.call(e,"operationId")&&!d.isString(e.operationId)?"operationId: string expected":null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&!(e.protoDescriptors&&"number"==typeof e.protoDescriptors.length||d.isString(e.protoDescriptors))?"protoDescriptors: buffer expected":null},an.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.UpdateCloudDatabaseDdlAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.UpdateCloudDatabaseDdlAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.UpdateCloudDatabaseDdlAction;if(null!=e.instanceId&&(n.instanceId=String(e.instanceId)),null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.databaseId&&(n.databaseId=String(e.databaseId)),e.sdlStatement){if(!Array.isArray(e.sdlStatement))throw TypeError(".google.spanner.executor.v1.UpdateCloudDatabaseDdlAction.sdlStatement: array expected");n.sdlStatement=[];for(var o=0;o<e.sdlStatement.length;++o)n.sdlStatement[o]=String(e.sdlStatement[o])}return null!=e.operationId&&(n.operationId=String(e.operationId)),null!=e.protoDescriptors&&("string"==typeof e.protoDescriptors?d.base64.decode(e.protoDescriptors,n.protoDescriptors=d.newBuffer(d.base64.length(e.protoDescriptors)),0):0<=e.protoDescriptors.length&&(n.protoDescriptors=e.protoDescriptors)),n},an.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.sdlStatement=[]),t.defaults&&(o.instanceId="",o.projectId="",o.databaseId="",o.operationId=""),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(o.instanceId=e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(o.projectId=e.projectId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&(o.databaseId=e.databaseId),e.sdlStatement&&e.sdlStatement.length){o.sdlStatement=[];for(var r=0;r<e.sdlStatement.length;++r)o.sdlStatement[r]=e.sdlStatement[r]}return null!=e.operationId&&Object.hasOwnProperty.call(e,"operationId")&&(o.operationId=e.operationId),null!=e.protoDescriptors&&Object.hasOwnProperty.call(e,"protoDescriptors")&&(o.protoDescriptors=t.bytes===String?d.base64.encode(e.protoDescriptors,0,e.protoDescriptors.length):t.bytes===Array?Array.prototype.slice.call(e.protoDescriptors):e.protoDescriptors,t.oneofs)&&(o._protoDescriptors="protoDescriptors"),o},an.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},an.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.UpdateCloudDatabaseDdlAction"},an),e.UpdateCloudDatabaseAction=(sn.prototype.instanceId="",sn.prototype.projectId="",sn.prototype.databaseName="",sn.prototype.enableDropProtection=!1,sn.create=function(e){return new sn(e)},sn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(10).string(e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),null!=e.databaseName&&Object.hasOwnProperty.call(e,"databaseName")&&t.uint32(26).string(e.databaseName),null!=e.enableDropProtection&&Object.hasOwnProperty.call(e,"enableDropProtection")&&t.uint32(32).bool(e.enableDropProtection),t},sn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},sn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.UpdateCloudDatabaseAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceId=e.string();break;case 2:i.projectId=e.string();break;case 3:i.databaseName=e.string();break;case 4:i.enableDropProtection=e.bool();break;default:e.skipType(7&a,o)}}return i},sn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},sn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.databaseName&&Object.hasOwnProperty.call(e,"databaseName")&&!d.isString(e.databaseName)?"databaseName: string expected":null!=e.enableDropProtection&&Object.hasOwnProperty.call(e,"enableDropProtection")&&"boolean"!=typeof e.enableDropProtection?"enableDropProtection: boolean expected":null},sn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.UpdateCloudDatabaseAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.UpdateCloudDatabaseAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.UpdateCloudDatabaseAction;return null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.databaseName&&(t.databaseName=String(e.databaseName)),null!=e.enableDropProtection&&(t.enableDropProtection=Boolean(e.enableDropProtection)),t},sn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.instanceId="",n.projectId="",n.databaseName="",n.enableDropProtection=!1),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.databaseName&&Object.hasOwnProperty.call(e,"databaseName")&&(n.databaseName=e.databaseName),null!=e.enableDropProtection&&Object.hasOwnProperty.call(e,"enableDropProtection")&&(n.enableDropProtection=e.enableDropProtection),n},sn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},sn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.UpdateCloudDatabaseAction"},sn),e.DropCloudDatabaseAction=(cn.prototype.instanceId="",cn.prototype.projectId="",cn.prototype.databaseId="",cn.create=function(e){return new cn(e)},cn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(10).string(e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(18).string(e.projectId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(26).string(e.databaseId),t},cn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},cn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.DropCloudDatabaseAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.instanceId=e.string();break;case 2:i.projectId=e.string();break;case 3:i.databaseId=e.string();break;default:e.skipType(7&a,o)}}return i},cn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},cn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!d.isString(e.databaseId)?"databaseId: string expected":null},cn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.DropCloudDatabaseAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.DropCloudDatabaseAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.DropCloudDatabaseAction;return null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.databaseId&&(t.databaseId=String(e.databaseId)),t},cn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.instanceId="",n.projectId="",n.databaseId=""),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&(n.databaseId=e.databaseId),n},cn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},cn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.DropCloudDatabaseAction"},cn),e.ChangeQuorumCloudDatabaseAction=(ln.prototype.databaseUri=null,ln.prototype.servingLocations=d.emptyArray,Object.defineProperty(ln.prototype,"_databaseUri",{get:d.oneOfGetter(t=["databaseUri"]),set:d.oneOfSetter(t)}),ln.create=function(e){return new ln(e)},ln.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.databaseUri&&Object.hasOwnProperty.call(e,"databaseUri")&&t.uint32(10).string(e.databaseUri),null!=e.servingLocations&&e.servingLocations.length)for(var o=0;o<e.servingLocations.length;++o)t.uint32(18).string(e.servingLocations[o]);return t},ln.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ln.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.databaseUri=e.string();break;case 2:i.servingLocations&&i.servingLocations.length||(i.servingLocations=[]),i.servingLocations.push(e.string());break;default:e.skipType(7&a,o)}}return i},ln.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ln.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.databaseUri&&Object.hasOwnProperty.call(e,"databaseUri")&&!d.isString(e.databaseUri))return"databaseUri: string expected";if(null!=e.servingLocations&&Object.hasOwnProperty.call(e,"servingLocations")){if(!Array.isArray(e.servingLocations))return"servingLocations: array expected";for(var n=0;n<e.servingLocations.length;++n)if(!d.isString(e.servingLocations[n]))return"servingLocations: string[] expected"}return null},ln.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction;if(null!=e.databaseUri&&(n.databaseUri=String(e.databaseUri)),e.servingLocations){if(!Array.isArray(e.servingLocations))throw TypeError(".google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction.servingLocations: array expected");n.servingLocations=[];for(var o=0;o<e.servingLocations.length;++o)n.servingLocations[o]=String(e.servingLocations[o])}return n},ln.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.servingLocations=[]),null!=e.databaseUri&&Object.hasOwnProperty.call(e,"databaseUri")&&(o.databaseUri=e.databaseUri,t.oneofs)&&(o._databaseUri="databaseUri"),e.servingLocations&&e.servingLocations.length){o.servingLocations=[];for(var r=0;r<e.servingLocations.length;++r)o.servingLocations[r]=e.servingLocations[r]}return o},ln.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ln.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ChangeQuorumCloudDatabaseAction"},ln),e.AdaptMessageAction=(un.prototype.databaseUri="",un.prototype.protocol="",un.prototype.payload=d.newBuffer([]),un.prototype.attachments=d.emptyObject,un.prototype.query="",un.prototype.prepareThenExecute=!1,un.create=function(e){return new un(e)},un.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.databaseUri&&Object.hasOwnProperty.call(e,"databaseUri")&&t.uint32(10).string(e.databaseUri),null!=e.protocol&&Object.hasOwnProperty.call(e,"protocol")&&t.uint32(18).string(e.protocol),null!=e.payload&&Object.hasOwnProperty.call(e,"payload")&&t.uint32(26).bytes(e.payload),null!=e.attachments&&Object.hasOwnProperty.call(e,"attachments"))for(var o=Object.keys(e.attachments),r=0;r<o.length;++r)t.uint32(34).fork().uint32(10).string(o[r]).uint32(18).string(e.attachments[o[r]]).ldelim();return null!=e.query&&Object.hasOwnProperty.call(e,"query")&&t.uint32(42).string(e.query),null!=e.prepareThenExecute&&Object.hasOwnProperty.call(e,"prepareThenExecute")&&t.uint32(48).bool(e.prepareThenExecute),t},un.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},un.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.AdaptMessageAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.databaseUri=e.string();break;case 2:i.protocol=e.string();break;case 3:i.payload=e.bytes();break;case 4:i.attachments===d.emptyObject&&(i.attachments={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.attachments,c),i.attachments[c]=l;break;case 5:i.query=e.string();break;case 6:i.prepareThenExecute=e.bool();break;default:e.skipType(7&a,o)}}return i},un.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},un.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.databaseUri&&Object.hasOwnProperty.call(e,"databaseUri")&&!d.isString(e.databaseUri))return"databaseUri: string expected";if(null!=e.protocol&&Object.hasOwnProperty.call(e,"protocol")&&!d.isString(e.protocol))return"protocol: string expected";if(null!=e.payload&&Object.hasOwnProperty.call(e,"payload")&&!(e.payload&&"number"==typeof e.payload.length||d.isString(e.payload)))return"payload: buffer expected";if(null!=e.attachments&&Object.hasOwnProperty.call(e,"attachments")){if(!d.isObject(e.attachments))return"attachments: object expected";for(var n=Object.keys(e.attachments),o=0;o<n.length;++o)if(!d.isString(e.attachments[n[o]]))return"attachments: string{k:string} expected"}return null!=e.query&&Object.hasOwnProperty.call(e,"query")&&!d.isString(e.query)?"query: string expected":null!=e.prepareThenExecute&&Object.hasOwnProperty.call(e,"prepareThenExecute")&&"boolean"!=typeof e.prepareThenExecute?"prepareThenExecute: boolean expected":null},un.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.AdaptMessageAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.AdaptMessageAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.AdaptMessageAction;if(null!=e.databaseUri&&(n.databaseUri=String(e.databaseUri)),null!=e.protocol&&(n.protocol=String(e.protocol)),null!=e.payload&&("string"==typeof e.payload?d.base64.decode(e.payload,n.payload=d.newBuffer(d.base64.length(e.payload)),0):0<=e.payload.length&&(n.payload=e.payload)),e.attachments){if(!d.isObject(e.attachments))throw TypeError(".google.spanner.executor.v1.AdaptMessageAction.attachments: object expected");n.attachments={};for(var o=Object.keys(e.attachments),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.attachments,o[r]),n.attachments[o[r]]=String(e.attachments[o[r]])}return null!=e.query&&(n.query=String(e.query)),null!=e.prepareThenExecute&&(n.prepareThenExecute=Boolean(e.prepareThenExecute)),n},un.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.attachments={}),t.defaults&&(r.databaseUri="",r.protocol="",t.bytes===String?r.payload="":(r.payload=[],t.bytes!==Array&&(r.payload=d.newBuffer(r.payload))),r.query="",r.prepareThenExecute=!1),null!=e.databaseUri&&Object.hasOwnProperty.call(e,"databaseUri")&&(r.databaseUri=e.databaseUri),null!=e.protocol&&Object.hasOwnProperty.call(e,"protocol")&&(r.protocol=e.protocol),null!=e.payload&&Object.hasOwnProperty.call(e,"payload")&&(r.payload=t.bytes===String?d.base64.encode(e.payload,0,e.payload.length):t.bytes===Array?Array.prototype.slice.call(e.payload):e.payload),e.attachments&&(o=Object.keys(e.attachments)).length){r.attachments={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.attachments,o[i]),r.attachments[o[i]]=e.attachments[o[i]]}return null!=e.query&&Object.hasOwnProperty.call(e,"query")&&(r.query=e.query),null!=e.prepareThenExecute&&Object.hasOwnProperty.call(e,"prepareThenExecute")&&(r.prepareThenExecute=e.prepareThenExecute),r},un.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},un.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.AdaptMessageAction"},un),e.ListCloudDatabasesAction=(pn.prototype.projectId="",pn.prototype.instanceId="",pn.prototype.pageSize=0,pn.prototype.pageToken="",pn.create=function(e){return new pn(e)},pn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(24).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(34).string(e.pageToken),t},pn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},pn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ListCloudDatabasesAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.pageSize=e.int32();break;case 4:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},pn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},pn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},pn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ListCloudDatabasesAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ListCloudDatabasesAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.ListCloudDatabasesAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},pn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId="",n.instanceId="",n.pageSize=0,n.pageToken=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},pn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},pn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ListCloudDatabasesAction"},pn),e.ListCloudInstancesAction=(dn.prototype.projectId="",dn.prototype.filter=null,dn.prototype.pageSize=null,dn.prototype.pageToken=null,Object.defineProperty(dn.prototype,"_filter",{get:d.oneOfGetter(a=["filter"]),set:d.oneOfSetter(a)}),Object.defineProperty(dn.prototype,"_pageSize",{get:d.oneOfGetter(a=["pageSize"]),set:d.oneOfSetter(a)}),Object.defineProperty(dn.prototype,"_pageToken",{get:d.oneOfGetter(a=["pageToken"]),set:d.oneOfSetter(a)}),dn.create=function(e){return new dn(e)},dn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(18).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(24).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(34).string(e.pageToken),t},dn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},dn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ListCloudInstancesAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.filter=e.string();break;case 3:i.pageSize=e.int32();break;case 4:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},dn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},dn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},dn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ListCloudInstancesAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ListCloudInstancesAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.ListCloudInstancesAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.filter&&(t.filter=String(e.filter)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},dn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter,t.oneofs)&&(n._filter="filter"),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize,t.oneofs)&&(n._pageSize="pageSize"),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken,t.oneofs)&&(n._pageToken="pageToken"),n},dn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},dn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ListCloudInstancesAction"},dn),e.GetCloudInstanceAction=(gn.prototype.projectId="",gn.prototype.instanceId="",gn.create=function(e){return new gn(e)},gn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),t},gn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},gn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.GetCloudInstanceAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;default:e.skipType(7&a,o)}}return i},gn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},gn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null},gn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.GetCloudInstanceAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.GetCloudInstanceAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.GetCloudInstanceAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.instanceId&&(t.instanceId=String(e.instanceId)),t},gn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId="",n.instanceId=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),n},gn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},gn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.GetCloudInstanceAction"},gn),e.ListCloudDatabaseOperationsAction=(fn.prototype.projectId="",fn.prototype.instanceId="",fn.prototype.filter="",fn.prototype.pageSize=0,fn.prototype.pageToken="",fn.create=function(e){return new fn(e)},fn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(26).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(32).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(42).string(e.pageToken),t},fn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},fn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ListCloudDatabaseOperationsAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.filter=e.string();break;case 4:i.pageSize=e.int32();break;case 5:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},fn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},fn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},fn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ListCloudDatabaseOperationsAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ListCloudDatabaseOperationsAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.ListCloudDatabaseOperationsAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.filter&&(t.filter=String(e.filter)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},fn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId="",n.instanceId="",n.filter="",n.pageSize=0,n.pageToken=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},fn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},fn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ListCloudDatabaseOperationsAction"},fn),e.RestoreCloudDatabaseAction=(mn.prototype.projectId="",mn.prototype.backupInstanceId="",mn.prototype.backupId="",mn.prototype.databaseInstanceId="",mn.prototype.databaseId="",mn.prototype.encryptionConfig=null,mn.create=function(e){return new mn(e)},mn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.backupInstanceId&&Object.hasOwnProperty.call(e,"backupInstanceId")&&t.uint32(18).string(e.backupInstanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&t.uint32(26).string(e.backupId),null!=e.databaseInstanceId&&Object.hasOwnProperty.call(e,"databaseInstanceId")&&t.uint32(34).string(e.databaseInstanceId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(42).string(e.databaseId),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&g.google.spanner.admin.database.v1.EncryptionConfig.encode(e.encryptionConfig,t.uint32(58).fork(),n+1).ldelim(),t},mn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},mn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.RestoreCloudDatabaseAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.backupInstanceId=e.string();break;case 3:i.backupId=e.string();break;case 4:i.databaseInstanceId=e.string();break;case 5:i.databaseId=e.string();break;case 7:i.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},mn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},mn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.backupInstanceId&&Object.hasOwnProperty.call(e,"backupInstanceId")&&!d.isString(e.backupInstanceId))return"backupInstanceId: string expected";if(null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&!d.isString(e.backupId))return"backupId: string expected";if(null!=e.databaseInstanceId&&Object.hasOwnProperty.call(e,"databaseInstanceId")&&!d.isString(e.databaseInstanceId))return"databaseInstanceId: string expected";if(null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!d.isString(e.databaseId))return"databaseId: string expected";if(null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")){e=g.google.spanner.admin.database.v1.EncryptionConfig.verify(e.encryptionConfig,t+1);if(e)return"encryptionConfig."+e}return null},mn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.RestoreCloudDatabaseAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.RestoreCloudDatabaseAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.RestoreCloudDatabaseAction;if(null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.backupInstanceId&&(n.backupInstanceId=String(e.backupInstanceId)),null!=e.backupId&&(n.backupId=String(e.backupId)),null!=e.databaseInstanceId&&(n.databaseInstanceId=String(e.databaseInstanceId)),null!=e.databaseId&&(n.databaseId=String(e.databaseId)),null!=e.encryptionConfig){if(!d.isObject(e.encryptionConfig))throw TypeError(".google.spanner.executor.v1.RestoreCloudDatabaseAction.encryptionConfig: object expected");n.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.fromObject(e.encryptionConfig,t+1)}return n},mn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.projectId="",o.backupInstanceId="",o.backupId="",o.databaseInstanceId="",o.databaseId="",o.encryptionConfig=null),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(o.projectId=e.projectId),null!=e.backupInstanceId&&Object.hasOwnProperty.call(e,"backupInstanceId")&&(o.backupInstanceId=e.backupInstanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&(o.backupId=e.backupId),null!=e.databaseInstanceId&&Object.hasOwnProperty.call(e,"databaseInstanceId")&&(o.databaseInstanceId=e.databaseInstanceId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&(o.databaseId=e.databaseId),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(o.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.toObject(e.encryptionConfig,t,n+1)),o},mn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},mn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.RestoreCloudDatabaseAction"},mn),e.GetCloudDatabaseAction=(bn.prototype.projectId="",bn.prototype.instanceId="",bn.prototype.databaseId="",bn.create=function(e){return new bn(e)},bn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(26).string(e.databaseId),t},bn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},bn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.GetCloudDatabaseAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.databaseId=e.string();break;default:e.skipType(7&a,o)}}return i},bn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},bn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!d.isString(e.databaseId)?"databaseId: string expected":null},bn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.GetCloudDatabaseAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.GetCloudDatabaseAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.GetCloudDatabaseAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.databaseId&&(t.databaseId=String(e.databaseId)),t},bn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId="",n.instanceId="",n.databaseId=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&(n.databaseId=e.databaseId),n},bn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},bn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.GetCloudDatabaseAction"},bn),e.CreateCloudBackupAction=(yn.prototype.projectId="",yn.prototype.instanceId="",yn.prototype.backupId="",yn.prototype.databaseId="",yn.prototype.expireTime=null,yn.prototype.versionTime=null,yn.prototype.encryptionConfig=null,Object.defineProperty(yn.prototype,"_versionTime",{get:d.oneOfGetter(t=["versionTime"]),set:d.oneOfSetter(t)}),yn.create=function(e){return new yn(e)},yn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&t.uint32(26).string(e.backupId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(34).string(e.databaseId),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&g.google.protobuf.Timestamp.encode(e.expireTime,t.uint32(42).fork(),n+1).ldelim(),null!=e.versionTime&&Object.hasOwnProperty.call(e,"versionTime")&&g.google.protobuf.Timestamp.encode(e.versionTime,t.uint32(50).fork(),n+1).ldelim(),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&g.google.spanner.admin.database.v1.EncryptionConfig.encode(e.encryptionConfig,t.uint32(58).fork(),n+1).ldelim(),t},yn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},yn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CreateCloudBackupAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.backupId=e.string();break;case 4:i.databaseId=e.string();break;case 5:i.expireTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 6:i.versionTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 7:i.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},yn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},yn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId))return"instanceId: string expected";if(null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&!d.isString(e.backupId))return"backupId: string expected";if(null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!d.isString(e.databaseId))return"databaseId: string expected";if(null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(n=g.google.protobuf.Timestamp.verify(e.expireTime,t+1)))return"expireTime."+n;if(null!=e.versionTime&&Object.hasOwnProperty.call(e,"versionTime")&&(n=g.google.protobuf.Timestamp.verify(e.versionTime,t+1)))return"versionTime."+n;if(null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(n=g.google.spanner.admin.database.v1.EncryptionConfig.verify(e.encryptionConfig,t+1)))return"encryptionConfig."+n;return null},yn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CreateCloudBackupAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CreateCloudBackupAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.CreateCloudBackupAction;if(null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.instanceId&&(n.instanceId=String(e.instanceId)),null!=e.backupId&&(n.backupId=String(e.backupId)),null!=e.databaseId&&(n.databaseId=String(e.databaseId)),null!=e.expireTime){if(!d.isObject(e.expireTime))throw TypeError(".google.spanner.executor.v1.CreateCloudBackupAction.expireTime: object expected");n.expireTime=g.google.protobuf.Timestamp.fromObject(e.expireTime,t+1)}if(null!=e.versionTime){if(!d.isObject(e.versionTime))throw TypeError(".google.spanner.executor.v1.CreateCloudBackupAction.versionTime: object expected");n.versionTime=g.google.protobuf.Timestamp.fromObject(e.versionTime,t+1)}if(null!=e.encryptionConfig){if(!d.isObject(e.encryptionConfig))throw TypeError(".google.spanner.executor.v1.CreateCloudBackupAction.encryptionConfig: object expected");n.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.fromObject(e.encryptionConfig,t+1)}return n},yn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.projectId="",o.instanceId="",o.backupId="",o.databaseId="",o.expireTime=null,o.encryptionConfig=null),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(o.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(o.instanceId=e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&(o.backupId=e.backupId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&(o.databaseId=e.databaseId),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(o.expireTime=g.google.protobuf.Timestamp.toObject(e.expireTime,t,n+1)),null!=e.versionTime&&Object.hasOwnProperty.call(e,"versionTime")&&(o.versionTime=g.google.protobuf.Timestamp.toObject(e.versionTime,t,n+1),t.oneofs)&&(o._versionTime="versionTime"),null!=e.encryptionConfig&&Object.hasOwnProperty.call(e,"encryptionConfig")&&(o.encryptionConfig=g.google.spanner.admin.database.v1.EncryptionConfig.toObject(e.encryptionConfig,t,n+1)),o},yn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},yn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CreateCloudBackupAction"},yn),e.CopyCloudBackupAction=(hn.prototype.projectId="",hn.prototype.instanceId="",hn.prototype.backupId="",hn.prototype.sourceBackup="",hn.prototype.expireTime=null,hn.create=function(e){return new hn(e)},hn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&t.uint32(26).string(e.backupId),null!=e.sourceBackup&&Object.hasOwnProperty.call(e,"sourceBackup")&&t.uint32(34).string(e.sourceBackup),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&g.google.protobuf.Timestamp.encode(e.expireTime,t.uint32(42).fork(),n+1).ldelim(),t},hn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},hn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CopyCloudBackupAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.backupId=e.string();break;case 4:i.sourceBackup=e.string();break;case 5:i.expireTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},hn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},hn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId))return"instanceId: string expected";if(null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&!d.isString(e.backupId))return"backupId: string expected";if(null!=e.sourceBackup&&Object.hasOwnProperty.call(e,"sourceBackup")&&!d.isString(e.sourceBackup))return"sourceBackup: string expected";if(null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")){e=g.google.protobuf.Timestamp.verify(e.expireTime,t+1);if(e)return"expireTime."+e}return null},hn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CopyCloudBackupAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CopyCloudBackupAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.CopyCloudBackupAction;if(null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.instanceId&&(n.instanceId=String(e.instanceId)),null!=e.backupId&&(n.backupId=String(e.backupId)),null!=e.sourceBackup&&(n.sourceBackup=String(e.sourceBackup)),null!=e.expireTime){if(!d.isObject(e.expireTime))throw TypeError(".google.spanner.executor.v1.CopyCloudBackupAction.expireTime: object expected");n.expireTime=g.google.protobuf.Timestamp.fromObject(e.expireTime,t+1)}return n},hn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.projectId="",o.instanceId="",o.backupId="",o.sourceBackup="",o.expireTime=null),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(o.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(o.instanceId=e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&(o.backupId=e.backupId),null!=e.sourceBackup&&Object.hasOwnProperty.call(e,"sourceBackup")&&(o.sourceBackup=e.sourceBackup),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(o.expireTime=g.google.protobuf.Timestamp.toObject(e.expireTime,t,n+1)),o},hn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},hn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CopyCloudBackupAction"},hn),e.GetCloudBackupAction=(On.prototype.projectId="",On.prototype.instanceId="",On.prototype.backupId="",On.create=function(e){return new On(e)},On.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&t.uint32(26).string(e.backupId),t},On.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},On.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.GetCloudBackupAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.backupId=e.string();break;default:e.skipType(7&a,o)}}return i},On.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},On.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&!d.isString(e.backupId)?"backupId: string expected":null},On.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.GetCloudBackupAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.GetCloudBackupAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.GetCloudBackupAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.backupId&&(t.backupId=String(e.backupId)),t},On.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId="",n.instanceId="",n.backupId=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&(n.backupId=e.backupId),n},On.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},On.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.GetCloudBackupAction"},On),e.UpdateCloudBackupAction=(vn.prototype.projectId="",vn.prototype.instanceId="",vn.prototype.backupId="",vn.prototype.expireTime=null,vn.create=function(e){return new vn(e)},vn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&t.uint32(26).string(e.backupId),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&g.google.protobuf.Timestamp.encode(e.expireTime,t.uint32(34).fork(),n+1).ldelim(),t},vn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},vn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.UpdateCloudBackupAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.backupId=e.string();break;case 4:i.expireTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},vn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},vn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId))return"instanceId: string expected";if(null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&!d.isString(e.backupId))return"backupId: string expected";if(null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")){e=g.google.protobuf.Timestamp.verify(e.expireTime,t+1);if(e)return"expireTime."+e}return null},vn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.UpdateCloudBackupAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.UpdateCloudBackupAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.UpdateCloudBackupAction;if(null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.instanceId&&(n.instanceId=String(e.instanceId)),null!=e.backupId&&(n.backupId=String(e.backupId)),null!=e.expireTime){if(!d.isObject(e.expireTime))throw TypeError(".google.spanner.executor.v1.UpdateCloudBackupAction.expireTime: object expected");n.expireTime=g.google.protobuf.Timestamp.fromObject(e.expireTime,t+1)}return n},vn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.projectId="",o.instanceId="",o.backupId="",o.expireTime=null),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(o.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(o.instanceId=e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&(o.backupId=e.backupId),null!=e.expireTime&&Object.hasOwnProperty.call(e,"expireTime")&&(o.expireTime=g.google.protobuf.Timestamp.toObject(e.expireTime,t,n+1)),o},vn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},vn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.UpdateCloudBackupAction"},vn),e.DeleteCloudBackupAction=(jn.prototype.projectId="",jn.prototype.instanceId="",jn.prototype.backupId="",jn.create=function(e){return new jn(e)},jn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&t.uint32(26).string(e.backupId),t},jn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},jn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.DeleteCloudBackupAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.backupId=e.string();break;default:e.skipType(7&a,o)}}return i},jn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},jn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&!d.isString(e.backupId)?"backupId: string expected":null},jn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.DeleteCloudBackupAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.DeleteCloudBackupAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.DeleteCloudBackupAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.backupId&&(t.backupId=String(e.backupId)),t},jn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId="",n.instanceId="",n.backupId=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.backupId&&Object.hasOwnProperty.call(e,"backupId")&&(n.backupId=e.backupId),n},jn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},jn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.DeleteCloudBackupAction"},jn),e.ListCloudBackupsAction=(xn.prototype.projectId="",xn.prototype.instanceId="",xn.prototype.filter="",xn.prototype.pageSize=0,xn.prototype.pageToken="",xn.create=function(e){return new xn(e)},xn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(26).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(32).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(42).string(e.pageToken),t},xn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},xn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ListCloudBackupsAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.filter=e.string();break;case 4:i.pageSize=e.int32();break;case 5:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},xn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},xn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},xn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ListCloudBackupsAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ListCloudBackupsAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.ListCloudBackupsAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.filter&&(t.filter=String(e.filter)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},xn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId="",n.instanceId="",n.filter="",n.pageSize=0,n.pageToken=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},xn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},xn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ListCloudBackupsAction"},xn),e.ListCloudBackupOperationsAction=(wn.prototype.projectId="",wn.prototype.instanceId="",wn.prototype.filter="",wn.prototype.pageSize=0,wn.prototype.pageToken="",wn.create=function(e){return new wn(e)},wn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(26).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(32).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(42).string(e.pageToken),t},wn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},wn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ListCloudBackupOperationsAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.filter=e.string();break;case 4:i.pageSize=e.int32();break;case 5:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},wn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},wn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId)?"projectId: string expected":null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId)?"instanceId: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},wn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ListCloudBackupOperationsAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ListCloudBackupOperationsAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.ListCloudBackupOperationsAction;return null!=e.projectId&&(t.projectId=String(e.projectId)),null!=e.instanceId&&(t.instanceId=String(e.instanceId)),null!=e.filter&&(t.filter=String(e.filter)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},wn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.projectId="",n.instanceId="",n.filter="",n.pageSize=0,n.pageToken=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(n.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(n.instanceId=e.instanceId),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),n},wn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},wn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ListCloudBackupOperationsAction"},wn),e.GetOperationAction=(Tn.prototype.operation="",Tn.create=function(e){return new Tn(e)},Tn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.operation&&Object.hasOwnProperty.call(e,"operation")&&t.uint32(10).string(e.operation),t},Tn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Tn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.GetOperationAction;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.operation=e.string():e.skipType(7&a,o)}return i},Tn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Tn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.operation&&Object.hasOwnProperty.call(e,"operation")&&!d.isString(e.operation)?"operation: string expected":null},Tn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.GetOperationAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.GetOperationAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.GetOperationAction;return null!=e.operation&&(t.operation=String(e.operation)),t},Tn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.operation=""),null!=e.operation&&Object.hasOwnProperty.call(e,"operation")&&(n.operation=e.operation),n},Tn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Tn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.GetOperationAction"},Tn),e.QueryCancellationAction=(kn.prototype.longRunningSql="",kn.prototype.cancelQuery="",kn.create=function(e){return new kn(e)},kn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.longRunningSql&&Object.hasOwnProperty.call(e,"longRunningSql")&&t.uint32(10).string(e.longRunningSql),null!=e.cancelQuery&&Object.hasOwnProperty.call(e,"cancelQuery")&&t.uint32(18).string(e.cancelQuery),t},kn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},kn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.QueryCancellationAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.longRunningSql=e.string();break;case 2:i.cancelQuery=e.string();break;default:e.skipType(7&a,o)}}return i},kn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},kn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.longRunningSql&&Object.hasOwnProperty.call(e,"longRunningSql")&&!d.isString(e.longRunningSql)?"longRunningSql: string expected":null!=e.cancelQuery&&Object.hasOwnProperty.call(e,"cancelQuery")&&!d.isString(e.cancelQuery)?"cancelQuery: string expected":null},kn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.QueryCancellationAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.QueryCancellationAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.QueryCancellationAction;return null!=e.longRunningSql&&(t.longRunningSql=String(e.longRunningSql)),null!=e.cancelQuery&&(t.cancelQuery=String(e.cancelQuery)),t},kn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.longRunningSql="",n.cancelQuery=""),null!=e.longRunningSql&&Object.hasOwnProperty.call(e,"longRunningSql")&&(n.longRunningSql=e.longRunningSql),null!=e.cancelQuery&&Object.hasOwnProperty.call(e,"cancelQuery")&&(n.cancelQuery=e.cancelQuery),n},kn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},kn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.QueryCancellationAction"},kn),e.CancelOperationAction=(Pn.prototype.operation="",Pn.create=function(e){return new Pn(e)},Pn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.operation&&Object.hasOwnProperty.call(e,"operation")&&t.uint32(10).string(e.operation),t},Pn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Pn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CancelOperationAction;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.operation=e.string():e.skipType(7&a,o)}return i},Pn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Pn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.operation&&Object.hasOwnProperty.call(e,"operation")&&!d.isString(e.operation)?"operation: string expected":null},Pn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CancelOperationAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CancelOperationAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.CancelOperationAction;return null!=e.operation&&(t.operation=String(e.operation)),t},Pn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.operation=""),null!=e.operation&&Object.hasOwnProperty.call(e,"operation")&&(n.operation=e.operation),n},Pn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Pn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CancelOperationAction"},Pn),e.AddSplitPointsAction=(Sn.prototype.projectId="",Sn.prototype.instanceId="",Sn.prototype.databaseId="",Sn.prototype.splitPoints=d.emptyArray,Sn.create=function(e){return new Sn(e)},Sn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&t.uint32(10).string(e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&t.uint32(18).string(e.instanceId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(26).string(e.databaseId),null!=e.splitPoints&&e.splitPoints.length)for(var o=0;o<e.splitPoints.length;++o)g.google.spanner.admin.database.v1.SplitPoints.encode(e.splitPoints[o],t.uint32(34).fork(),n+1).ldelim();return t},Sn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Sn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.AddSplitPointsAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.projectId=e.string();break;case 2:i.instanceId=e.string();break;case 3:i.databaseId=e.string();break;case 4:i.splitPoints&&i.splitPoints.length||(i.splitPoints=[]),i.splitPoints.push(g.google.spanner.admin.database.v1.SplitPoints.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Sn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Sn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&!d.isString(e.projectId))return"projectId: string expected";if(null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&!d.isString(e.instanceId))return"instanceId: string expected";if(null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!d.isString(e.databaseId))return"databaseId: string expected";if(null!=e.splitPoints&&Object.hasOwnProperty.call(e,"splitPoints")){if(!Array.isArray(e.splitPoints))return"splitPoints: array expected";for(var n=0;n<e.splitPoints.length;++n){var o=g.google.spanner.admin.database.v1.SplitPoints.verify(e.splitPoints[n],t+1);if(o)return"splitPoints."+o}}return null},Sn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.AddSplitPointsAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.AddSplitPointsAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.AddSplitPointsAction;if(null!=e.projectId&&(n.projectId=String(e.projectId)),null!=e.instanceId&&(n.instanceId=String(e.instanceId)),null!=e.databaseId&&(n.databaseId=String(e.databaseId)),e.splitPoints){if(!Array.isArray(e.splitPoints))throw TypeError(".google.spanner.executor.v1.AddSplitPointsAction.splitPoints: array expected");n.splitPoints=[];for(var o=0;o<e.splitPoints.length;++o){if(!d.isObject(e.splitPoints[o]))throw TypeError(".google.spanner.executor.v1.AddSplitPointsAction.splitPoints: object expected");n.splitPoints[o]=g.google.spanner.admin.database.v1.SplitPoints.fromObject(e.splitPoints[o],t+1)}}return n},Sn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.splitPoints=[]),t.defaults&&(o.projectId="",o.instanceId="",o.databaseId=""),null!=e.projectId&&Object.hasOwnProperty.call(e,"projectId")&&(o.projectId=e.projectId),null!=e.instanceId&&Object.hasOwnProperty.call(e,"instanceId")&&(o.instanceId=e.instanceId),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&(o.databaseId=e.databaseId),e.splitPoints&&e.splitPoints.length){o.splitPoints=[];for(var r=0;r<e.splitPoints.length;++r)o.splitPoints[r]=g.google.spanner.admin.database.v1.SplitPoints.toObject(e.splitPoints[r],t,n+1)}return o},Sn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Sn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.AddSplitPointsAction"},Sn),e.StartBatchTransactionAction=(In.prototype.batchTxnTime=null,In.prototype.tid=null,In.prototype.cloudDatabaseRole="",Object.defineProperty(In.prototype,"param",{get:d.oneOfGetter(a=["batchTxnTime","tid"]),set:d.oneOfSetter(a)}),In.create=function(e){return new In(e)},In.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.batchTxnTime&&Object.hasOwnProperty.call(e,"batchTxnTime")&&g.google.protobuf.Timestamp.encode(e.batchTxnTime,t.uint32(10).fork(),n+1).ldelim(),null!=e.tid&&Object.hasOwnProperty.call(e,"tid")&&t.uint32(18).bytes(e.tid),null!=e.cloudDatabaseRole&&Object.hasOwnProperty.call(e,"cloudDatabaseRole")&&t.uint32(26).string(e.cloudDatabaseRole),t},In.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},In.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.StartBatchTransactionAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.batchTxnTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.tid=e.bytes();break;case 3:i.cloudDatabaseRole=e.string();break;default:e.skipType(7&a,o)}}return i},In.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},In.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n={};if(null!=e.batchTxnTime&&Object.hasOwnProperty.call(e,"batchTxnTime")){t=g.google.protobuf.Timestamp.verify(e.batchTxnTime,t+(n.param=1));if(t)return"batchTxnTime."+t}if(null!=e.tid&&Object.hasOwnProperty.call(e,"tid")){if(1===n.param)return"param: multiple values";if(n.param=1,!(e.tid&&"number"==typeof e.tid.length||d.isString(e.tid)))return"tid: buffer expected"}return null!=e.cloudDatabaseRole&&Object.hasOwnProperty.call(e,"cloudDatabaseRole")&&!d.isString(e.cloudDatabaseRole)?"cloudDatabaseRole: string expected":null},In.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.StartBatchTransactionAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.StartBatchTransactionAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.StartBatchTransactionAction;if(null!=e.batchTxnTime){if(!d.isObject(e.batchTxnTime))throw TypeError(".google.spanner.executor.v1.StartBatchTransactionAction.batchTxnTime: object expected");n.batchTxnTime=g.google.protobuf.Timestamp.fromObject(e.batchTxnTime,t+1)}return null!=e.tid&&("string"==typeof e.tid?d.base64.decode(e.tid,n.tid=d.newBuffer(d.base64.length(e.tid)),0):0<=e.tid.length&&(n.tid=e.tid)),null!=e.cloudDatabaseRole&&(n.cloudDatabaseRole=String(e.cloudDatabaseRole)),n},In.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.cloudDatabaseRole=""),null!=e.batchTxnTime&&Object.hasOwnProperty.call(e,"batchTxnTime")&&(o.batchTxnTime=g.google.protobuf.Timestamp.toObject(e.batchTxnTime,t,n+1),t.oneofs)&&(o.param="batchTxnTime"),null!=e.tid&&Object.hasOwnProperty.call(e,"tid")&&(o.tid=t.bytes===String?d.base64.encode(e.tid,0,e.tid.length):t.bytes===Array?Array.prototype.slice.call(e.tid):e.tid,t.oneofs)&&(o.param="tid"),null!=e.cloudDatabaseRole&&Object.hasOwnProperty.call(e,"cloudDatabaseRole")&&(o.cloudDatabaseRole=e.cloudDatabaseRole),o},In.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},In.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.StartBatchTransactionAction"},In),e.CloseBatchTransactionAction=(En.prototype.cleanup=!1,En.create=function(e){return new En(e)},En.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.cleanup&&Object.hasOwnProperty.call(e,"cleanup")&&t.uint32(8).bool(e.cleanup),t},En.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},En.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CloseBatchTransactionAction;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.cleanup=e.bool():e.skipType(7&a,o)}return i},En.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},En.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.cleanup&&Object.hasOwnProperty.call(e,"cleanup")&&"boolean"!=typeof e.cleanup?"cleanup: boolean expected":null},En.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CloseBatchTransactionAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CloseBatchTransactionAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.CloseBatchTransactionAction;return null!=e.cleanup&&(t.cleanup=Boolean(e.cleanup)),t},En.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.cleanup=!1),null!=e.cleanup&&Object.hasOwnProperty.call(e,"cleanup")&&(n.cleanup=e.cleanup),n},En.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},En.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CloseBatchTransactionAction"},En),e.GenerateDbPartitionsForReadAction=(Cn.prototype.read=null,Cn.prototype.table=d.emptyArray,Cn.prototype.desiredBytesPerPartition=null,Cn.prototype.maxPartitionCount=null,Object.defineProperty(Cn.prototype,"_desiredBytesPerPartition",{get:d.oneOfGetter(t=["desiredBytesPerPartition"]),set:d.oneOfSetter(t)}),Object.defineProperty(Cn.prototype,"_maxPartitionCount",{get:d.oneOfGetter(t=["maxPartitionCount"]),set:d.oneOfSetter(t)}),Cn.create=function(e){return new Cn(e)},Cn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.read&&Object.hasOwnProperty.call(e,"read")&&g.google.spanner.executor.v1.ReadAction.encode(e.read,t.uint32(10).fork(),n+1).ldelim(),null!=e.table&&e.table.length)for(var o=0;o<e.table.length;++o)g.google.spanner.executor.v1.TableMetadata.encode(e.table[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.desiredBytesPerPartition&&Object.hasOwnProperty.call(e,"desiredBytesPerPartition")&&t.uint32(24).int64(e.desiredBytesPerPartition),null!=e.maxPartitionCount&&Object.hasOwnProperty.call(e,"maxPartitionCount")&&t.uint32(32).int64(e.maxPartitionCount),t},Cn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Cn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.GenerateDbPartitionsForReadAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.read=g.google.spanner.executor.v1.ReadAction.decode(e,e.uint32(),void 0,o+1);break;case 2:i.table&&i.table.length||(i.table=[]),i.table.push(g.google.spanner.executor.v1.TableMetadata.decode(e,e.uint32(),void 0,o+1));break;case 3:i.desiredBytesPerPartition=e.int64();break;case 4:i.maxPartitionCount=e.int64();break;default:e.skipType(7&a,o)}}return i},Cn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Cn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.read&&Object.hasOwnProperty.call(e,"read")&&(n=g.google.spanner.executor.v1.ReadAction.verify(e.read,t+1)))return"read."+n;if(null!=e.table&&Object.hasOwnProperty.call(e,"table")){if(!Array.isArray(e.table))return"table: array expected";for(var n,o=0;o<e.table.length;++o)if(n=g.google.spanner.executor.v1.TableMetadata.verify(e.table[o],t+1))return"table."+n}return null==e.desiredBytesPerPartition||!Object.hasOwnProperty.call(e,"desiredBytesPerPartition")||d.isInteger(e.desiredBytesPerPartition)||e.desiredBytesPerPartition&&d.isInteger(e.desiredBytesPerPartition.low)&&d.isInteger(e.desiredBytesPerPartition.high)?null==e.maxPartitionCount||!Object.hasOwnProperty.call(e,"maxPartitionCount")||d.isInteger(e.maxPartitionCount)||e.maxPartitionCount&&d.isInteger(e.maxPartitionCount.low)&&d.isInteger(e.maxPartitionCount.high)?null:"maxPartitionCount: integer|Long expected":"desiredBytesPerPartition: integer|Long expected"},Cn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.GenerateDbPartitionsForReadAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.GenerateDbPartitionsForReadAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.GenerateDbPartitionsForReadAction;if(null!=e.read){if(!d.isObject(e.read))throw TypeError(".google.spanner.executor.v1.GenerateDbPartitionsForReadAction.read: object expected");n.read=g.google.spanner.executor.v1.ReadAction.fromObject(e.read,t+1)}if(e.table){if(!Array.isArray(e.table))throw TypeError(".google.spanner.executor.v1.GenerateDbPartitionsForReadAction.table: array expected");n.table=[];for(var o=0;o<e.table.length;++o){if(!d.isObject(e.table[o]))throw TypeError(".google.spanner.executor.v1.GenerateDbPartitionsForReadAction.table: object expected");n.table[o]=g.google.spanner.executor.v1.TableMetadata.fromObject(e.table[o],t+1)}}return null!=e.desiredBytesPerPartition&&(d.Long?n.desiredBytesPerPartition=d.Long.fromValue(e.desiredBytesPerPartition,!1):"string"==typeof e.desiredBytesPerPartition?n.desiredBytesPerPartition=parseInt(e.desiredBytesPerPartition,10):"number"==typeof e.desiredBytesPerPartition?n.desiredBytesPerPartition=e.desiredBytesPerPartition:"object"==typeof e.desiredBytesPerPartition&&(n.desiredBytesPerPartition=new d.LongBits(e.desiredBytesPerPartition.low>>>0,e.desiredBytesPerPartition.high>>>0).toNumber())),null!=e.maxPartitionCount&&(d.Long?n.maxPartitionCount=d.Long.fromValue(e.maxPartitionCount,!1):"string"==typeof e.maxPartitionCount?n.maxPartitionCount=parseInt(e.maxPartitionCount,10):"number"==typeof e.maxPartitionCount?n.maxPartitionCount=e.maxPartitionCount:"object"==typeof e.maxPartitionCount&&(n.maxPartitionCount=new d.LongBits(e.maxPartitionCount.low>>>0,e.maxPartitionCount.high>>>0).toNumber())),n},Cn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.table=[]),t.defaults&&(o.read=null),null!=e.read&&Object.hasOwnProperty.call(e,"read")&&(o.read=g.google.spanner.executor.v1.ReadAction.toObject(e.read,t,n+1)),e.table&&e.table.length){o.table=[];for(var r=0;r<e.table.length;++r)o.table[r]=g.google.spanner.executor.v1.TableMetadata.toObject(e.table[r],t,n+1)}return null!=e.desiredBytesPerPartition&&Object.hasOwnProperty.call(e,"desiredBytesPerPartition")&&("undefined"!=typeof BigInt&&t.longs===BigInt?o.desiredBytesPerPartition="number"==typeof e.desiredBytesPerPartition?BigInt(e.desiredBytesPerPartition):d.Long.fromBits(e.desiredBytesPerPartition.low>>>0,e.desiredBytesPerPartition.high>>>0,!1).toBigInt():"number"==typeof e.desiredBytesPerPartition?o.desiredBytesPerPartition=t.longs===String?String(e.desiredBytesPerPartition):e.desiredBytesPerPartition:o.desiredBytesPerPartition=t.longs===String?d.Long.prototype.toString.call(e.desiredBytesPerPartition):t.longs===Number?new d.LongBits(e.desiredBytesPerPartition.low>>>0,e.desiredBytesPerPartition.high>>>0).toNumber():e.desiredBytesPerPartition,t.oneofs)&&(o._desiredBytesPerPartition="desiredBytesPerPartition"),null!=e.maxPartitionCount&&Object.hasOwnProperty.call(e,"maxPartitionCount")&&("undefined"!=typeof BigInt&&t.longs===BigInt?o.maxPartitionCount="number"==typeof e.maxPartitionCount?BigInt(e.maxPartitionCount):d.Long.fromBits(e.maxPartitionCount.low>>>0,e.maxPartitionCount.high>>>0,!1).toBigInt():"number"==typeof e.maxPartitionCount?o.maxPartitionCount=t.longs===String?String(e.maxPartitionCount):e.maxPartitionCount:o.maxPartitionCount=t.longs===String?d.Long.prototype.toString.call(e.maxPartitionCount):t.longs===Number?new d.LongBits(e.maxPartitionCount.low>>>0,e.maxPartitionCount.high>>>0).toNumber():e.maxPartitionCount,t.oneofs)&&(o._maxPartitionCount="maxPartitionCount"),o},Cn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Cn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.GenerateDbPartitionsForReadAction"},Cn),e.GenerateDbPartitionsForQueryAction=(Rn.prototype.query=null,Rn.prototype.desiredBytesPerPartition=null,Object.defineProperty(Rn.prototype,"_desiredBytesPerPartition",{get:d.oneOfGetter(a=["desiredBytesPerPartition"]),set:d.oneOfSetter(a)}),Rn.create=function(e){return new Rn(e)},Rn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.query&&Object.hasOwnProperty.call(e,"query")&&g.google.spanner.executor.v1.QueryAction.encode(e.query,t.uint32(10).fork(),n+1).ldelim(),null!=e.desiredBytesPerPartition&&Object.hasOwnProperty.call(e,"desiredBytesPerPartition")&&t.uint32(16).int64(e.desiredBytesPerPartition),t},Rn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Rn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.GenerateDbPartitionsForQueryAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.query=g.google.spanner.executor.v1.QueryAction.decode(e,e.uint32(),void 0,o+1);break;case 2:i.desiredBytesPerPartition=e.int64();break;default:e.skipType(7&a,o)}}return i},Rn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Rn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.query&&Object.hasOwnProperty.call(e,"query")){t=g.google.spanner.executor.v1.QueryAction.verify(e.query,t+1);if(t)return"query."+t}return null!=e.desiredBytesPerPartition&&Object.hasOwnProperty.call(e,"desiredBytesPerPartition")&&!(d.isInteger(e.desiredBytesPerPartition)||e.desiredBytesPerPartition&&d.isInteger(e.desiredBytesPerPartition.low)&&d.isInteger(e.desiredBytesPerPartition.high))?"desiredBytesPerPartition: integer|Long expected":null},Rn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.GenerateDbPartitionsForQueryAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.GenerateDbPartitionsForQueryAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.GenerateDbPartitionsForQueryAction;if(null!=e.query){if(!d.isObject(e.query))throw TypeError(".google.spanner.executor.v1.GenerateDbPartitionsForQueryAction.query: object expected");n.query=g.google.spanner.executor.v1.QueryAction.fromObject(e.query,t+1)}return null!=e.desiredBytesPerPartition&&(d.Long?n.desiredBytesPerPartition=d.Long.fromValue(e.desiredBytesPerPartition,!1):"string"==typeof e.desiredBytesPerPartition?n.desiredBytesPerPartition=parseInt(e.desiredBytesPerPartition,10):"number"==typeof e.desiredBytesPerPartition?n.desiredBytesPerPartition=e.desiredBytesPerPartition:"object"==typeof e.desiredBytesPerPartition&&(n.desiredBytesPerPartition=new d.LongBits(e.desiredBytesPerPartition.low>>>0,e.desiredBytesPerPartition.high>>>0).toNumber())),n},Rn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.query=null),null!=e.query&&Object.hasOwnProperty.call(e,"query")&&(o.query=g.google.spanner.executor.v1.QueryAction.toObject(e.query,t,n+1)),null!=e.desiredBytesPerPartition&&Object.hasOwnProperty.call(e,"desiredBytesPerPartition")&&("undefined"!=typeof BigInt&&t.longs===BigInt?o.desiredBytesPerPartition="number"==typeof e.desiredBytesPerPartition?BigInt(e.desiredBytesPerPartition):d.Long.fromBits(e.desiredBytesPerPartition.low>>>0,e.desiredBytesPerPartition.high>>>0,!1).toBigInt():"number"==typeof e.desiredBytesPerPartition?o.desiredBytesPerPartition=t.longs===String?String(e.desiredBytesPerPartition):e.desiredBytesPerPartition:o.desiredBytesPerPartition=t.longs===String?d.Long.prototype.toString.call(e.desiredBytesPerPartition):t.longs===Number?new d.LongBits(e.desiredBytesPerPartition.low>>>0,e.desiredBytesPerPartition.high>>>0).toNumber():e.desiredBytesPerPartition,t.oneofs)&&(o._desiredBytesPerPartition="desiredBytesPerPartition"),o},Rn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Rn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.GenerateDbPartitionsForQueryAction"},Rn),e.BatchPartition=(Dn.prototype.partition=d.newBuffer([]),Dn.prototype.partitionToken=d.newBuffer([]),Dn.prototype.table=null,Dn.prototype.index=null,Object.defineProperty(Dn.prototype,"_table",{get:d.oneOfGetter(t=["table"]),set:d.oneOfSetter(t)}),Object.defineProperty(Dn.prototype,"_index",{get:d.oneOfGetter(t=["index"]),set:d.oneOfSetter(t)}),Dn.create=function(e){return new Dn(e)},Dn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.partition&&Object.hasOwnProperty.call(e,"partition")&&t.uint32(10).bytes(e.partition),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&t.uint32(18).bytes(e.partitionToken),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(26).string(e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&t.uint32(34).string(e.index),t},Dn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Dn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.BatchPartition;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.partition=e.bytes();break;case 2:i.partitionToken=e.bytes();break;case 3:i.table=e.string();break;case 4:i.index=e.string();break;default:e.skipType(7&a,o)}}return i},Dn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Dn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.partition&&Object.hasOwnProperty.call(e,"partition")&&!(e.partition&&"number"==typeof e.partition.length||d.isString(e.partition))?"partition: buffer expected":null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&!(e.partitionToken&&"number"==typeof e.partitionToken.length||d.isString(e.partitionToken))?"partitionToken: buffer expected":null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table)?"table: string expected":null!=e.index&&Object.hasOwnProperty.call(e,"index")&&!d.isString(e.index)?"index: string expected":null},Dn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.BatchPartition)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.BatchPartition: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.BatchPartition;return null!=e.partition&&("string"==typeof e.partition?d.base64.decode(e.partition,t.partition=d.newBuffer(d.base64.length(e.partition)),0):0<=e.partition.length&&(t.partition=e.partition)),null!=e.partitionToken&&("string"==typeof e.partitionToken?d.base64.decode(e.partitionToken,t.partitionToken=d.newBuffer(d.base64.length(e.partitionToken)),0):0<=e.partitionToken.length&&(t.partitionToken=e.partitionToken)),null!=e.table&&(t.table=String(e.table)),null!=e.index&&(t.index=String(e.index)),t},Dn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(t.bytes===String?n.partition="":(n.partition=[],t.bytes!==Array&&(n.partition=d.newBuffer(n.partition))),t.bytes===String?n.partitionToken="":(n.partitionToken=[],t.bytes!==Array&&(n.partitionToken=d.newBuffer(n.partitionToken)))),null!=e.partition&&Object.hasOwnProperty.call(e,"partition")&&(n.partition=t.bytes===String?d.base64.encode(e.partition,0,e.partition.length):t.bytes===Array?Array.prototype.slice.call(e.partition):e.partition),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&(n.partitionToken=t.bytes===String?d.base64.encode(e.partitionToken,0,e.partitionToken.length):t.bytes===Array?Array.prototype.slice.call(e.partitionToken):e.partitionToken),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(n.table=e.table,t.oneofs)&&(n._table="table"),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&(n.index=e.index,t.oneofs)&&(n._index="index"),n},Dn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Dn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.BatchPartition"},Dn),e.ExecutePartitionAction=(Ln.prototype.partition=null,Ln.prototype.secureContext=d.emptyObject,Ln.create=function(e){return new Ln(e)},Ln.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.partition&&Object.hasOwnProperty.call(e,"partition")&&g.google.spanner.executor.v1.BatchPartition.encode(e.partition,t.uint32(10).fork(),n+1).ldelim(),null!=e.secureContext&&Object.hasOwnProperty.call(e,"secureContext"))for(var o=Object.keys(e.secureContext),r=0;r<o.length;++r)t.uint32(18).fork().uint32(10).string(o[r]),g.google.spanner.executor.v1.Value.encode(e.secureContext[o[r]],t.uint32(18).fork(),n+1).ldelim().ldelim();return t},Ln.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ln.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ExecutePartitionAction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.partition=g.google.spanner.executor.v1.BatchPartition.decode(e,e.uint32(),void 0,o+1);break;case 2:i.secureContext===d.emptyObject&&(i.secureContext={});for(var s=e.uint32()+e.pos,c="",l=null;e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=g.google.spanner.executor.v1.Value.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.secureContext,c),i.secureContext[c]=l;break;default:e.skipType(7&a,o)}}return i},Ln.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ln.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.partition&&Object.hasOwnProperty.call(e,"partition")&&(n=g.google.spanner.executor.v1.BatchPartition.verify(e.partition,t+1)))return"partition."+n;if(null!=e.secureContext&&Object.hasOwnProperty.call(e,"secureContext")){if(!d.isObject(e.secureContext))return"secureContext: object expected";for(var n,o=Object.keys(e.secureContext),r=0;r<o.length;++r)if(n=g.google.spanner.executor.v1.Value.verify(e.secureContext[o[r]],t+1))return"secureContext."+n}return null},Ln.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ExecutePartitionAction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ExecutePartitionAction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ExecutePartitionAction;if(null!=e.partition){if(!d.isObject(e.partition))throw TypeError(".google.spanner.executor.v1.ExecutePartitionAction.partition: object expected");n.partition=g.google.spanner.executor.v1.BatchPartition.fromObject(e.partition,t+1)}if(e.secureContext){if(!d.isObject(e.secureContext))throw TypeError(".google.spanner.executor.v1.ExecutePartitionAction.secureContext: object expected");n.secureContext={};for(var o=Object.keys(e.secureContext),r=0;r<o.length;++r){if("__proto__"===o[r]&&d.makeProp(n.secureContext,o[r]),!d.isObject(e.secureContext[o[r]]))throw TypeError(".google.spanner.executor.v1.ExecutePartitionAction.secureContext: object expected");n.secureContext[o[r]]=g.google.spanner.executor.v1.Value.fromObject(e.secureContext[o[r]],t+1)}}return n},Ln.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.secureContext={}),t.defaults&&(r.partition=null),null!=e.partition&&Object.hasOwnProperty.call(e,"partition")&&(r.partition=g.google.spanner.executor.v1.BatchPartition.toObject(e.partition,t,n+1)),e.secureContext&&(o=Object.keys(e.secureContext)).length){r.secureContext={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.secureContext,o[i]),r.secureContext[o[i]]=g.google.spanner.executor.v1.Value.toObject(e.secureContext[o[i]],t,n+1)}return r},Ln.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ln.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ExecutePartitionAction"},Ln),e.ExecuteChangeStreamQuery=(w.prototype.name="",w.prototype.startTime=null,w.prototype.endTime=null,w.prototype.partitionToken=null,w.prototype.readOptions=d.emptyArray,w.prototype.heartbeatMilliseconds=null,w.prototype.deadlineSeconds=null,w.prototype.cloudDatabaseRole=null,Object.defineProperty(w.prototype,"_endTime",{get:d.oneOfGetter(a=["endTime"]),set:d.oneOfSetter(a)}),Object.defineProperty(w.prototype,"_partitionToken",{get:d.oneOfGetter(a=["partitionToken"]),set:d.oneOfSetter(a)}),Object.defineProperty(w.prototype,"_heartbeatMilliseconds",{get:d.oneOfGetter(a=["heartbeatMilliseconds"]),set:d.oneOfSetter(a)}),Object.defineProperty(w.prototype,"_deadlineSeconds",{get:d.oneOfGetter(a=["deadlineSeconds"]),set:d.oneOfSetter(a)}),Object.defineProperty(w.prototype,"_cloudDatabaseRole",{get:d.oneOfGetter(a=["cloudDatabaseRole"]),set:d.oneOfSetter(a)}),w.create=function(e){return new w(e)},w.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&g.google.protobuf.Timestamp.encode(e.startTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&g.google.protobuf.Timestamp.encode(e.endTime,t.uint32(26).fork(),n+1).ldelim(),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&t.uint32(34).string(e.partitionToken),null!=e.readOptions&&e.readOptions.length)for(var o=0;o<e.readOptions.length;++o)t.uint32(42).string(e.readOptions[o]);return null!=e.heartbeatMilliseconds&&Object.hasOwnProperty.call(e,"heartbeatMilliseconds")&&t.uint32(48).int32(e.heartbeatMilliseconds),null!=e.deadlineSeconds&&Object.hasOwnProperty.call(e,"deadlineSeconds")&&t.uint32(56).int64(e.deadlineSeconds),null!=e.cloudDatabaseRole&&Object.hasOwnProperty.call(e,"cloudDatabaseRole")&&t.uint32(66).string(e.cloudDatabaseRole),t},w.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},w.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ExecuteChangeStreamQuery;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.startTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.endTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 4:i.partitionToken=e.string();break;case 5:i.readOptions&&i.readOptions.length||(i.readOptions=[]),i.readOptions.push(e.string());break;case 6:i.heartbeatMilliseconds=e.int32();break;case 7:i.deadlineSeconds=e.int64();break;case 8:i.cloudDatabaseRole=e.string();break;default:e.skipType(7&a,o)}}return i},w.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},w.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(n=g.google.protobuf.Timestamp.verify(e.startTime,t+1)))return"startTime."+n;if(null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(n=g.google.protobuf.Timestamp.verify(e.endTime,t+1)))return"endTime."+n;if(null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&!d.isString(e.partitionToken))return"partitionToken: string expected";if(null!=e.readOptions&&Object.hasOwnProperty.call(e,"readOptions")){if(!Array.isArray(e.readOptions))return"readOptions: array expected";for(var o=0;o<e.readOptions.length;++o)if(!d.isString(e.readOptions[o]))return"readOptions: string[] expected"}return null!=e.heartbeatMilliseconds&&Object.hasOwnProperty.call(e,"heartbeatMilliseconds")&&!d.isInteger(e.heartbeatMilliseconds)?"heartbeatMilliseconds: integer expected":null==e.deadlineSeconds||!Object.hasOwnProperty.call(e,"deadlineSeconds")||d.isInteger(e.deadlineSeconds)||e.deadlineSeconds&&d.isInteger(e.deadlineSeconds.low)&&d.isInteger(e.deadlineSeconds.high)?null!=e.cloudDatabaseRole&&Object.hasOwnProperty.call(e,"cloudDatabaseRole")&&!d.isString(e.cloudDatabaseRole)?"cloudDatabaseRole: string expected":null:"deadlineSeconds: integer|Long expected"},w.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ExecuteChangeStreamQuery)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ExecuteChangeStreamQuery: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ExecuteChangeStreamQuery;if(null!=e.name&&(n.name=String(e.name)),null!=e.startTime){if(!d.isObject(e.startTime))throw TypeError(".google.spanner.executor.v1.ExecuteChangeStreamQuery.startTime: object expected");n.startTime=g.google.protobuf.Timestamp.fromObject(e.startTime,t+1)}if(null!=e.endTime){if(!d.isObject(e.endTime))throw TypeError(".google.spanner.executor.v1.ExecuteChangeStreamQuery.endTime: object expected");n.endTime=g.google.protobuf.Timestamp.fromObject(e.endTime,t+1)}if(null!=e.partitionToken&&(n.partitionToken=String(e.partitionToken)),e.readOptions){if(!Array.isArray(e.readOptions))throw TypeError(".google.spanner.executor.v1.ExecuteChangeStreamQuery.readOptions: array expected");n.readOptions=[];for(var o=0;o<e.readOptions.length;++o)n.readOptions[o]=String(e.readOptions[o])}return null!=e.heartbeatMilliseconds&&(n.heartbeatMilliseconds=0|e.heartbeatMilliseconds),null!=e.deadlineSeconds&&(d.Long?n.deadlineSeconds=d.Long.fromValue(e.deadlineSeconds,!1):"string"==typeof e.deadlineSeconds?n.deadlineSeconds=parseInt(e.deadlineSeconds,10):"number"==typeof e.deadlineSeconds?n.deadlineSeconds=e.deadlineSeconds:"object"==typeof e.deadlineSeconds&&(n.deadlineSeconds=new d.LongBits(e.deadlineSeconds.low>>>0,e.deadlineSeconds.high>>>0).toNumber())),null!=e.cloudDatabaseRole&&(n.cloudDatabaseRole=String(e.cloudDatabaseRole)),n},w.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.readOptions=[]),t.defaults&&(o.name="",o.startTime=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(o.startTime=g.google.protobuf.Timestamp.toObject(e.startTime,t,n+1)),null!=e.endTime&&Object.hasOwnProperty.call(e,"endTime")&&(o.endTime=g.google.protobuf.Timestamp.toObject(e.endTime,t,n+1),t.oneofs)&&(o._endTime="endTime"),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&(o.partitionToken=e.partitionToken,t.oneofs)&&(o._partitionToken="partitionToken"),e.readOptions&&e.readOptions.length){o.readOptions=[];for(var r=0;r<e.readOptions.length;++r)o.readOptions[r]=e.readOptions[r]}return null!=e.heartbeatMilliseconds&&Object.hasOwnProperty.call(e,"heartbeatMilliseconds")&&(o.heartbeatMilliseconds=e.heartbeatMilliseconds,t.oneofs)&&(o._heartbeatMilliseconds="heartbeatMilliseconds"),null!=e.deadlineSeconds&&Object.hasOwnProperty.call(e,"deadlineSeconds")&&("undefined"!=typeof BigInt&&t.longs===BigInt?o.deadlineSeconds="number"==typeof e.deadlineSeconds?BigInt(e.deadlineSeconds):d.Long.fromBits(e.deadlineSeconds.low>>>0,e.deadlineSeconds.high>>>0,!1).toBigInt():"number"==typeof e.deadlineSeconds?o.deadlineSeconds=t.longs===String?String(e.deadlineSeconds):e.deadlineSeconds:o.deadlineSeconds=t.longs===String?d.Long.prototype.toString.call(e.deadlineSeconds):t.longs===Number?new d.LongBits(e.deadlineSeconds.low>>>0,e.deadlineSeconds.high>>>0).toNumber():e.deadlineSeconds,t.oneofs)&&(o._deadlineSeconds="deadlineSeconds"),null!=e.cloudDatabaseRole&&Object.hasOwnProperty.call(e,"cloudDatabaseRole")&&(o.cloudDatabaseRole=e.cloudDatabaseRole,t.oneofs)&&(o._cloudDatabaseRole="cloudDatabaseRole"),o},w.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},w.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ExecuteChangeStreamQuery"},w),e.SpannerActionOutcome=(T.prototype.status=null,T.prototype.commitTime=null,T.prototype.readResult=null,T.prototype.queryResult=null,T.prototype.transactionRestarted=null,T.prototype.batchTxnId=null,T.prototype.dbPartition=d.emptyArray,T.prototype.adminResult=null,T.prototype.dmlRowsModified=d.emptyArray,T.prototype.changeStreamRecords=d.emptyArray,T.prototype.snapshotIsolationTxnReadTimestamp=null,Object.defineProperty(T.prototype,"_status",{get:d.oneOfGetter(t=["status"]),set:d.oneOfSetter(t)}),Object.defineProperty(T.prototype,"_commitTime",{get:d.oneOfGetter(t=["commitTime"]),set:d.oneOfSetter(t)}),Object.defineProperty(T.prototype,"_readResult",{get:d.oneOfGetter(t=["readResult"]),set:d.oneOfSetter(t)}),Object.defineProperty(T.prototype,"_queryResult",{get:d.oneOfGetter(t=["queryResult"]),set:d.oneOfSetter(t)}),Object.defineProperty(T.prototype,"_transactionRestarted",{get:d.oneOfGetter(t=["transactionRestarted"]),set:d.oneOfSetter(t)}),Object.defineProperty(T.prototype,"_batchTxnId",{get:d.oneOfGetter(t=["batchTxnId"]),set:d.oneOfSetter(t)}),Object.defineProperty(T.prototype,"_adminResult",{get:d.oneOfGetter(t=["adminResult"]),set:d.oneOfSetter(t)}),Object.defineProperty(T.prototype,"_snapshotIsolationTxnReadTimestamp",{get:d.oneOfGetter(t=["snapshotIsolationTxnReadTimestamp"]),set:d.oneOfSetter(t)}),T.create=function(e){return new T(e)},T.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.status&&Object.hasOwnProperty.call(e,"status")&&g.google.rpc.Status.encode(e.status,t.uint32(10).fork(),n+1).ldelim(),null!=e.commitTime&&Object.hasOwnProperty.call(e,"commitTime")&&g.google.protobuf.Timestamp.encode(e.commitTime,t.uint32(18).fork(),n+1).ldelim(),null!=e.readResult&&Object.hasOwnProperty.call(e,"readResult")&&g.google.spanner.executor.v1.ReadResult.encode(e.readResult,t.uint32(26).fork(),n+1).ldelim(),null!=e.queryResult&&Object.hasOwnProperty.call(e,"queryResult")&&g.google.spanner.executor.v1.QueryResult.encode(e.queryResult,t.uint32(34).fork(),n+1).ldelim(),null!=e.transactionRestarted&&Object.hasOwnProperty.call(e,"transactionRestarted")&&t.uint32(40).bool(e.transactionRestarted),null!=e.batchTxnId&&Object.hasOwnProperty.call(e,"batchTxnId")&&t.uint32(50).bytes(e.batchTxnId),null!=e.dbPartition&&e.dbPartition.length)for(var o=0;o<e.dbPartition.length;++o)g.google.spanner.executor.v1.BatchPartition.encode(e.dbPartition[o],t.uint32(58).fork(),n+1).ldelim();if(null!=e.adminResult&&Object.hasOwnProperty.call(e,"adminResult")&&g.google.spanner.executor.v1.AdminResult.encode(e.adminResult,t.uint32(66).fork(),n+1).ldelim(),null!=e.dmlRowsModified&&e.dmlRowsModified.length){t.uint32(74).fork();for(o=0;o<e.dmlRowsModified.length;++o)t.int64(e.dmlRowsModified[o]);t.ldelim()}if(null!=e.changeStreamRecords&&e.changeStreamRecords.length)for(o=0;o<e.changeStreamRecords.length;++o)g.google.spanner.executor.v1.ChangeStreamRecord.encode(e.changeStreamRecords[o],t.uint32(82).fork(),n+1).ldelim();return null!=e.snapshotIsolationTxnReadTimestamp&&Object.hasOwnProperty.call(e,"snapshotIsolationTxnReadTimestamp")&&t.uint32(88).int64(e.snapshotIsolationTxnReadTimestamp),t},T.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},T.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.SpannerActionOutcome;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.status=g.google.rpc.Status.decode(e,e.uint32(),void 0,o+1);break;case 2:i.commitTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.readResult=g.google.spanner.executor.v1.ReadResult.decode(e,e.uint32(),void 0,o+1);break;case 4:i.queryResult=g.google.spanner.executor.v1.QueryResult.decode(e,e.uint32(),void 0,o+1);break;case 5:i.transactionRestarted=e.bool();break;case 6:i.batchTxnId=e.bytes();break;case 7:i.dbPartition&&i.dbPartition.length||(i.dbPartition=[]),i.dbPartition.push(g.google.spanner.executor.v1.BatchPartition.decode(e,e.uint32(),void 0,o+1));break;case 8:i.adminResult=g.google.spanner.executor.v1.AdminResult.decode(e,e.uint32(),void 0,o+1);break;case 9:if(i.dmlRowsModified&&i.dmlRowsModified.length||(i.dmlRowsModified=[]),2==(7&a))for(var s=e.uint32()+e.pos;e.pos<s;)i.dmlRowsModified.push(e.int64());else i.dmlRowsModified.push(e.int64());break;case 10:i.changeStreamRecords&&i.changeStreamRecords.length||(i.changeStreamRecords=[]),i.changeStreamRecords.push(g.google.spanner.executor.v1.ChangeStreamRecord.decode(e,e.uint32(),void 0,o+1));break;case 11:i.snapshotIsolationTxnReadTimestamp=e.int64();break;default:e.skipType(7&a,o)}}return i},T.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},T.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.status&&Object.hasOwnProperty.call(e,"status")&&(o=g.google.rpc.Status.verify(e.status,t+1)))return"status."+o;if(null!=e.commitTime&&Object.hasOwnProperty.call(e,"commitTime")&&(o=g.google.protobuf.Timestamp.verify(e.commitTime,t+1)))return"commitTime."+o;if(null!=e.readResult&&Object.hasOwnProperty.call(e,"readResult")&&(o=g.google.spanner.executor.v1.ReadResult.verify(e.readResult,t+1)))return"readResult."+o;if(null!=e.queryResult&&Object.hasOwnProperty.call(e,"queryResult")&&(o=g.google.spanner.executor.v1.QueryResult.verify(e.queryResult,t+1)))return"queryResult."+o;if(null!=e.transactionRestarted&&Object.hasOwnProperty.call(e,"transactionRestarted")&&"boolean"!=typeof e.transactionRestarted)return"transactionRestarted: boolean expected";if(null!=e.batchTxnId&&Object.hasOwnProperty.call(e,"batchTxnId")&&!(e.batchTxnId&&"number"==typeof e.batchTxnId.length||d.isString(e.batchTxnId)))return"batchTxnId: buffer expected";if(null!=e.dbPartition&&Object.hasOwnProperty.call(e,"dbPartition")){if(!Array.isArray(e.dbPartition))return"dbPartition: array expected";for(var n=0;n<e.dbPartition.length;++n)if(o=g.google.spanner.executor.v1.BatchPartition.verify(e.dbPartition[n],t+1))return"dbPartition."+o}if(null!=e.adminResult&&Object.hasOwnProperty.call(e,"adminResult")&&(o=g.google.spanner.executor.v1.AdminResult.verify(e.adminResult,t+1)))return"adminResult."+o;if(null!=e.dmlRowsModified&&Object.hasOwnProperty.call(e,"dmlRowsModified")){if(!Array.isArray(e.dmlRowsModified))return"dmlRowsModified: array expected";for(n=0;n<e.dmlRowsModified.length;++n)if(!(d.isInteger(e.dmlRowsModified[n])||e.dmlRowsModified[n]&&d.isInteger(e.dmlRowsModified[n].low)&&d.isInteger(e.dmlRowsModified[n].high)))return"dmlRowsModified: integer|Long[] expected"}if(null!=e.changeStreamRecords&&Object.hasOwnProperty.call(e,"changeStreamRecords")){if(!Array.isArray(e.changeStreamRecords))return"changeStreamRecords: array expected";for(var o,n=0;n<e.changeStreamRecords.length;++n)if(o=g.google.spanner.executor.v1.ChangeStreamRecord.verify(e.changeStreamRecords[n],t+1))return"changeStreamRecords."+o}return null==e.snapshotIsolationTxnReadTimestamp||!Object.hasOwnProperty.call(e,"snapshotIsolationTxnReadTimestamp")||d.isInteger(e.snapshotIsolationTxnReadTimestamp)||e.snapshotIsolationTxnReadTimestamp&&d.isInteger(e.snapshotIsolationTxnReadTimestamp.low)&&d.isInteger(e.snapshotIsolationTxnReadTimestamp.high)?null:"snapshotIsolationTxnReadTimestamp: integer|Long expected"},T.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.SpannerActionOutcome)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.SpannerActionOutcome;if(null!=e.status){if(!d.isObject(e.status))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.status: object expected");n.status=g.google.rpc.Status.fromObject(e.status,t+1)}if(null!=e.commitTime){if(!d.isObject(e.commitTime))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.commitTime: object expected");n.commitTime=g.google.protobuf.Timestamp.fromObject(e.commitTime,t+1)}if(null!=e.readResult){if(!d.isObject(e.readResult))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.readResult: object expected");n.readResult=g.google.spanner.executor.v1.ReadResult.fromObject(e.readResult,t+1)}if(null!=e.queryResult){if(!d.isObject(e.queryResult))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.queryResult: object expected");n.queryResult=g.google.spanner.executor.v1.QueryResult.fromObject(e.queryResult,t+1)}if(null!=e.transactionRestarted&&(n.transactionRestarted=Boolean(e.transactionRestarted)),null!=e.batchTxnId&&("string"==typeof e.batchTxnId?d.base64.decode(e.batchTxnId,n.batchTxnId=d.newBuffer(d.base64.length(e.batchTxnId)),0):0<=e.batchTxnId.length&&(n.batchTxnId=e.batchTxnId)),e.dbPartition){if(!Array.isArray(e.dbPartition))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.dbPartition: array expected");n.dbPartition=[];for(var o=0;o<e.dbPartition.length;++o){if(!d.isObject(e.dbPartition[o]))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.dbPartition: object expected");n.dbPartition[o]=g.google.spanner.executor.v1.BatchPartition.fromObject(e.dbPartition[o],t+1)}}if(null!=e.adminResult){if(!d.isObject(e.adminResult))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.adminResult: object expected");n.adminResult=g.google.spanner.executor.v1.AdminResult.fromObject(e.adminResult,t+1)}if(e.dmlRowsModified){if(!Array.isArray(e.dmlRowsModified))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.dmlRowsModified: array expected");n.dmlRowsModified=[];for(o=0;o<e.dmlRowsModified.length;++o)d.Long?n.dmlRowsModified[o]=d.Long.fromValue(e.dmlRowsModified[o],!1):"string"==typeof e.dmlRowsModified[o]?n.dmlRowsModified[o]=parseInt(e.dmlRowsModified[o],10):"number"==typeof e.dmlRowsModified[o]?n.dmlRowsModified[o]=e.dmlRowsModified[o]:"object"==typeof e.dmlRowsModified[o]&&(n.dmlRowsModified[o]=new d.LongBits(e.dmlRowsModified[o].low>>>0,e.dmlRowsModified[o].high>>>0).toNumber())}if(e.changeStreamRecords){if(!Array.isArray(e.changeStreamRecords))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.changeStreamRecords: array expected");n.changeStreamRecords=[];for(o=0;o<e.changeStreamRecords.length;++o){if(!d.isObject(e.changeStreamRecords[o]))throw TypeError(".google.spanner.executor.v1.SpannerActionOutcome.changeStreamRecords: object expected");n.changeStreamRecords[o]=g.google.spanner.executor.v1.ChangeStreamRecord.fromObject(e.changeStreamRecords[o],t+1)}}return null!=e.snapshotIsolationTxnReadTimestamp&&(d.Long?n.snapshotIsolationTxnReadTimestamp=d.Long.fromValue(e.snapshotIsolationTxnReadTimestamp,!1):"string"==typeof e.snapshotIsolationTxnReadTimestamp?n.snapshotIsolationTxnReadTimestamp=parseInt(e.snapshotIsolationTxnReadTimestamp,10):"number"==typeof e.snapshotIsolationTxnReadTimestamp?n.snapshotIsolationTxnReadTimestamp=e.snapshotIsolationTxnReadTimestamp:"object"==typeof e.snapshotIsolationTxnReadTimestamp&&(n.snapshotIsolationTxnReadTimestamp=new d.LongBits(e.snapshotIsolationTxnReadTimestamp.low>>>0,e.snapshotIsolationTxnReadTimestamp.high>>>0).toNumber())),n},T.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.dbPartition=[],o.dmlRowsModified=[],o.changeStreamRecords=[]),null!=e.status&&Object.hasOwnProperty.call(e,"status")&&(o.status=g.google.rpc.Status.toObject(e.status,t,n+1),t.oneofs)&&(o._status="status"),null!=e.commitTime&&Object.hasOwnProperty.call(e,"commitTime")&&(o.commitTime=g.google.protobuf.Timestamp.toObject(e.commitTime,t,n+1),t.oneofs)&&(o._commitTime="commitTime"),null!=e.readResult&&Object.hasOwnProperty.call(e,"readResult")&&(o.readResult=g.google.spanner.executor.v1.ReadResult.toObject(e.readResult,t,n+1),t.oneofs)&&(o._readResult="readResult"),null!=e.queryResult&&Object.hasOwnProperty.call(e,"queryResult")&&(o.queryResult=g.google.spanner.executor.v1.QueryResult.toObject(e.queryResult,t,n+1),t.oneofs)&&(o._queryResult="queryResult"),null!=e.transactionRestarted&&Object.hasOwnProperty.call(e,"transactionRestarted")&&(o.transactionRestarted=e.transactionRestarted,t.oneofs)&&(o._transactionRestarted="transactionRestarted"),null!=e.batchTxnId&&Object.hasOwnProperty.call(e,"batchTxnId")&&(o.batchTxnId=t.bytes===String?d.base64.encode(e.batchTxnId,0,e.batchTxnId.length):t.bytes===Array?Array.prototype.slice.call(e.batchTxnId):e.batchTxnId,t.oneofs)&&(o._batchTxnId="batchTxnId"),e.dbPartition&&e.dbPartition.length){o.dbPartition=[];for(var r=0;r<e.dbPartition.length;++r)o.dbPartition[r]=g.google.spanner.executor.v1.BatchPartition.toObject(e.dbPartition[r],t,n+1)}if(null!=e.adminResult&&Object.hasOwnProperty.call(e,"adminResult")&&(o.adminResult=g.google.spanner.executor.v1.AdminResult.toObject(e.adminResult,t,n+1),t.oneofs)&&(o._adminResult="adminResult"),e.dmlRowsModified&&e.dmlRowsModified.length){o.dmlRowsModified=[];for(r=0;r<e.dmlRowsModified.length;++r)"undefined"!=typeof BigInt&&t.longs===BigInt?o.dmlRowsModified[r]="number"==typeof e.dmlRowsModified[r]?BigInt(e.dmlRowsModified[r]):d.Long.fromBits(e.dmlRowsModified[r].low>>>0,e.dmlRowsModified[r].high>>>0,!1).toBigInt():"number"==typeof e.dmlRowsModified[r]?o.dmlRowsModified[r]=t.longs===String?String(e.dmlRowsModified[r]):e.dmlRowsModified[r]:o.dmlRowsModified[r]=t.longs===String?d.Long.prototype.toString.call(e.dmlRowsModified[r]):t.longs===Number?new d.LongBits(e.dmlRowsModified[r].low>>>0,e.dmlRowsModified[r].high>>>0).toNumber():e.dmlRowsModified[r]}if(e.changeStreamRecords&&e.changeStreamRecords.length){o.changeStreamRecords=[];for(r=0;r<e.changeStreamRecords.length;++r)o.changeStreamRecords[r]=g.google.spanner.executor.v1.ChangeStreamRecord.toObject(e.changeStreamRecords[r],t,n+1)}return null!=e.snapshotIsolationTxnReadTimestamp&&Object.hasOwnProperty.call(e,"snapshotIsolationTxnReadTimestamp")&&("undefined"!=typeof BigInt&&t.longs===BigInt?o.snapshotIsolationTxnReadTimestamp="number"==typeof e.snapshotIsolationTxnReadTimestamp?BigInt(e.snapshotIsolationTxnReadTimestamp):d.Long.fromBits(e.snapshotIsolationTxnReadTimestamp.low>>>0,e.snapshotIsolationTxnReadTimestamp.high>>>0,!1).toBigInt():"number"==typeof e.snapshotIsolationTxnReadTimestamp?o.snapshotIsolationTxnReadTimestamp=t.longs===String?String(e.snapshotIsolationTxnReadTimestamp):e.snapshotIsolationTxnReadTimestamp:o.snapshotIsolationTxnReadTimestamp=t.longs===String?d.Long.prototype.toString.call(e.snapshotIsolationTxnReadTimestamp):t.longs===Number?new d.LongBits(e.snapshotIsolationTxnReadTimestamp.low>>>0,e.snapshotIsolationTxnReadTimestamp.high>>>0).toNumber():e.snapshotIsolationTxnReadTimestamp,t.oneofs)&&(o._snapshotIsolationTxnReadTimestamp="snapshotIsolationTxnReadTimestamp"),o},T.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},T.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.SpannerActionOutcome"},T),e.AdminResult=(An.prototype.backupResponse=null,An.prototype.operationResponse=null,An.prototype.databaseResponse=null,An.prototype.instanceResponse=null,An.prototype.instanceConfigResponse=null,An.create=function(e){return new An(e)},An.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.backupResponse&&Object.hasOwnProperty.call(e,"backupResponse")&&g.google.spanner.executor.v1.CloudBackupResponse.encode(e.backupResponse,t.uint32(10).fork(),n+1).ldelim(),null!=e.operationResponse&&Object.hasOwnProperty.call(e,"operationResponse")&&g.google.spanner.executor.v1.OperationResponse.encode(e.operationResponse,t.uint32(18).fork(),n+1).ldelim(),null!=e.databaseResponse&&Object.hasOwnProperty.call(e,"databaseResponse")&&g.google.spanner.executor.v1.CloudDatabaseResponse.encode(e.databaseResponse,t.uint32(26).fork(),n+1).ldelim(),null!=e.instanceResponse&&Object.hasOwnProperty.call(e,"instanceResponse")&&g.google.spanner.executor.v1.CloudInstanceResponse.encode(e.instanceResponse,t.uint32(34).fork(),n+1).ldelim(),null!=e.instanceConfigResponse&&Object.hasOwnProperty.call(e,"instanceConfigResponse")&&g.google.spanner.executor.v1.CloudInstanceConfigResponse.encode(e.instanceConfigResponse,t.uint32(42).fork(),n+1).ldelim(),t},An.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},An.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.AdminResult;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.backupResponse=g.google.spanner.executor.v1.CloudBackupResponse.decode(e,e.uint32(),void 0,o+1);break;case 2:i.operationResponse=g.google.spanner.executor.v1.OperationResponse.decode(e,e.uint32(),void 0,o+1);break;case 3:i.databaseResponse=g.google.spanner.executor.v1.CloudDatabaseResponse.decode(e,e.uint32(),void 0,o+1);break;case 4:i.instanceResponse=g.google.spanner.executor.v1.CloudInstanceResponse.decode(e,e.uint32(),void 0,o+1);break;case 5:i.instanceConfigResponse=g.google.spanner.executor.v1.CloudInstanceConfigResponse.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},An.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},An.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.backupResponse&&Object.hasOwnProperty.call(e,"backupResponse")&&(n=g.google.spanner.executor.v1.CloudBackupResponse.verify(e.backupResponse,t+1)))return"backupResponse."+n;if(null!=e.operationResponse&&Object.hasOwnProperty.call(e,"operationResponse")&&(n=g.google.spanner.executor.v1.OperationResponse.verify(e.operationResponse,t+1)))return"operationResponse."+n;if(null!=e.databaseResponse&&Object.hasOwnProperty.call(e,"databaseResponse")&&(n=g.google.spanner.executor.v1.CloudDatabaseResponse.verify(e.databaseResponse,t+1)))return"databaseResponse."+n;if(null!=e.instanceResponse&&Object.hasOwnProperty.call(e,"instanceResponse")&&(n=g.google.spanner.executor.v1.CloudInstanceResponse.verify(e.instanceResponse,t+1)))return"instanceResponse."+n;if(null!=e.instanceConfigResponse&&Object.hasOwnProperty.call(e,"instanceConfigResponse")&&(n=g.google.spanner.executor.v1.CloudInstanceConfigResponse.verify(e.instanceConfigResponse,t+1)))return"instanceConfigResponse."+n;return null},An.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.AdminResult)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.AdminResult: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.AdminResult;if(null!=e.backupResponse){if(!d.isObject(e.backupResponse))throw TypeError(".google.spanner.executor.v1.AdminResult.backupResponse: object expected");n.backupResponse=g.google.spanner.executor.v1.CloudBackupResponse.fromObject(e.backupResponse,t+1)}if(null!=e.operationResponse){if(!d.isObject(e.operationResponse))throw TypeError(".google.spanner.executor.v1.AdminResult.operationResponse: object expected");n.operationResponse=g.google.spanner.executor.v1.OperationResponse.fromObject(e.operationResponse,t+1)}if(null!=e.databaseResponse){if(!d.isObject(e.databaseResponse))throw TypeError(".google.spanner.executor.v1.AdminResult.databaseResponse: object expected");n.databaseResponse=g.google.spanner.executor.v1.CloudDatabaseResponse.fromObject(e.databaseResponse,t+1)}if(null!=e.instanceResponse){if(!d.isObject(e.instanceResponse))throw TypeError(".google.spanner.executor.v1.AdminResult.instanceResponse: object expected");n.instanceResponse=g.google.spanner.executor.v1.CloudInstanceResponse.fromObject(e.instanceResponse,t+1)}if(null!=e.instanceConfigResponse){if(!d.isObject(e.instanceConfigResponse))throw TypeError(".google.spanner.executor.v1.AdminResult.instanceConfigResponse: object expected");n.instanceConfigResponse=g.google.spanner.executor.v1.CloudInstanceConfigResponse.fromObject(e.instanceConfigResponse,t+1)}return n},An.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.backupResponse=null,o.operationResponse=null,o.databaseResponse=null,o.instanceResponse=null,o.instanceConfigResponse=null),null!=e.backupResponse&&Object.hasOwnProperty.call(e,"backupResponse")&&(o.backupResponse=g.google.spanner.executor.v1.CloudBackupResponse.toObject(e.backupResponse,t,n+1)),null!=e.operationResponse&&Object.hasOwnProperty.call(e,"operationResponse")&&(o.operationResponse=g.google.spanner.executor.v1.OperationResponse.toObject(e.operationResponse,t,n+1)),null!=e.databaseResponse&&Object.hasOwnProperty.call(e,"databaseResponse")&&(o.databaseResponse=g.google.spanner.executor.v1.CloudDatabaseResponse.toObject(e.databaseResponse,t,n+1)),null!=e.instanceResponse&&Object.hasOwnProperty.call(e,"instanceResponse")&&(o.instanceResponse=g.google.spanner.executor.v1.CloudInstanceResponse.toObject(e.instanceResponse,t,n+1)),null!=e.instanceConfigResponse&&Object.hasOwnProperty.call(e,"instanceConfigResponse")&&(o.instanceConfigResponse=g.google.spanner.executor.v1.CloudInstanceConfigResponse.toObject(e.instanceConfigResponse,t,n+1)),o},An.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},An.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.AdminResult"},An),e.CloudBackupResponse=(Nn.prototype.listedBackups=d.emptyArray,Nn.prototype.listedBackupOperations=d.emptyArray,Nn.prototype.nextPageToken="",Nn.prototype.backup=null,Nn.create=function(e){return new Nn(e)},Nn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.listedBackups&&e.listedBackups.length)for(var o=0;o<e.listedBackups.length;++o)g.google.spanner.admin.database.v1.Backup.encode(e.listedBackups[o],t.uint32(10).fork(),n+1).ldelim();if(null!=e.listedBackupOperations&&e.listedBackupOperations.length)for(o=0;o<e.listedBackupOperations.length;++o)g.google.longrunning.Operation.encode(e.listedBackupOperations[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(26).string(e.nextPageToken),null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&g.google.spanner.admin.database.v1.Backup.encode(e.backup,t.uint32(34).fork(),n+1).ldelim(),t},Nn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Nn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CloudBackupResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.listedBackups&&i.listedBackups.length||(i.listedBackups=[]),i.listedBackups.push(g.google.spanner.admin.database.v1.Backup.decode(e,e.uint32(),void 0,o+1));break;case 2:i.listedBackupOperations&&i.listedBackupOperations.length||(i.listedBackupOperations=[]),i.listedBackupOperations.push(g.google.longrunning.Operation.decode(e,e.uint32(),void 0,o+1));break;case 3:i.nextPageToken=e.string();break;case 4:i.backup=g.google.spanner.admin.database.v1.Backup.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Nn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Nn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.listedBackups&&Object.hasOwnProperty.call(e,"listedBackups")){if(!Array.isArray(e.listedBackups))return"listedBackups: array expected";for(var n=0;n<e.listedBackups.length;++n)if(o=g.google.spanner.admin.database.v1.Backup.verify(e.listedBackups[n],t+1))return"listedBackups."+o}if(null!=e.listedBackupOperations&&Object.hasOwnProperty.call(e,"listedBackupOperations")){if(!Array.isArray(e.listedBackupOperations))return"listedBackupOperations: array expected";for(n=0;n<e.listedBackupOperations.length;++n)if(o=g.google.longrunning.Operation.verify(e.listedBackupOperations[n],t+1))return"listedBackupOperations."+o}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken))return"nextPageToken: string expected";var o;if(null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&(o=g.google.spanner.admin.database.v1.Backup.verify(e.backup,t+1)))return"backup."+o;return null},Nn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CloudBackupResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CloudBackupResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.CloudBackupResponse;if(e.listedBackups){if(!Array.isArray(e.listedBackups))throw TypeError(".google.spanner.executor.v1.CloudBackupResponse.listedBackups: array expected");n.listedBackups=[];for(var o=0;o<e.listedBackups.length;++o){if(!d.isObject(e.listedBackups[o]))throw TypeError(".google.spanner.executor.v1.CloudBackupResponse.listedBackups: object expected");n.listedBackups[o]=g.google.spanner.admin.database.v1.Backup.fromObject(e.listedBackups[o],t+1)}}if(e.listedBackupOperations){if(!Array.isArray(e.listedBackupOperations))throw TypeError(".google.spanner.executor.v1.CloudBackupResponse.listedBackupOperations: array expected");n.listedBackupOperations=[];for(o=0;o<e.listedBackupOperations.length;++o){if(!d.isObject(e.listedBackupOperations[o]))throw TypeError(".google.spanner.executor.v1.CloudBackupResponse.listedBackupOperations: object expected");n.listedBackupOperations[o]=g.google.longrunning.Operation.fromObject(e.listedBackupOperations[o],t+1)}}if(null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),null!=e.backup){if(!d.isObject(e.backup))throw TypeError(".google.spanner.executor.v1.CloudBackupResponse.backup: object expected");n.backup=g.google.spanner.admin.database.v1.Backup.fromObject(e.backup,t+1)}return n},Nn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.listedBackups=[],o.listedBackupOperations=[]),t.defaults&&(o.nextPageToken="",o.backup=null),e.listedBackups&&e.listedBackups.length){o.listedBackups=[];for(var r=0;r<e.listedBackups.length;++r)o.listedBackups[r]=g.google.spanner.admin.database.v1.Backup.toObject(e.listedBackups[r],t,n+1)}if(e.listedBackupOperations&&e.listedBackupOperations.length){o.listedBackupOperations=[];for(r=0;r<e.listedBackupOperations.length;++r)o.listedBackupOperations[r]=g.google.longrunning.Operation.toObject(e.listedBackupOperations[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),null!=e.backup&&Object.hasOwnProperty.call(e,"backup")&&(o.backup=g.google.spanner.admin.database.v1.Backup.toObject(e.backup,t,n+1)),o},Nn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Nn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CloudBackupResponse"},Nn),e.OperationResponse=(_n.prototype.listedOperations=d.emptyArray,_n.prototype.nextPageToken="",_n.prototype.operation=null,_n.create=function(e){return new _n(e)},_n.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.listedOperations&&e.listedOperations.length)for(var o=0;o<e.listedOperations.length;++o)g.google.longrunning.Operation.encode(e.listedOperations[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),null!=e.operation&&Object.hasOwnProperty.call(e,"operation")&&g.google.longrunning.Operation.encode(e.operation,t.uint32(26).fork(),n+1).ldelim(),t},_n.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},_n.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.OperationResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.listedOperations&&i.listedOperations.length||(i.listedOperations=[]),i.listedOperations.push(g.google.longrunning.Operation.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;case 3:i.operation=g.google.longrunning.Operation.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},_n.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},_n.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.listedOperations&&Object.hasOwnProperty.call(e,"listedOperations")){if(!Array.isArray(e.listedOperations))return"listedOperations: array expected";for(var n=0;n<e.listedOperations.length;++n)if(o=g.google.longrunning.Operation.verify(e.listedOperations[n],t+1))return"listedOperations."+o}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken))return"nextPageToken: string expected";var o;if(null!=e.operation&&Object.hasOwnProperty.call(e,"operation")&&(o=g.google.longrunning.Operation.verify(e.operation,t+1)))return"operation."+o;return null},_n.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.OperationResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.OperationResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.OperationResponse;if(e.listedOperations){if(!Array.isArray(e.listedOperations))throw TypeError(".google.spanner.executor.v1.OperationResponse.listedOperations: array expected");n.listedOperations=[];for(var o=0;o<e.listedOperations.length;++o){if(!d.isObject(e.listedOperations[o]))throw TypeError(".google.spanner.executor.v1.OperationResponse.listedOperations: object expected");n.listedOperations[o]=g.google.longrunning.Operation.fromObject(e.listedOperations[o],t+1)}}if(null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),null!=e.operation){if(!d.isObject(e.operation))throw TypeError(".google.spanner.executor.v1.OperationResponse.operation: object expected");n.operation=g.google.longrunning.Operation.fromObject(e.operation,t+1)}return n},_n.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.listedOperations=[]),t.defaults&&(o.nextPageToken="",o.operation=null),e.listedOperations&&e.listedOperations.length){o.listedOperations=[];for(var r=0;r<e.listedOperations.length;++r)o.listedOperations[r]=g.google.longrunning.Operation.toObject(e.listedOperations[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),null!=e.operation&&Object.hasOwnProperty.call(e,"operation")&&(o.operation=g.google.longrunning.Operation.toObject(e.operation,t,n+1)),o},_n.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},_n.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.OperationResponse"},_n),e.CloudInstanceResponse=(Bn.prototype.listedInstances=d.emptyArray,Bn.prototype.nextPageToken="",Bn.prototype.instance=null,Bn.create=function(e){return new Bn(e)},Bn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.listedInstances&&e.listedInstances.length)for(var o=0;o<e.listedInstances.length;++o)g.google.spanner.admin.instance.v1.Instance.encode(e.listedInstances[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&g.google.spanner.admin.instance.v1.Instance.encode(e.instance,t.uint32(26).fork(),n+1).ldelim(),t},Bn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Bn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CloudInstanceResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.listedInstances&&i.listedInstances.length||(i.listedInstances=[]),i.listedInstances.push(g.google.spanner.admin.instance.v1.Instance.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;case 3:i.instance=g.google.spanner.admin.instance.v1.Instance.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Bn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Bn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.listedInstances&&Object.hasOwnProperty.call(e,"listedInstances")){if(!Array.isArray(e.listedInstances))return"listedInstances: array expected";for(var n=0;n<e.listedInstances.length;++n)if(o=g.google.spanner.admin.instance.v1.Instance.verify(e.listedInstances[n],t+1))return"listedInstances."+o}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken))return"nextPageToken: string expected";var o;if(null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&(o=g.google.spanner.admin.instance.v1.Instance.verify(e.instance,t+1)))return"instance."+o;return null},Bn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CloudInstanceResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CloudInstanceResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.CloudInstanceResponse;if(e.listedInstances){if(!Array.isArray(e.listedInstances))throw TypeError(".google.spanner.executor.v1.CloudInstanceResponse.listedInstances: array expected");n.listedInstances=[];for(var o=0;o<e.listedInstances.length;++o){if(!d.isObject(e.listedInstances[o]))throw TypeError(".google.spanner.executor.v1.CloudInstanceResponse.listedInstances: object expected");n.listedInstances[o]=g.google.spanner.admin.instance.v1.Instance.fromObject(e.listedInstances[o],t+1)}}if(null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),null!=e.instance){if(!d.isObject(e.instance))throw TypeError(".google.spanner.executor.v1.CloudInstanceResponse.instance: object expected");n.instance=g.google.spanner.admin.instance.v1.Instance.fromObject(e.instance,t+1)}return n},Bn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.listedInstances=[]),t.defaults&&(o.nextPageToken="",o.instance=null),e.listedInstances&&e.listedInstances.length){o.listedInstances=[];for(var r=0;r<e.listedInstances.length;++r)o.listedInstances[r]=g.google.spanner.admin.instance.v1.Instance.toObject(e.listedInstances[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),null!=e.instance&&Object.hasOwnProperty.call(e,"instance")&&(o.instance=g.google.spanner.admin.instance.v1.Instance.toObject(e.instance,t,n+1)),o},Bn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Bn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CloudInstanceResponse"},Bn),e.CloudInstanceConfigResponse=(Un.prototype.listedInstanceConfigs=d.emptyArray,Un.prototype.nextPageToken="",Un.prototype.instanceConfig=null,Un.create=function(e){return new Un(e)},Un.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.listedInstanceConfigs&&e.listedInstanceConfigs.length)for(var o=0;o<e.listedInstanceConfigs.length;++o)g.google.spanner.admin.instance.v1.InstanceConfig.encode(e.listedInstanceConfigs[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&g.google.spanner.admin.instance.v1.InstanceConfig.encode(e.instanceConfig,t.uint32(26).fork(),n+1).ldelim(),t},Un.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Un.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CloudInstanceConfigResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.listedInstanceConfigs&&i.listedInstanceConfigs.length||(i.listedInstanceConfigs=[]),i.listedInstanceConfigs.push(g.google.spanner.admin.instance.v1.InstanceConfig.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;case 3:i.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Un.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Un.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.listedInstanceConfigs&&Object.hasOwnProperty.call(e,"listedInstanceConfigs")){if(!Array.isArray(e.listedInstanceConfigs))return"listedInstanceConfigs: array expected";for(var n=0;n<e.listedInstanceConfigs.length;++n)if(o=g.google.spanner.admin.instance.v1.InstanceConfig.verify(e.listedInstanceConfigs[n],t+1))return"listedInstanceConfigs."+o}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken))return"nextPageToken: string expected";var o;if(null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&(o=g.google.spanner.admin.instance.v1.InstanceConfig.verify(e.instanceConfig,t+1)))return"instanceConfig."+o;return null},Un.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CloudInstanceConfigResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CloudInstanceConfigResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.CloudInstanceConfigResponse;if(e.listedInstanceConfigs){if(!Array.isArray(e.listedInstanceConfigs))throw TypeError(".google.spanner.executor.v1.CloudInstanceConfigResponse.listedInstanceConfigs: array expected");n.listedInstanceConfigs=[];for(var o=0;o<e.listedInstanceConfigs.length;++o){if(!d.isObject(e.listedInstanceConfigs[o]))throw TypeError(".google.spanner.executor.v1.CloudInstanceConfigResponse.listedInstanceConfigs: object expected");n.listedInstanceConfigs[o]=g.google.spanner.admin.instance.v1.InstanceConfig.fromObject(e.listedInstanceConfigs[o],t+1)}}if(null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),null!=e.instanceConfig){if(!d.isObject(e.instanceConfig))throw TypeError(".google.spanner.executor.v1.CloudInstanceConfigResponse.instanceConfig: object expected");n.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.fromObject(e.instanceConfig,t+1)}return n},Un.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.listedInstanceConfigs=[]),t.defaults&&(o.nextPageToken="",o.instanceConfig=null),e.listedInstanceConfigs&&e.listedInstanceConfigs.length){o.listedInstanceConfigs=[];for(var r=0;r<e.listedInstanceConfigs.length;++r)o.listedInstanceConfigs[r]=g.google.spanner.admin.instance.v1.InstanceConfig.toObject(e.listedInstanceConfigs[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),null!=e.instanceConfig&&Object.hasOwnProperty.call(e,"instanceConfig")&&(o.instanceConfig=g.google.spanner.admin.instance.v1.InstanceConfig.toObject(e.instanceConfig,t,n+1)),o},Un.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Un.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CloudInstanceConfigResponse"},Un),e.CloudDatabaseResponse=(Mn.prototype.listedDatabases=d.emptyArray,Mn.prototype.listedDatabaseOperations=d.emptyArray,Mn.prototype.nextPageToken="",Mn.prototype.database=null,Mn.create=function(e){return new Mn(e)},Mn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.listedDatabases&&e.listedDatabases.length)for(var o=0;o<e.listedDatabases.length;++o)g.google.spanner.admin.database.v1.Database.encode(e.listedDatabases[o],t.uint32(10).fork(),n+1).ldelim();if(null!=e.listedDatabaseOperations&&e.listedDatabaseOperations.length)for(o=0;o<e.listedDatabaseOperations.length;++o)g.google.longrunning.Operation.encode(e.listedDatabaseOperations[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(26).string(e.nextPageToken),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&g.google.spanner.admin.database.v1.Database.encode(e.database,t.uint32(34).fork(),n+1).ldelim(),t},Mn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Mn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.CloudDatabaseResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.listedDatabases&&i.listedDatabases.length||(i.listedDatabases=[]),i.listedDatabases.push(g.google.spanner.admin.database.v1.Database.decode(e,e.uint32(),void 0,o+1));break;case 2:i.listedDatabaseOperations&&i.listedDatabaseOperations.length||(i.listedDatabaseOperations=[]),i.listedDatabaseOperations.push(g.google.longrunning.Operation.decode(e,e.uint32(),void 0,o+1));break;case 3:i.nextPageToken=e.string();break;case 4:i.database=g.google.spanner.admin.database.v1.Database.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Mn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Mn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.listedDatabases&&Object.hasOwnProperty.call(e,"listedDatabases")){if(!Array.isArray(e.listedDatabases))return"listedDatabases: array expected";for(var n=0;n<e.listedDatabases.length;++n)if(o=g.google.spanner.admin.database.v1.Database.verify(e.listedDatabases[n],t+1))return"listedDatabases."+o}if(null!=e.listedDatabaseOperations&&Object.hasOwnProperty.call(e,"listedDatabaseOperations")){if(!Array.isArray(e.listedDatabaseOperations))return"listedDatabaseOperations: array expected";for(n=0;n<e.listedDatabaseOperations.length;++n)if(o=g.google.longrunning.Operation.verify(e.listedDatabaseOperations[n],t+1))return"listedDatabaseOperations."+o}if(null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken))return"nextPageToken: string expected";var o;if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o=g.google.spanner.admin.database.v1.Database.verify(e.database,t+1)))return"database."+o;return null},Mn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.CloudDatabaseResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.CloudDatabaseResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.CloudDatabaseResponse;if(e.listedDatabases){if(!Array.isArray(e.listedDatabases))throw TypeError(".google.spanner.executor.v1.CloudDatabaseResponse.listedDatabases: array expected");n.listedDatabases=[];for(var o=0;o<e.listedDatabases.length;++o){if(!d.isObject(e.listedDatabases[o]))throw TypeError(".google.spanner.executor.v1.CloudDatabaseResponse.listedDatabases: object expected");n.listedDatabases[o]=g.google.spanner.admin.database.v1.Database.fromObject(e.listedDatabases[o],t+1)}}if(e.listedDatabaseOperations){if(!Array.isArray(e.listedDatabaseOperations))throw TypeError(".google.spanner.executor.v1.CloudDatabaseResponse.listedDatabaseOperations: array expected");n.listedDatabaseOperations=[];for(o=0;o<e.listedDatabaseOperations.length;++o){if(!d.isObject(e.listedDatabaseOperations[o]))throw TypeError(".google.spanner.executor.v1.CloudDatabaseResponse.listedDatabaseOperations: object expected");n.listedDatabaseOperations[o]=g.google.longrunning.Operation.fromObject(e.listedDatabaseOperations[o],t+1)}}if(null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),null!=e.database){if(!d.isObject(e.database))throw TypeError(".google.spanner.executor.v1.CloudDatabaseResponse.database: object expected");n.database=g.google.spanner.admin.database.v1.Database.fromObject(e.database,t+1)}return n},Mn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.listedDatabases=[],o.listedDatabaseOperations=[]),t.defaults&&(o.nextPageToken="",o.database=null),e.listedDatabases&&e.listedDatabases.length){o.listedDatabases=[];for(var r=0;r<e.listedDatabases.length;++r)o.listedDatabases[r]=g.google.spanner.admin.database.v1.Database.toObject(e.listedDatabases[r],t,n+1)}if(e.listedDatabaseOperations&&e.listedDatabaseOperations.length){o.listedDatabaseOperations=[];for(r=0;r<e.listedDatabaseOperations.length;++r)o.listedDatabaseOperations[r]=g.google.longrunning.Operation.toObject(e.listedDatabaseOperations[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o.database=g.google.spanner.admin.database.v1.Database.toObject(e.database,t,n+1)),o},Mn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Mn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.CloudDatabaseResponse"},Mn),e.ReadResult=(qn.prototype.table="",qn.prototype.index=null,qn.prototype.requestIndex=null,qn.prototype.row=d.emptyArray,qn.prototype.rowType=null,Object.defineProperty(qn.prototype,"_index",{get:d.oneOfGetter(a=["index"]),set:d.oneOfSetter(a)}),Object.defineProperty(qn.prototype,"_requestIndex",{get:d.oneOfGetter(a=["requestIndex"]),set:d.oneOfSetter(a)}),Object.defineProperty(qn.prototype,"_rowType",{get:d.oneOfGetter(a=["rowType"]),set:d.oneOfSetter(a)}),qn.create=function(e){return new qn(e)},qn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(10).string(e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&t.uint32(18).string(e.index),null!=e.requestIndex&&Object.hasOwnProperty.call(e,"requestIndex")&&t.uint32(24).int32(e.requestIndex),null!=e.row&&e.row.length)for(var o=0;o<e.row.length;++o)g.google.spanner.executor.v1.ValueList.encode(e.row[o],t.uint32(34).fork(),n+1).ldelim();return null!=e.rowType&&Object.hasOwnProperty.call(e,"rowType")&&g.google.spanner.v1.StructType.encode(e.rowType,t.uint32(42).fork(),n+1).ldelim(),t},qn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},qn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ReadResult;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.table=e.string();break;case 2:i.index=e.string();break;case 3:i.requestIndex=e.int32();break;case 4:i.row&&i.row.length||(i.row=[]),i.row.push(g.google.spanner.executor.v1.ValueList.decode(e,e.uint32(),void 0,o+1));break;case 5:i.rowType=g.google.spanner.v1.StructType.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},qn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},qn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";if(null!=e.index&&Object.hasOwnProperty.call(e,"index")&&!d.isString(e.index))return"index: string expected";if(null!=e.requestIndex&&Object.hasOwnProperty.call(e,"requestIndex")&&!d.isInteger(e.requestIndex))return"requestIndex: integer expected";if(null!=e.row&&Object.hasOwnProperty.call(e,"row")){if(!Array.isArray(e.row))return"row: array expected";for(var n,o=0;o<e.row.length;++o)if(n=g.google.spanner.executor.v1.ValueList.verify(e.row[o],t+1))return"row."+n}if(null!=e.rowType&&Object.hasOwnProperty.call(e,"rowType")&&(n=g.google.spanner.v1.StructType.verify(e.rowType,t+1)))return"rowType."+n;return null},qn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ReadResult)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ReadResult: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ReadResult;if(null!=e.table&&(n.table=String(e.table)),null!=e.index&&(n.index=String(e.index)),null!=e.requestIndex&&(n.requestIndex=0|e.requestIndex),e.row){if(!Array.isArray(e.row))throw TypeError(".google.spanner.executor.v1.ReadResult.row: array expected");n.row=[];for(var o=0;o<e.row.length;++o){if(!d.isObject(e.row[o]))throw TypeError(".google.spanner.executor.v1.ReadResult.row: object expected");n.row[o]=g.google.spanner.executor.v1.ValueList.fromObject(e.row[o],t+1)}}if(null!=e.rowType){if(!d.isObject(e.rowType))throw TypeError(".google.spanner.executor.v1.ReadResult.rowType: object expected");n.rowType=g.google.spanner.v1.StructType.fromObject(e.rowType,t+1)}return n},qn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.row=[]),t.defaults&&(o.table=""),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(o.table=e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&(o.index=e.index,t.oneofs)&&(o._index="index"),null!=e.requestIndex&&Object.hasOwnProperty.call(e,"requestIndex")&&(o.requestIndex=e.requestIndex,t.oneofs)&&(o._requestIndex="requestIndex"),e.row&&e.row.length){o.row=[];for(var r=0;r<e.row.length;++r)o.row[r]=g.google.spanner.executor.v1.ValueList.toObject(e.row[r],t,n+1)}return null!=e.rowType&&Object.hasOwnProperty.call(e,"rowType")&&(o.rowType=g.google.spanner.v1.StructType.toObject(e.rowType,t,n+1),t.oneofs)&&(o._rowType="rowType"),o},qn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},qn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ReadResult"},qn),e.QueryResult=(Vn.prototype.row=d.emptyArray,Vn.prototype.rowType=null,Object.defineProperty(Vn.prototype,"_rowType",{get:d.oneOfGetter(t=["rowType"]),set:d.oneOfSetter(t)}),Vn.create=function(e){return new Vn(e)},Vn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.row&&e.row.length)for(var o=0;o<e.row.length;++o)g.google.spanner.executor.v1.ValueList.encode(e.row[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.rowType&&Object.hasOwnProperty.call(e,"rowType")&&g.google.spanner.v1.StructType.encode(e.rowType,t.uint32(18).fork(),n+1).ldelim(),t},Vn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Vn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.QueryResult;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.row&&i.row.length||(i.row=[]),i.row.push(g.google.spanner.executor.v1.ValueList.decode(e,e.uint32(),void 0,o+1));break;case 2:i.rowType=g.google.spanner.v1.StructType.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Vn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Vn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.row&&Object.hasOwnProperty.call(e,"row")){if(!Array.isArray(e.row))return"row: array expected";for(var n,o=0;o<e.row.length;++o)if(n=g.google.spanner.executor.v1.ValueList.verify(e.row[o],t+1))return"row."+n}if(null!=e.rowType&&Object.hasOwnProperty.call(e,"rowType")&&(n=g.google.spanner.v1.StructType.verify(e.rowType,t+1)))return"rowType."+n;return null},Vn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.QueryResult)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.QueryResult: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.QueryResult;if(e.row){if(!Array.isArray(e.row))throw TypeError(".google.spanner.executor.v1.QueryResult.row: array expected");n.row=[];for(var o=0;o<e.row.length;++o){if(!d.isObject(e.row[o]))throw TypeError(".google.spanner.executor.v1.QueryResult.row: object expected");n.row[o]=g.google.spanner.executor.v1.ValueList.fromObject(e.row[o],t+1)}}if(null!=e.rowType){if(!d.isObject(e.rowType))throw TypeError(".google.spanner.executor.v1.QueryResult.rowType: object expected");n.rowType=g.google.spanner.v1.StructType.fromObject(e.rowType,t+1)}return n},Vn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.row=[]),e.row&&e.row.length){o.row=[];for(var r=0;r<e.row.length;++r)o.row[r]=g.google.spanner.executor.v1.ValueList.toObject(e.row[r],t,n+1)}return null!=e.rowType&&Object.hasOwnProperty.call(e,"rowType")&&(o.rowType=g.google.spanner.v1.StructType.toObject(e.rowType,t,n+1),t.oneofs)&&(o._rowType="rowType"),o},Vn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Vn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.QueryResult"},Vn),e.ChangeStreamRecord=(Fn.prototype.dataChange=null,Fn.prototype.childPartition=null,Fn.prototype.heartbeat=null,Object.defineProperty(Fn.prototype,"record",{get:d.oneOfGetter(a=["dataChange","childPartition","heartbeat"]),set:d.oneOfSetter(a)}),Fn.create=function(e){return new Fn(e)},Fn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.dataChange&&Object.hasOwnProperty.call(e,"dataChange")&&g.google.spanner.executor.v1.DataChangeRecord.encode(e.dataChange,t.uint32(10).fork(),n+1).ldelim(),null!=e.childPartition&&Object.hasOwnProperty.call(e,"childPartition")&&g.google.spanner.executor.v1.ChildPartitionsRecord.encode(e.childPartition,t.uint32(18).fork(),n+1).ldelim(),null!=e.heartbeat&&Object.hasOwnProperty.call(e,"heartbeat")&&g.google.spanner.executor.v1.HeartbeatRecord.encode(e.heartbeat,t.uint32(26).fork(),n+1).ldelim(),t},Fn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Fn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ChangeStreamRecord;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.dataChange=g.google.spanner.executor.v1.DataChangeRecord.decode(e,e.uint32(),void 0,o+1);break;case 2:i.childPartition=g.google.spanner.executor.v1.ChildPartitionsRecord.decode(e,e.uint32(),void 0,o+1);break;case 3:i.heartbeat=g.google.spanner.executor.v1.HeartbeatRecord.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Fn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Fn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.dataChange&&Object.hasOwnProperty.call(e,"dataChange")&&(n=g.google.spanner.executor.v1.DataChangeRecord.verify(e.dataChange,t+(o.record=1))))return"dataChange."+n;if(null!=e.childPartition&&Object.hasOwnProperty.call(e,"childPartition")){if(1===o.record)return"record: multiple values";if(n=g.google.spanner.executor.v1.ChildPartitionsRecord.verify(e.childPartition,t+(o.record=1)))return"childPartition."+n}if(null!=e.heartbeat&&Object.hasOwnProperty.call(e,"heartbeat")){if(1===o.record)return"record: multiple values";if(n=g.google.spanner.executor.v1.HeartbeatRecord.verify(e.heartbeat,t+(o.record=1)))return"heartbeat."+n}return null},Fn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ChangeStreamRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ChangeStreamRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ChangeStreamRecord;if(null!=e.dataChange){if(!d.isObject(e.dataChange))throw TypeError(".google.spanner.executor.v1.ChangeStreamRecord.dataChange: object expected");n.dataChange=g.google.spanner.executor.v1.DataChangeRecord.fromObject(e.dataChange,t+1)}if(null!=e.childPartition){if(!d.isObject(e.childPartition))throw TypeError(".google.spanner.executor.v1.ChangeStreamRecord.childPartition: object expected");n.childPartition=g.google.spanner.executor.v1.ChildPartitionsRecord.fromObject(e.childPartition,t+1)}if(null!=e.heartbeat){if(!d.isObject(e.heartbeat))throw TypeError(".google.spanner.executor.v1.ChangeStreamRecord.heartbeat: object expected");n.heartbeat=g.google.spanner.executor.v1.HeartbeatRecord.fromObject(e.heartbeat,t+1)}return n},Fn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.dataChange&&Object.hasOwnProperty.call(e,"dataChange")&&(o.dataChange=g.google.spanner.executor.v1.DataChangeRecord.toObject(e.dataChange,t,n+1),t.oneofs)&&(o.record="dataChange"),null!=e.childPartition&&Object.hasOwnProperty.call(e,"childPartition")&&(o.childPartition=g.google.spanner.executor.v1.ChildPartitionsRecord.toObject(e.childPartition,t,n+1),t.oneofs)&&(o.record="childPartition"),null!=e.heartbeat&&Object.hasOwnProperty.call(e,"heartbeat")&&(o.heartbeat=g.google.spanner.executor.v1.HeartbeatRecord.toObject(e.heartbeat,t,n+1),t.oneofs)&&(o.record="heartbeat"),o},Fn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Fn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ChangeStreamRecord"},Fn),e.DataChangeRecord=(k.prototype.commitTime=null,k.prototype.recordSequence="",k.prototype.transactionId="",k.prototype.isLastRecord=!1,k.prototype.table="",k.prototype.columnTypes=d.emptyArray,k.prototype.mods=d.emptyArray,k.prototype.modType="",k.prototype.valueCaptureType="",k.prototype.recordCount=d.Long?d.Long.fromBits(0,0,!1):0,k.prototype.partitionCount=d.Long?d.Long.fromBits(0,0,!1):0,k.prototype.transactionTag="",k.prototype.isSystemTransaction=!1,k.create=function(e){return new k(e)},k.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.commitTime&&Object.hasOwnProperty.call(e,"commitTime")&&g.google.protobuf.Timestamp.encode(e.commitTime,t.uint32(10).fork(),n+1).ldelim(),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&t.uint32(18).string(e.recordSequence),null!=e.transactionId&&Object.hasOwnProperty.call(e,"transactionId")&&t.uint32(26).string(e.transactionId),null!=e.isLastRecord&&Object.hasOwnProperty.call(e,"isLastRecord")&&t.uint32(32).bool(e.isLastRecord),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(42).string(e.table),null!=e.columnTypes&&e.columnTypes.length)for(var o=0;o<e.columnTypes.length;++o)g.google.spanner.executor.v1.DataChangeRecord.ColumnType.encode(e.columnTypes[o],t.uint32(50).fork(),n+1).ldelim();if(null!=e.mods&&e.mods.length)for(o=0;o<e.mods.length;++o)g.google.spanner.executor.v1.DataChangeRecord.Mod.encode(e.mods[o],t.uint32(58).fork(),n+1).ldelim();return null!=e.modType&&Object.hasOwnProperty.call(e,"modType")&&t.uint32(66).string(e.modType),null!=e.valueCaptureType&&Object.hasOwnProperty.call(e,"valueCaptureType")&&t.uint32(74).string(e.valueCaptureType),null!=e.recordCount&&Object.hasOwnProperty.call(e,"recordCount")&&t.uint32(80).int64(e.recordCount),null!=e.partitionCount&&Object.hasOwnProperty.call(e,"partitionCount")&&t.uint32(88).int64(e.partitionCount),null!=e.transactionTag&&Object.hasOwnProperty.call(e,"transactionTag")&&t.uint32(98).string(e.transactionTag),null!=e.isSystemTransaction&&Object.hasOwnProperty.call(e,"isSystemTransaction")&&t.uint32(104).bool(e.isSystemTransaction),t},k.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},k.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.DataChangeRecord;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.commitTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.recordSequence=e.string();break;case 3:i.transactionId=e.string();break;case 4:i.isLastRecord=e.bool();break;case 5:i.table=e.string();break;case 6:i.columnTypes&&i.columnTypes.length||(i.columnTypes=[]),i.columnTypes.push(g.google.spanner.executor.v1.DataChangeRecord.ColumnType.decode(e,e.uint32(),void 0,o+1));break;case 7:i.mods&&i.mods.length||(i.mods=[]),i.mods.push(g.google.spanner.executor.v1.DataChangeRecord.Mod.decode(e,e.uint32(),void 0,o+1));break;case 8:i.modType=e.string();break;case 9:i.valueCaptureType=e.string();break;case 10:i.recordCount=e.int64();break;case 11:i.partitionCount=e.int64();break;case 12:i.transactionTag=e.string();break;case 13:i.isSystemTransaction=e.bool();break;default:e.skipType(7&a,o)}}return i},k.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},k.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.commitTime&&Object.hasOwnProperty.call(e,"commitTime")&&(o=g.google.protobuf.Timestamp.verify(e.commitTime,t+1)))return"commitTime."+o;if(null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&!d.isString(e.recordSequence))return"recordSequence: string expected";if(null!=e.transactionId&&Object.hasOwnProperty.call(e,"transactionId")&&!d.isString(e.transactionId))return"transactionId: string expected";if(null!=e.isLastRecord&&Object.hasOwnProperty.call(e,"isLastRecord")&&"boolean"!=typeof e.isLastRecord)return"isLastRecord: boolean expected";if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";if(null!=e.columnTypes&&Object.hasOwnProperty.call(e,"columnTypes")){if(!Array.isArray(e.columnTypes))return"columnTypes: array expected";for(var n=0;n<e.columnTypes.length;++n)if(o=g.google.spanner.executor.v1.DataChangeRecord.ColumnType.verify(e.columnTypes[n],t+1))return"columnTypes."+o}if(null!=e.mods&&Object.hasOwnProperty.call(e,"mods")){if(!Array.isArray(e.mods))return"mods: array expected";for(var o,n=0;n<e.mods.length;++n)if(o=g.google.spanner.executor.v1.DataChangeRecord.Mod.verify(e.mods[n],t+1))return"mods."+o}return null!=e.modType&&Object.hasOwnProperty.call(e,"modType")&&!d.isString(e.modType)?"modType: string expected":null!=e.valueCaptureType&&Object.hasOwnProperty.call(e,"valueCaptureType")&&!d.isString(e.valueCaptureType)?"valueCaptureType: string expected":null!=e.recordCount&&Object.hasOwnProperty.call(e,"recordCount")&&!(d.isInteger(e.recordCount)||e.recordCount&&d.isInteger(e.recordCount.low)&&d.isInteger(e.recordCount.high))?"recordCount: integer|Long expected":null!=e.partitionCount&&Object.hasOwnProperty.call(e,"partitionCount")&&!(d.isInteger(e.partitionCount)||e.partitionCount&&d.isInteger(e.partitionCount.low)&&d.isInteger(e.partitionCount.high))?"partitionCount: integer|Long expected":null!=e.transactionTag&&Object.hasOwnProperty.call(e,"transactionTag")&&!d.isString(e.transactionTag)?"transactionTag: string expected":null!=e.isSystemTransaction&&Object.hasOwnProperty.call(e,"isSystemTransaction")&&"boolean"!=typeof e.isSystemTransaction?"isSystemTransaction: boolean expected":null},k.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.DataChangeRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.DataChangeRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.DataChangeRecord;if(null!=e.commitTime){if(!d.isObject(e.commitTime))throw TypeError(".google.spanner.executor.v1.DataChangeRecord.commitTime: object expected");n.commitTime=g.google.protobuf.Timestamp.fromObject(e.commitTime,t+1)}if(null!=e.recordSequence&&(n.recordSequence=String(e.recordSequence)),null!=e.transactionId&&(n.transactionId=String(e.transactionId)),null!=e.isLastRecord&&(n.isLastRecord=Boolean(e.isLastRecord)),null!=e.table&&(n.table=String(e.table)),e.columnTypes){if(!Array.isArray(e.columnTypes))throw TypeError(".google.spanner.executor.v1.DataChangeRecord.columnTypes: array expected");n.columnTypes=[];for(var o=0;o<e.columnTypes.length;++o){if(!d.isObject(e.columnTypes[o]))throw TypeError(".google.spanner.executor.v1.DataChangeRecord.columnTypes: object expected");n.columnTypes[o]=g.google.spanner.executor.v1.DataChangeRecord.ColumnType.fromObject(e.columnTypes[o],t+1)}}if(e.mods){if(!Array.isArray(e.mods))throw TypeError(".google.spanner.executor.v1.DataChangeRecord.mods: array expected");n.mods=[];for(o=0;o<e.mods.length;++o){if(!d.isObject(e.mods[o]))throw TypeError(".google.spanner.executor.v1.DataChangeRecord.mods: object expected");n.mods[o]=g.google.spanner.executor.v1.DataChangeRecord.Mod.fromObject(e.mods[o],t+1)}}return null!=e.modType&&(n.modType=String(e.modType)),null!=e.valueCaptureType&&(n.valueCaptureType=String(e.valueCaptureType)),null!=e.recordCount&&(d.Long?n.recordCount=d.Long.fromValue(e.recordCount,!1):"string"==typeof e.recordCount?n.recordCount=parseInt(e.recordCount,10):"number"==typeof e.recordCount?n.recordCount=e.recordCount:"object"==typeof e.recordCount&&(n.recordCount=new d.LongBits(e.recordCount.low>>>0,e.recordCount.high>>>0).toNumber())),null!=e.partitionCount&&(d.Long?n.partitionCount=d.Long.fromValue(e.partitionCount,!1):"string"==typeof e.partitionCount?n.partitionCount=parseInt(e.partitionCount,10):"number"==typeof e.partitionCount?n.partitionCount=e.partitionCount:"object"==typeof e.partitionCount&&(n.partitionCount=new d.LongBits(e.partitionCount.low>>>0,e.partitionCount.high>>>0).toNumber())),null!=e.transactionTag&&(n.transactionTag=String(e.transactionTag)),null!=e.isSystemTransaction&&(n.isSystemTransaction=Boolean(e.isSystemTransaction)),n},k.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.columnTypes=[],r.mods=[]),t.defaults&&(r.commitTime=null,r.recordSequence="",r.transactionId="",r.isLastRecord=!1,r.table="",r.modType="",r.valueCaptureType="",d.Long?(o=new d.Long(0,0,!1),r.recordCount=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.recordCount=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,d.Long?(o=new d.Long(0,0,!1),r.partitionCount=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.partitionCount=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,r.transactionTag="",r.isSystemTransaction=!1),null!=e.commitTime&&Object.hasOwnProperty.call(e,"commitTime")&&(r.commitTime=g.google.protobuf.Timestamp.toObject(e.commitTime,t,n+1)),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&(r.recordSequence=e.recordSequence),null!=e.transactionId&&Object.hasOwnProperty.call(e,"transactionId")&&(r.transactionId=e.transactionId),null!=e.isLastRecord&&Object.hasOwnProperty.call(e,"isLastRecord")&&(r.isLastRecord=e.isLastRecord),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(r.table=e.table),e.columnTypes&&e.columnTypes.length){r.columnTypes=[];for(var i=0;i<e.columnTypes.length;++i)r.columnTypes[i]=g.google.spanner.executor.v1.DataChangeRecord.ColumnType.toObject(e.columnTypes[i],t,n+1)}if(e.mods&&e.mods.length){r.mods=[];for(i=0;i<e.mods.length;++i)r.mods[i]=g.google.spanner.executor.v1.DataChangeRecord.Mod.toObject(e.mods[i],t,n+1)}return null!=e.modType&&Object.hasOwnProperty.call(e,"modType")&&(r.modType=e.modType),null!=e.valueCaptureType&&Object.hasOwnProperty.call(e,"valueCaptureType")&&(r.valueCaptureType=e.valueCaptureType),null!=e.recordCount&&Object.hasOwnProperty.call(e,"recordCount")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.recordCount="number"==typeof e.recordCount?BigInt(e.recordCount):d.Long.fromBits(e.recordCount.low>>>0,e.recordCount.high>>>0,!1).toBigInt():"number"==typeof e.recordCount?r.recordCount=t.longs===String?String(e.recordCount):e.recordCount:r.recordCount=t.longs===String?d.Long.prototype.toString.call(e.recordCount):t.longs===Number?new d.LongBits(e.recordCount.low>>>0,e.recordCount.high>>>0).toNumber():e.recordCount),null!=e.partitionCount&&Object.hasOwnProperty.call(e,"partitionCount")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.partitionCount="number"==typeof e.partitionCount?BigInt(e.partitionCount):d.Long.fromBits(e.partitionCount.low>>>0,e.partitionCount.high>>>0,!1).toBigInt():"number"==typeof e.partitionCount?r.partitionCount=t.longs===String?String(e.partitionCount):e.partitionCount:r.partitionCount=t.longs===String?d.Long.prototype.toString.call(e.partitionCount):t.longs===Number?new d.LongBits(e.partitionCount.low>>>0,e.partitionCount.high>>>0).toNumber():e.partitionCount),null!=e.transactionTag&&Object.hasOwnProperty.call(e,"transactionTag")&&(r.transactionTag=e.transactionTag),null!=e.isSystemTransaction&&Object.hasOwnProperty.call(e,"isSystemTransaction")&&(r.isSystemTransaction=e.isSystemTransaction),r},k.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},k.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.DataChangeRecord"},k.ColumnType=(Gn.prototype.name="",Gn.prototype.type="",Gn.prototype.isPrimaryKey=!1,Gn.prototype.ordinalPosition=d.Long?d.Long.fromBits(0,0,!1):0,Gn.create=function(e){return new Gn(e)},Gn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&t.uint32(18).string(e.type),null!=e.isPrimaryKey&&Object.hasOwnProperty.call(e,"isPrimaryKey")&&t.uint32(24).bool(e.isPrimaryKey),null!=e.ordinalPosition&&Object.hasOwnProperty.call(e,"ordinalPosition")&&t.uint32(32).int64(e.ordinalPosition),t},Gn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Gn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.DataChangeRecord.ColumnType;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.type=e.string();break;case 3:i.isPrimaryKey=e.bool();break;case 4:i.ordinalPosition=e.int64();break;default:e.skipType(7&a,o)}}return i},Gn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Gn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null!=e.type&&Object.hasOwnProperty.call(e,"type")&&!d.isString(e.type)?"type: string expected":null!=e.isPrimaryKey&&Object.hasOwnProperty.call(e,"isPrimaryKey")&&"boolean"!=typeof e.isPrimaryKey?"isPrimaryKey: boolean expected":null!=e.ordinalPosition&&Object.hasOwnProperty.call(e,"ordinalPosition")&&!(d.isInteger(e.ordinalPosition)||e.ordinalPosition&&d.isInteger(e.ordinalPosition.low)&&d.isInteger(e.ordinalPosition.high))?"ordinalPosition: integer|Long expected":null},Gn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.DataChangeRecord.ColumnType)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.DataChangeRecord.ColumnType: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.DataChangeRecord.ColumnType;return null!=e.name&&(t.name=String(e.name)),null!=e.type&&(t.type=String(e.type)),null!=e.isPrimaryKey&&(t.isPrimaryKey=Boolean(e.isPrimaryKey)),null!=e.ordinalPosition&&(d.Long?t.ordinalPosition=d.Long.fromValue(e.ordinalPosition,!1):"string"==typeof e.ordinalPosition?t.ordinalPosition=parseInt(e.ordinalPosition,10):"number"==typeof e.ordinalPosition?t.ordinalPosition=e.ordinalPosition:"object"==typeof e.ordinalPosition&&(t.ordinalPosition=new d.LongBits(e.ordinalPosition.low>>>0,e.ordinalPosition.high>>>0).toNumber())),t},Gn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,n={};return t.defaults&&(n.name="",n.type="",n.isPrimaryKey=!1,d.Long?(o=new d.Long(0,0,!1),n.ordinalPosition=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.ordinalPosition=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(n.type=e.type),null!=e.isPrimaryKey&&Object.hasOwnProperty.call(e,"isPrimaryKey")&&(n.isPrimaryKey=e.isPrimaryKey),null!=e.ordinalPosition&&Object.hasOwnProperty.call(e,"ordinalPosition")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.ordinalPosition="number"==typeof e.ordinalPosition?BigInt(e.ordinalPosition):d.Long.fromBits(e.ordinalPosition.low>>>0,e.ordinalPosition.high>>>0,!1).toBigInt():"number"==typeof e.ordinalPosition?n.ordinalPosition=t.longs===String?String(e.ordinalPosition):e.ordinalPosition:n.ordinalPosition=t.longs===String?d.Long.prototype.toString.call(e.ordinalPosition):t.longs===Number?new d.LongBits(e.ordinalPosition.low>>>0,e.ordinalPosition.high>>>0).toNumber():e.ordinalPosition),n},Gn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Gn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.DataChangeRecord.ColumnType"},Gn),k.Mod=(Jn.prototype.keys="",Jn.prototype.newValues="",Jn.prototype.oldValues="",Jn.create=function(e){return new Jn(e)},Jn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.keys&&Object.hasOwnProperty.call(e,"keys")&&t.uint32(10).string(e.keys),null!=e.newValues&&Object.hasOwnProperty.call(e,"newValues")&&t.uint32(18).string(e.newValues),null!=e.oldValues&&Object.hasOwnProperty.call(e,"oldValues")&&t.uint32(26).string(e.oldValues),t},Jn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Jn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.DataChangeRecord.Mod;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.keys=e.string();break;case 2:i.newValues=e.string();break;case 3:i.oldValues=e.string();break;default:e.skipType(7&a,o)}}return i},Jn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Jn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.keys&&Object.hasOwnProperty.call(e,"keys")&&!d.isString(e.keys)?"keys: string expected":null!=e.newValues&&Object.hasOwnProperty.call(e,"newValues")&&!d.isString(e.newValues)?"newValues: string expected":null!=e.oldValues&&Object.hasOwnProperty.call(e,"oldValues")&&!d.isString(e.oldValues)?"oldValues: string expected":null},Jn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.DataChangeRecord.Mod)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.DataChangeRecord.Mod: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.DataChangeRecord.Mod;return null!=e.keys&&(t.keys=String(e.keys)),null!=e.newValues&&(t.newValues=String(e.newValues)),null!=e.oldValues&&(t.oldValues=String(e.oldValues)),t},Jn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.keys="",n.newValues="",n.oldValues=""),null!=e.keys&&Object.hasOwnProperty.call(e,"keys")&&(n.keys=e.keys),null!=e.newValues&&Object.hasOwnProperty.call(e,"newValues")&&(n.newValues=e.newValues),null!=e.oldValues&&Object.hasOwnProperty.call(e,"oldValues")&&(n.oldValues=e.oldValues),n},Jn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Jn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.DataChangeRecord.Mod"},Jn),k),e.ChildPartitionsRecord=(zn.prototype.startTime=null,zn.prototype.recordSequence="",zn.prototype.childPartitions=d.emptyArray,zn.create=function(e){return new zn(e)},zn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&g.google.protobuf.Timestamp.encode(e.startTime,t.uint32(10).fork(),n+1).ldelim(),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&t.uint32(18).string(e.recordSequence),null!=e.childPartitions&&e.childPartitions.length)for(var o=0;o<e.childPartitions.length;++o)g.google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition.encode(e.childPartitions[o],t.uint32(26).fork(),n+1).ldelim();return t},zn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},zn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ChildPartitionsRecord;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.startTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.recordSequence=e.string();break;case 3:i.childPartitions&&i.childPartitions.length||(i.childPartitions=[]),i.childPartitions.push(g.google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},zn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},zn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(n=g.google.protobuf.Timestamp.verify(e.startTime,t+1)))return"startTime."+n;if(null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&!d.isString(e.recordSequence))return"recordSequence: string expected";if(null!=e.childPartitions&&Object.hasOwnProperty.call(e,"childPartitions")){if(!Array.isArray(e.childPartitions))return"childPartitions: array expected";for(var n,o=0;o<e.childPartitions.length;++o)if(n=g.google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition.verify(e.childPartitions[o],t+1))return"childPartitions."+n}return null},zn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ChildPartitionsRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ChildPartitionsRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ChildPartitionsRecord;if(null!=e.startTime){if(!d.isObject(e.startTime))throw TypeError(".google.spanner.executor.v1.ChildPartitionsRecord.startTime: object expected");n.startTime=g.google.protobuf.Timestamp.fromObject(e.startTime,t+1)}if(null!=e.recordSequence&&(n.recordSequence=String(e.recordSequence)),e.childPartitions){if(!Array.isArray(e.childPartitions))throw TypeError(".google.spanner.executor.v1.ChildPartitionsRecord.childPartitions: array expected");n.childPartitions=[];for(var o=0;o<e.childPartitions.length;++o){if(!d.isObject(e.childPartitions[o]))throw TypeError(".google.spanner.executor.v1.ChildPartitionsRecord.childPartitions: object expected");n.childPartitions[o]=g.google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition.fromObject(e.childPartitions[o],t+1)}}return n},zn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.childPartitions=[]),t.defaults&&(o.startTime=null,o.recordSequence=""),null!=e.startTime&&Object.hasOwnProperty.call(e,"startTime")&&(o.startTime=g.google.protobuf.Timestamp.toObject(e.startTime,t,n+1)),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&(o.recordSequence=e.recordSequence),e.childPartitions&&e.childPartitions.length){o.childPartitions=[];for(var r=0;r<e.childPartitions.length;++r)o.childPartitions[r]=g.google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition.toObject(e.childPartitions[r],t,n+1)}return o},zn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},zn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ChildPartitionsRecord"},zn.ChildPartition=(Kn.prototype.token="",Kn.prototype.parentPartitionTokens=d.emptyArray,Kn.create=function(e){return new Kn(e)},Kn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.token&&Object.hasOwnProperty.call(e,"token")&&t.uint32(10).string(e.token),null!=e.parentPartitionTokens&&e.parentPartitionTokens.length)for(var o=0;o<e.parentPartitionTokens.length;++o)t.uint32(18).string(e.parentPartitionTokens[o]);return t},Kn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Kn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.token=e.string();break;case 2:i.parentPartitionTokens&&i.parentPartitionTokens.length||(i.parentPartitionTokens=[]),i.parentPartitionTokens.push(e.string());break;default:e.skipType(7&a,o)}}return i},Kn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Kn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.token&&Object.hasOwnProperty.call(e,"token")&&!d.isString(e.token))return"token: string expected";if(null!=e.parentPartitionTokens&&Object.hasOwnProperty.call(e,"parentPartitionTokens")){if(!Array.isArray(e.parentPartitionTokens))return"parentPartitionTokens: array expected";for(var n=0;n<e.parentPartitionTokens.length;++n)if(!d.isString(e.parentPartitionTokens[n]))return"parentPartitionTokens: string[] expected"}return null},Kn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition;if(null!=e.token&&(n.token=String(e.token)),e.parentPartitionTokens){if(!Array.isArray(e.parentPartitionTokens))throw TypeError(".google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition.parentPartitionTokens: array expected");n.parentPartitionTokens=[];for(var o=0;o<e.parentPartitionTokens.length;++o)n.parentPartitionTokens[o]=String(e.parentPartitionTokens[o])}return n},Kn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.parentPartitionTokens=[]),t.defaults&&(o.token=""),null!=e.token&&Object.hasOwnProperty.call(e,"token")&&(o.token=e.token),e.parentPartitionTokens&&e.parentPartitionTokens.length){o.parentPartitionTokens=[];for(var r=0;r<e.parentPartitionTokens.length;++r)o.parentPartitionTokens[r]=e.parentPartitionTokens[r]}return o},Kn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Kn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.ChildPartitionsRecord.ChildPartition"},Kn),zn),e.HeartbeatRecord=(Hn.prototype.heartbeatTime=null,Hn.create=function(e){return new Hn(e)},Hn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.heartbeatTime&&Object.hasOwnProperty.call(e,"heartbeatTime")&&g.google.protobuf.Timestamp.encode(e.heartbeatTime,t.uint32(10).fork(),n+1).ldelim(),t},Hn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Hn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.HeartbeatRecord;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.heartbeatTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},Hn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Hn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.heartbeatTime&&Object.hasOwnProperty.call(e,"heartbeatTime")){e=g.google.protobuf.Timestamp.verify(e.heartbeatTime,t+1);if(e)return"heartbeatTime."+e}return null},Hn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.HeartbeatRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.HeartbeatRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.HeartbeatRecord;if(null!=e.heartbeatTime){if(!d.isObject(e.heartbeatTime))throw TypeError(".google.spanner.executor.v1.HeartbeatRecord.heartbeatTime: object expected");n.heartbeatTime=g.google.protobuf.Timestamp.fromObject(e.heartbeatTime,t+1)}return n},Hn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.heartbeatTime=null),null!=e.heartbeatTime&&Object.hasOwnProperty.call(e,"heartbeatTime")&&(o.heartbeatTime=g.google.protobuf.Timestamp.toObject(e.heartbeatTime,t,n+1)),o},Hn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Hn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.HeartbeatRecord"},Hn),e.SpannerOptions=(Yn.prototype.sessionPoolOptions=null,Yn.create=function(e){return new Yn(e)},Yn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.sessionPoolOptions&&Object.hasOwnProperty.call(e,"sessionPoolOptions")&&g.google.spanner.executor.v1.SessionPoolOptions.encode(e.sessionPoolOptions,t.uint32(10).fork(),n+1).ldelim(),t},Yn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Yn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.SpannerOptions;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.sessionPoolOptions=g.google.spanner.executor.v1.SessionPoolOptions.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},Yn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Yn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.sessionPoolOptions&&Object.hasOwnProperty.call(e,"sessionPoolOptions")){e=g.google.spanner.executor.v1.SessionPoolOptions.verify(e.sessionPoolOptions,t+1);if(e)return"sessionPoolOptions."+e}return null},Yn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.SpannerOptions)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.SpannerOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.executor.v1.SpannerOptions;if(null!=e.sessionPoolOptions){if(!d.isObject(e.sessionPoolOptions))throw TypeError(".google.spanner.executor.v1.SpannerOptions.sessionPoolOptions: object expected");n.sessionPoolOptions=g.google.spanner.executor.v1.SessionPoolOptions.fromObject(e.sessionPoolOptions,t+1)}return n},Yn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.sessionPoolOptions=null),null!=e.sessionPoolOptions&&Object.hasOwnProperty.call(e,"sessionPoolOptions")&&(o.sessionPoolOptions=g.google.spanner.executor.v1.SessionPoolOptions.toObject(e.sessionPoolOptions,t,n+1)),o},Yn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Yn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.SpannerOptions"},Yn),e.SessionPoolOptions=(Qn.prototype.useMultiplexed=!1,Qn.create=function(e){return new Qn(e)},Qn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.useMultiplexed&&Object.hasOwnProperty.call(e,"useMultiplexed")&&t.uint32(8).bool(e.useMultiplexed),t},Qn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Qn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.executor.v1.SessionPoolOptions;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.useMultiplexed=e.bool():e.skipType(7&a,o)}return i},Qn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Qn.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.useMultiplexed&&Object.hasOwnProperty.call(e,"useMultiplexed")&&"boolean"!=typeof e.useMultiplexed?"useMultiplexed: boolean expected":null},Qn.fromObject=function(e,t){if(e instanceof g.google.spanner.executor.v1.SessionPoolOptions)return e;if(!d.isObject(e))throw TypeError(".google.spanner.executor.v1.SessionPoolOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.executor.v1.SessionPoolOptions;return null!=e.useMultiplexed&&(t.useMultiplexed=Boolean(e.useMultiplexed)),t},Qn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.useMultiplexed=!1),null!=e.useMultiplexed&&Object.hasOwnProperty.call(e,"useMultiplexed")&&(n.useMultiplexed=e.useMultiplexed),n},Qn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Qn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.executor.v1.SessionPoolOptions"},Qn),e),n),i.v1=((r={}).Spanner=(((Wn.prototype=Object.create(o.rpc.Service.prototype)).constructor=Wn).create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(Wn.prototype.createSession=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.CreateSessionRequest,g.google.spanner.v1.Session,t,n)},"name",{value:"CreateSession"}),Object.defineProperty(Wn.prototype.batchCreateSessions=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.BatchCreateSessionsRequest,g.google.spanner.v1.BatchCreateSessionsResponse,t,n)},"name",{value:"BatchCreateSessions"}),Object.defineProperty(Wn.prototype.getSession=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.GetSessionRequest,g.google.spanner.v1.Session,t,n)},"name",{value:"GetSession"}),Object.defineProperty(Wn.prototype.listSessions=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.ListSessionsRequest,g.google.spanner.v1.ListSessionsResponse,t,n)},"name",{value:"ListSessions"}),Object.defineProperty(Wn.prototype.deleteSession=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.DeleteSessionRequest,g.google.protobuf.Empty,t,n)},"name",{value:"DeleteSession"}),Object.defineProperty(Wn.prototype.executeSql=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.ExecuteSqlRequest,g.google.spanner.v1.ResultSet,t,n)},"name",{value:"ExecuteSql"}),Object.defineProperty(Wn.prototype.executeStreamingSql=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.ExecuteSqlRequest,g.google.spanner.v1.PartialResultSet,t,n)},"name",{value:"ExecuteStreamingSql"}),Object.defineProperty(Wn.prototype.executeBatchDml=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.ExecuteBatchDmlRequest,g.google.spanner.v1.ExecuteBatchDmlResponse,t,n)},"name",{value:"ExecuteBatchDml"}),Object.defineProperty(Wn.prototype.read=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.ReadRequest,g.google.spanner.v1.ResultSet,t,n)},"name",{value:"Read"}),Object.defineProperty(Wn.prototype.streamingRead=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.ReadRequest,g.google.spanner.v1.PartialResultSet,t,n)},"name",{value:"StreamingRead"}),Object.defineProperty(Wn.prototype.beginTransaction=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.BeginTransactionRequest,g.google.spanner.v1.Transaction,t,n)},"name",{value:"BeginTransaction"}),Object.defineProperty(Wn.prototype.commit=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.CommitRequest,g.google.spanner.v1.CommitResponse,t,n)},"name",{value:"Commit"}),Object.defineProperty(Wn.prototype.rollback=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.RollbackRequest,g.google.protobuf.Empty,t,n)},"name",{value:"Rollback"}),Object.defineProperty(Wn.prototype.partitionQuery=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.PartitionQueryRequest,g.google.spanner.v1.PartitionResponse,t,n)},"name",{value:"PartitionQuery"}),Object.defineProperty(Wn.prototype.partitionRead=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.PartitionReadRequest,g.google.spanner.v1.PartitionResponse,t,n)},"name",{value:"PartitionRead"}),Object.defineProperty(Wn.prototype.batchWrite=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.BatchWriteRequest,g.google.spanner.v1.BatchWriteResponse,t,n)},"name",{value:"BatchWrite"}),Object.defineProperty(Wn.prototype.fetchCacheUpdate=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.spanner.v1.FetchCacheUpdateRequest,g.google.spanner.v1.CacheUpdate,t,n)},"name",{value:"FetchCacheUpdate"}),Wn),r.CreateSessionRequest=(Xn.prototype.database="",Xn.prototype.session=null,Xn.create=function(e){return new Xn(e)},Xn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&g.google.spanner.v1.Session.encode(e.session,t.uint32(18).fork(),n+1).ldelim(),t},Xn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Xn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.CreateSessionRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.database=e.string();break;case 2:i.session=g.google.spanner.v1.Session.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Xn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Xn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database))return"database: string expected";if(null!=e.session&&Object.hasOwnProperty.call(e,"session")){e=g.google.spanner.v1.Session.verify(e.session,t+1);if(e)return"session."+e}return null},Xn.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.CreateSessionRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.CreateSessionRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.CreateSessionRequest;if(null!=e.database&&(n.database=String(e.database)),null!=e.session){if(!d.isObject(e.session))throw TypeError(".google.spanner.v1.CreateSessionRequest.session: object expected");n.session=g.google.spanner.v1.Session.fromObject(e.session,t+1)}return n},Xn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.database="",o.session=null),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o.database=e.database),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(o.session=g.google.spanner.v1.Session.toObject(e.session,t,n+1)),o},Xn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Xn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.CreateSessionRequest"},Xn),r.BatchCreateSessionsRequest=(Zn.prototype.database="",Zn.prototype.sessionTemplate=null,Zn.prototype.sessionCount=0,Zn.create=function(e){return new Zn(e)},Zn.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),null!=e.sessionTemplate&&Object.hasOwnProperty.call(e,"sessionTemplate")&&g.google.spanner.v1.Session.encode(e.sessionTemplate,t.uint32(18).fork(),n+1).ldelim(),null!=e.sessionCount&&Object.hasOwnProperty.call(e,"sessionCount")&&t.uint32(24).int32(e.sessionCount),t},Zn.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Zn.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.BatchCreateSessionsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.database=e.string();break;case 2:i.sessionTemplate=g.google.spanner.v1.Session.decode(e,e.uint32(),void 0,o+1);break;case 3:i.sessionCount=e.int32();break;default:e.skipType(7&a,o)}}return i},Zn.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Zn.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database))return"database: string expected";if(null!=e.sessionTemplate&&Object.hasOwnProperty.call(e,"sessionTemplate")){t=g.google.spanner.v1.Session.verify(e.sessionTemplate,t+1);if(t)return"sessionTemplate."+t}return null!=e.sessionCount&&Object.hasOwnProperty.call(e,"sessionCount")&&!d.isInteger(e.sessionCount)?"sessionCount: integer expected":null},Zn.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.BatchCreateSessionsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.BatchCreateSessionsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.BatchCreateSessionsRequest;if(null!=e.database&&(n.database=String(e.database)),null!=e.sessionTemplate){if(!d.isObject(e.sessionTemplate))throw TypeError(".google.spanner.v1.BatchCreateSessionsRequest.sessionTemplate: object expected");n.sessionTemplate=g.google.spanner.v1.Session.fromObject(e.sessionTemplate,t+1)}return null!=e.sessionCount&&(n.sessionCount=0|e.sessionCount),n},Zn.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.database="",o.sessionTemplate=null,o.sessionCount=0),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(o.database=e.database),null!=e.sessionTemplate&&Object.hasOwnProperty.call(e,"sessionTemplate")&&(o.sessionTemplate=g.google.spanner.v1.Session.toObject(e.sessionTemplate,t,n+1)),null!=e.sessionCount&&Object.hasOwnProperty.call(e,"sessionCount")&&(o.sessionCount=e.sessionCount),o},Zn.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Zn.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.BatchCreateSessionsRequest"},Zn),r.BatchCreateSessionsResponse=($n.prototype.session=d.emptyArray,$n.create=function(e){return new $n(e)},$n.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.session&&e.session.length)for(var o=0;o<e.session.length;++o)g.google.spanner.v1.Session.encode(e.session[o],t.uint32(10).fork(),n+1).ldelim();return t},$n.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},$n.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.BatchCreateSessionsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.session&&i.session.length||(i.session=[]),i.session.push(g.google.spanner.v1.Session.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},$n.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},$n.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.session&&Object.hasOwnProperty.call(e,"session")){if(!Array.isArray(e.session))return"session: array expected";for(var n=0;n<e.session.length;++n){var o=g.google.spanner.v1.Session.verify(e.session[n],t+1);if(o)return"session."+o}}return null},$n.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.BatchCreateSessionsResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.BatchCreateSessionsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.BatchCreateSessionsResponse;if(e.session){if(!Array.isArray(e.session))throw TypeError(".google.spanner.v1.BatchCreateSessionsResponse.session: array expected");n.session=[];for(var o=0;o<e.session.length;++o){if(!d.isObject(e.session[o]))throw TypeError(".google.spanner.v1.BatchCreateSessionsResponse.session: object expected");n.session[o]=g.google.spanner.v1.Session.fromObject(e.session[o],t+1)}}return n},$n.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.session=[]),e.session&&e.session.length){o.session=[];for(var r=0;r<e.session.length;++r)o.session[r]=g.google.spanner.v1.Session.toObject(e.session[r],t,n+1)}return o},$n.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},$n.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.BatchCreateSessionsResponse"},$n),r.Session=(eo.prototype.name="",eo.prototype.labels=d.emptyObject,eo.prototype.createTime=null,eo.prototype.approximateLastUseTime=null,eo.prototype.creatorRole="",eo.prototype.multiplexed=!1,eo.create=function(e){return new eo(e)},eo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.labels&&Object.hasOwnProperty.call(e,"labels"))for(var o=Object.keys(e.labels),r=0;r<o.length;++r)t.uint32(18).fork().uint32(10).string(o[r]).uint32(18).string(e.labels[o[r]]).ldelim();return null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&g.google.protobuf.Timestamp.encode(e.createTime,t.uint32(26).fork(),n+1).ldelim(),null!=e.approximateLastUseTime&&Object.hasOwnProperty.call(e,"approximateLastUseTime")&&g.google.protobuf.Timestamp.encode(e.approximateLastUseTime,t.uint32(34).fork(),n+1).ldelim(),null!=e.creatorRole&&Object.hasOwnProperty.call(e,"creatorRole")&&t.uint32(42).string(e.creatorRole),null!=e.multiplexed&&Object.hasOwnProperty.call(e,"multiplexed")&&t.uint32(48).bool(e.multiplexed),t},eo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},eo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Session;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.labels===d.emptyObject&&(i.labels={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.labels,c),i.labels[c]=l;break;case 3:i.createTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 4:i.approximateLastUseTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 5:i.creatorRole=e.string();break;case 6:i.multiplexed=e.bool();break;default:e.skipType(7&a,o)}}return i},eo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},eo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.labels&&Object.hasOwnProperty.call(e,"labels")){if(!d.isObject(e.labels))return"labels: object expected";for(var n=Object.keys(e.labels),o=0;o<n.length;++o)if(!d.isString(e.labels[n[o]]))return"labels: string{k:string} expected"}var r;if(null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(r=g.google.protobuf.Timestamp.verify(e.createTime,t+1)))return"createTime."+r;if(null!=e.approximateLastUseTime&&Object.hasOwnProperty.call(e,"approximateLastUseTime")&&(r=g.google.protobuf.Timestamp.verify(e.approximateLastUseTime,t+1)))return"approximateLastUseTime."+r;return null!=e.creatorRole&&Object.hasOwnProperty.call(e,"creatorRole")&&!d.isString(e.creatorRole)?"creatorRole: string expected":null!=e.multiplexed&&Object.hasOwnProperty.call(e,"multiplexed")&&"boolean"!=typeof e.multiplexed?"multiplexed: boolean expected":null},eo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Session)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Session: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Session;if(null!=e.name&&(n.name=String(e.name)),e.labels){if(!d.isObject(e.labels))throw TypeError(".google.spanner.v1.Session.labels: object expected");n.labels={};for(var o=Object.keys(e.labels),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.labels,o[r]),n.labels[o[r]]=String(e.labels[o[r]])}if(null!=e.createTime){if(!d.isObject(e.createTime))throw TypeError(".google.spanner.v1.Session.createTime: object expected");n.createTime=g.google.protobuf.Timestamp.fromObject(e.createTime,t+1)}if(null!=e.approximateLastUseTime){if(!d.isObject(e.approximateLastUseTime))throw TypeError(".google.spanner.v1.Session.approximateLastUseTime: object expected");n.approximateLastUseTime=g.google.protobuf.Timestamp.fromObject(e.approximateLastUseTime,t+1)}return null!=e.creatorRole&&(n.creatorRole=String(e.creatorRole)),null!=e.multiplexed&&(n.multiplexed=Boolean(e.multiplexed)),n},eo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.labels={}),t.defaults&&(r.name="",r.createTime=null,r.approximateLastUseTime=null,r.creatorRole="",r.multiplexed=!1),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(r.name=e.name),e.labels&&(o=Object.keys(e.labels)).length){r.labels={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.labels,o[i]),r.labels[o[i]]=e.labels[o[i]]}return null!=e.createTime&&Object.hasOwnProperty.call(e,"createTime")&&(r.createTime=g.google.protobuf.Timestamp.toObject(e.createTime,t,n+1)),null!=e.approximateLastUseTime&&Object.hasOwnProperty.call(e,"approximateLastUseTime")&&(r.approximateLastUseTime=g.google.protobuf.Timestamp.toObject(e.approximateLastUseTime,t,n+1)),null!=e.creatorRole&&Object.hasOwnProperty.call(e,"creatorRole")&&(r.creatorRole=e.creatorRole),null!=e.multiplexed&&Object.hasOwnProperty.call(e,"multiplexed")&&(r.multiplexed=e.multiplexed),r},eo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},eo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Session"},eo),r.GetSessionRequest=(to.prototype.name="",to.create=function(e){return new to(e)},to.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},to.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},to.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.GetSessionRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},to.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},to.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},to.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.GetSessionRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.GetSessionRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.GetSessionRequest;return null!=e.name&&(t.name=String(e.name)),t},to.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},to.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},to.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.GetSessionRequest"},to),r.ListSessionsRequest=(no.prototype.database="",no.prototype.pageSize=0,no.prototype.pageToken="",no.prototype.filter="",no.create=function(e){return new no(e)},no.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(16).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(26).string(e.pageToken),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(34).string(e.filter),t},no.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},no.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ListSessionsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.database=e.string();break;case 2:i.pageSize=e.int32();break;case 3:i.pageToken=e.string();break;case 4:i.filter=e.string();break;default:e.skipType(7&a,o)}}return i},no.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},no.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database)?"database: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null},no.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ListSessionsRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ListSessionsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.ListSessionsRequest;return null!=e.database&&(t.database=String(e.database)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),null!=e.filter&&(t.filter=String(e.filter)),t},no.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.database="",n.pageSize=0,n.pageToken="",n.filter=""),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(n.database=e.database),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter),n},no.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},no.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ListSessionsRequest"},no),r.ListSessionsResponse=(oo.prototype.sessions=d.emptyArray,oo.prototype.nextPageToken="",oo.create=function(e){return new oo(e)},oo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.sessions&&e.sessions.length)for(var o=0;o<e.sessions.length;++o)g.google.spanner.v1.Session.encode(e.sessions[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},oo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},oo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ListSessionsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.sessions&&i.sessions.length||(i.sessions=[]),i.sessions.push(g.google.spanner.v1.Session.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},oo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},oo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.sessions&&Object.hasOwnProperty.call(e,"sessions")){if(!Array.isArray(e.sessions))return"sessions: array expected";for(var n=0;n<e.sessions.length;++n){var o=g.google.spanner.v1.Session.verify(e.sessions[n],t+1);if(o)return"sessions."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},oo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ListSessionsResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ListSessionsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ListSessionsResponse;if(e.sessions){if(!Array.isArray(e.sessions))throw TypeError(".google.spanner.v1.ListSessionsResponse.sessions: array expected");n.sessions=[];for(var o=0;o<e.sessions.length;++o){if(!d.isObject(e.sessions[o]))throw TypeError(".google.spanner.v1.ListSessionsResponse.sessions: object expected");n.sessions[o]=g.google.spanner.v1.Session.fromObject(e.sessions[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},oo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.sessions=[]),t.defaults&&(o.nextPageToken=""),e.sessions&&e.sessions.length){o.sessions=[];for(var r=0;r<e.sessions.length;++r)o.sessions[r]=g.google.spanner.v1.Session.toObject(e.sessions[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},oo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},oo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ListSessionsResponse"},oo),r.DeleteSessionRequest=(ro.prototype.name="",ro.create=function(e){return new ro(e)},ro.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},ro.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ro.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.DeleteSessionRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},ro.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ro.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},ro.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.DeleteSessionRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.DeleteSessionRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.DeleteSessionRequest;return null!=e.name&&(t.name=String(e.name)),t},ro.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},ro.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ro.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.DeleteSessionRequest"},ro),r.RequestOptions=(io.prototype.priority=0,io.prototype.requestTag="",io.prototype.transactionTag="",io.prototype.clientContext=null,io.create=function(e){return new io(e)},io.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.priority&&Object.hasOwnProperty.call(e,"priority")&&t.uint32(8).int32(e.priority),null!=e.requestTag&&Object.hasOwnProperty.call(e,"requestTag")&&t.uint32(18).string(e.requestTag),null!=e.transactionTag&&Object.hasOwnProperty.call(e,"transactionTag")&&t.uint32(26).string(e.transactionTag),null!=e.clientContext&&Object.hasOwnProperty.call(e,"clientContext")&&g.google.spanner.v1.RequestOptions.ClientContext.encode(e.clientContext,t.uint32(34).fork(),n+1).ldelim(),t},io.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},io.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.RequestOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.priority=e.int32();break;case 2:i.requestTag=e.string();break;case 3:i.transactionTag=e.string();break;case 4:i.clientContext=g.google.spanner.v1.RequestOptions.ClientContext.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},io.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},io.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.priority&&Object.hasOwnProperty.call(e,"priority"))switch(e.priority){default:return"priority: enum value expected";case 0:case 1:case 2:case 3:}if(null!=e.requestTag&&Object.hasOwnProperty.call(e,"requestTag")&&!d.isString(e.requestTag))return"requestTag: string expected";if(null!=e.transactionTag&&Object.hasOwnProperty.call(e,"transactionTag")&&!d.isString(e.transactionTag))return"transactionTag: string expected";if(null!=e.clientContext&&Object.hasOwnProperty.call(e,"clientContext")){e=g.google.spanner.v1.RequestOptions.ClientContext.verify(e.clientContext,t+1);if(e)return"clientContext."+e}return null},io.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.RequestOptions)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.RequestOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.RequestOptions;switch(e.priority){default:"number"==typeof e.priority&&(n.priority=e.priority);break;case"PRIORITY_UNSPECIFIED":case 0:n.priority=0;break;case"PRIORITY_LOW":case 1:n.priority=1;break;case"PRIORITY_MEDIUM":case 2:n.priority=2;break;case"PRIORITY_HIGH":case 3:n.priority=3}if(null!=e.requestTag&&(n.requestTag=String(e.requestTag)),null!=e.transactionTag&&(n.transactionTag=String(e.transactionTag)),null!=e.clientContext){if(!d.isObject(e.clientContext))throw TypeError(".google.spanner.v1.RequestOptions.clientContext: object expected");n.clientContext=g.google.spanner.v1.RequestOptions.ClientContext.fromObject(e.clientContext,t+1)}return n},io.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.priority=t.enums===String?"PRIORITY_UNSPECIFIED":0,o.requestTag="",o.transactionTag="",o.clientContext=null),null!=e.priority&&Object.hasOwnProperty.call(e,"priority")&&(o.priority=t.enums!==String||void 0===g.google.spanner.v1.RequestOptions.Priority[e.priority]?e.priority:g.google.spanner.v1.RequestOptions.Priority[e.priority]),null!=e.requestTag&&Object.hasOwnProperty.call(e,"requestTag")&&(o.requestTag=e.requestTag),null!=e.transactionTag&&Object.hasOwnProperty.call(e,"transactionTag")&&(o.transactionTag=e.transactionTag),null!=e.clientContext&&Object.hasOwnProperty.call(e,"clientContext")&&(o.clientContext=g.google.spanner.v1.RequestOptions.ClientContext.toObject(e.clientContext,t,n+1)),o},io.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},io.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.RequestOptions"},io.Priority=(t={},(a=Object.create(t))[t[0]="PRIORITY_UNSPECIFIED"]=0,a[t[1]="PRIORITY_LOW"]=1,a[t[2]="PRIORITY_MEDIUM"]=2,a[t[3]="PRIORITY_HIGH"]=3,a),io.ClientContext=(ao.prototype.secureContext=d.emptyObject,ao.create=function(e){return new ao(e)},ao.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.secureContext&&Object.hasOwnProperty.call(e,"secureContext"))for(var o=Object.keys(e.secureContext),r=0;r<o.length;++r)t.uint32(10).fork().uint32(10).string(o[r]),g.google.protobuf.Value.encode(e.secureContext[o[r]],t.uint32(18).fork(),n+1).ldelim().ldelim();return t},ao.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ao.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.RequestOptions.ClientContext;e.pos<r;){var a=e.uint32();if(a===n)break;if(a>>>3==1){i.secureContext===d.emptyObject&&(i.secureContext={});for(var s=e.uint32()+e.pos,c="",l=null;e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=g.google.protobuf.Value.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.secureContext,c),i.secureContext[c]=l}else e.skipType(7&a,o)}return i},ao.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ao.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.secureContext&&Object.hasOwnProperty.call(e,"secureContext")){if(!d.isObject(e.secureContext))return"secureContext: object expected";for(var n=Object.keys(e.secureContext),o=0;o<n.length;++o){var r=g.google.protobuf.Value.verify(e.secureContext[n[o]],t+1);if(r)return"secureContext."+r}}return null},ao.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.RequestOptions.ClientContext)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.RequestOptions.ClientContext: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.RequestOptions.ClientContext;if(e.secureContext){if(!d.isObject(e.secureContext))throw TypeError(".google.spanner.v1.RequestOptions.ClientContext.secureContext: object expected");n.secureContext={};for(var o=Object.keys(e.secureContext),r=0;r<o.length;++r){if("__proto__"===o[r]&&d.makeProp(n.secureContext,o[r]),!d.isObject(e.secureContext[o[r]]))throw TypeError(".google.spanner.v1.RequestOptions.ClientContext.secureContext: object expected");n.secureContext[o[r]]=g.google.protobuf.Value.fromObject(e.secureContext[o[r]],t+1)}}return n},ao.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.secureContext={}),e.secureContext&&(o=Object.keys(e.secureContext)).length){r.secureContext={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.secureContext,o[i]),r.secureContext[o[i]]=g.google.protobuf.Value.toObject(e.secureContext[o[i]],t,n+1)}return r},ao.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ao.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.RequestOptions.ClientContext"},ao),io),r.DirectedReadOptions=(so.prototype.includeReplicas=null,so.prototype.excludeReplicas=null,Object.defineProperty(so.prototype,"replicas",{get:d.oneOfGetter(t=["includeReplicas","excludeReplicas"]),set:d.oneOfSetter(t)}),so.create=function(e){return new so(e)},so.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.includeReplicas&&Object.hasOwnProperty.call(e,"includeReplicas")&&g.google.spanner.v1.DirectedReadOptions.IncludeReplicas.encode(e.includeReplicas,t.uint32(10).fork(),n+1).ldelim(),null!=e.excludeReplicas&&Object.hasOwnProperty.call(e,"excludeReplicas")&&g.google.spanner.v1.DirectedReadOptions.ExcludeReplicas.encode(e.excludeReplicas,t.uint32(18).fork(),n+1).ldelim(),t},so.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},so.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.DirectedReadOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.includeReplicas=g.google.spanner.v1.DirectedReadOptions.IncludeReplicas.decode(e,e.uint32(),void 0,o+1);break;case 2:i.excludeReplicas=g.google.spanner.v1.DirectedReadOptions.ExcludeReplicas.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},so.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},so.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.includeReplicas&&Object.hasOwnProperty.call(e,"includeReplicas")&&(n=g.google.spanner.v1.DirectedReadOptions.IncludeReplicas.verify(e.includeReplicas,t+(o.replicas=1))))return"includeReplicas."+n;if(null!=e.excludeReplicas&&Object.hasOwnProperty.call(e,"excludeReplicas")){if(1===o.replicas)return"replicas: multiple values";if(n=g.google.spanner.v1.DirectedReadOptions.ExcludeReplicas.verify(e.excludeReplicas,t+(o.replicas=1)))return"excludeReplicas."+n}return null},so.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.DirectedReadOptions)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.DirectedReadOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.DirectedReadOptions;if(null!=e.includeReplicas){if(!d.isObject(e.includeReplicas))throw TypeError(".google.spanner.v1.DirectedReadOptions.includeReplicas: object expected");n.includeReplicas=g.google.spanner.v1.DirectedReadOptions.IncludeReplicas.fromObject(e.includeReplicas,t+1)}if(null!=e.excludeReplicas){if(!d.isObject(e.excludeReplicas))throw TypeError(".google.spanner.v1.DirectedReadOptions.excludeReplicas: object expected");n.excludeReplicas=g.google.spanner.v1.DirectedReadOptions.ExcludeReplicas.fromObject(e.excludeReplicas,t+1)}return n},so.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.includeReplicas&&Object.hasOwnProperty.call(e,"includeReplicas")&&(o.includeReplicas=g.google.spanner.v1.DirectedReadOptions.IncludeReplicas.toObject(e.includeReplicas,t,n+1),t.oneofs)&&(o.replicas="includeReplicas"),null!=e.excludeReplicas&&Object.hasOwnProperty.call(e,"excludeReplicas")&&(o.excludeReplicas=g.google.spanner.v1.DirectedReadOptions.ExcludeReplicas.toObject(e.excludeReplicas,t,n+1),t.oneofs)&&(o.replicas="excludeReplicas"),o},so.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},so.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.DirectedReadOptions"},so.ReplicaSelection=(co.prototype.location="",co.prototype.type=0,co.create=function(e){return new co(e)},co.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.location&&Object.hasOwnProperty.call(e,"location")&&t.uint32(10).string(e.location),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&t.uint32(16).int32(e.type),t},co.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},co.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.DirectedReadOptions.ReplicaSelection;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.location=e.string();break;case 2:i.type=e.int32();break;default:e.skipType(7&a,o)}}return i},co.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},co.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.location&&Object.hasOwnProperty.call(e,"location")&&!d.isString(e.location))return"location: string expected";if(null!=e.type&&Object.hasOwnProperty.call(e,"type"))switch(e.type){default:return"type: enum value expected";case 0:case 1:case 2:}return null},co.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.DirectedReadOptions.ReplicaSelection)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.DirectedReadOptions.ReplicaSelection: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.DirectedReadOptions.ReplicaSelection;switch(null!=e.location&&(n.location=String(e.location)),e.type){default:"number"==typeof e.type&&(n.type=e.type);break;case"TYPE_UNSPECIFIED":case 0:n.type=0;break;case"READ_WRITE":case 1:n.type=1;break;case"READ_ONLY":case 2:n.type=2}return n},co.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.location="",n.type=t.enums===String?"TYPE_UNSPECIFIED":0),null!=e.location&&Object.hasOwnProperty.call(e,"location")&&(n.location=e.location),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(n.type=t.enums!==String||void 0===g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.Type[e.type]?e.type:g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.Type[e.type]),n},co.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},co.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.DirectedReadOptions.ReplicaSelection"},co.Type=(t={},(a=Object.create(t))[t[0]="TYPE_UNSPECIFIED"]=0,a[t[1]="READ_WRITE"]=1,a[t[2]="READ_ONLY"]=2,a),co),so.IncludeReplicas=(lo.prototype.replicaSelections=d.emptyArray,lo.prototype.autoFailoverDisabled=!1,lo.create=function(e){return new lo(e)},lo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.replicaSelections&&e.replicaSelections.length)for(var o=0;o<e.replicaSelections.length;++o)g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.encode(e.replicaSelections[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.autoFailoverDisabled&&Object.hasOwnProperty.call(e,"autoFailoverDisabled")&&t.uint32(16).bool(e.autoFailoverDisabled),t},lo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},lo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.DirectedReadOptions.IncludeReplicas;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.replicaSelections&&i.replicaSelections.length||(i.replicaSelections=[]),i.replicaSelections.push(g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.decode(e,e.uint32(),void 0,o+1));break;case 2:i.autoFailoverDisabled=e.bool();break;default:e.skipType(7&a,o)}}return i},lo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},lo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.replicaSelections&&Object.hasOwnProperty.call(e,"replicaSelections")){if(!Array.isArray(e.replicaSelections))return"replicaSelections: array expected";for(var n=0;n<e.replicaSelections.length;++n){var o=g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.verify(e.replicaSelections[n],t+1);if(o)return"replicaSelections."+o}}return null!=e.autoFailoverDisabled&&Object.hasOwnProperty.call(e,"autoFailoverDisabled")&&"boolean"!=typeof e.autoFailoverDisabled?"autoFailoverDisabled: boolean expected":null},lo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.DirectedReadOptions.IncludeReplicas)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.DirectedReadOptions.IncludeReplicas: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.DirectedReadOptions.IncludeReplicas;if(e.replicaSelections){if(!Array.isArray(e.replicaSelections))throw TypeError(".google.spanner.v1.DirectedReadOptions.IncludeReplicas.replicaSelections: array expected");n.replicaSelections=[];for(var o=0;o<e.replicaSelections.length;++o){if(!d.isObject(e.replicaSelections[o]))throw TypeError(".google.spanner.v1.DirectedReadOptions.IncludeReplicas.replicaSelections: object expected");n.replicaSelections[o]=g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.fromObject(e.replicaSelections[o],t+1)}}return null!=e.autoFailoverDisabled&&(n.autoFailoverDisabled=Boolean(e.autoFailoverDisabled)),n},lo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.replicaSelections=[]),t.defaults&&(o.autoFailoverDisabled=!1),e.replicaSelections&&e.replicaSelections.length){o.replicaSelections=[];for(var r=0;r<e.replicaSelections.length;++r)o.replicaSelections[r]=g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.toObject(e.replicaSelections[r],t,n+1)}return null!=e.autoFailoverDisabled&&Object.hasOwnProperty.call(e,"autoFailoverDisabled")&&(o.autoFailoverDisabled=e.autoFailoverDisabled),o},lo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},lo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.DirectedReadOptions.IncludeReplicas"},lo),so.ExcludeReplicas=(uo.prototype.replicaSelections=d.emptyArray,uo.create=function(e){return new uo(e)},uo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.replicaSelections&&e.replicaSelections.length)for(var o=0;o<e.replicaSelections.length;++o)g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.encode(e.replicaSelections[o],t.uint32(10).fork(),n+1).ldelim();return t},uo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},uo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.DirectedReadOptions.ExcludeReplicas;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.replicaSelections&&i.replicaSelections.length||(i.replicaSelections=[]),i.replicaSelections.push(g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},uo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},uo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.replicaSelections&&Object.hasOwnProperty.call(e,"replicaSelections")){if(!Array.isArray(e.replicaSelections))return"replicaSelections: array expected";for(var n=0;n<e.replicaSelections.length;++n){var o=g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.verify(e.replicaSelections[n],t+1);if(o)return"replicaSelections."+o}}return null},uo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.DirectedReadOptions.ExcludeReplicas)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.DirectedReadOptions.ExcludeReplicas: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.DirectedReadOptions.ExcludeReplicas;if(e.replicaSelections){if(!Array.isArray(e.replicaSelections))throw TypeError(".google.spanner.v1.DirectedReadOptions.ExcludeReplicas.replicaSelections: array expected");n.replicaSelections=[];for(var o=0;o<e.replicaSelections.length;++o){if(!d.isObject(e.replicaSelections[o]))throw TypeError(".google.spanner.v1.DirectedReadOptions.ExcludeReplicas.replicaSelections: object expected");n.replicaSelections[o]=g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.fromObject(e.replicaSelections[o],t+1)}}return n},uo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.replicaSelections=[]),e.replicaSelections&&e.replicaSelections.length){o.replicaSelections=[];for(var r=0;r<e.replicaSelections.length;++r)o.replicaSelections[r]=g.google.spanner.v1.DirectedReadOptions.ReplicaSelection.toObject(e.replicaSelections[r],t,n+1)}return o},uo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},uo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.DirectedReadOptions.ExcludeReplicas"},uo),so),r.ExecuteSqlRequest=(P.prototype.session="",P.prototype.transaction=null,P.prototype.sql="",P.prototype.params=null,P.prototype.paramTypes=d.emptyObject,P.prototype.resumeToken=d.newBuffer([]),P.prototype.queryMode=0,P.prototype.partitionToken=d.newBuffer([]),P.prototype.seqno=d.Long?d.Long.fromBits(0,0,!1):0,P.prototype.queryOptions=null,P.prototype.requestOptions=null,P.prototype.directedReadOptions=null,P.prototype.dataBoostEnabled=!1,P.prototype.lastStatement=!1,P.prototype.routingHint=null,P.create=function(e){return new P(e)},P.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&t.uint32(10).string(e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&g.google.spanner.v1.TransactionSelector.encode(e.transaction,t.uint32(18).fork(),n+1).ldelim(),null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&t.uint32(26).string(e.sql),null!=e.params&&Object.hasOwnProperty.call(e,"params")&&g.google.protobuf.Struct.encode(e.params,t.uint32(34).fork(),n+1).ldelim(),null!=e.paramTypes&&Object.hasOwnProperty.call(e,"paramTypes"))for(var o=Object.keys(e.paramTypes),r=0;r<o.length;++r)t.uint32(42).fork().uint32(10).string(o[r]),g.google.spanner.v1.Type.encode(e.paramTypes[o[r]],t.uint32(18).fork(),n+1).ldelim().ldelim();return null!=e.resumeToken&&Object.hasOwnProperty.call(e,"resumeToken")&&t.uint32(50).bytes(e.resumeToken),null!=e.queryMode&&Object.hasOwnProperty.call(e,"queryMode")&&t.uint32(56).int32(e.queryMode),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&t.uint32(66).bytes(e.partitionToken),null!=e.seqno&&Object.hasOwnProperty.call(e,"seqno")&&t.uint32(72).int64(e.seqno),null!=e.queryOptions&&Object.hasOwnProperty.call(e,"queryOptions")&&g.google.spanner.v1.ExecuteSqlRequest.QueryOptions.encode(e.queryOptions,t.uint32(82).fork(),n+1).ldelim(),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&g.google.spanner.v1.RequestOptions.encode(e.requestOptions,t.uint32(90).fork(),n+1).ldelim(),null!=e.directedReadOptions&&Object.hasOwnProperty.call(e,"directedReadOptions")&&g.google.spanner.v1.DirectedReadOptions.encode(e.directedReadOptions,t.uint32(122).fork(),n+1).ldelim(),null!=e.dataBoostEnabled&&Object.hasOwnProperty.call(e,"dataBoostEnabled")&&t.uint32(128).bool(e.dataBoostEnabled),null!=e.lastStatement&&Object.hasOwnProperty.call(e,"lastStatement")&&t.uint32(136).bool(e.lastStatement),null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&g.google.spanner.v1.RoutingHint.encode(e.routingHint,t.uint32(146).fork(),n+1).ldelim(),t},P.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},P.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ExecuteSqlRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.session=e.string();break;case 2:i.transaction=g.google.spanner.v1.TransactionSelector.decode(e,e.uint32(),void 0,o+1);break;case 3:i.sql=e.string();break;case 4:i.params=g.google.protobuf.Struct.decode(e,e.uint32(),void 0,o+1);break;case 5:i.paramTypes===d.emptyObject&&(i.paramTypes={});for(var s=e.uint32()+e.pos,c="",l=null;e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.paramTypes,c),i.paramTypes[c]=l;break;case 6:i.resumeToken=e.bytes();break;case 7:i.queryMode=e.int32();break;case 8:i.partitionToken=e.bytes();break;case 9:i.seqno=e.int64();break;case 10:i.queryOptions=g.google.spanner.v1.ExecuteSqlRequest.QueryOptions.decode(e,e.uint32(),void 0,o+1);break;case 11:i.requestOptions=g.google.spanner.v1.RequestOptions.decode(e,e.uint32(),void 0,o+1);break;case 15:i.directedReadOptions=g.google.spanner.v1.DirectedReadOptions.decode(e,e.uint32(),void 0,o+1);break;case 16:i.dataBoostEnabled=e.bool();break;case 17:i.lastStatement=e.bool();break;case 18:i.routingHint=g.google.spanner.v1.RoutingHint.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},P.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},P.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&!d.isString(e.session))return"session: string expected";if(null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(n=g.google.spanner.v1.TransactionSelector.verify(e.transaction,t+1)))return"transaction."+n;if(null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&!d.isString(e.sql))return"sql: string expected";if(null!=e.params&&Object.hasOwnProperty.call(e,"params")&&(n=g.google.protobuf.Struct.verify(e.params,t+1)))return"params."+n;if(null!=e.paramTypes&&Object.hasOwnProperty.call(e,"paramTypes")){if(!d.isObject(e.paramTypes))return"paramTypes: object expected";for(var n,o=Object.keys(e.paramTypes),r=0;r<o.length;++r)if(n=g.google.spanner.v1.Type.verify(e.paramTypes[o[r]],t+1))return"paramTypes."+n}if(null!=e.resumeToken&&Object.hasOwnProperty.call(e,"resumeToken")&&!(e.resumeToken&&"number"==typeof e.resumeToken.length||d.isString(e.resumeToken)))return"resumeToken: buffer expected";if(null!=e.queryMode&&Object.hasOwnProperty.call(e,"queryMode"))switch(e.queryMode){default:return"queryMode: enum value expected";case 0:case 1:case 2:case 3:case 4:}if(null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&!(e.partitionToken&&"number"==typeof e.partitionToken.length||d.isString(e.partitionToken)))return"partitionToken: buffer expected";if(null!=e.seqno&&Object.hasOwnProperty.call(e,"seqno")&&!(d.isInteger(e.seqno)||e.seqno&&d.isInteger(e.seqno.low)&&d.isInteger(e.seqno.high)))return"seqno: integer|Long expected";if(null!=e.queryOptions&&Object.hasOwnProperty.call(e,"queryOptions")&&(n=g.google.spanner.v1.ExecuteSqlRequest.QueryOptions.verify(e.queryOptions,t+1)))return"queryOptions."+n;if(null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(n=g.google.spanner.v1.RequestOptions.verify(e.requestOptions,t+1)))return"requestOptions."+n;if(null!=e.directedReadOptions&&Object.hasOwnProperty.call(e,"directedReadOptions")&&(n=g.google.spanner.v1.DirectedReadOptions.verify(e.directedReadOptions,t+1)))return"directedReadOptions."+n;if(null!=e.dataBoostEnabled&&Object.hasOwnProperty.call(e,"dataBoostEnabled")&&"boolean"!=typeof e.dataBoostEnabled)return"dataBoostEnabled: boolean expected";if(null!=e.lastStatement&&Object.hasOwnProperty.call(e,"lastStatement")&&"boolean"!=typeof e.lastStatement)return"lastStatement: boolean expected";if(null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&(n=g.google.spanner.v1.RoutingHint.verify(e.routingHint,t+1)))return"routingHint."+n;return null},P.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ExecuteSqlRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ExecuteSqlRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ExecuteSqlRequest;if(null!=e.session&&(n.session=String(e.session)),null!=e.transaction){if(!d.isObject(e.transaction))throw TypeError(".google.spanner.v1.ExecuteSqlRequest.transaction: object expected");n.transaction=g.google.spanner.v1.TransactionSelector.fromObject(e.transaction,t+1)}if(null!=e.sql&&(n.sql=String(e.sql)),null!=e.params){if(!d.isObject(e.params))throw TypeError(".google.spanner.v1.ExecuteSqlRequest.params: object expected");n.params=g.google.protobuf.Struct.fromObject(e.params,t+1)}if(e.paramTypes){if(!d.isObject(e.paramTypes))throw TypeError(".google.spanner.v1.ExecuteSqlRequest.paramTypes: object expected");n.paramTypes={};for(var o=Object.keys(e.paramTypes),r=0;r<o.length;++r){if("__proto__"===o[r]&&d.makeProp(n.paramTypes,o[r]),!d.isObject(e.paramTypes[o[r]]))throw TypeError(".google.spanner.v1.ExecuteSqlRequest.paramTypes: object expected");n.paramTypes[o[r]]=g.google.spanner.v1.Type.fromObject(e.paramTypes[o[r]],t+1)}}switch(null!=e.resumeToken&&("string"==typeof e.resumeToken?d.base64.decode(e.resumeToken,n.resumeToken=d.newBuffer(d.base64.length(e.resumeToken)),0):0<=e.resumeToken.length&&(n.resumeToken=e.resumeToken)),e.queryMode){default:"number"==typeof e.queryMode&&(n.queryMode=e.queryMode);break;case"NORMAL":case 0:n.queryMode=0;break;case"PLAN":case 1:n.queryMode=1;break;case"PROFILE":case 2:n.queryMode=2;break;case"WITH_STATS":case 3:n.queryMode=3;break;case"WITH_PLAN_AND_STATS":case 4:n.queryMode=4}if(null!=e.partitionToken&&("string"==typeof e.partitionToken?d.base64.decode(e.partitionToken,n.partitionToken=d.newBuffer(d.base64.length(e.partitionToken)),0):0<=e.partitionToken.length&&(n.partitionToken=e.partitionToken)),null!=e.seqno&&(d.Long?n.seqno=d.Long.fromValue(e.seqno,!1):"string"==typeof e.seqno?n.seqno=parseInt(e.seqno,10):"number"==typeof e.seqno?n.seqno=e.seqno:"object"==typeof e.seqno&&(n.seqno=new d.LongBits(e.seqno.low>>>0,e.seqno.high>>>0).toNumber())),null!=e.queryOptions){if(!d.isObject(e.queryOptions))throw TypeError(".google.spanner.v1.ExecuteSqlRequest.queryOptions: object expected");n.queryOptions=g.google.spanner.v1.ExecuteSqlRequest.QueryOptions.fromObject(e.queryOptions,t+1)}if(null!=e.requestOptions){if(!d.isObject(e.requestOptions))throw TypeError(".google.spanner.v1.ExecuteSqlRequest.requestOptions: object expected");n.requestOptions=g.google.spanner.v1.RequestOptions.fromObject(e.requestOptions,t+1)}if(null!=e.directedReadOptions){if(!d.isObject(e.directedReadOptions))throw TypeError(".google.spanner.v1.ExecuteSqlRequest.directedReadOptions: object expected");n.directedReadOptions=g.google.spanner.v1.DirectedReadOptions.fromObject(e.directedReadOptions,t+1)}if(null!=e.dataBoostEnabled&&(n.dataBoostEnabled=Boolean(e.dataBoostEnabled)),null!=e.lastStatement&&(n.lastStatement=Boolean(e.lastStatement)),null!=e.routingHint){if(!d.isObject(e.routingHint))throw TypeError(".google.spanner.v1.ExecuteSqlRequest.routingHint: object expected");n.routingHint=g.google.spanner.v1.RoutingHint.fromObject(e.routingHint,t+1)}return n},P.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r,i={};if((t.objects||t.defaults)&&(i.paramTypes={}),t.defaults&&(i.session="",i.transaction=null,i.sql="",i.params=null,t.bytes===String?i.resumeToken="":(i.resumeToken=[],t.bytes!==Array&&(i.resumeToken=d.newBuffer(i.resumeToken))),i.queryMode=t.enums===String?"NORMAL":0,t.bytes===String?i.partitionToken="":(i.partitionToken=[],t.bytes!==Array&&(i.partitionToken=d.newBuffer(i.partitionToken))),d.Long?(o=new d.Long(0,0,!1),i.seqno=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):i.seqno=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,i.queryOptions=null,i.requestOptions=null,i.directedReadOptions=null,i.dataBoostEnabled=!1,i.lastStatement=!1,i.routingHint=null),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(i.session=e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(i.transaction=g.google.spanner.v1.TransactionSelector.toObject(e.transaction,t,n+1)),null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&(i.sql=e.sql),null!=e.params&&Object.hasOwnProperty.call(e,"params")&&(i.params=g.google.protobuf.Struct.toObject(e.params,t,n+1)),e.paramTypes&&(r=Object.keys(e.paramTypes)).length){i.paramTypes={};for(var a=0;a<r.length;++a)"__proto__"===r[a]&&d.makeProp(i.paramTypes,r[a]),i.paramTypes[r[a]]=g.google.spanner.v1.Type.toObject(e.paramTypes[r[a]],t,n+1)}return null!=e.resumeToken&&Object.hasOwnProperty.call(e,"resumeToken")&&(i.resumeToken=t.bytes===String?d.base64.encode(e.resumeToken,0,e.resumeToken.length):t.bytes===Array?Array.prototype.slice.call(e.resumeToken):e.resumeToken),null!=e.queryMode&&Object.hasOwnProperty.call(e,"queryMode")&&(i.queryMode=t.enums!==String||void 0===g.google.spanner.v1.ExecuteSqlRequest.QueryMode[e.queryMode]?e.queryMode:g.google.spanner.v1.ExecuteSqlRequest.QueryMode[e.queryMode]),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&(i.partitionToken=t.bytes===String?d.base64.encode(e.partitionToken,0,e.partitionToken.length):t.bytes===Array?Array.prototype.slice.call(e.partitionToken):e.partitionToken),null!=e.seqno&&Object.hasOwnProperty.call(e,"seqno")&&("undefined"!=typeof BigInt&&t.longs===BigInt?i.seqno="number"==typeof e.seqno?BigInt(e.seqno):d.Long.fromBits(e.seqno.low>>>0,e.seqno.high>>>0,!1).toBigInt():"number"==typeof e.seqno?i.seqno=t.longs===String?String(e.seqno):e.seqno:i.seqno=t.longs===String?d.Long.prototype.toString.call(e.seqno):t.longs===Number?new d.LongBits(e.seqno.low>>>0,e.seqno.high>>>0).toNumber():e.seqno),null!=e.queryOptions&&Object.hasOwnProperty.call(e,"queryOptions")&&(i.queryOptions=g.google.spanner.v1.ExecuteSqlRequest.QueryOptions.toObject(e.queryOptions,t,n+1)),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(i.requestOptions=g.google.spanner.v1.RequestOptions.toObject(e.requestOptions,t,n+1)),null!=e.directedReadOptions&&Object.hasOwnProperty.call(e,"directedReadOptions")&&(i.directedReadOptions=g.google.spanner.v1.DirectedReadOptions.toObject(e.directedReadOptions,t,n+1)),null!=e.dataBoostEnabled&&Object.hasOwnProperty.call(e,"dataBoostEnabled")&&(i.dataBoostEnabled=e.dataBoostEnabled),null!=e.lastStatement&&Object.hasOwnProperty.call(e,"lastStatement")&&(i.lastStatement=e.lastStatement),null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&(i.routingHint=g.google.spanner.v1.RoutingHint.toObject(e.routingHint,t,n+1)),i},P.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},P.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ExecuteSqlRequest"},P.QueryMode=(t={},(a=Object.create(t))[t[0]="NORMAL"]=0,a[t[1]="PLAN"]=1,a[t[2]="PROFILE"]=2,a[t[3]="WITH_STATS"]=3,a[t[4]="WITH_PLAN_AND_STATS"]=4,a),P.QueryOptions=(po.prototype.optimizerVersion="",po.prototype.optimizerStatisticsPackage="",po.create=function(e){return new po(e)},po.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.optimizerVersion&&Object.hasOwnProperty.call(e,"optimizerVersion")&&t.uint32(10).string(e.optimizerVersion),null!=e.optimizerStatisticsPackage&&Object.hasOwnProperty.call(e,"optimizerStatisticsPackage")&&t.uint32(18).string(e.optimizerStatisticsPackage),t},po.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},po.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ExecuteSqlRequest.QueryOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.optimizerVersion=e.string();break;case 2:i.optimizerStatisticsPackage=e.string();break;default:e.skipType(7&a,o)}}return i},po.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},po.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.optimizerVersion&&Object.hasOwnProperty.call(e,"optimizerVersion")&&!d.isString(e.optimizerVersion)?"optimizerVersion: string expected":null!=e.optimizerStatisticsPackage&&Object.hasOwnProperty.call(e,"optimizerStatisticsPackage")&&!d.isString(e.optimizerStatisticsPackage)?"optimizerStatisticsPackage: string expected":null},po.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ExecuteSqlRequest.QueryOptions)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ExecuteSqlRequest.QueryOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.ExecuteSqlRequest.QueryOptions;return null!=e.optimizerVersion&&(t.optimizerVersion=String(e.optimizerVersion)),null!=e.optimizerStatisticsPackage&&(t.optimizerStatisticsPackage=String(e.optimizerStatisticsPackage)),t},po.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.optimizerVersion="",n.optimizerStatisticsPackage=""),null!=e.optimizerVersion&&Object.hasOwnProperty.call(e,"optimizerVersion")&&(n.optimizerVersion=e.optimizerVersion),null!=e.optimizerStatisticsPackage&&Object.hasOwnProperty.call(e,"optimizerStatisticsPackage")&&(n.optimizerStatisticsPackage=e.optimizerStatisticsPackage),n},po.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},po.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ExecuteSqlRequest.QueryOptions"},po),P),r.ExecuteBatchDmlRequest=(go.prototype.session="",go.prototype.transaction=null,go.prototype.statements=d.emptyArray,go.prototype.seqno=d.Long?d.Long.fromBits(0,0,!1):0,go.prototype.requestOptions=null,go.prototype.lastStatements=!1,go.create=function(e){return new go(e)},go.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&t.uint32(10).string(e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&g.google.spanner.v1.TransactionSelector.encode(e.transaction,t.uint32(18).fork(),n+1).ldelim(),null!=e.statements&&e.statements.length)for(var o=0;o<e.statements.length;++o)g.google.spanner.v1.ExecuteBatchDmlRequest.Statement.encode(e.statements[o],t.uint32(26).fork(),n+1).ldelim();return null!=e.seqno&&Object.hasOwnProperty.call(e,"seqno")&&t.uint32(32).int64(e.seqno),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&g.google.spanner.v1.RequestOptions.encode(e.requestOptions,t.uint32(42).fork(),n+1).ldelim(),null!=e.lastStatements&&Object.hasOwnProperty.call(e,"lastStatements")&&t.uint32(48).bool(e.lastStatements),t},go.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},go.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ExecuteBatchDmlRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.session=e.string();break;case 2:i.transaction=g.google.spanner.v1.TransactionSelector.decode(e,e.uint32(),void 0,o+1);break;case 3:i.statements&&i.statements.length||(i.statements=[]),i.statements.push(g.google.spanner.v1.ExecuteBatchDmlRequest.Statement.decode(e,e.uint32(),void 0,o+1));break;case 4:i.seqno=e.int64();break;case 5:i.requestOptions=g.google.spanner.v1.RequestOptions.decode(e,e.uint32(),void 0,o+1);break;case 6:i.lastStatements=e.bool();break;default:e.skipType(7&a,o)}}return i},go.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},go.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&!d.isString(e.session))return"session: string expected";if(null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(n=g.google.spanner.v1.TransactionSelector.verify(e.transaction,t+1)))return"transaction."+n;if(null!=e.statements&&Object.hasOwnProperty.call(e,"statements")){if(!Array.isArray(e.statements))return"statements: array expected";for(var n,o=0;o<e.statements.length;++o)if(n=g.google.spanner.v1.ExecuteBatchDmlRequest.Statement.verify(e.statements[o],t+1))return"statements."+n}if(null!=e.seqno&&Object.hasOwnProperty.call(e,"seqno")&&!(d.isInteger(e.seqno)||e.seqno&&d.isInteger(e.seqno.low)&&d.isInteger(e.seqno.high)))return"seqno: integer|Long expected";if(null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(n=g.google.spanner.v1.RequestOptions.verify(e.requestOptions,t+1)))return"requestOptions."+n;return null!=e.lastStatements&&Object.hasOwnProperty.call(e,"lastStatements")&&"boolean"!=typeof e.lastStatements?"lastStatements: boolean expected":null},go.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ExecuteBatchDmlRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ExecuteBatchDmlRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ExecuteBatchDmlRequest;if(null!=e.session&&(n.session=String(e.session)),null!=e.transaction){if(!d.isObject(e.transaction))throw TypeError(".google.spanner.v1.ExecuteBatchDmlRequest.transaction: object expected");n.transaction=g.google.spanner.v1.TransactionSelector.fromObject(e.transaction,t+1)}if(e.statements){if(!Array.isArray(e.statements))throw TypeError(".google.spanner.v1.ExecuteBatchDmlRequest.statements: array expected");n.statements=[];for(var o=0;o<e.statements.length;++o){if(!d.isObject(e.statements[o]))throw TypeError(".google.spanner.v1.ExecuteBatchDmlRequest.statements: object expected");n.statements[o]=g.google.spanner.v1.ExecuteBatchDmlRequest.Statement.fromObject(e.statements[o],t+1)}}if(null!=e.seqno&&(d.Long?n.seqno=d.Long.fromValue(e.seqno,!1):"string"==typeof e.seqno?n.seqno=parseInt(e.seqno,10):"number"==typeof e.seqno?n.seqno=e.seqno:"object"==typeof e.seqno&&(n.seqno=new d.LongBits(e.seqno.low>>>0,e.seqno.high>>>0).toNumber())),null!=e.requestOptions){if(!d.isObject(e.requestOptions))throw TypeError(".google.spanner.v1.ExecuteBatchDmlRequest.requestOptions: object expected");n.requestOptions=g.google.spanner.v1.RequestOptions.fromObject(e.requestOptions,t+1)}return null!=e.lastStatements&&(n.lastStatements=Boolean(e.lastStatements)),n},go.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.statements=[]),t.defaults&&(r.session="",r.transaction=null,d.Long?(o=new d.Long(0,0,!1),r.seqno=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.seqno=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,r.requestOptions=null,r.lastStatements=!1),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(r.session=e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(r.transaction=g.google.spanner.v1.TransactionSelector.toObject(e.transaction,t,n+1)),e.statements&&e.statements.length){r.statements=[];for(var i=0;i<e.statements.length;++i)r.statements[i]=g.google.spanner.v1.ExecuteBatchDmlRequest.Statement.toObject(e.statements[i],t,n+1)}return null!=e.seqno&&Object.hasOwnProperty.call(e,"seqno")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.seqno="number"==typeof e.seqno?BigInt(e.seqno):d.Long.fromBits(e.seqno.low>>>0,e.seqno.high>>>0,!1).toBigInt():"number"==typeof e.seqno?r.seqno=t.longs===String?String(e.seqno):e.seqno:r.seqno=t.longs===String?d.Long.prototype.toString.call(e.seqno):t.longs===Number?new d.LongBits(e.seqno.low>>>0,e.seqno.high>>>0).toNumber():e.seqno),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(r.requestOptions=g.google.spanner.v1.RequestOptions.toObject(e.requestOptions,t,n+1)),null!=e.lastStatements&&Object.hasOwnProperty.call(e,"lastStatements")&&(r.lastStatements=e.lastStatements),r},go.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},go.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ExecuteBatchDmlRequest"},go.Statement=(fo.prototype.sql="",fo.prototype.params=null,fo.prototype.paramTypes=d.emptyObject,fo.create=function(e){return new fo(e)},fo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&t.uint32(10).string(e.sql),null!=e.params&&Object.hasOwnProperty.call(e,"params")&&g.google.protobuf.Struct.encode(e.params,t.uint32(18).fork(),n+1).ldelim(),null!=e.paramTypes&&Object.hasOwnProperty.call(e,"paramTypes"))for(var o=Object.keys(e.paramTypes),r=0;r<o.length;++r)t.uint32(26).fork().uint32(10).string(o[r]),g.google.spanner.v1.Type.encode(e.paramTypes[o[r]],t.uint32(18).fork(),n+1).ldelim().ldelim();return t},fo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},fo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ExecuteBatchDmlRequest.Statement;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.sql=e.string();break;case 2:i.params=g.google.protobuf.Struct.decode(e,e.uint32(),void 0,o+1);break;case 3:i.paramTypes===d.emptyObject&&(i.paramTypes={});for(var s=e.uint32()+e.pos,c="",l=null;e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.paramTypes,c),i.paramTypes[c]=l;break;default:e.skipType(7&a,o)}}return i},fo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},fo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&!d.isString(e.sql))return"sql: string expected";if(null!=e.params&&Object.hasOwnProperty.call(e,"params")&&(n=g.google.protobuf.Struct.verify(e.params,t+1)))return"params."+n;if(null!=e.paramTypes&&Object.hasOwnProperty.call(e,"paramTypes")){if(!d.isObject(e.paramTypes))return"paramTypes: object expected";for(var n,o=Object.keys(e.paramTypes),r=0;r<o.length;++r)if(n=g.google.spanner.v1.Type.verify(e.paramTypes[o[r]],t+1))return"paramTypes."+n}return null},fo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ExecuteBatchDmlRequest.Statement)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ExecuteBatchDmlRequest.Statement: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ExecuteBatchDmlRequest.Statement;if(null!=e.sql&&(n.sql=String(e.sql)),null!=e.params){if(!d.isObject(e.params))throw TypeError(".google.spanner.v1.ExecuteBatchDmlRequest.Statement.params: object expected");n.params=g.google.protobuf.Struct.fromObject(e.params,t+1)}if(e.paramTypes){if(!d.isObject(e.paramTypes))throw TypeError(".google.spanner.v1.ExecuteBatchDmlRequest.Statement.paramTypes: object expected");n.paramTypes={};for(var o=Object.keys(e.paramTypes),r=0;r<o.length;++r){if("__proto__"===o[r]&&d.makeProp(n.paramTypes,o[r]),!d.isObject(e.paramTypes[o[r]]))throw TypeError(".google.spanner.v1.ExecuteBatchDmlRequest.Statement.paramTypes: object expected");n.paramTypes[o[r]]=g.google.spanner.v1.Type.fromObject(e.paramTypes[o[r]],t+1)}}return n},fo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.paramTypes={}),t.defaults&&(r.sql="",r.params=null),null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&(r.sql=e.sql),null!=e.params&&Object.hasOwnProperty.call(e,"params")&&(r.params=g.google.protobuf.Struct.toObject(e.params,t,n+1)),e.paramTypes&&(o=Object.keys(e.paramTypes)).length){r.paramTypes={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.paramTypes,o[i]),r.paramTypes[o[i]]=g.google.spanner.v1.Type.toObject(e.paramTypes[o[i]],t,n+1)}return r},fo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},fo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ExecuteBatchDmlRequest.Statement"},fo),go),r.ExecuteBatchDmlResponse=(mo.prototype.resultSets=d.emptyArray,mo.prototype.status=null,mo.prototype.precommitToken=null,mo.create=function(e){return new mo(e)},mo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.resultSets&&e.resultSets.length)for(var o=0;o<e.resultSets.length;++o)g.google.spanner.v1.ResultSet.encode(e.resultSets[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.status&&Object.hasOwnProperty.call(e,"status")&&g.google.rpc.Status.encode(e.status,t.uint32(18).fork(),n+1).ldelim(),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&g.google.spanner.v1.MultiplexedSessionPrecommitToken.encode(e.precommitToken,t.uint32(26).fork(),n+1).ldelim(),t},mo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},mo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ExecuteBatchDmlResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.resultSets&&i.resultSets.length||(i.resultSets=[]),i.resultSets.push(g.google.spanner.v1.ResultSet.decode(e,e.uint32(),void 0,o+1));break;case 2:i.status=g.google.rpc.Status.decode(e,e.uint32(),void 0,o+1);break;case 3:i.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},mo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},mo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.resultSets&&Object.hasOwnProperty.call(e,"resultSets")){if(!Array.isArray(e.resultSets))return"resultSets: array expected";for(var n=0;n<e.resultSets.length;++n)if(o=g.google.spanner.v1.ResultSet.verify(e.resultSets[n],t+1))return"resultSets."+o}var o;if(null!=e.status&&Object.hasOwnProperty.call(e,"status")&&(o=g.google.rpc.Status.verify(e.status,t+1)))return"status."+o;if(null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(o=g.google.spanner.v1.MultiplexedSessionPrecommitToken.verify(e.precommitToken,t+1)))return"precommitToken."+o;return null},mo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ExecuteBatchDmlResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ExecuteBatchDmlResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ExecuteBatchDmlResponse;if(e.resultSets){if(!Array.isArray(e.resultSets))throw TypeError(".google.spanner.v1.ExecuteBatchDmlResponse.resultSets: array expected");n.resultSets=[];for(var o=0;o<e.resultSets.length;++o){if(!d.isObject(e.resultSets[o]))throw TypeError(".google.spanner.v1.ExecuteBatchDmlResponse.resultSets: object expected");n.resultSets[o]=g.google.spanner.v1.ResultSet.fromObject(e.resultSets[o],t+1)}}if(null!=e.status){if(!d.isObject(e.status))throw TypeError(".google.spanner.v1.ExecuteBatchDmlResponse.status: object expected");n.status=g.google.rpc.Status.fromObject(e.status,t+1)}if(null!=e.precommitToken){if(!d.isObject(e.precommitToken))throw TypeError(".google.spanner.v1.ExecuteBatchDmlResponse.precommitToken: object expected");n.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.fromObject(e.precommitToken,t+1)}return n},mo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.resultSets=[]),t.defaults&&(o.status=null,o.precommitToken=null),e.resultSets&&e.resultSets.length){o.resultSets=[];for(var r=0;r<e.resultSets.length;++r)o.resultSets[r]=g.google.spanner.v1.ResultSet.toObject(e.resultSets[r],t,n+1)}return null!=e.status&&Object.hasOwnProperty.call(e,"status")&&(o.status=g.google.rpc.Status.toObject(e.status,t,n+1)),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(o.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.toObject(e.precommitToken,t,n+1)),o},mo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},mo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ExecuteBatchDmlResponse"},mo),r.PartitionOptions=(bo.prototype.partitionSizeBytes=d.Long?d.Long.fromBits(0,0,!1):0,bo.prototype.maxPartitions=d.Long?d.Long.fromBits(0,0,!1):0,bo.create=function(e){return new bo(e)},bo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.partitionSizeBytes&&Object.hasOwnProperty.call(e,"partitionSizeBytes")&&t.uint32(8).int64(e.partitionSizeBytes),null!=e.maxPartitions&&Object.hasOwnProperty.call(e,"maxPartitions")&&t.uint32(16).int64(e.maxPartitions),t},bo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},bo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.PartitionOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.partitionSizeBytes=e.int64();break;case 2:i.maxPartitions=e.int64();break;default:e.skipType(7&a,o)}}return i},bo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},bo.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.partitionSizeBytes&&Object.hasOwnProperty.call(e,"partitionSizeBytes")&&!(d.isInteger(e.partitionSizeBytes)||e.partitionSizeBytes&&d.isInteger(e.partitionSizeBytes.low)&&d.isInteger(e.partitionSizeBytes.high))?"partitionSizeBytes: integer|Long expected":null!=e.maxPartitions&&Object.hasOwnProperty.call(e,"maxPartitions")&&!(d.isInteger(e.maxPartitions)||e.maxPartitions&&d.isInteger(e.maxPartitions.low)&&d.isInteger(e.maxPartitions.high))?"maxPartitions: integer|Long expected":null},bo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.PartitionOptions)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.PartitionOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.PartitionOptions;return null!=e.partitionSizeBytes&&(d.Long?t.partitionSizeBytes=d.Long.fromValue(e.partitionSizeBytes,!1):"string"==typeof e.partitionSizeBytes?t.partitionSizeBytes=parseInt(e.partitionSizeBytes,10):"number"==typeof e.partitionSizeBytes?t.partitionSizeBytes=e.partitionSizeBytes:"object"==typeof e.partitionSizeBytes&&(t.partitionSizeBytes=new d.LongBits(e.partitionSizeBytes.low>>>0,e.partitionSizeBytes.high>>>0).toNumber())),null!=e.maxPartitions&&(d.Long?t.maxPartitions=d.Long.fromValue(e.maxPartitions,!1):"string"==typeof e.maxPartitions?t.maxPartitions=parseInt(e.maxPartitions,10):"number"==typeof e.maxPartitions?t.maxPartitions=e.maxPartitions:"object"==typeof e.maxPartitions&&(t.maxPartitions=new d.LongBits(e.maxPartitions.low>>>0,e.maxPartitions.high>>>0).toNumber())),t},bo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,n={};return t.defaults&&(d.Long?(o=new d.Long(0,0,!1),n.partitionSizeBytes=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.partitionSizeBytes=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,d.Long?(o=new d.Long(0,0,!1),n.maxPartitions=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.maxPartitions=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0),null!=e.partitionSizeBytes&&Object.hasOwnProperty.call(e,"partitionSizeBytes")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.partitionSizeBytes="number"==typeof e.partitionSizeBytes?BigInt(e.partitionSizeBytes):d.Long.fromBits(e.partitionSizeBytes.low>>>0,e.partitionSizeBytes.high>>>0,!1).toBigInt():"number"==typeof e.partitionSizeBytes?n.partitionSizeBytes=t.longs===String?String(e.partitionSizeBytes):e.partitionSizeBytes:n.partitionSizeBytes=t.longs===String?d.Long.prototype.toString.call(e.partitionSizeBytes):t.longs===Number?new d.LongBits(e.partitionSizeBytes.low>>>0,e.partitionSizeBytes.high>>>0).toNumber():e.partitionSizeBytes),null!=e.maxPartitions&&Object.hasOwnProperty.call(e,"maxPartitions")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.maxPartitions="number"==typeof e.maxPartitions?BigInt(e.maxPartitions):d.Long.fromBits(e.maxPartitions.low>>>0,e.maxPartitions.high>>>0,!1).toBigInt():"number"==typeof e.maxPartitions?n.maxPartitions=t.longs===String?String(e.maxPartitions):e.maxPartitions:n.maxPartitions=t.longs===String?d.Long.prototype.toString.call(e.maxPartitions):t.longs===Number?new d.LongBits(e.maxPartitions.low>>>0,e.maxPartitions.high>>>0).toNumber():e.maxPartitions),n},bo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},bo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.PartitionOptions"},bo),r.PartitionQueryRequest=(yo.prototype.session="",yo.prototype.transaction=null,yo.prototype.sql="",yo.prototype.params=null,yo.prototype.paramTypes=d.emptyObject,yo.prototype.partitionOptions=null,yo.create=function(e){return new yo(e)},yo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&t.uint32(10).string(e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&g.google.spanner.v1.TransactionSelector.encode(e.transaction,t.uint32(18).fork(),n+1).ldelim(),null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&t.uint32(26).string(e.sql),null!=e.params&&Object.hasOwnProperty.call(e,"params")&&g.google.protobuf.Struct.encode(e.params,t.uint32(34).fork(),n+1).ldelim(),null!=e.paramTypes&&Object.hasOwnProperty.call(e,"paramTypes"))for(var o=Object.keys(e.paramTypes),r=0;r<o.length;++r)t.uint32(42).fork().uint32(10).string(o[r]),g.google.spanner.v1.Type.encode(e.paramTypes[o[r]],t.uint32(18).fork(),n+1).ldelim().ldelim();return null!=e.partitionOptions&&Object.hasOwnProperty.call(e,"partitionOptions")&&g.google.spanner.v1.PartitionOptions.encode(e.partitionOptions,t.uint32(50).fork(),n+1).ldelim(),t},yo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},yo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.PartitionQueryRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.session=e.string();break;case 2:i.transaction=g.google.spanner.v1.TransactionSelector.decode(e,e.uint32(),void 0,o+1);break;case 3:i.sql=e.string();break;case 4:i.params=g.google.protobuf.Struct.decode(e,e.uint32(),void 0,o+1);break;case 5:i.paramTypes===d.emptyObject&&(i.paramTypes={});for(var s=e.uint32()+e.pos,c="",l=null;e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.paramTypes,c),i.paramTypes[c]=l;break;case 6:i.partitionOptions=g.google.spanner.v1.PartitionOptions.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},yo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},yo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&!d.isString(e.session))return"session: string expected";if(null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(n=g.google.spanner.v1.TransactionSelector.verify(e.transaction,t+1)))return"transaction."+n;if(null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&!d.isString(e.sql))return"sql: string expected";if(null!=e.params&&Object.hasOwnProperty.call(e,"params")&&(n=g.google.protobuf.Struct.verify(e.params,t+1)))return"params."+n;if(null!=e.paramTypes&&Object.hasOwnProperty.call(e,"paramTypes")){if(!d.isObject(e.paramTypes))return"paramTypes: object expected";for(var n,o=Object.keys(e.paramTypes),r=0;r<o.length;++r)if(n=g.google.spanner.v1.Type.verify(e.paramTypes[o[r]],t+1))return"paramTypes."+n}if(null!=e.partitionOptions&&Object.hasOwnProperty.call(e,"partitionOptions")&&(n=g.google.spanner.v1.PartitionOptions.verify(e.partitionOptions,t+1)))return"partitionOptions."+n;return null},yo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.PartitionQueryRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.PartitionQueryRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.PartitionQueryRequest;if(null!=e.session&&(n.session=String(e.session)),null!=e.transaction){if(!d.isObject(e.transaction))throw TypeError(".google.spanner.v1.PartitionQueryRequest.transaction: object expected");n.transaction=g.google.spanner.v1.TransactionSelector.fromObject(e.transaction,t+1)}if(null!=e.sql&&(n.sql=String(e.sql)),null!=e.params){if(!d.isObject(e.params))throw TypeError(".google.spanner.v1.PartitionQueryRequest.params: object expected");n.params=g.google.protobuf.Struct.fromObject(e.params,t+1)}if(e.paramTypes){if(!d.isObject(e.paramTypes))throw TypeError(".google.spanner.v1.PartitionQueryRequest.paramTypes: object expected");n.paramTypes={};for(var o=Object.keys(e.paramTypes),r=0;r<o.length;++r){if("__proto__"===o[r]&&d.makeProp(n.paramTypes,o[r]),!d.isObject(e.paramTypes[o[r]]))throw TypeError(".google.spanner.v1.PartitionQueryRequest.paramTypes: object expected");n.paramTypes[o[r]]=g.google.spanner.v1.Type.fromObject(e.paramTypes[o[r]],t+1)}}if(null!=e.partitionOptions){if(!d.isObject(e.partitionOptions))throw TypeError(".google.spanner.v1.PartitionQueryRequest.partitionOptions: object expected");n.partitionOptions=g.google.spanner.v1.PartitionOptions.fromObject(e.partitionOptions,t+1)}return n},yo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.paramTypes={}),t.defaults&&(r.session="",r.transaction=null,r.sql="",r.params=null,r.partitionOptions=null),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(r.session=e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(r.transaction=g.google.spanner.v1.TransactionSelector.toObject(e.transaction,t,n+1)),null!=e.sql&&Object.hasOwnProperty.call(e,"sql")&&(r.sql=e.sql),null!=e.params&&Object.hasOwnProperty.call(e,"params")&&(r.params=g.google.protobuf.Struct.toObject(e.params,t,n+1)),e.paramTypes&&(o=Object.keys(e.paramTypes)).length){r.paramTypes={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.paramTypes,o[i]),r.paramTypes[o[i]]=g.google.spanner.v1.Type.toObject(e.paramTypes[o[i]],t,n+1)}return null!=e.partitionOptions&&Object.hasOwnProperty.call(e,"partitionOptions")&&(r.partitionOptions=g.google.spanner.v1.PartitionOptions.toObject(e.partitionOptions,t,n+1)),r},yo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},yo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.PartitionQueryRequest"},yo),r.PartitionReadRequest=(ho.prototype.session="",ho.prototype.transaction=null,ho.prototype.table="",ho.prototype.index="",ho.prototype.columns=d.emptyArray,ho.prototype.keySet=null,ho.prototype.partitionOptions=null,ho.create=function(e){return new ho(e)},ho.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&t.uint32(10).string(e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&g.google.spanner.v1.TransactionSelector.encode(e.transaction,t.uint32(18).fork(),n+1).ldelim(),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(26).string(e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&t.uint32(34).string(e.index),null!=e.columns&&e.columns.length)for(var o=0;o<e.columns.length;++o)t.uint32(42).string(e.columns[o]);return null!=e.keySet&&Object.hasOwnProperty.call(e,"keySet")&&g.google.spanner.v1.KeySet.encode(e.keySet,t.uint32(50).fork(),n+1).ldelim(),null!=e.partitionOptions&&Object.hasOwnProperty.call(e,"partitionOptions")&&g.google.spanner.v1.PartitionOptions.encode(e.partitionOptions,t.uint32(74).fork(),n+1).ldelim(),t},ho.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ho.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.PartitionReadRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.session=e.string();break;case 2:i.transaction=g.google.spanner.v1.TransactionSelector.decode(e,e.uint32(),void 0,o+1);break;case 3:i.table=e.string();break;case 4:i.index=e.string();break;case 5:i.columns&&i.columns.length||(i.columns=[]),i.columns.push(e.string());break;case 6:i.keySet=g.google.spanner.v1.KeySet.decode(e,e.uint32(),void 0,o+1);break;case 9:i.partitionOptions=g.google.spanner.v1.PartitionOptions.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ho.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ho.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&!d.isString(e.session))return"session: string expected";var n;if(null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(n=g.google.spanner.v1.TransactionSelector.verify(e.transaction,t+1)))return"transaction."+n;if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";if(null!=e.index&&Object.hasOwnProperty.call(e,"index")&&!d.isString(e.index))return"index: string expected";if(null!=e.columns&&Object.hasOwnProperty.call(e,"columns")){if(!Array.isArray(e.columns))return"columns: array expected";for(var o=0;o<e.columns.length;++o)if(!d.isString(e.columns[o]))return"columns: string[] expected"}if(null!=e.keySet&&Object.hasOwnProperty.call(e,"keySet")&&(n=g.google.spanner.v1.KeySet.verify(e.keySet,t+1)))return"keySet."+n;if(null!=e.partitionOptions&&Object.hasOwnProperty.call(e,"partitionOptions")&&(n=g.google.spanner.v1.PartitionOptions.verify(e.partitionOptions,t+1)))return"partitionOptions."+n;return null},ho.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.PartitionReadRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.PartitionReadRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.PartitionReadRequest;if(null!=e.session&&(n.session=String(e.session)),null!=e.transaction){if(!d.isObject(e.transaction))throw TypeError(".google.spanner.v1.PartitionReadRequest.transaction: object expected");n.transaction=g.google.spanner.v1.TransactionSelector.fromObject(e.transaction,t+1)}if(null!=e.table&&(n.table=String(e.table)),null!=e.index&&(n.index=String(e.index)),e.columns){if(!Array.isArray(e.columns))throw TypeError(".google.spanner.v1.PartitionReadRequest.columns: array expected");n.columns=[];for(var o=0;o<e.columns.length;++o)n.columns[o]=String(e.columns[o])}if(null!=e.keySet){if(!d.isObject(e.keySet))throw TypeError(".google.spanner.v1.PartitionReadRequest.keySet: object expected");n.keySet=g.google.spanner.v1.KeySet.fromObject(e.keySet,t+1)}if(null!=e.partitionOptions){if(!d.isObject(e.partitionOptions))throw TypeError(".google.spanner.v1.PartitionReadRequest.partitionOptions: object expected");n.partitionOptions=g.google.spanner.v1.PartitionOptions.fromObject(e.partitionOptions,t+1)}return n},ho.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.columns=[]),t.defaults&&(o.session="",o.transaction=null,o.table="",o.index="",o.keySet=null,o.partitionOptions=null),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(o.session=e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(o.transaction=g.google.spanner.v1.TransactionSelector.toObject(e.transaction,t,n+1)),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(o.table=e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&(o.index=e.index),e.columns&&e.columns.length){o.columns=[];for(var r=0;r<e.columns.length;++r)o.columns[r]=e.columns[r]}return null!=e.keySet&&Object.hasOwnProperty.call(e,"keySet")&&(o.keySet=g.google.spanner.v1.KeySet.toObject(e.keySet,t,n+1)),null!=e.partitionOptions&&Object.hasOwnProperty.call(e,"partitionOptions")&&(o.partitionOptions=g.google.spanner.v1.PartitionOptions.toObject(e.partitionOptions,t,n+1)),o},ho.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ho.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.PartitionReadRequest"},ho),r.Partition=(Oo.prototype.partitionToken=d.newBuffer([]),Oo.create=function(e){return new Oo(e)},Oo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&t.uint32(10).bytes(e.partitionToken),t},Oo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Oo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Partition;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.partitionToken=e.bytes():e.skipType(7&a,o)}return i},Oo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Oo.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&!(e.partitionToken&&"number"==typeof e.partitionToken.length||d.isString(e.partitionToken))?"partitionToken: buffer expected":null},Oo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Partition)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Partition: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.Partition;return null!=e.partitionToken&&("string"==typeof e.partitionToken?d.base64.decode(e.partitionToken,t.partitionToken=d.newBuffer(d.base64.length(e.partitionToken)),0):0<=e.partitionToken.length&&(t.partitionToken=e.partitionToken)),t},Oo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(t.bytes===String?n.partitionToken="":(n.partitionToken=[],t.bytes!==Array&&(n.partitionToken=d.newBuffer(n.partitionToken)))),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&(n.partitionToken=t.bytes===String?d.base64.encode(e.partitionToken,0,e.partitionToken.length):t.bytes===Array?Array.prototype.slice.call(e.partitionToken):e.partitionToken),n},Oo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Oo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Partition"},Oo),r.PartitionResponse=(vo.prototype.partitions=d.emptyArray,vo.prototype.transaction=null,vo.create=function(e){return new vo(e)},vo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.partitions&&e.partitions.length)for(var o=0;o<e.partitions.length;++o)g.google.spanner.v1.Partition.encode(e.partitions[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&g.google.spanner.v1.Transaction.encode(e.transaction,t.uint32(18).fork(),n+1).ldelim(),t},vo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},vo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.PartitionResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.partitions&&i.partitions.length||(i.partitions=[]),i.partitions.push(g.google.spanner.v1.Partition.decode(e,e.uint32(),void 0,o+1));break;case 2:i.transaction=g.google.spanner.v1.Transaction.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},vo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},vo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.partitions&&Object.hasOwnProperty.call(e,"partitions")){if(!Array.isArray(e.partitions))return"partitions: array expected";for(var n=0;n<e.partitions.length;++n)if(o=g.google.spanner.v1.Partition.verify(e.partitions[n],t+1))return"partitions."+o}var o;if(null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(o=g.google.spanner.v1.Transaction.verify(e.transaction,t+1)))return"transaction."+o;return null},vo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.PartitionResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.PartitionResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.PartitionResponse;if(e.partitions){if(!Array.isArray(e.partitions))throw TypeError(".google.spanner.v1.PartitionResponse.partitions: array expected");n.partitions=[];for(var o=0;o<e.partitions.length;++o){if(!d.isObject(e.partitions[o]))throw TypeError(".google.spanner.v1.PartitionResponse.partitions: object expected");n.partitions[o]=g.google.spanner.v1.Partition.fromObject(e.partitions[o],t+1)}}if(null!=e.transaction){if(!d.isObject(e.transaction))throw TypeError(".google.spanner.v1.PartitionResponse.transaction: object expected");n.transaction=g.google.spanner.v1.Transaction.fromObject(e.transaction,t+1)}return n},vo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.partitions=[]),t.defaults&&(o.transaction=null),e.partitions&&e.partitions.length){o.partitions=[];for(var r=0;r<e.partitions.length;++r)o.partitions[r]=g.google.spanner.v1.Partition.toObject(e.partitions[r],t,n+1)}return null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(o.transaction=g.google.spanner.v1.Transaction.toObject(e.transaction,t,n+1)),o},vo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},vo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.PartitionResponse"},vo),r.ReadRequest=(S.prototype.session="",S.prototype.transaction=null,S.prototype.table="",S.prototype.index="",S.prototype.columns=d.emptyArray,S.prototype.keySet=null,S.prototype.limit=d.Long?d.Long.fromBits(0,0,!1):0,S.prototype.resumeToken=d.newBuffer([]),S.prototype.partitionToken=d.newBuffer([]),S.prototype.requestOptions=null,S.prototype.directedReadOptions=null,S.prototype.dataBoostEnabled=!1,S.prototype.orderBy=0,S.prototype.lockHint=0,S.prototype.routingHint=null,S.create=function(e){return new S(e)},S.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&t.uint32(10).string(e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&g.google.spanner.v1.TransactionSelector.encode(e.transaction,t.uint32(18).fork(),n+1).ldelim(),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(26).string(e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&t.uint32(34).string(e.index),null!=e.columns&&e.columns.length)for(var o=0;o<e.columns.length;++o)t.uint32(42).string(e.columns[o]);return null!=e.keySet&&Object.hasOwnProperty.call(e,"keySet")&&g.google.spanner.v1.KeySet.encode(e.keySet,t.uint32(50).fork(),n+1).ldelim(),null!=e.limit&&Object.hasOwnProperty.call(e,"limit")&&t.uint32(64).int64(e.limit),null!=e.resumeToken&&Object.hasOwnProperty.call(e,"resumeToken")&&t.uint32(74).bytes(e.resumeToken),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&t.uint32(82).bytes(e.partitionToken),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&g.google.spanner.v1.RequestOptions.encode(e.requestOptions,t.uint32(90).fork(),n+1).ldelim(),null!=e.directedReadOptions&&Object.hasOwnProperty.call(e,"directedReadOptions")&&g.google.spanner.v1.DirectedReadOptions.encode(e.directedReadOptions,t.uint32(114).fork(),n+1).ldelim(),null!=e.dataBoostEnabled&&Object.hasOwnProperty.call(e,"dataBoostEnabled")&&t.uint32(120).bool(e.dataBoostEnabled),null!=e.orderBy&&Object.hasOwnProperty.call(e,"orderBy")&&t.uint32(128).int32(e.orderBy),null!=e.lockHint&&Object.hasOwnProperty.call(e,"lockHint")&&t.uint32(136).int32(e.lockHint),null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&g.google.spanner.v1.RoutingHint.encode(e.routingHint,t.uint32(146).fork(),n+1).ldelim(),t},S.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},S.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ReadRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.session=e.string();break;case 2:i.transaction=g.google.spanner.v1.TransactionSelector.decode(e,e.uint32(),void 0,o+1);break;case 3:i.table=e.string();break;case 4:i.index=e.string();break;case 5:i.columns&&i.columns.length||(i.columns=[]),i.columns.push(e.string());break;case 6:i.keySet=g.google.spanner.v1.KeySet.decode(e,e.uint32(),void 0,o+1);break;case 8:i.limit=e.int64();break;case 9:i.resumeToken=e.bytes();break;case 10:i.partitionToken=e.bytes();break;case 11:i.requestOptions=g.google.spanner.v1.RequestOptions.decode(e,e.uint32(),void 0,o+1);break;case 14:i.directedReadOptions=g.google.spanner.v1.DirectedReadOptions.decode(e,e.uint32(),void 0,o+1);break;case 15:i.dataBoostEnabled=e.bool();break;case 16:i.orderBy=e.int32();break;case 17:i.lockHint=e.int32();break;case 18:i.routingHint=g.google.spanner.v1.RoutingHint.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},S.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},S.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&!d.isString(e.session))return"session: string expected";var n;if(null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(n=g.google.spanner.v1.TransactionSelector.verify(e.transaction,t+1)))return"transaction."+n;if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";if(null!=e.index&&Object.hasOwnProperty.call(e,"index")&&!d.isString(e.index))return"index: string expected";if(null!=e.columns&&Object.hasOwnProperty.call(e,"columns")){if(!Array.isArray(e.columns))return"columns: array expected";for(var o=0;o<e.columns.length;++o)if(!d.isString(e.columns[o]))return"columns: string[] expected"}if(null!=e.keySet&&Object.hasOwnProperty.call(e,"keySet")&&(n=g.google.spanner.v1.KeySet.verify(e.keySet,t+1)))return"keySet."+n;if(null!=e.limit&&Object.hasOwnProperty.call(e,"limit")&&!(d.isInteger(e.limit)||e.limit&&d.isInteger(e.limit.low)&&d.isInteger(e.limit.high)))return"limit: integer|Long expected";if(null!=e.resumeToken&&Object.hasOwnProperty.call(e,"resumeToken")&&!(e.resumeToken&&"number"==typeof e.resumeToken.length||d.isString(e.resumeToken)))return"resumeToken: buffer expected";if(null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&!(e.partitionToken&&"number"==typeof e.partitionToken.length||d.isString(e.partitionToken)))return"partitionToken: buffer expected";if(null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(n=g.google.spanner.v1.RequestOptions.verify(e.requestOptions,t+1)))return"requestOptions."+n;if(null!=e.directedReadOptions&&Object.hasOwnProperty.call(e,"directedReadOptions")&&(n=g.google.spanner.v1.DirectedReadOptions.verify(e.directedReadOptions,t+1)))return"directedReadOptions."+n;if(null!=e.dataBoostEnabled&&Object.hasOwnProperty.call(e,"dataBoostEnabled")&&"boolean"!=typeof e.dataBoostEnabled)return"dataBoostEnabled: boolean expected";if(null!=e.orderBy&&Object.hasOwnProperty.call(e,"orderBy"))switch(e.orderBy){default:return"orderBy: enum value expected";case 0:case 1:case 2:}if(null!=e.lockHint&&Object.hasOwnProperty.call(e,"lockHint"))switch(e.lockHint){default:return"lockHint: enum value expected";case 0:case 1:case 2:}if(null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&(n=g.google.spanner.v1.RoutingHint.verify(e.routingHint,t+1)))return"routingHint."+n;return null},S.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ReadRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ReadRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ReadRequest;if(null!=e.session&&(n.session=String(e.session)),null!=e.transaction){if(!d.isObject(e.transaction))throw TypeError(".google.spanner.v1.ReadRequest.transaction: object expected");n.transaction=g.google.spanner.v1.TransactionSelector.fromObject(e.transaction,t+1)}if(null!=e.table&&(n.table=String(e.table)),null!=e.index&&(n.index=String(e.index)),e.columns){if(!Array.isArray(e.columns))throw TypeError(".google.spanner.v1.ReadRequest.columns: array expected");n.columns=[];for(var o=0;o<e.columns.length;++o)n.columns[o]=String(e.columns[o])}if(null!=e.keySet){if(!d.isObject(e.keySet))throw TypeError(".google.spanner.v1.ReadRequest.keySet: object expected");n.keySet=g.google.spanner.v1.KeySet.fromObject(e.keySet,t+1)}if(null!=e.limit&&(d.Long?n.limit=d.Long.fromValue(e.limit,!1):"string"==typeof e.limit?n.limit=parseInt(e.limit,10):"number"==typeof e.limit?n.limit=e.limit:"object"==typeof e.limit&&(n.limit=new d.LongBits(e.limit.low>>>0,e.limit.high>>>0).toNumber())),null!=e.resumeToken&&("string"==typeof e.resumeToken?d.base64.decode(e.resumeToken,n.resumeToken=d.newBuffer(d.base64.length(e.resumeToken)),0):0<=e.resumeToken.length&&(n.resumeToken=e.resumeToken)),null!=e.partitionToken&&("string"==typeof e.partitionToken?d.base64.decode(e.partitionToken,n.partitionToken=d.newBuffer(d.base64.length(e.partitionToken)),0):0<=e.partitionToken.length&&(n.partitionToken=e.partitionToken)),null!=e.requestOptions){if(!d.isObject(e.requestOptions))throw TypeError(".google.spanner.v1.ReadRequest.requestOptions: object expected");n.requestOptions=g.google.spanner.v1.RequestOptions.fromObject(e.requestOptions,t+1)}if(null!=e.directedReadOptions){if(!d.isObject(e.directedReadOptions))throw TypeError(".google.spanner.v1.ReadRequest.directedReadOptions: object expected");n.directedReadOptions=g.google.spanner.v1.DirectedReadOptions.fromObject(e.directedReadOptions,t+1)}switch(null!=e.dataBoostEnabled&&(n.dataBoostEnabled=Boolean(e.dataBoostEnabled)),e.orderBy){default:"number"==typeof e.orderBy&&(n.orderBy=e.orderBy);break;case"ORDER_BY_UNSPECIFIED":case 0:n.orderBy=0;break;case"ORDER_BY_PRIMARY_KEY":case 1:n.orderBy=1;break;case"ORDER_BY_NO_ORDER":case 2:n.orderBy=2}switch(e.lockHint){default:"number"==typeof e.lockHint&&(n.lockHint=e.lockHint);break;case"LOCK_HINT_UNSPECIFIED":case 0:n.lockHint=0;break;case"LOCK_HINT_SHARED":case 1:n.lockHint=1;break;case"LOCK_HINT_EXCLUSIVE":case 2:n.lockHint=2}if(null!=e.routingHint){if(!d.isObject(e.routingHint))throw TypeError(".google.spanner.v1.ReadRequest.routingHint: object expected");n.routingHint=g.google.spanner.v1.RoutingHint.fromObject(e.routingHint,t+1)}return n},S.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.columns=[]),t.defaults&&(r.session="",r.transaction=null,r.table="",r.index="",r.keySet=null,d.Long?(o=new d.Long(0,0,!1),r.limit=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.limit=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,t.bytes===String?r.resumeToken="":(r.resumeToken=[],t.bytes!==Array&&(r.resumeToken=d.newBuffer(r.resumeToken))),t.bytes===String?r.partitionToken="":(r.partitionToken=[],t.bytes!==Array&&(r.partitionToken=d.newBuffer(r.partitionToken))),r.requestOptions=null,r.directedReadOptions=null,r.dataBoostEnabled=!1,r.orderBy=t.enums===String?"ORDER_BY_UNSPECIFIED":0,r.lockHint=t.enums===String?"LOCK_HINT_UNSPECIFIED":0,r.routingHint=null),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(r.session=e.session),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(r.transaction=g.google.spanner.v1.TransactionSelector.toObject(e.transaction,t,n+1)),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(r.table=e.table),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&(r.index=e.index),e.columns&&e.columns.length){r.columns=[];for(var i=0;i<e.columns.length;++i)r.columns[i]=e.columns[i]}return null!=e.keySet&&Object.hasOwnProperty.call(e,"keySet")&&(r.keySet=g.google.spanner.v1.KeySet.toObject(e.keySet,t,n+1)),null!=e.limit&&Object.hasOwnProperty.call(e,"limit")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.limit="number"==typeof e.limit?BigInt(e.limit):d.Long.fromBits(e.limit.low>>>0,e.limit.high>>>0,!1).toBigInt():"number"==typeof e.limit?r.limit=t.longs===String?String(e.limit):e.limit:r.limit=t.longs===String?d.Long.prototype.toString.call(e.limit):t.longs===Number?new d.LongBits(e.limit.low>>>0,e.limit.high>>>0).toNumber():e.limit),null!=e.resumeToken&&Object.hasOwnProperty.call(e,"resumeToken")&&(r.resumeToken=t.bytes===String?d.base64.encode(e.resumeToken,0,e.resumeToken.length):t.bytes===Array?Array.prototype.slice.call(e.resumeToken):e.resumeToken),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&(r.partitionToken=t.bytes===String?d.base64.encode(e.partitionToken,0,e.partitionToken.length):t.bytes===Array?Array.prototype.slice.call(e.partitionToken):e.partitionToken),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(r.requestOptions=g.google.spanner.v1.RequestOptions.toObject(e.requestOptions,t,n+1)),null!=e.directedReadOptions&&Object.hasOwnProperty.call(e,"directedReadOptions")&&(r.directedReadOptions=g.google.spanner.v1.DirectedReadOptions.toObject(e.directedReadOptions,t,n+1)),null!=e.dataBoostEnabled&&Object.hasOwnProperty.call(e,"dataBoostEnabled")&&(r.dataBoostEnabled=e.dataBoostEnabled),null!=e.orderBy&&Object.hasOwnProperty.call(e,"orderBy")&&(r.orderBy=t.enums!==String||void 0===g.google.spanner.v1.ReadRequest.OrderBy[e.orderBy]?e.orderBy:g.google.spanner.v1.ReadRequest.OrderBy[e.orderBy]),null!=e.lockHint&&Object.hasOwnProperty.call(e,"lockHint")&&(r.lockHint=t.enums!==String||void 0===g.google.spanner.v1.ReadRequest.LockHint[e.lockHint]?e.lockHint:g.google.spanner.v1.ReadRequest.LockHint[e.lockHint]),null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&(r.routingHint=g.google.spanner.v1.RoutingHint.toObject(e.routingHint,t,n+1)),r},S.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},S.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ReadRequest"},S.OrderBy=(t={},(a=Object.create(t))[t[0]="ORDER_BY_UNSPECIFIED"]=0,a[t[1]="ORDER_BY_PRIMARY_KEY"]=1,a[t[2]="ORDER_BY_NO_ORDER"]=2,a),S.LockHint=(t={},(a=Object.create(t))[t[0]="LOCK_HINT_UNSPECIFIED"]=0,a[t[1]="LOCK_HINT_SHARED"]=1,a[t[2]="LOCK_HINT_EXCLUSIVE"]=2,a),S),r.BeginTransactionRequest=(jo.prototype.session="",jo.prototype.options=null,jo.prototype.requestOptions=null,jo.prototype.mutationKey=null,jo.prototype.routingHint=null,jo.create=function(e){return new jo(e)},jo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.session&&Object.hasOwnProperty.call(e,"session")&&t.uint32(10).string(e.session),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.spanner.v1.TransactionOptions.encode(e.options,t.uint32(18).fork(),n+1).ldelim(),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&g.google.spanner.v1.RequestOptions.encode(e.requestOptions,t.uint32(26).fork(),n+1).ldelim(),null!=e.mutationKey&&Object.hasOwnProperty.call(e,"mutationKey")&&g.google.spanner.v1.Mutation.encode(e.mutationKey,t.uint32(34).fork(),n+1).ldelim(),null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&g.google.spanner.v1.RoutingHint.encode(e.routingHint,t.uint32(42).fork(),n+1).ldelim(),t},jo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},jo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.BeginTransactionRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.session=e.string();break;case 2:i.options=g.google.spanner.v1.TransactionOptions.decode(e,e.uint32(),void 0,o+1);break;case 3:i.requestOptions=g.google.spanner.v1.RequestOptions.decode(e,e.uint32(),void 0,o+1);break;case 4:i.mutationKey=g.google.spanner.v1.Mutation.decode(e,e.uint32(),void 0,o+1);break;case 5:i.routingHint=g.google.spanner.v1.RoutingHint.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},jo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},jo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&!d.isString(e.session))return"session: string expected";var n;if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(n=g.google.spanner.v1.TransactionOptions.verify(e.options,t+1)))return"options."+n;if(null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(n=g.google.spanner.v1.RequestOptions.verify(e.requestOptions,t+1)))return"requestOptions."+n;if(null!=e.mutationKey&&Object.hasOwnProperty.call(e,"mutationKey")&&(n=g.google.spanner.v1.Mutation.verify(e.mutationKey,t+1)))return"mutationKey."+n;if(null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&(n=g.google.spanner.v1.RoutingHint.verify(e.routingHint,t+1)))return"routingHint."+n;return null},jo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.BeginTransactionRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.BeginTransactionRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.BeginTransactionRequest;if(null!=e.session&&(n.session=String(e.session)),null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.spanner.v1.BeginTransactionRequest.options: object expected");n.options=g.google.spanner.v1.TransactionOptions.fromObject(e.options,t+1)}if(null!=e.requestOptions){if(!d.isObject(e.requestOptions))throw TypeError(".google.spanner.v1.BeginTransactionRequest.requestOptions: object expected");n.requestOptions=g.google.spanner.v1.RequestOptions.fromObject(e.requestOptions,t+1)}if(null!=e.mutationKey){if(!d.isObject(e.mutationKey))throw TypeError(".google.spanner.v1.BeginTransactionRequest.mutationKey: object expected");n.mutationKey=g.google.spanner.v1.Mutation.fromObject(e.mutationKey,t+1)}if(null!=e.routingHint){if(!d.isObject(e.routingHint))throw TypeError(".google.spanner.v1.BeginTransactionRequest.routingHint: object expected");n.routingHint=g.google.spanner.v1.RoutingHint.fromObject(e.routingHint,t+1)}return n},jo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.session="",o.options=null,o.requestOptions=null,o.mutationKey=null,o.routingHint=null),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(o.session=e.session),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.spanner.v1.TransactionOptions.toObject(e.options,t,n+1)),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(o.requestOptions=g.google.spanner.v1.RequestOptions.toObject(e.requestOptions,t,n+1)),null!=e.mutationKey&&Object.hasOwnProperty.call(e,"mutationKey")&&(o.mutationKey=g.google.spanner.v1.Mutation.toObject(e.mutationKey,t,n+1)),null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&(o.routingHint=g.google.spanner.v1.RoutingHint.toObject(e.routingHint,t,n+1)),o},jo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},jo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.BeginTransactionRequest"},jo),r.CommitRequest=(xo.prototype.session="",xo.prototype.transactionId=null,xo.prototype.singleUseTransaction=null,xo.prototype.mutations=d.emptyArray,xo.prototype.returnCommitStats=!1,xo.prototype.maxCommitDelay=null,xo.prototype.requestOptions=null,xo.prototype.precommitToken=null,xo.prototype.routingHint=null,Object.defineProperty(xo.prototype,"transaction",{get:d.oneOfGetter(t=["transactionId","singleUseTransaction"]),set:d.oneOfSetter(t)}),xo.create=function(e){return new xo(e)},xo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&t.uint32(10).string(e.session),null!=e.transactionId&&Object.hasOwnProperty.call(e,"transactionId")&&t.uint32(18).bytes(e.transactionId),null!=e.singleUseTransaction&&Object.hasOwnProperty.call(e,"singleUseTransaction")&&g.google.spanner.v1.TransactionOptions.encode(e.singleUseTransaction,t.uint32(26).fork(),n+1).ldelim(),null!=e.mutations&&e.mutations.length)for(var o=0;o<e.mutations.length;++o)g.google.spanner.v1.Mutation.encode(e.mutations[o],t.uint32(34).fork(),n+1).ldelim();return null!=e.returnCommitStats&&Object.hasOwnProperty.call(e,"returnCommitStats")&&t.uint32(40).bool(e.returnCommitStats),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&g.google.spanner.v1.RequestOptions.encode(e.requestOptions,t.uint32(50).fork(),n+1).ldelim(),null!=e.maxCommitDelay&&Object.hasOwnProperty.call(e,"maxCommitDelay")&&g.google.protobuf.Duration.encode(e.maxCommitDelay,t.uint32(66).fork(),n+1).ldelim(),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&g.google.spanner.v1.MultiplexedSessionPrecommitToken.encode(e.precommitToken,t.uint32(74).fork(),n+1).ldelim(),null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&g.google.spanner.v1.RoutingHint.encode(e.routingHint,t.uint32(82).fork(),n+1).ldelim(),t},xo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},xo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.CommitRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.session=e.string();break;case 2:i.transactionId=e.bytes();break;case 3:i.singleUseTransaction=g.google.spanner.v1.TransactionOptions.decode(e,e.uint32(),void 0,o+1);break;case 4:i.mutations&&i.mutations.length||(i.mutations=[]),i.mutations.push(g.google.spanner.v1.Mutation.decode(e,e.uint32(),void 0,o+1));break;case 5:i.returnCommitStats=e.bool();break;case 8:i.maxCommitDelay=g.google.protobuf.Duration.decode(e,e.uint32(),void 0,o+1);break;case 6:i.requestOptions=g.google.spanner.v1.RequestOptions.decode(e,e.uint32(),void 0,o+1);break;case 9:i.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.decode(e,e.uint32(),void 0,o+1);break;case 10:i.routingHint=g.google.spanner.v1.RoutingHint.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},xo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},xo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n={};if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&!d.isString(e.session))return"session: string expected";if(null!=e.transactionId&&Object.hasOwnProperty.call(e,"transactionId")&&(n.transaction=1,!(e.transactionId&&"number"==typeof e.transactionId.length||d.isString(e.transactionId))))return"transactionId: buffer expected";if(null!=e.singleUseTransaction&&Object.hasOwnProperty.call(e,"singleUseTransaction")){if(1===n.transaction)return"transaction: multiple values";if(o=g.google.spanner.v1.TransactionOptions.verify(e.singleUseTransaction,t+(n.transaction=1)))return"singleUseTransaction."+o}if(null!=e.mutations&&Object.hasOwnProperty.call(e,"mutations")){if(!Array.isArray(e.mutations))return"mutations: array expected";for(var o,r=0;r<e.mutations.length;++r)if(o=g.google.spanner.v1.Mutation.verify(e.mutations[r],t+1))return"mutations."+o}if(null!=e.returnCommitStats&&Object.hasOwnProperty.call(e,"returnCommitStats")&&"boolean"!=typeof e.returnCommitStats)return"returnCommitStats: boolean expected";if(null!=e.maxCommitDelay&&Object.hasOwnProperty.call(e,"maxCommitDelay")&&(o=g.google.protobuf.Duration.verify(e.maxCommitDelay,t+1)))return"maxCommitDelay."+o;if(null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(o=g.google.spanner.v1.RequestOptions.verify(e.requestOptions,t+1)))return"requestOptions."+o;if(null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(o=g.google.spanner.v1.MultiplexedSessionPrecommitToken.verify(e.precommitToken,t+1)))return"precommitToken."+o;if(null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&(o=g.google.spanner.v1.RoutingHint.verify(e.routingHint,t+1)))return"routingHint."+o;return null},xo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.CommitRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.CommitRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.CommitRequest;if(null!=e.session&&(n.session=String(e.session)),null!=e.transactionId&&("string"==typeof e.transactionId?d.base64.decode(e.transactionId,n.transactionId=d.newBuffer(d.base64.length(e.transactionId)),0):0<=e.transactionId.length&&(n.transactionId=e.transactionId)),null!=e.singleUseTransaction){if(!d.isObject(e.singleUseTransaction))throw TypeError(".google.spanner.v1.CommitRequest.singleUseTransaction: object expected");n.singleUseTransaction=g.google.spanner.v1.TransactionOptions.fromObject(e.singleUseTransaction,t+1)}if(e.mutations){if(!Array.isArray(e.mutations))throw TypeError(".google.spanner.v1.CommitRequest.mutations: array expected");n.mutations=[];for(var o=0;o<e.mutations.length;++o){if(!d.isObject(e.mutations[o]))throw TypeError(".google.spanner.v1.CommitRequest.mutations: object expected");n.mutations[o]=g.google.spanner.v1.Mutation.fromObject(e.mutations[o],t+1)}}if(null!=e.returnCommitStats&&(n.returnCommitStats=Boolean(e.returnCommitStats)),null!=e.maxCommitDelay){if(!d.isObject(e.maxCommitDelay))throw TypeError(".google.spanner.v1.CommitRequest.maxCommitDelay: object expected");n.maxCommitDelay=g.google.protobuf.Duration.fromObject(e.maxCommitDelay,t+1)}if(null!=e.requestOptions){if(!d.isObject(e.requestOptions))throw TypeError(".google.spanner.v1.CommitRequest.requestOptions: object expected");n.requestOptions=g.google.spanner.v1.RequestOptions.fromObject(e.requestOptions,t+1)}if(null!=e.precommitToken){if(!d.isObject(e.precommitToken))throw TypeError(".google.spanner.v1.CommitRequest.precommitToken: object expected");n.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.fromObject(e.precommitToken,t+1)}if(null!=e.routingHint){if(!d.isObject(e.routingHint))throw TypeError(".google.spanner.v1.CommitRequest.routingHint: object expected");n.routingHint=g.google.spanner.v1.RoutingHint.fromObject(e.routingHint,t+1)}return n},xo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.mutations=[]),t.defaults&&(o.session="",o.returnCommitStats=!1,o.requestOptions=null,o.maxCommitDelay=null,o.precommitToken=null,o.routingHint=null),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(o.session=e.session),null!=e.transactionId&&Object.hasOwnProperty.call(e,"transactionId")&&(o.transactionId=t.bytes===String?d.base64.encode(e.transactionId,0,e.transactionId.length):t.bytes===Array?Array.prototype.slice.call(e.transactionId):e.transactionId,t.oneofs)&&(o.transaction="transactionId"),null!=e.singleUseTransaction&&Object.hasOwnProperty.call(e,"singleUseTransaction")&&(o.singleUseTransaction=g.google.spanner.v1.TransactionOptions.toObject(e.singleUseTransaction,t,n+1),t.oneofs)&&(o.transaction="singleUseTransaction"),e.mutations&&e.mutations.length){o.mutations=[];for(var r=0;r<e.mutations.length;++r)o.mutations[r]=g.google.spanner.v1.Mutation.toObject(e.mutations[r],t,n+1)}return null!=e.returnCommitStats&&Object.hasOwnProperty.call(e,"returnCommitStats")&&(o.returnCommitStats=e.returnCommitStats),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(o.requestOptions=g.google.spanner.v1.RequestOptions.toObject(e.requestOptions,t,n+1)),null!=e.maxCommitDelay&&Object.hasOwnProperty.call(e,"maxCommitDelay")&&(o.maxCommitDelay=g.google.protobuf.Duration.toObject(e.maxCommitDelay,t,n+1)),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(o.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.toObject(e.precommitToken,t,n+1)),null!=e.routingHint&&Object.hasOwnProperty.call(e,"routingHint")&&(o.routingHint=g.google.spanner.v1.RoutingHint.toObject(e.routingHint,t,n+1)),o},xo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},xo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.CommitRequest"},xo),r.RollbackRequest=(wo.prototype.session="",wo.prototype.transactionId=d.newBuffer([]),wo.create=function(e){return new wo(e)},wo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.session&&Object.hasOwnProperty.call(e,"session")&&t.uint32(10).string(e.session),null!=e.transactionId&&Object.hasOwnProperty.call(e,"transactionId")&&t.uint32(18).bytes(e.transactionId),t},wo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},wo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.RollbackRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.session=e.string();break;case 2:i.transactionId=e.bytes();break;default:e.skipType(7&a,o)}}return i},wo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},wo.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.session&&Object.hasOwnProperty.call(e,"session")&&!d.isString(e.session)?"session: string expected":null!=e.transactionId&&Object.hasOwnProperty.call(e,"transactionId")&&!(e.transactionId&&"number"==typeof e.transactionId.length||d.isString(e.transactionId))?"transactionId: buffer expected":null},wo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.RollbackRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.RollbackRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.RollbackRequest;return null!=e.session&&(t.session=String(e.session)),null!=e.transactionId&&("string"==typeof e.transactionId?d.base64.decode(e.transactionId,t.transactionId=d.newBuffer(d.base64.length(e.transactionId)),0):0<=e.transactionId.length&&(t.transactionId=e.transactionId)),t},wo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.session="",t.bytes===String?n.transactionId="":(n.transactionId=[],t.bytes!==Array&&(n.transactionId=d.newBuffer(n.transactionId)))),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(n.session=e.session),null!=e.transactionId&&Object.hasOwnProperty.call(e,"transactionId")&&(n.transactionId=t.bytes===String?d.base64.encode(e.transactionId,0,e.transactionId.length):t.bytes===Array?Array.prototype.slice.call(e.transactionId):e.transactionId),n},wo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},wo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.RollbackRequest"},wo),r.BatchWriteRequest=(To.prototype.session="",To.prototype.requestOptions=null,To.prototype.mutationGroups=d.emptyArray,To.prototype.excludeTxnFromChangeStreams=!1,To.create=function(e){return new To(e)},To.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&t.uint32(10).string(e.session),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&g.google.spanner.v1.RequestOptions.encode(e.requestOptions,t.uint32(26).fork(),n+1).ldelim(),null!=e.mutationGroups&&e.mutationGroups.length)for(var o=0;o<e.mutationGroups.length;++o)g.google.spanner.v1.BatchWriteRequest.MutationGroup.encode(e.mutationGroups[o],t.uint32(34).fork(),n+1).ldelim();return null!=e.excludeTxnFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeTxnFromChangeStreams")&&t.uint32(40).bool(e.excludeTxnFromChangeStreams),t},To.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},To.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.BatchWriteRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.session=e.string();break;case 3:i.requestOptions=g.google.spanner.v1.RequestOptions.decode(e,e.uint32(),void 0,o+1);break;case 4:i.mutationGroups&&i.mutationGroups.length||(i.mutationGroups=[]),i.mutationGroups.push(g.google.spanner.v1.BatchWriteRequest.MutationGroup.decode(e,e.uint32(),void 0,o+1));break;case 5:i.excludeTxnFromChangeStreams=e.bool();break;default:e.skipType(7&a,o)}}return i},To.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},To.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.session&&Object.hasOwnProperty.call(e,"session")&&!d.isString(e.session))return"session: string expected";if(null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(n=g.google.spanner.v1.RequestOptions.verify(e.requestOptions,t+1)))return"requestOptions."+n;if(null!=e.mutationGroups&&Object.hasOwnProperty.call(e,"mutationGroups")){if(!Array.isArray(e.mutationGroups))return"mutationGroups: array expected";for(var n,o=0;o<e.mutationGroups.length;++o)if(n=g.google.spanner.v1.BatchWriteRequest.MutationGroup.verify(e.mutationGroups[o],t+1))return"mutationGroups."+n}return null!=e.excludeTxnFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeTxnFromChangeStreams")&&"boolean"!=typeof e.excludeTxnFromChangeStreams?"excludeTxnFromChangeStreams: boolean expected":null},To.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.BatchWriteRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.BatchWriteRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.BatchWriteRequest;if(null!=e.session&&(n.session=String(e.session)),null!=e.requestOptions){if(!d.isObject(e.requestOptions))throw TypeError(".google.spanner.v1.BatchWriteRequest.requestOptions: object expected");n.requestOptions=g.google.spanner.v1.RequestOptions.fromObject(e.requestOptions,t+1)}if(e.mutationGroups){if(!Array.isArray(e.mutationGroups))throw TypeError(".google.spanner.v1.BatchWriteRequest.mutationGroups: array expected");n.mutationGroups=[];for(var o=0;o<e.mutationGroups.length;++o){if(!d.isObject(e.mutationGroups[o]))throw TypeError(".google.spanner.v1.BatchWriteRequest.mutationGroups: object expected");n.mutationGroups[o]=g.google.spanner.v1.BatchWriteRequest.MutationGroup.fromObject(e.mutationGroups[o],t+1)}}return null!=e.excludeTxnFromChangeStreams&&(n.excludeTxnFromChangeStreams=Boolean(e.excludeTxnFromChangeStreams)),n},To.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.mutationGroups=[]),t.defaults&&(o.session="",o.requestOptions=null,o.excludeTxnFromChangeStreams=!1),null!=e.session&&Object.hasOwnProperty.call(e,"session")&&(o.session=e.session),null!=e.requestOptions&&Object.hasOwnProperty.call(e,"requestOptions")&&(o.requestOptions=g.google.spanner.v1.RequestOptions.toObject(e.requestOptions,t,n+1)),e.mutationGroups&&e.mutationGroups.length){o.mutationGroups=[];for(var r=0;r<e.mutationGroups.length;++r)o.mutationGroups[r]=g.google.spanner.v1.BatchWriteRequest.MutationGroup.toObject(e.mutationGroups[r],t,n+1)}return null!=e.excludeTxnFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeTxnFromChangeStreams")&&(o.excludeTxnFromChangeStreams=e.excludeTxnFromChangeStreams),o},To.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},To.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.BatchWriteRequest"},To.MutationGroup=(ko.prototype.mutations=d.emptyArray,ko.create=function(e){return new ko(e)},ko.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.mutations&&e.mutations.length)for(var o=0;o<e.mutations.length;++o)g.google.spanner.v1.Mutation.encode(e.mutations[o],t.uint32(10).fork(),n+1).ldelim();return t},ko.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ko.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.BatchWriteRequest.MutationGroup;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.mutations&&i.mutations.length||(i.mutations=[]),i.mutations.push(g.google.spanner.v1.Mutation.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},ko.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ko.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.mutations&&Object.hasOwnProperty.call(e,"mutations")){if(!Array.isArray(e.mutations))return"mutations: array expected";for(var n=0;n<e.mutations.length;++n){var o=g.google.spanner.v1.Mutation.verify(e.mutations[n],t+1);if(o)return"mutations."+o}}return null},ko.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.BatchWriteRequest.MutationGroup)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.BatchWriteRequest.MutationGroup: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.BatchWriteRequest.MutationGroup;if(e.mutations){if(!Array.isArray(e.mutations))throw TypeError(".google.spanner.v1.BatchWriteRequest.MutationGroup.mutations: array expected");n.mutations=[];for(var o=0;o<e.mutations.length;++o){if(!d.isObject(e.mutations[o]))throw TypeError(".google.spanner.v1.BatchWriteRequest.MutationGroup.mutations: object expected");n.mutations[o]=g.google.spanner.v1.Mutation.fromObject(e.mutations[o],t+1)}}return n},ko.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.mutations=[]),e.mutations&&e.mutations.length){o.mutations=[];for(var r=0;r<e.mutations.length;++r)o.mutations[r]=g.google.spanner.v1.Mutation.toObject(e.mutations[r],t,n+1)}return o},ko.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ko.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.BatchWriteRequest.MutationGroup"},ko),To),r.BatchWriteResponse=(Po.prototype.indexes=d.emptyArray,Po.prototype.status=null,Po.prototype.commitTimestamp=null,Po.create=function(e){return new Po(e)},Po.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.indexes&&e.indexes.length){t.uint32(10).fork();for(var o=0;o<e.indexes.length;++o)t.int32(e.indexes[o]);t.ldelim()}return null!=e.status&&Object.hasOwnProperty.call(e,"status")&&g.google.rpc.Status.encode(e.status,t.uint32(18).fork(),n+1).ldelim(),null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&g.google.protobuf.Timestamp.encode(e.commitTimestamp,t.uint32(26).fork(),n+1).ldelim(),t},Po.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Po.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.BatchWriteResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:if(i.indexes&&i.indexes.length||(i.indexes=[]),2==(7&a))for(var s=e.uint32()+e.pos;e.pos<s;)i.indexes.push(e.int32());else i.indexes.push(e.int32());break;case 2:i.status=g.google.rpc.Status.decode(e,e.uint32(),void 0,o+1);break;case 3:i.commitTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Po.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Po.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.indexes&&Object.hasOwnProperty.call(e,"indexes")){if(!Array.isArray(e.indexes))return"indexes: array expected";for(var n=0;n<e.indexes.length;++n)if(!d.isInteger(e.indexes[n]))return"indexes: integer[] expected"}var o;if(null!=e.status&&Object.hasOwnProperty.call(e,"status")&&(o=g.google.rpc.Status.verify(e.status,t+1)))return"status."+o;if(null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&(o=g.google.protobuf.Timestamp.verify(e.commitTimestamp,t+1)))return"commitTimestamp."+o;return null},Po.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.BatchWriteResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.BatchWriteResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.BatchWriteResponse;if(e.indexes){if(!Array.isArray(e.indexes))throw TypeError(".google.spanner.v1.BatchWriteResponse.indexes: array expected");n.indexes=[];for(var o=0;o<e.indexes.length;++o)n.indexes[o]=0|e.indexes[o]}if(null!=e.status){if(!d.isObject(e.status))throw TypeError(".google.spanner.v1.BatchWriteResponse.status: object expected");n.status=g.google.rpc.Status.fromObject(e.status,t+1)}if(null!=e.commitTimestamp){if(!d.isObject(e.commitTimestamp))throw TypeError(".google.spanner.v1.BatchWriteResponse.commitTimestamp: object expected");n.commitTimestamp=g.google.protobuf.Timestamp.fromObject(e.commitTimestamp,t+1)}return n},Po.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.indexes=[]),t.defaults&&(o.status=null,o.commitTimestamp=null),e.indexes&&e.indexes.length){o.indexes=[];for(var r=0;r<e.indexes.length;++r)o.indexes[r]=e.indexes[r]}return null!=e.status&&Object.hasOwnProperty.call(e,"status")&&(o.status=g.google.rpc.Status.toObject(e.status,t,n+1)),null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&(o.commitTimestamp=g.google.protobuf.Timestamp.toObject(e.commitTimestamp,t,n+1)),o},Po.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Po.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.BatchWriteResponse"},Po),r.FetchCacheUpdateRequest=(So.prototype.database="",So.prototype.maxRecipeCount=0,So.prototype.maxRangeCount=0,So.create=function(e){return new So(e)},So.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.database&&Object.hasOwnProperty.call(e,"database")&&t.uint32(10).string(e.database),null!=e.maxRecipeCount&&Object.hasOwnProperty.call(e,"maxRecipeCount")&&t.uint32(16).int32(e.maxRecipeCount),null!=e.maxRangeCount&&Object.hasOwnProperty.call(e,"maxRangeCount")&&t.uint32(24).int32(e.maxRangeCount),t},So.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},So.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.FetchCacheUpdateRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.database=e.string();break;case 2:i.maxRecipeCount=e.int32();break;case 3:i.maxRangeCount=e.int32();break;default:e.skipType(7&a,o)}}return i},So.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},So.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.database&&Object.hasOwnProperty.call(e,"database")&&!d.isString(e.database)?"database: string expected":null!=e.maxRecipeCount&&Object.hasOwnProperty.call(e,"maxRecipeCount")&&!d.isInteger(e.maxRecipeCount)?"maxRecipeCount: integer expected":null!=e.maxRangeCount&&Object.hasOwnProperty.call(e,"maxRangeCount")&&!d.isInteger(e.maxRangeCount)?"maxRangeCount: integer expected":null},So.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.FetchCacheUpdateRequest)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.FetchCacheUpdateRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.FetchCacheUpdateRequest;return null!=e.database&&(t.database=String(e.database)),null!=e.maxRecipeCount&&(t.maxRecipeCount=0|e.maxRecipeCount),null!=e.maxRangeCount&&(t.maxRangeCount=0|e.maxRangeCount),t},So.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.database="",n.maxRecipeCount=0,n.maxRangeCount=0),null!=e.database&&Object.hasOwnProperty.call(e,"database")&&(n.database=e.database),null!=e.maxRecipeCount&&Object.hasOwnProperty.call(e,"maxRecipeCount")&&(n.maxRecipeCount=e.maxRecipeCount),null!=e.maxRangeCount&&Object.hasOwnProperty.call(e,"maxRangeCount")&&(n.maxRangeCount=e.maxRangeCount),n},So.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},So.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.FetchCacheUpdateRequest"},So),r.CommitResponse=(Io.prototype.commitTimestamp=null,Io.prototype.commitStats=null,Io.prototype.precommitToken=null,Io.prototype.snapshotTimestamp=null,Io.prototype.cacheUpdate=null,Io.prototype.isolationLevel=0,Io.prototype.readLockMode=0,Object.defineProperty(Io.prototype,"MultiplexedSessionRetry",{get:d.oneOfGetter(a=["precommitToken"]),set:d.oneOfSetter(a)}),Io.create=function(e){return new Io(e)},Io.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&g.google.protobuf.Timestamp.encode(e.commitTimestamp,t.uint32(10).fork(),n+1).ldelim(),null!=e.commitStats&&Object.hasOwnProperty.call(e,"commitStats")&&g.google.spanner.v1.CommitResponse.CommitStats.encode(e.commitStats,t.uint32(18).fork(),n+1).ldelim(),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&g.google.spanner.v1.MultiplexedSessionPrecommitToken.encode(e.precommitToken,t.uint32(34).fork(),n+1).ldelim(),null!=e.snapshotTimestamp&&Object.hasOwnProperty.call(e,"snapshotTimestamp")&&g.google.protobuf.Timestamp.encode(e.snapshotTimestamp,t.uint32(42).fork(),n+1).ldelim(),null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&g.google.spanner.v1.CacheUpdate.encode(e.cacheUpdate,t.uint32(50).fork(),n+1).ldelim(),null!=e.isolationLevel&&Object.hasOwnProperty.call(e,"isolationLevel")&&t.uint32(56).int32(e.isolationLevel),null!=e.readLockMode&&Object.hasOwnProperty.call(e,"readLockMode")&&t.uint32(64).int32(e.readLockMode),t},Io.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Io.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.CommitResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.commitTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.commitStats=g.google.spanner.v1.CommitResponse.CommitStats.decode(e,e.uint32(),void 0,o+1);break;case 4:i.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.decode(e,e.uint32(),void 0,o+1);break;case 5:i.snapshotTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 6:i.cacheUpdate=g.google.spanner.v1.CacheUpdate.decode(e,e.uint32(),void 0,o+1);break;case 7:i.isolationLevel=e.int32();break;case 8:i.readLockMode=e.int32();break;default:e.skipType(7&a,o)}}return i},Io.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Io.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&(n=g.google.protobuf.Timestamp.verify(e.commitTimestamp,t+1)))return"commitTimestamp."+n;if(null!=e.commitStats&&Object.hasOwnProperty.call(e,"commitStats")&&(n=g.google.spanner.v1.CommitResponse.CommitStats.verify(e.commitStats,t+1)))return"commitStats."+n;if(null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(n=g.google.spanner.v1.MultiplexedSessionPrecommitToken.verify(e.precommitToken,t+1)))return"precommitToken."+n;if(null!=e.snapshotTimestamp&&Object.hasOwnProperty.call(e,"snapshotTimestamp")&&(n=g.google.protobuf.Timestamp.verify(e.snapshotTimestamp,t+1)))return"snapshotTimestamp."+n;if(null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&(n=g.google.spanner.v1.CacheUpdate.verify(e.cacheUpdate,t+1)))return"cacheUpdate."+n;if(null!=e.isolationLevel&&Object.hasOwnProperty.call(e,"isolationLevel"))switch(e.isolationLevel){default:return"isolationLevel: enum value expected";case 0:case 1:case 2:}if(null!=e.readLockMode&&Object.hasOwnProperty.call(e,"readLockMode"))switch(e.readLockMode){default:return"readLockMode: enum value expected";case 0:case 1:case 2:}return null},Io.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.CommitResponse)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.CommitResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.CommitResponse;if(null!=e.commitTimestamp){if(!d.isObject(e.commitTimestamp))throw TypeError(".google.spanner.v1.CommitResponse.commitTimestamp: object expected");n.commitTimestamp=g.google.protobuf.Timestamp.fromObject(e.commitTimestamp,t+1)}if(null!=e.commitStats){if(!d.isObject(e.commitStats))throw TypeError(".google.spanner.v1.CommitResponse.commitStats: object expected");n.commitStats=g.google.spanner.v1.CommitResponse.CommitStats.fromObject(e.commitStats,t+1)}if(null!=e.precommitToken){if(!d.isObject(e.precommitToken))throw TypeError(".google.spanner.v1.CommitResponse.precommitToken: object expected");n.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.fromObject(e.precommitToken,t+1)}if(null!=e.snapshotTimestamp){if(!d.isObject(e.snapshotTimestamp))throw TypeError(".google.spanner.v1.CommitResponse.snapshotTimestamp: object expected");n.snapshotTimestamp=g.google.protobuf.Timestamp.fromObject(e.snapshotTimestamp,t+1)}if(null!=e.cacheUpdate){if(!d.isObject(e.cacheUpdate))throw TypeError(".google.spanner.v1.CommitResponse.cacheUpdate: object expected");n.cacheUpdate=g.google.spanner.v1.CacheUpdate.fromObject(e.cacheUpdate,t+1)}switch(e.isolationLevel){default:"number"==typeof e.isolationLevel&&(n.isolationLevel=e.isolationLevel);break;case"ISOLATION_LEVEL_UNSPECIFIED":case 0:n.isolationLevel=0;break;case"SERIALIZABLE":case 1:n.isolationLevel=1;break;case"REPEATABLE_READ":case 2:n.isolationLevel=2}switch(e.readLockMode){default:"number"==typeof e.readLockMode&&(n.readLockMode=e.readLockMode);break;case"READ_LOCK_MODE_UNSPECIFIED":case 0:n.readLockMode=0;break;case"PESSIMISTIC":case 1:n.readLockMode=1;break;case"OPTIMISTIC":case 2:n.readLockMode=2}return n},Io.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.commitTimestamp=null,o.commitStats=null,o.snapshotTimestamp=null,o.cacheUpdate=null,o.isolationLevel=t.enums===String?"ISOLATION_LEVEL_UNSPECIFIED":0,o.readLockMode=t.enums===String?"READ_LOCK_MODE_UNSPECIFIED":0),null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&(o.commitTimestamp=g.google.protobuf.Timestamp.toObject(e.commitTimestamp,t,n+1)),null!=e.commitStats&&Object.hasOwnProperty.call(e,"commitStats")&&(o.commitStats=g.google.spanner.v1.CommitResponse.CommitStats.toObject(e.commitStats,t,n+1)),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(o.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.toObject(e.precommitToken,t,n+1),t.oneofs)&&(o.MultiplexedSessionRetry="precommitToken"),null!=e.snapshotTimestamp&&Object.hasOwnProperty.call(e,"snapshotTimestamp")&&(o.snapshotTimestamp=g.google.protobuf.Timestamp.toObject(e.snapshotTimestamp,t,n+1)),null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&(o.cacheUpdate=g.google.spanner.v1.CacheUpdate.toObject(e.cacheUpdate,t,n+1)),null!=e.isolationLevel&&Object.hasOwnProperty.call(e,"isolationLevel")&&(o.isolationLevel=t.enums!==String||void 0===g.google.spanner.v1.TransactionOptions.IsolationLevel[e.isolationLevel]?e.isolationLevel:g.google.spanner.v1.TransactionOptions.IsolationLevel[e.isolationLevel]),null!=e.readLockMode&&Object.hasOwnProperty.call(e,"readLockMode")&&(o.readLockMode=t.enums!==String||void 0===g.google.spanner.v1.TransactionOptions.ReadWrite.ReadLockMode[e.readLockMode]?e.readLockMode:g.google.spanner.v1.TransactionOptions.ReadWrite.ReadLockMode[e.readLockMode]),o},Io.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Io.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.CommitResponse"},Io.CommitStats=(Eo.prototype.mutationCount=d.Long?d.Long.fromBits(0,0,!1):0,Eo.create=function(e){return new Eo(e)},Eo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.mutationCount&&Object.hasOwnProperty.call(e,"mutationCount")&&t.uint32(8).int64(e.mutationCount),t},Eo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Eo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.CommitResponse.CommitStats;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.mutationCount=e.int64():e.skipType(7&a,o)}return i},Eo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Eo.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.mutationCount&&Object.hasOwnProperty.call(e,"mutationCount")&&!(d.isInteger(e.mutationCount)||e.mutationCount&&d.isInteger(e.mutationCount.low)&&d.isInteger(e.mutationCount.high))?"mutationCount: integer|Long expected":null},Eo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.CommitResponse.CommitStats)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.CommitResponse.CommitStats: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.CommitResponse.CommitStats;return null!=e.mutationCount&&(d.Long?t.mutationCount=d.Long.fromValue(e.mutationCount,!1):"string"==typeof e.mutationCount?t.mutationCount=parseInt(e.mutationCount,10):"number"==typeof e.mutationCount?t.mutationCount=e.mutationCount:"object"==typeof e.mutationCount&&(t.mutationCount=new d.LongBits(e.mutationCount.low>>>0,e.mutationCount.high>>>0).toNumber())),t},Eo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,n={};return t.defaults&&(d.Long?(o=new d.Long(0,0,!1),n.mutationCount=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.mutationCount=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0),null!=e.mutationCount&&Object.hasOwnProperty.call(e,"mutationCount")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.mutationCount="number"==typeof e.mutationCount?BigInt(e.mutationCount):d.Long.fromBits(e.mutationCount.low>>>0,e.mutationCount.high>>>0,!1).toBigInt():"number"==typeof e.mutationCount?n.mutationCount=t.longs===String?String(e.mutationCount):e.mutationCount:n.mutationCount=t.longs===String?d.Long.prototype.toString.call(e.mutationCount):t.longs===Number?new d.LongBits(e.mutationCount.low>>>0,e.mutationCount.high>>>0).toNumber():e.mutationCount),n},Eo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Eo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.CommitResponse.CommitStats"},Eo),Io),r.Range=(Co.prototype.startKey=d.newBuffer([]),Co.prototype.limitKey=d.newBuffer([]),Co.prototype.groupUid=d.Long?d.Long.fromBits(0,0,!0):0,Co.prototype.splitId=d.Long?d.Long.fromBits(0,0,!0):0,Co.prototype.generation=d.newBuffer([]),Co.create=function(e){return new Co(e)},Co.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.startKey&&Object.hasOwnProperty.call(e,"startKey")&&t.uint32(10).bytes(e.startKey),null!=e.limitKey&&Object.hasOwnProperty.call(e,"limitKey")&&t.uint32(18).bytes(e.limitKey),null!=e.groupUid&&Object.hasOwnProperty.call(e,"groupUid")&&t.uint32(24).uint64(e.groupUid),null!=e.splitId&&Object.hasOwnProperty.call(e,"splitId")&&t.uint32(32).uint64(e.splitId),null!=e.generation&&Object.hasOwnProperty.call(e,"generation")&&t.uint32(42).bytes(e.generation),t},Co.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Co.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Range;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.startKey=e.bytes();break;case 2:i.limitKey=e.bytes();break;case 3:i.groupUid=e.uint64();break;case 4:i.splitId=e.uint64();break;case 5:i.generation=e.bytes();break;default:e.skipType(7&a,o)}}return i},Co.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Co.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.startKey&&Object.hasOwnProperty.call(e,"startKey")&&!(e.startKey&&"number"==typeof e.startKey.length||d.isString(e.startKey))?"startKey: buffer expected":null!=e.limitKey&&Object.hasOwnProperty.call(e,"limitKey")&&!(e.limitKey&&"number"==typeof e.limitKey.length||d.isString(e.limitKey))?"limitKey: buffer expected":null!=e.groupUid&&Object.hasOwnProperty.call(e,"groupUid")&&!(d.isInteger(e.groupUid)||e.groupUid&&d.isInteger(e.groupUid.low)&&d.isInteger(e.groupUid.high))?"groupUid: integer|Long expected":null!=e.splitId&&Object.hasOwnProperty.call(e,"splitId")&&!(d.isInteger(e.splitId)||e.splitId&&d.isInteger(e.splitId.low)&&d.isInteger(e.splitId.high))?"splitId: integer|Long expected":null!=e.generation&&Object.hasOwnProperty.call(e,"generation")&&!(e.generation&&"number"==typeof e.generation.length||d.isString(e.generation))?"generation: buffer expected":null},Co.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Range)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Range: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.Range;return null!=e.startKey&&("string"==typeof e.startKey?d.base64.decode(e.startKey,t.startKey=d.newBuffer(d.base64.length(e.startKey)),0):0<=e.startKey.length&&(t.startKey=e.startKey)),null!=e.limitKey&&("string"==typeof e.limitKey?d.base64.decode(e.limitKey,t.limitKey=d.newBuffer(d.base64.length(e.limitKey)),0):0<=e.limitKey.length&&(t.limitKey=e.limitKey)),null!=e.groupUid&&(d.Long?t.groupUid=d.Long.fromValue(e.groupUid,!0):"string"==typeof e.groupUid?t.groupUid=parseInt(e.groupUid,10):"number"==typeof e.groupUid?t.groupUid=e.groupUid:"object"==typeof e.groupUid&&(t.groupUid=new d.LongBits(e.groupUid.low>>>0,e.groupUid.high>>>0).toNumber(!0))),null!=e.splitId&&(d.Long?t.splitId=d.Long.fromValue(e.splitId,!0):"string"==typeof e.splitId?t.splitId=parseInt(e.splitId,10):"number"==typeof e.splitId?t.splitId=e.splitId:"object"==typeof e.splitId&&(t.splitId=new d.LongBits(e.splitId.low>>>0,e.splitId.high>>>0).toNumber(!0))),null!=e.generation&&("string"==typeof e.generation?d.base64.decode(e.generation,t.generation=d.newBuffer(d.base64.length(e.generation)),0):0<=e.generation.length&&(t.generation=e.generation)),t},Co.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,n={};return t.defaults&&(t.bytes===String?n.startKey="":(n.startKey=[],t.bytes!==Array&&(n.startKey=d.newBuffer(n.startKey))),t.bytes===String?n.limitKey="":(n.limitKey=[],t.bytes!==Array&&(n.limitKey=d.newBuffer(n.limitKey))),d.Long?(o=new d.Long(0,0,!0),n.groupUid=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.groupUid=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,d.Long?(o=new d.Long(0,0,!0),n.splitId=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.splitId=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,t.bytes===String?n.generation="":(n.generation=[],t.bytes!==Array&&(n.generation=d.newBuffer(n.generation)))),null!=e.startKey&&Object.hasOwnProperty.call(e,"startKey")&&(n.startKey=t.bytes===String?d.base64.encode(e.startKey,0,e.startKey.length):t.bytes===Array?Array.prototype.slice.call(e.startKey):e.startKey),null!=e.limitKey&&Object.hasOwnProperty.call(e,"limitKey")&&(n.limitKey=t.bytes===String?d.base64.encode(e.limitKey,0,e.limitKey.length):t.bytes===Array?Array.prototype.slice.call(e.limitKey):e.limitKey),null!=e.groupUid&&Object.hasOwnProperty.call(e,"groupUid")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.groupUid="number"==typeof e.groupUid?BigInt(e.groupUid):d.Long.fromBits(e.groupUid.low>>>0,e.groupUid.high>>>0,!0).toBigInt():"number"==typeof e.groupUid?n.groupUid=t.longs===String?String(e.groupUid):e.groupUid:n.groupUid=t.longs===String?d.Long.prototype.toString.call(e.groupUid):t.longs===Number?new d.LongBits(e.groupUid.low>>>0,e.groupUid.high>>>0).toNumber(!0):e.groupUid),null!=e.splitId&&Object.hasOwnProperty.call(e,"splitId")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.splitId="number"==typeof e.splitId?BigInt(e.splitId):d.Long.fromBits(e.splitId.low>>>0,e.splitId.high>>>0,!0).toBigInt():"number"==typeof e.splitId?n.splitId=t.longs===String?String(e.splitId):e.splitId:n.splitId=t.longs===String?d.Long.prototype.toString.call(e.splitId):t.longs===Number?new d.LongBits(e.splitId.low>>>0,e.splitId.high>>>0).toNumber(!0):e.splitId),null!=e.generation&&Object.hasOwnProperty.call(e,"generation")&&(n.generation=t.bytes===String?d.base64.encode(e.generation,0,e.generation.length):t.bytes===Array?Array.prototype.slice.call(e.generation):e.generation),n},Co.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Co.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Range"},Co),r.Tablet=(Ro.prototype.tabletUid=d.Long?d.Long.fromBits(0,0,!0):0,Ro.prototype.serverAddress="",Ro.prototype.location="",Ro.prototype.role=0,Ro.prototype.incarnation=d.newBuffer([]),Ro.prototype.distance=0,Ro.prototype.skip=!1,Ro.create=function(e){return new Ro(e)},Ro.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.tabletUid&&Object.hasOwnProperty.call(e,"tabletUid")&&t.uint32(8).uint64(e.tabletUid),null!=e.serverAddress&&Object.hasOwnProperty.call(e,"serverAddress")&&t.uint32(18).string(e.serverAddress),null!=e.location&&Object.hasOwnProperty.call(e,"location")&&t.uint32(26).string(e.location),null!=e.role&&Object.hasOwnProperty.call(e,"role")&&t.uint32(32).int32(e.role),null!=e.incarnation&&Object.hasOwnProperty.call(e,"incarnation")&&t.uint32(42).bytes(e.incarnation),null!=e.distance&&Object.hasOwnProperty.call(e,"distance")&&t.uint32(48).uint32(e.distance),null!=e.skip&&Object.hasOwnProperty.call(e,"skip")&&t.uint32(56).bool(e.skip),t},Ro.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ro.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Tablet;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.tabletUid=e.uint64();break;case 2:i.serverAddress=e.string();break;case 3:i.location=e.string();break;case 4:i.role=e.int32();break;case 5:i.incarnation=e.bytes();break;case 6:i.distance=e.uint32();break;case 7:i.skip=e.bool();break;default:e.skipType(7&a,o)}}return i},Ro.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ro.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.tabletUid&&Object.hasOwnProperty.call(e,"tabletUid")&&!(d.isInteger(e.tabletUid)||e.tabletUid&&d.isInteger(e.tabletUid.low)&&d.isInteger(e.tabletUid.high)))return"tabletUid: integer|Long expected";if(null!=e.serverAddress&&Object.hasOwnProperty.call(e,"serverAddress")&&!d.isString(e.serverAddress))return"serverAddress: string expected";if(null!=e.location&&Object.hasOwnProperty.call(e,"location")&&!d.isString(e.location))return"location: string expected";if(null!=e.role&&Object.hasOwnProperty.call(e,"role"))switch(e.role){default:return"role: enum value expected";case 0:case 1:case 2:}return null!=e.incarnation&&Object.hasOwnProperty.call(e,"incarnation")&&!(e.incarnation&&"number"==typeof e.incarnation.length||d.isString(e.incarnation))?"incarnation: buffer expected":null!=e.distance&&Object.hasOwnProperty.call(e,"distance")&&!d.isInteger(e.distance)?"distance: integer expected":null!=e.skip&&Object.hasOwnProperty.call(e,"skip")&&"boolean"!=typeof e.skip?"skip: boolean expected":null},Ro.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Tablet)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Tablet: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Tablet;switch(null!=e.tabletUid&&(d.Long?n.tabletUid=d.Long.fromValue(e.tabletUid,!0):"string"==typeof e.tabletUid?n.tabletUid=parseInt(e.tabletUid,10):"number"==typeof e.tabletUid?n.tabletUid=e.tabletUid:"object"==typeof e.tabletUid&&(n.tabletUid=new d.LongBits(e.tabletUid.low>>>0,e.tabletUid.high>>>0).toNumber(!0))),null!=e.serverAddress&&(n.serverAddress=String(e.serverAddress)),null!=e.location&&(n.location=String(e.location)),e.role){default:"number"==typeof e.role&&(n.role=e.role);break;case"ROLE_UNSPECIFIED":case 0:n.role=0;break;case"READ_WRITE":case 1:n.role=1;break;case"READ_ONLY":case 2:n.role=2}return null!=e.incarnation&&("string"==typeof e.incarnation?d.base64.decode(e.incarnation,n.incarnation=d.newBuffer(d.base64.length(e.incarnation)),0):0<=e.incarnation.length&&(n.incarnation=e.incarnation)),null!=e.distance&&(n.distance=e.distance>>>0),null!=e.skip&&(n.skip=Boolean(e.skip)),n},Ro.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,n={};return t.defaults&&(d.Long?(o=new d.Long(0,0,!0),n.tabletUid=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.tabletUid=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,n.serverAddress="",n.location="",n.role=t.enums===String?"ROLE_UNSPECIFIED":0,t.bytes===String?n.incarnation="":(n.incarnation=[],t.bytes!==Array&&(n.incarnation=d.newBuffer(n.incarnation))),n.distance=0,n.skip=!1),null!=e.tabletUid&&Object.hasOwnProperty.call(e,"tabletUid")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.tabletUid="number"==typeof e.tabletUid?BigInt(e.tabletUid):d.Long.fromBits(e.tabletUid.low>>>0,e.tabletUid.high>>>0,!0).toBigInt():"number"==typeof e.tabletUid?n.tabletUid=t.longs===String?String(e.tabletUid):e.tabletUid:n.tabletUid=t.longs===String?d.Long.prototype.toString.call(e.tabletUid):t.longs===Number?new d.LongBits(e.tabletUid.low>>>0,e.tabletUid.high>>>0).toNumber(!0):e.tabletUid),null!=e.serverAddress&&Object.hasOwnProperty.call(e,"serverAddress")&&(n.serverAddress=e.serverAddress),null!=e.location&&Object.hasOwnProperty.call(e,"location")&&(n.location=e.location),null!=e.role&&Object.hasOwnProperty.call(e,"role")&&(n.role=t.enums!==String||void 0===g.google.spanner.v1.Tablet.Role[e.role]?e.role:g.google.spanner.v1.Tablet.Role[e.role]),null!=e.incarnation&&Object.hasOwnProperty.call(e,"incarnation")&&(n.incarnation=t.bytes===String?d.base64.encode(e.incarnation,0,e.incarnation.length):t.bytes===Array?Array.prototype.slice.call(e.incarnation):e.incarnation),null!=e.distance&&Object.hasOwnProperty.call(e,"distance")&&(n.distance=e.distance),null!=e.skip&&Object.hasOwnProperty.call(e,"skip")&&(n.skip=e.skip),n},Ro.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ro.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Tablet"},Ro.Role=(t={},(a=Object.create(t))[t[0]="ROLE_UNSPECIFIED"]=0,a[t[1]="READ_WRITE"]=1,a[t[2]="READ_ONLY"]=2,a),Ro),r.Group=(Do.prototype.groupUid=d.Long?d.Long.fromBits(0,0,!0):0,Do.prototype.tablets=d.emptyArray,Do.prototype.leaderIndex=0,Do.prototype.generation=d.newBuffer([]),Do.create=function(e){return new Do(e)},Do.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.groupUid&&Object.hasOwnProperty.call(e,"groupUid")&&t.uint32(8).uint64(e.groupUid),null!=e.tablets&&e.tablets.length)for(var o=0;o<e.tablets.length;++o)g.google.spanner.v1.Tablet.encode(e.tablets[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.leaderIndex&&Object.hasOwnProperty.call(e,"leaderIndex")&&t.uint32(24).int32(e.leaderIndex),null!=e.generation&&Object.hasOwnProperty.call(e,"generation")&&t.uint32(34).bytes(e.generation),t},Do.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Do.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Group;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.groupUid=e.uint64();break;case 2:i.tablets&&i.tablets.length||(i.tablets=[]),i.tablets.push(g.google.spanner.v1.Tablet.decode(e,e.uint32(),void 0,o+1));break;case 3:i.leaderIndex=e.int32();break;case 4:i.generation=e.bytes();break;default:e.skipType(7&a,o)}}return i},Do.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Do.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.groupUid&&Object.hasOwnProperty.call(e,"groupUid")&&!(d.isInteger(e.groupUid)||e.groupUid&&d.isInteger(e.groupUid.low)&&d.isInteger(e.groupUid.high)))return"groupUid: integer|Long expected";if(null!=e.tablets&&Object.hasOwnProperty.call(e,"tablets")){if(!Array.isArray(e.tablets))return"tablets: array expected";for(var n=0;n<e.tablets.length;++n){var o=g.google.spanner.v1.Tablet.verify(e.tablets[n],t+1);if(o)return"tablets."+o}}return null!=e.leaderIndex&&Object.hasOwnProperty.call(e,"leaderIndex")&&!d.isInteger(e.leaderIndex)?"leaderIndex: integer expected":null!=e.generation&&Object.hasOwnProperty.call(e,"generation")&&!(e.generation&&"number"==typeof e.generation.length||d.isString(e.generation))?"generation: buffer expected":null},Do.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Group)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Group: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Group;if(null!=e.groupUid&&(d.Long?n.groupUid=d.Long.fromValue(e.groupUid,!0):"string"==typeof e.groupUid?n.groupUid=parseInt(e.groupUid,10):"number"==typeof e.groupUid?n.groupUid=e.groupUid:"object"==typeof e.groupUid&&(n.groupUid=new d.LongBits(e.groupUid.low>>>0,e.groupUid.high>>>0).toNumber(!0))),e.tablets){if(!Array.isArray(e.tablets))throw TypeError(".google.spanner.v1.Group.tablets: array expected");n.tablets=[];for(var o=0;o<e.tablets.length;++o){if(!d.isObject(e.tablets[o]))throw TypeError(".google.spanner.v1.Group.tablets: object expected");n.tablets[o]=g.google.spanner.v1.Tablet.fromObject(e.tablets[o],t+1)}}return null!=e.leaderIndex&&(n.leaderIndex=0|e.leaderIndex),null!=e.generation&&("string"==typeof e.generation?d.base64.decode(e.generation,n.generation=d.newBuffer(d.base64.length(e.generation)),0):0<=e.generation.length&&(n.generation=e.generation)),n},Do.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.tablets=[]),t.defaults&&(d.Long?(o=new d.Long(0,0,!0),r.groupUid=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.groupUid=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,r.leaderIndex=0,t.bytes===String?r.generation="":(r.generation=[],t.bytes!==Array&&(r.generation=d.newBuffer(r.generation)))),null!=e.groupUid&&Object.hasOwnProperty.call(e,"groupUid")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.groupUid="number"==typeof e.groupUid?BigInt(e.groupUid):d.Long.fromBits(e.groupUid.low>>>0,e.groupUid.high>>>0,!0).toBigInt():"number"==typeof e.groupUid?r.groupUid=t.longs===String?String(e.groupUid):e.groupUid:r.groupUid=t.longs===String?d.Long.prototype.toString.call(e.groupUid):t.longs===Number?new d.LongBits(e.groupUid.low>>>0,e.groupUid.high>>>0).toNumber(!0):e.groupUid),e.tablets&&e.tablets.length){r.tablets=[];for(var i=0;i<e.tablets.length;++i)r.tablets[i]=g.google.spanner.v1.Tablet.toObject(e.tablets[i],t,n+1)}return null!=e.leaderIndex&&Object.hasOwnProperty.call(e,"leaderIndex")&&(r.leaderIndex=e.leaderIndex),null!=e.generation&&Object.hasOwnProperty.call(e,"generation")&&(r.generation=t.bytes===String?d.base64.encode(e.generation,0,e.generation.length):t.bytes===Array?Array.prototype.slice.call(e.generation):e.generation),r},Do.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Do.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Group"},Do),r.KeyRecipe=(Lo.prototype.tableName=null,Lo.prototype.indexName=null,Lo.prototype.operationUid=null,Lo.prototype.part=d.emptyArray,Object.defineProperty(Lo.prototype,"target",{get:d.oneOfGetter(t=["tableName","indexName","operationUid"]),set:d.oneOfSetter(t)}),Lo.create=function(e){return new Lo(e)},Lo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.tableName&&Object.hasOwnProperty.call(e,"tableName")&&t.uint32(10).string(e.tableName),null!=e.indexName&&Object.hasOwnProperty.call(e,"indexName")&&t.uint32(18).string(e.indexName),null!=e.operationUid&&Object.hasOwnProperty.call(e,"operationUid")&&t.uint32(24).uint64(e.operationUid),null!=e.part&&e.part.length)for(var o=0;o<e.part.length;++o)g.google.spanner.v1.KeyRecipe.Part.encode(e.part[o],t.uint32(34).fork(),n+1).ldelim();return t},Lo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Lo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.KeyRecipe;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.tableName=e.string();break;case 2:i.indexName=e.string();break;case 3:i.operationUid=e.uint64();break;case 4:i.part&&i.part.length||(i.part=[]),i.part.push(g.google.spanner.v1.KeyRecipe.Part.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Lo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Lo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n={};if(null!=e.tableName&&Object.hasOwnProperty.call(e,"tableName")&&(n.target=1,!d.isString(e.tableName)))return"tableName: string expected";if(null!=e.indexName&&Object.hasOwnProperty.call(e,"indexName")){if(1===n.target)return"target: multiple values";if(n.target=1,!d.isString(e.indexName))return"indexName: string expected"}if(null!=e.operationUid&&Object.hasOwnProperty.call(e,"operationUid")){if(1===n.target)return"target: multiple values";if(n.target=1,!(d.isInteger(e.operationUid)||e.operationUid&&d.isInteger(e.operationUid.low)&&d.isInteger(e.operationUid.high)))return"operationUid: integer|Long expected"}if(null!=e.part&&Object.hasOwnProperty.call(e,"part")){if(!Array.isArray(e.part))return"part: array expected";for(var o=0;o<e.part.length;++o){var r=g.google.spanner.v1.KeyRecipe.Part.verify(e.part[o],t+1);if(r)return"part."+r}}return null},Lo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.KeyRecipe)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.KeyRecipe: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.KeyRecipe;if(null!=e.tableName&&(n.tableName=String(e.tableName)),null!=e.indexName&&(n.indexName=String(e.indexName)),null!=e.operationUid&&(d.Long?n.operationUid=d.Long.fromValue(e.operationUid,!0):"string"==typeof e.operationUid?n.operationUid=parseInt(e.operationUid,10):"number"==typeof e.operationUid?n.operationUid=e.operationUid:"object"==typeof e.operationUid&&(n.operationUid=new d.LongBits(e.operationUid.low>>>0,e.operationUid.high>>>0).toNumber(!0))),e.part){if(!Array.isArray(e.part))throw TypeError(".google.spanner.v1.KeyRecipe.part: array expected");n.part=[];for(var o=0;o<e.part.length;++o){if(!d.isObject(e.part[o]))throw TypeError(".google.spanner.v1.KeyRecipe.part: object expected");n.part[o]=g.google.spanner.v1.KeyRecipe.Part.fromObject(e.part[o],t+1)}}return n},Lo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.part=[]),null!=e.tableName&&Object.hasOwnProperty.call(e,"tableName")&&(o.tableName=e.tableName,t.oneofs)&&(o.target="tableName"),null!=e.indexName&&Object.hasOwnProperty.call(e,"indexName")&&(o.indexName=e.indexName,t.oneofs)&&(o.target="indexName"),null!=e.operationUid&&Object.hasOwnProperty.call(e,"operationUid")&&("undefined"!=typeof BigInt&&t.longs===BigInt?o.operationUid="number"==typeof e.operationUid?BigInt(e.operationUid):d.Long.fromBits(e.operationUid.low>>>0,e.operationUid.high>>>0,!0).toBigInt():"number"==typeof e.operationUid?o.operationUid=t.longs===String?String(e.operationUid):e.operationUid:o.operationUid=t.longs===String?d.Long.prototype.toString.call(e.operationUid):t.longs===Number?new d.LongBits(e.operationUid.low>>>0,e.operationUid.high>>>0).toNumber(!0):e.operationUid,t.oneofs)&&(o.target="operationUid"),e.part&&e.part.length){o.part=[];for(var r=0;r<e.part.length;++r)o.part[r]=g.google.spanner.v1.KeyRecipe.Part.toObject(e.part[r],t,n+1)}return o},Lo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Lo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.KeyRecipe"},Lo.Part=(Ao.prototype.tag=0,Ao.prototype.order=0,Ao.prototype.nullOrder=0,Ao.prototype.type=null,Ao.prototype.identifier=null,Ao.prototype.value=null,Ao.prototype.random=null,Ao.prototype.structIdentifiers=d.emptyArray,Object.defineProperty(Ao.prototype,"valueType",{get:d.oneOfGetter(t=["identifier","value","random"]),set:d.oneOfSetter(t)}),Ao.create=function(e){return new Ao(e)},Ao.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.tag&&Object.hasOwnProperty.call(e,"tag")&&t.uint32(8).uint32(e.tag),null!=e.order&&Object.hasOwnProperty.call(e,"order")&&t.uint32(16).int32(e.order),null!=e.nullOrder&&Object.hasOwnProperty.call(e,"nullOrder")&&t.uint32(24).int32(e.nullOrder),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&g.google.spanner.v1.Type.encode(e.type,t.uint32(34).fork(),n+1).ldelim(),null!=e.identifier&&Object.hasOwnProperty.call(e,"identifier")&&t.uint32(42).string(e.identifier),null!=e.value&&Object.hasOwnProperty.call(e,"value")&&g.google.protobuf.Value.encode(e.value,t.uint32(50).fork(),n+1).ldelim(),null!=e.structIdentifiers&&e.structIdentifiers.length){t.uint32(58).fork();for(var o=0;o<e.structIdentifiers.length;++o)t.int32(e.structIdentifiers[o]);t.ldelim()}return null!=e.random&&Object.hasOwnProperty.call(e,"random")&&t.uint32(64).bool(e.random),t},Ao.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ao.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.KeyRecipe.Part;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.tag=e.uint32();break;case 2:i.order=e.int32();break;case 3:i.nullOrder=e.int32();break;case 4:i.type=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;case 5:i.identifier=e.string();break;case 6:i.value=g.google.protobuf.Value.decode(e,e.uint32(),void 0,o+1);break;case 8:i.random=e.bool();break;case 7:if(i.structIdentifiers&&i.structIdentifiers.length||(i.structIdentifiers=[]),2==(7&a))for(var s=e.uint32()+e.pos;e.pos<s;)i.structIdentifiers.push(e.int32());else i.structIdentifiers.push(e.int32());break;default:e.skipType(7&a,o)}}return i},Ao.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ao.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.tag&&Object.hasOwnProperty.call(e,"tag")&&!d.isInteger(e.tag))return"tag: integer expected";if(null!=e.order&&Object.hasOwnProperty.call(e,"order"))switch(e.order){default:return"order: enum value expected";case 0:case 1:case 2:}if(null!=e.nullOrder&&Object.hasOwnProperty.call(e,"nullOrder"))switch(e.nullOrder){default:return"nullOrder: enum value expected";case 0:case 1:case 2:case 3:}if(null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(n=g.google.spanner.v1.Type.verify(e.type,t+1)))return"type."+n;if(null!=e.identifier&&Object.hasOwnProperty.call(e,"identifier")&&(o.valueType=1,!d.isString(e.identifier)))return"identifier: string expected";if(null!=e.value&&Object.hasOwnProperty.call(e,"value")){if(1===o.valueType)return"valueType: multiple values";if(n=g.google.protobuf.Value.verify(e.value,t+(o.valueType=1)))return"value."+n}if(null!=e.random&&Object.hasOwnProperty.call(e,"random")){if(1===o.valueType)return"valueType: multiple values";if(o.valueType=1,"boolean"!=typeof e.random)return"random: boolean expected"}if(null!=e.structIdentifiers&&Object.hasOwnProperty.call(e,"structIdentifiers")){if(!Array.isArray(e.structIdentifiers))return"structIdentifiers: array expected";for(var r=0;r<e.structIdentifiers.length;++r)if(!d.isInteger(e.structIdentifiers[r]))return"structIdentifiers: integer[] expected"}return null},Ao.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.KeyRecipe.Part)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.KeyRecipe.Part: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.KeyRecipe.Part;switch(null!=e.tag&&(n.tag=e.tag>>>0),e.order){default:"number"==typeof e.order&&(n.order=e.order);break;case"ORDER_UNSPECIFIED":case 0:n.order=0;break;case"ASCENDING":case 1:n.order=1;break;case"DESCENDING":case 2:n.order=2}switch(e.nullOrder){default:"number"==typeof e.nullOrder&&(n.nullOrder=e.nullOrder);break;case"NULL_ORDER_UNSPECIFIED":case 0:n.nullOrder=0;break;case"NULLS_FIRST":case 1:n.nullOrder=1;break;case"NULLS_LAST":case 2:n.nullOrder=2;break;case"NOT_NULL":case 3:n.nullOrder=3}if(null!=e.type){if(!d.isObject(e.type))throw TypeError(".google.spanner.v1.KeyRecipe.Part.type: object expected");n.type=g.google.spanner.v1.Type.fromObject(e.type,t+1)}if(null!=e.identifier&&(n.identifier=String(e.identifier)),null!=e.value){if(!d.isObject(e.value))throw TypeError(".google.spanner.v1.KeyRecipe.Part.value: object expected");n.value=g.google.protobuf.Value.fromObject(e.value,t+1)}if(null!=e.random&&(n.random=Boolean(e.random)),e.structIdentifiers){if(!Array.isArray(e.structIdentifiers))throw TypeError(".google.spanner.v1.KeyRecipe.Part.structIdentifiers: array expected");n.structIdentifiers=[];for(var o=0;o<e.structIdentifiers.length;++o)n.structIdentifiers[o]=0|e.structIdentifiers[o]}return n},Ao.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.structIdentifiers=[]),t.defaults&&(o.tag=0,o.order=t.enums===String?"ORDER_UNSPECIFIED":0,o.nullOrder=t.enums===String?"NULL_ORDER_UNSPECIFIED":0,o.type=null),null!=e.tag&&Object.hasOwnProperty.call(e,"tag")&&(o.tag=e.tag),null!=e.order&&Object.hasOwnProperty.call(e,"order")&&(o.order=t.enums!==String||void 0===g.google.spanner.v1.KeyRecipe.Part.Order[e.order]?e.order:g.google.spanner.v1.KeyRecipe.Part.Order[e.order]),null!=e.nullOrder&&Object.hasOwnProperty.call(e,"nullOrder")&&(o.nullOrder=t.enums!==String||void 0===g.google.spanner.v1.KeyRecipe.Part.NullOrder[e.nullOrder]?e.nullOrder:g.google.spanner.v1.KeyRecipe.Part.NullOrder[e.nullOrder]),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(o.type=g.google.spanner.v1.Type.toObject(e.type,t,n+1)),null!=e.identifier&&Object.hasOwnProperty.call(e,"identifier")&&(o.identifier=e.identifier,t.oneofs)&&(o.valueType="identifier"),null!=e.value&&Object.hasOwnProperty.call(e,"value")&&(o.value=g.google.protobuf.Value.toObject(e.value,t,n+1),t.oneofs)&&(o.valueType="value"),e.structIdentifiers&&e.structIdentifiers.length){o.structIdentifiers=[];for(var r=0;r<e.structIdentifiers.length;++r)o.structIdentifiers[r]=e.structIdentifiers[r]}return null!=e.random&&Object.hasOwnProperty.call(e,"random")&&(o.random=e.random,t.oneofs)&&(o.valueType="random"),o},Ao.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ao.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.KeyRecipe.Part"},Ao.Order=(t={},(a=Object.create(t))[t[0]="ORDER_UNSPECIFIED"]=0,a[t[1]="ASCENDING"]=1,a[t[2]="DESCENDING"]=2,a),Ao.NullOrder=(t={},(a=Object.create(t))[t[0]="NULL_ORDER_UNSPECIFIED"]=0,a[t[1]="NULLS_FIRST"]=1,a[t[2]="NULLS_LAST"]=2,a[t[3]="NOT_NULL"]=3,a),Ao),Lo),r.RecipeList=(No.prototype.schemaGeneration=d.newBuffer([]),No.prototype.recipe=d.emptyArray,No.create=function(e){return new No(e)},No.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.schemaGeneration&&Object.hasOwnProperty.call(e,"schemaGeneration")&&t.uint32(10).bytes(e.schemaGeneration),null!=e.recipe&&e.recipe.length)for(var o=0;o<e.recipe.length;++o)g.google.spanner.v1.KeyRecipe.encode(e.recipe[o],t.uint32(26).fork(),n+1).ldelim();return t},No.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},No.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.RecipeList;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.schemaGeneration=e.bytes();break;case 3:i.recipe&&i.recipe.length||(i.recipe=[]),i.recipe.push(g.google.spanner.v1.KeyRecipe.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},No.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},No.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.schemaGeneration&&Object.hasOwnProperty.call(e,"schemaGeneration")&&!(e.schemaGeneration&&"number"==typeof e.schemaGeneration.length||d.isString(e.schemaGeneration)))return"schemaGeneration: buffer expected";if(null!=e.recipe&&Object.hasOwnProperty.call(e,"recipe")){if(!Array.isArray(e.recipe))return"recipe: array expected";for(var n=0;n<e.recipe.length;++n){var o=g.google.spanner.v1.KeyRecipe.verify(e.recipe[n],t+1);if(o)return"recipe."+o}}return null},No.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.RecipeList)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.RecipeList: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.RecipeList;if(null!=e.schemaGeneration&&("string"==typeof e.schemaGeneration?d.base64.decode(e.schemaGeneration,n.schemaGeneration=d.newBuffer(d.base64.length(e.schemaGeneration)),0):0<=e.schemaGeneration.length&&(n.schemaGeneration=e.schemaGeneration)),e.recipe){if(!Array.isArray(e.recipe))throw TypeError(".google.spanner.v1.RecipeList.recipe: array expected");n.recipe=[];for(var o=0;o<e.recipe.length;++o){if(!d.isObject(e.recipe[o]))throw TypeError(".google.spanner.v1.RecipeList.recipe: object expected");n.recipe[o]=g.google.spanner.v1.KeyRecipe.fromObject(e.recipe[o],t+1)}}return n},No.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.recipe=[]),t.defaults&&(t.bytes===String?o.schemaGeneration="":(o.schemaGeneration=[],t.bytes!==Array&&(o.schemaGeneration=d.newBuffer(o.schemaGeneration)))),null!=e.schemaGeneration&&Object.hasOwnProperty.call(e,"schemaGeneration")&&(o.schemaGeneration=t.bytes===String?d.base64.encode(e.schemaGeneration,0,e.schemaGeneration.length):t.bytes===Array?Array.prototype.slice.call(e.schemaGeneration):e.schemaGeneration),e.recipe&&e.recipe.length){o.recipe=[];for(var r=0;r<e.recipe.length;++r)o.recipe[r]=g.google.spanner.v1.KeyRecipe.toObject(e.recipe[r],t,n+1)}return o},No.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},No.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.RecipeList"},No),r.CacheUpdate=(_o.prototype.databaseId=d.Long?d.Long.fromBits(0,0,!0):0,_o.prototype.range=d.emptyArray,_o.prototype.group=d.emptyArray,_o.prototype.keyRecipes=null,_o.create=function(e){return new _o(e)},_o.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(8).uint64(e.databaseId),null!=e.range&&e.range.length)for(var o=0;o<e.range.length;++o)g.google.spanner.v1.Range.encode(e.range[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.group&&e.group.length)for(o=0;o<e.group.length;++o)g.google.spanner.v1.Group.encode(e.group[o],t.uint32(26).fork(),n+1).ldelim();return null!=e.keyRecipes&&Object.hasOwnProperty.call(e,"keyRecipes")&&g.google.spanner.v1.RecipeList.encode(e.keyRecipes,t.uint32(42).fork(),n+1).ldelim(),t},_o.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},_o.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.CacheUpdate;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.databaseId=e.uint64();break;case 2:i.range&&i.range.length||(i.range=[]),i.range.push(g.google.spanner.v1.Range.decode(e,e.uint32(),void 0,o+1));break;case 3:i.group&&i.group.length||(i.group=[]),i.group.push(g.google.spanner.v1.Group.decode(e,e.uint32(),void 0,o+1));break;case 5:i.keyRecipes=g.google.spanner.v1.RecipeList.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},_o.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},_o.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!(d.isInteger(e.databaseId)||e.databaseId&&d.isInteger(e.databaseId.low)&&d.isInteger(e.databaseId.high)))return"databaseId: integer|Long expected";if(null!=e.range&&Object.hasOwnProperty.call(e,"range")){if(!Array.isArray(e.range))return"range: array expected";for(var n=0;n<e.range.length;++n)if(o=g.google.spanner.v1.Range.verify(e.range[n],t+1))return"range."+o}if(null!=e.group&&Object.hasOwnProperty.call(e,"group")){if(!Array.isArray(e.group))return"group: array expected";for(n=0;n<e.group.length;++n)if(o=g.google.spanner.v1.Group.verify(e.group[n],t+1))return"group."+o}var o;if(null!=e.keyRecipes&&Object.hasOwnProperty.call(e,"keyRecipes")&&(o=g.google.spanner.v1.RecipeList.verify(e.keyRecipes,t+1)))return"keyRecipes."+o;return null},_o.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.CacheUpdate)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.CacheUpdate: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.CacheUpdate;if(null!=e.databaseId&&(d.Long?n.databaseId=d.Long.fromValue(e.databaseId,!0):"string"==typeof e.databaseId?n.databaseId=parseInt(e.databaseId,10):"number"==typeof e.databaseId?n.databaseId=e.databaseId:"object"==typeof e.databaseId&&(n.databaseId=new d.LongBits(e.databaseId.low>>>0,e.databaseId.high>>>0).toNumber(!0))),e.range){if(!Array.isArray(e.range))throw TypeError(".google.spanner.v1.CacheUpdate.range: array expected");n.range=[];for(var o=0;o<e.range.length;++o){if(!d.isObject(e.range[o]))throw TypeError(".google.spanner.v1.CacheUpdate.range: object expected");n.range[o]=g.google.spanner.v1.Range.fromObject(e.range[o],t+1)}}if(e.group){if(!Array.isArray(e.group))throw TypeError(".google.spanner.v1.CacheUpdate.group: array expected");n.group=[];for(o=0;o<e.group.length;++o){if(!d.isObject(e.group[o]))throw TypeError(".google.spanner.v1.CacheUpdate.group: object expected");n.group[o]=g.google.spanner.v1.Group.fromObject(e.group[o],t+1)}}if(null!=e.keyRecipes){if(!d.isObject(e.keyRecipes))throw TypeError(".google.spanner.v1.CacheUpdate.keyRecipes: object expected");n.keyRecipes=g.google.spanner.v1.RecipeList.fromObject(e.keyRecipes,t+1)}return n},_o.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.range=[],r.group=[]),t.defaults&&(d.Long?(o=new d.Long(0,0,!0),r.databaseId=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.databaseId=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,r.keyRecipes=null),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.databaseId="number"==typeof e.databaseId?BigInt(e.databaseId):d.Long.fromBits(e.databaseId.low>>>0,e.databaseId.high>>>0,!0).toBigInt():"number"==typeof e.databaseId?r.databaseId=t.longs===String?String(e.databaseId):e.databaseId:r.databaseId=t.longs===String?d.Long.prototype.toString.call(e.databaseId):t.longs===Number?new d.LongBits(e.databaseId.low>>>0,e.databaseId.high>>>0).toNumber(!0):e.databaseId),e.range&&e.range.length){r.range=[];for(var i=0;i<e.range.length;++i)r.range[i]=g.google.spanner.v1.Range.toObject(e.range[i],t,n+1)}if(e.group&&e.group.length){r.group=[];for(i=0;i<e.group.length;++i)r.group[i]=g.google.spanner.v1.Group.toObject(e.group[i],t,n+1)}return null!=e.keyRecipes&&Object.hasOwnProperty.call(e,"keyRecipes")&&(r.keyRecipes=g.google.spanner.v1.RecipeList.toObject(e.keyRecipes,t,n+1)),r},_o.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},_o.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.CacheUpdate"},_o),r.RoutingHint=(Bo.prototype.operationUid=d.Long?d.Long.fromBits(0,0,!0):0,Bo.prototype.databaseId=d.Long?d.Long.fromBits(0,0,!0):0,Bo.prototype.schemaGeneration=d.newBuffer([]),Bo.prototype.key=d.newBuffer([]),Bo.prototype.limitKey=d.newBuffer([]),Bo.prototype.groupUid=d.Long?d.Long.fromBits(0,0,!0):0,Bo.prototype.splitId=d.Long?d.Long.fromBits(0,0,!0):0,Bo.prototype.tabletUid=d.Long?d.Long.fromBits(0,0,!0):0,Bo.prototype.skippedTabletUid=d.emptyArray,Bo.prototype.clientLocation="",Bo.create=function(e){return new Bo(e)},Bo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.operationUid&&Object.hasOwnProperty.call(e,"operationUid")&&t.uint32(8).uint64(e.operationUid),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&t.uint32(16).uint64(e.databaseId),null!=e.schemaGeneration&&Object.hasOwnProperty.call(e,"schemaGeneration")&&t.uint32(26).bytes(e.schemaGeneration),null!=e.key&&Object.hasOwnProperty.call(e,"key")&&t.uint32(34).bytes(e.key),null!=e.limitKey&&Object.hasOwnProperty.call(e,"limitKey")&&t.uint32(42).bytes(e.limitKey),null!=e.groupUid&&Object.hasOwnProperty.call(e,"groupUid")&&t.uint32(48).uint64(e.groupUid),null!=e.splitId&&Object.hasOwnProperty.call(e,"splitId")&&t.uint32(56).uint64(e.splitId),null!=e.tabletUid&&Object.hasOwnProperty.call(e,"tabletUid")&&t.uint32(64).uint64(e.tabletUid),null!=e.skippedTabletUid&&e.skippedTabletUid.length)for(var o=0;o<e.skippedTabletUid.length;++o)g.google.spanner.v1.RoutingHint.SkippedTablet.encode(e.skippedTabletUid[o],t.uint32(74).fork(),n+1).ldelim();return null!=e.clientLocation&&Object.hasOwnProperty.call(e,"clientLocation")&&t.uint32(82).string(e.clientLocation),t},Bo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Bo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.RoutingHint;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.operationUid=e.uint64();break;case 2:i.databaseId=e.uint64();break;case 3:i.schemaGeneration=e.bytes();break;case 4:i.key=e.bytes();break;case 5:i.limitKey=e.bytes();break;case 6:i.groupUid=e.uint64();break;case 7:i.splitId=e.uint64();break;case 8:i.tabletUid=e.uint64();break;case 9:i.skippedTabletUid&&i.skippedTabletUid.length||(i.skippedTabletUid=[]),i.skippedTabletUid.push(g.google.spanner.v1.RoutingHint.SkippedTablet.decode(e,e.uint32(),void 0,o+1));break;case 10:i.clientLocation=e.string();break;default:e.skipType(7&a,o)}}return i},Bo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Bo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.operationUid&&Object.hasOwnProperty.call(e,"operationUid")&&!(d.isInteger(e.operationUid)||e.operationUid&&d.isInteger(e.operationUid.low)&&d.isInteger(e.operationUid.high)))return"operationUid: integer|Long expected";if(null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&!(d.isInteger(e.databaseId)||e.databaseId&&d.isInteger(e.databaseId.low)&&d.isInteger(e.databaseId.high)))return"databaseId: integer|Long expected";if(null!=e.schemaGeneration&&Object.hasOwnProperty.call(e,"schemaGeneration")&&!(e.schemaGeneration&&"number"==typeof e.schemaGeneration.length||d.isString(e.schemaGeneration)))return"schemaGeneration: buffer expected";if(null!=e.key&&Object.hasOwnProperty.call(e,"key")&&!(e.key&&"number"==typeof e.key.length||d.isString(e.key)))return"key: buffer expected";if(null!=e.limitKey&&Object.hasOwnProperty.call(e,"limitKey")&&!(e.limitKey&&"number"==typeof e.limitKey.length||d.isString(e.limitKey)))return"limitKey: buffer expected";if(null!=e.groupUid&&Object.hasOwnProperty.call(e,"groupUid")&&!(d.isInteger(e.groupUid)||e.groupUid&&d.isInteger(e.groupUid.low)&&d.isInteger(e.groupUid.high)))return"groupUid: integer|Long expected";if(null!=e.splitId&&Object.hasOwnProperty.call(e,"splitId")&&!(d.isInteger(e.splitId)||e.splitId&&d.isInteger(e.splitId.low)&&d.isInteger(e.splitId.high)))return"splitId: integer|Long expected";if(null!=e.tabletUid&&Object.hasOwnProperty.call(e,"tabletUid")&&!(d.isInteger(e.tabletUid)||e.tabletUid&&d.isInteger(e.tabletUid.low)&&d.isInteger(e.tabletUid.high)))return"tabletUid: integer|Long expected";if(null!=e.skippedTabletUid&&Object.hasOwnProperty.call(e,"skippedTabletUid")){if(!Array.isArray(e.skippedTabletUid))return"skippedTabletUid: array expected";for(var n=0;n<e.skippedTabletUid.length;++n){var o=g.google.spanner.v1.RoutingHint.SkippedTablet.verify(e.skippedTabletUid[n],t+1);if(o)return"skippedTabletUid."+o}}return null!=e.clientLocation&&Object.hasOwnProperty.call(e,"clientLocation")&&!d.isString(e.clientLocation)?"clientLocation: string expected":null},Bo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.RoutingHint)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.RoutingHint: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.RoutingHint;if(null!=e.operationUid&&(d.Long?n.operationUid=d.Long.fromValue(e.operationUid,!0):"string"==typeof e.operationUid?n.operationUid=parseInt(e.operationUid,10):"number"==typeof e.operationUid?n.operationUid=e.operationUid:"object"==typeof e.operationUid&&(n.operationUid=new d.LongBits(e.operationUid.low>>>0,e.operationUid.high>>>0).toNumber(!0))),null!=e.databaseId&&(d.Long?n.databaseId=d.Long.fromValue(e.databaseId,!0):"string"==typeof e.databaseId?n.databaseId=parseInt(e.databaseId,10):"number"==typeof e.databaseId?n.databaseId=e.databaseId:"object"==typeof e.databaseId&&(n.databaseId=new d.LongBits(e.databaseId.low>>>0,e.databaseId.high>>>0).toNumber(!0))),null!=e.schemaGeneration&&("string"==typeof e.schemaGeneration?d.base64.decode(e.schemaGeneration,n.schemaGeneration=d.newBuffer(d.base64.length(e.schemaGeneration)),0):0<=e.schemaGeneration.length&&(n.schemaGeneration=e.schemaGeneration)),null!=e.key&&("string"==typeof e.key?d.base64.decode(e.key,n.key=d.newBuffer(d.base64.length(e.key)),0):0<=e.key.length&&(n.key=e.key)),null!=e.limitKey&&("string"==typeof e.limitKey?d.base64.decode(e.limitKey,n.limitKey=d.newBuffer(d.base64.length(e.limitKey)),0):0<=e.limitKey.length&&(n.limitKey=e.limitKey)),null!=e.groupUid&&(d.Long?n.groupUid=d.Long.fromValue(e.groupUid,!0):"string"==typeof e.groupUid?n.groupUid=parseInt(e.groupUid,10):"number"==typeof e.groupUid?n.groupUid=e.groupUid:"object"==typeof e.groupUid&&(n.groupUid=new d.LongBits(e.groupUid.low>>>0,e.groupUid.high>>>0).toNumber(!0))),null!=e.splitId&&(d.Long?n.splitId=d.Long.fromValue(e.splitId,!0):"string"==typeof e.splitId?n.splitId=parseInt(e.splitId,10):"number"==typeof e.splitId?n.splitId=e.splitId:"object"==typeof e.splitId&&(n.splitId=new d.LongBits(e.splitId.low>>>0,e.splitId.high>>>0).toNumber(!0))),null!=e.tabletUid&&(d.Long?n.tabletUid=d.Long.fromValue(e.tabletUid,!0):"string"==typeof e.tabletUid?n.tabletUid=parseInt(e.tabletUid,10):"number"==typeof e.tabletUid?n.tabletUid=e.tabletUid:"object"==typeof e.tabletUid&&(n.tabletUid=new d.LongBits(e.tabletUid.low>>>0,e.tabletUid.high>>>0).toNumber(!0))),e.skippedTabletUid){if(!Array.isArray(e.skippedTabletUid))throw TypeError(".google.spanner.v1.RoutingHint.skippedTabletUid: array expected");n.skippedTabletUid=[];for(var o=0;o<e.skippedTabletUid.length;++o){if(!d.isObject(e.skippedTabletUid[o]))throw TypeError(".google.spanner.v1.RoutingHint.skippedTabletUid: object expected");n.skippedTabletUid[o]=g.google.spanner.v1.RoutingHint.SkippedTablet.fromObject(e.skippedTabletUid[o],t+1)}}return null!=e.clientLocation&&(n.clientLocation=String(e.clientLocation)),n},Bo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.skippedTabletUid=[]),t.defaults&&(d.Long?(o=new d.Long(0,0,!0),r.operationUid=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.operationUid=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,d.Long?(o=new d.Long(0,0,!0),r.databaseId=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.databaseId=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,t.bytes===String?r.schemaGeneration="":(r.schemaGeneration=[],t.bytes!==Array&&(r.schemaGeneration=d.newBuffer(r.schemaGeneration))),t.bytes===String?r.key="":(r.key=[],t.bytes!==Array&&(r.key=d.newBuffer(r.key))),t.bytes===String?r.limitKey="":(r.limitKey=[],t.bytes!==Array&&(r.limitKey=d.newBuffer(r.limitKey))),d.Long?(o=new d.Long(0,0,!0),r.groupUid=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.groupUid=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,d.Long?(o=new d.Long(0,0,!0),r.splitId=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.splitId=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,d.Long?(o=new d.Long(0,0,!0),r.tabletUid=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.tabletUid=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,r.clientLocation=""),null!=e.operationUid&&Object.hasOwnProperty.call(e,"operationUid")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.operationUid="number"==typeof e.operationUid?BigInt(e.operationUid):d.Long.fromBits(e.operationUid.low>>>0,e.operationUid.high>>>0,!0).toBigInt():"number"==typeof e.operationUid?r.operationUid=t.longs===String?String(e.operationUid):e.operationUid:r.operationUid=t.longs===String?d.Long.prototype.toString.call(e.operationUid):t.longs===Number?new d.LongBits(e.operationUid.low>>>0,e.operationUid.high>>>0).toNumber(!0):e.operationUid),null!=e.databaseId&&Object.hasOwnProperty.call(e,"databaseId")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.databaseId="number"==typeof e.databaseId?BigInt(e.databaseId):d.Long.fromBits(e.databaseId.low>>>0,e.databaseId.high>>>0,!0).toBigInt():"number"==typeof e.databaseId?r.databaseId=t.longs===String?String(e.databaseId):e.databaseId:r.databaseId=t.longs===String?d.Long.prototype.toString.call(e.databaseId):t.longs===Number?new d.LongBits(e.databaseId.low>>>0,e.databaseId.high>>>0).toNumber(!0):e.databaseId),null!=e.schemaGeneration&&Object.hasOwnProperty.call(e,"schemaGeneration")&&(r.schemaGeneration=t.bytes===String?d.base64.encode(e.schemaGeneration,0,e.schemaGeneration.length):t.bytes===Array?Array.prototype.slice.call(e.schemaGeneration):e.schemaGeneration),null!=e.key&&Object.hasOwnProperty.call(e,"key")&&(r.key=t.bytes===String?d.base64.encode(e.key,0,e.key.length):t.bytes===Array?Array.prototype.slice.call(e.key):e.key),null!=e.limitKey&&Object.hasOwnProperty.call(e,"limitKey")&&(r.limitKey=t.bytes===String?d.base64.encode(e.limitKey,0,e.limitKey.length):t.bytes===Array?Array.prototype.slice.call(e.limitKey):e.limitKey),null!=e.groupUid&&Object.hasOwnProperty.call(e,"groupUid")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.groupUid="number"==typeof e.groupUid?BigInt(e.groupUid):d.Long.fromBits(e.groupUid.low>>>0,e.groupUid.high>>>0,!0).toBigInt():"number"==typeof e.groupUid?r.groupUid=t.longs===String?String(e.groupUid):e.groupUid:r.groupUid=t.longs===String?d.Long.prototype.toString.call(e.groupUid):t.longs===Number?new d.LongBits(e.groupUid.low>>>0,e.groupUid.high>>>0).toNumber(!0):e.groupUid),null!=e.splitId&&Object.hasOwnProperty.call(e,"splitId")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.splitId="number"==typeof e.splitId?BigInt(e.splitId):d.Long.fromBits(e.splitId.low>>>0,e.splitId.high>>>0,!0).toBigInt():"number"==typeof e.splitId?r.splitId=t.longs===String?String(e.splitId):e.splitId:r.splitId=t.longs===String?d.Long.prototype.toString.call(e.splitId):t.longs===Number?new d.LongBits(e.splitId.low>>>0,e.splitId.high>>>0).toNumber(!0):e.splitId),null!=e.tabletUid&&Object.hasOwnProperty.call(e,"tabletUid")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.tabletUid="number"==typeof e.tabletUid?BigInt(e.tabletUid):d.Long.fromBits(e.tabletUid.low>>>0,e.tabletUid.high>>>0,!0).toBigInt():"number"==typeof e.tabletUid?r.tabletUid=t.longs===String?String(e.tabletUid):e.tabletUid:r.tabletUid=t.longs===String?d.Long.prototype.toString.call(e.tabletUid):t.longs===Number?new d.LongBits(e.tabletUid.low>>>0,e.tabletUid.high>>>0).toNumber(!0):e.tabletUid),e.skippedTabletUid&&e.skippedTabletUid.length){r.skippedTabletUid=[];for(var i=0;i<e.skippedTabletUid.length;++i)r.skippedTabletUid[i]=g.google.spanner.v1.RoutingHint.SkippedTablet.toObject(e.skippedTabletUid[i],t,n+1)}return null!=e.clientLocation&&Object.hasOwnProperty.call(e,"clientLocation")&&(r.clientLocation=e.clientLocation),r},Bo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Bo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.RoutingHint"},Bo.SkippedTablet=(Uo.prototype.tabletUid=d.Long?d.Long.fromBits(0,0,!0):0,Uo.prototype.incarnation=d.newBuffer([]),Uo.create=function(e){return new Uo(e)},Uo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.tabletUid&&Object.hasOwnProperty.call(e,"tabletUid")&&t.uint32(8).uint64(e.tabletUid),null!=e.incarnation&&Object.hasOwnProperty.call(e,"incarnation")&&t.uint32(18).bytes(e.incarnation),t},Uo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Uo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.RoutingHint.SkippedTablet;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.tabletUid=e.uint64();break;case 2:i.incarnation=e.bytes();break;default:e.skipType(7&a,o)}}return i},Uo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Uo.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.tabletUid&&Object.hasOwnProperty.call(e,"tabletUid")&&!(d.isInteger(e.tabletUid)||e.tabletUid&&d.isInteger(e.tabletUid.low)&&d.isInteger(e.tabletUid.high))?"tabletUid: integer|Long expected":null!=e.incarnation&&Object.hasOwnProperty.call(e,"incarnation")&&!(e.incarnation&&"number"==typeof e.incarnation.length||d.isString(e.incarnation))?"incarnation: buffer expected":null},Uo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.RoutingHint.SkippedTablet)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.RoutingHint.SkippedTablet: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.RoutingHint.SkippedTablet;return null!=e.tabletUid&&(d.Long?t.tabletUid=d.Long.fromValue(e.tabletUid,!0):"string"==typeof e.tabletUid?t.tabletUid=parseInt(e.tabletUid,10):"number"==typeof e.tabletUid?t.tabletUid=e.tabletUid:"object"==typeof e.tabletUid&&(t.tabletUid=new d.LongBits(e.tabletUid.low>>>0,e.tabletUid.high>>>0).toNumber(!0))),null!=e.incarnation&&("string"==typeof e.incarnation?d.base64.decode(e.incarnation,t.incarnation=d.newBuffer(d.base64.length(e.incarnation)),0):0<=e.incarnation.length&&(t.incarnation=e.incarnation)),t},Uo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,n={};return t.defaults&&(d.Long?(o=new d.Long(0,0,!0),n.tabletUid=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.tabletUid=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,t.bytes===String?n.incarnation="":(n.incarnation=[],t.bytes!==Array&&(n.incarnation=d.newBuffer(n.incarnation)))),null!=e.tabletUid&&Object.hasOwnProperty.call(e,"tabletUid")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.tabletUid="number"==typeof e.tabletUid?BigInt(e.tabletUid):d.Long.fromBits(e.tabletUid.low>>>0,e.tabletUid.high>>>0,!0).toBigInt():"number"==typeof e.tabletUid?n.tabletUid=t.longs===String?String(e.tabletUid):e.tabletUid:n.tabletUid=t.longs===String?d.Long.prototype.toString.call(e.tabletUid):t.longs===Number?new d.LongBits(e.tabletUid.low>>>0,e.tabletUid.high>>>0).toNumber(!0):e.tabletUid),null!=e.incarnation&&Object.hasOwnProperty.call(e,"incarnation")&&(n.incarnation=t.bytes===String?d.base64.encode(e.incarnation,0,e.incarnation.length):t.bytes===Array?Array.prototype.slice.call(e.incarnation):e.incarnation),n},Uo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Uo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.RoutingHint.SkippedTablet"},Uo),Bo),r.Type=(Mo.prototype.code=0,Mo.prototype.arrayElementType=null,Mo.prototype.structType=null,Mo.prototype.typeAnnotation=0,Mo.prototype.protoTypeFqn="",Mo.create=function(e){return new Mo(e)},Mo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.code&&Object.hasOwnProperty.call(e,"code")&&t.uint32(8).int32(e.code),null!=e.arrayElementType&&Object.hasOwnProperty.call(e,"arrayElementType")&&g.google.spanner.v1.Type.encode(e.arrayElementType,t.uint32(18).fork(),n+1).ldelim(),null!=e.structType&&Object.hasOwnProperty.call(e,"structType")&&g.google.spanner.v1.StructType.encode(e.structType,t.uint32(26).fork(),n+1).ldelim(),null!=e.typeAnnotation&&Object.hasOwnProperty.call(e,"typeAnnotation")&&t.uint32(32).int32(e.typeAnnotation),null!=e.protoTypeFqn&&Object.hasOwnProperty.call(e,"protoTypeFqn")&&t.uint32(42).string(e.protoTypeFqn),t},Mo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Mo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Type;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.code=e.int32();break;case 2:i.arrayElementType=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;case 3:i.structType=g.google.spanner.v1.StructType.decode(e,e.uint32(),void 0,o+1);break;case 4:i.typeAnnotation=e.int32();break;case 5:i.protoTypeFqn=e.string();break;default:e.skipType(7&a,o)}}return i},Mo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Mo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.code&&Object.hasOwnProperty.call(e,"code"))switch(e.code){default:return"code: enum value expected";case 0:case 1:case 2:case 3:case 15:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 13:case 14:case 16:case 17:}var n;if(null!=e.arrayElementType&&Object.hasOwnProperty.call(e,"arrayElementType")&&(n=g.google.spanner.v1.Type.verify(e.arrayElementType,t+1)))return"arrayElementType."+n;if(null!=e.structType&&Object.hasOwnProperty.call(e,"structType")&&(n=g.google.spanner.v1.StructType.verify(e.structType,t+1)))return"structType."+n;if(null!=e.typeAnnotation&&Object.hasOwnProperty.call(e,"typeAnnotation"))switch(e.typeAnnotation){default:return"typeAnnotation: enum value expected";case 0:case 2:case 3:case 4:}return null!=e.protoTypeFqn&&Object.hasOwnProperty.call(e,"protoTypeFqn")&&!d.isString(e.protoTypeFqn)?"protoTypeFqn: string expected":null},Mo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Type)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Type: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Type;switch(e.code){default:"number"==typeof e.code&&(n.code=e.code);break;case"TYPE_CODE_UNSPECIFIED":case 0:n.code=0;break;case"BOOL":case 1:n.code=1;break;case"INT64":case 2:n.code=2;break;case"FLOAT64":case 3:n.code=3;break;case"FLOAT32":case 15:n.code=15;break;case"TIMESTAMP":case 4:n.code=4;break;case"DATE":case 5:n.code=5;break;case"STRING":case 6:n.code=6;break;case"BYTES":case 7:n.code=7;break;case"ARRAY":case 8:n.code=8;break;case"STRUCT":case 9:n.code=9;break;case"NUMERIC":case 10:n.code=10;break;case"JSON":case 11:n.code=11;break;case"PROTO":case 13:n.code=13;break;case"ENUM":case 14:n.code=14;break;case"INTERVAL":case 16:n.code=16;break;case"UUID":case 17:n.code=17}if(null!=e.arrayElementType){if(!d.isObject(e.arrayElementType))throw TypeError(".google.spanner.v1.Type.arrayElementType: object expected");n.arrayElementType=g.google.spanner.v1.Type.fromObject(e.arrayElementType,t+1)}if(null!=e.structType){if(!d.isObject(e.structType))throw TypeError(".google.spanner.v1.Type.structType: object expected");n.structType=g.google.spanner.v1.StructType.fromObject(e.structType,t+1)}switch(e.typeAnnotation){default:"number"==typeof e.typeAnnotation&&(n.typeAnnotation=e.typeAnnotation);break;case"TYPE_ANNOTATION_CODE_UNSPECIFIED":case 0:n.typeAnnotation=0;break;case"PG_NUMERIC":case 2:n.typeAnnotation=2;break;case"PG_JSONB":case 3:n.typeAnnotation=3;break;case"PG_OID":case 4:n.typeAnnotation=4}return null!=e.protoTypeFqn&&(n.protoTypeFqn=String(e.protoTypeFqn)),n},Mo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.code=t.enums===String?"TYPE_CODE_UNSPECIFIED":0,o.arrayElementType=null,o.structType=null,o.typeAnnotation=t.enums===String?"TYPE_ANNOTATION_CODE_UNSPECIFIED":0,o.protoTypeFqn=""),null!=e.code&&Object.hasOwnProperty.call(e,"code")&&(o.code=t.enums!==String||void 0===g.google.spanner.v1.TypeCode[e.code]?e.code:g.google.spanner.v1.TypeCode[e.code]),null!=e.arrayElementType&&Object.hasOwnProperty.call(e,"arrayElementType")&&(o.arrayElementType=g.google.spanner.v1.Type.toObject(e.arrayElementType,t,n+1)),null!=e.structType&&Object.hasOwnProperty.call(e,"structType")&&(o.structType=g.google.spanner.v1.StructType.toObject(e.structType,t,n+1)),null!=e.typeAnnotation&&Object.hasOwnProperty.call(e,"typeAnnotation")&&(o.typeAnnotation=t.enums!==String||void 0===g.google.spanner.v1.TypeAnnotationCode[e.typeAnnotation]?e.typeAnnotation:g.google.spanner.v1.TypeAnnotationCode[e.typeAnnotation]),null!=e.protoTypeFqn&&Object.hasOwnProperty.call(e,"protoTypeFqn")&&(o.protoTypeFqn=e.protoTypeFqn),o},Mo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Mo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Type"},Mo),r.StructType=(qo.prototype.fields=d.emptyArray,qo.create=function(e){return new qo(e)},qo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.fields&&e.fields.length)for(var o=0;o<e.fields.length;++o)g.google.spanner.v1.StructType.Field.encode(e.fields[o],t.uint32(10).fork(),n+1).ldelim();return t},qo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},qo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.StructType;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.fields&&i.fields.length||(i.fields=[]),i.fields.push(g.google.spanner.v1.StructType.Field.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},qo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},qo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.fields&&Object.hasOwnProperty.call(e,"fields")){if(!Array.isArray(e.fields))return"fields: array expected";for(var n=0;n<e.fields.length;++n){var o=g.google.spanner.v1.StructType.Field.verify(e.fields[n],t+1);if(o)return"fields."+o}}return null},qo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.StructType)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.StructType: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.StructType;if(e.fields){if(!Array.isArray(e.fields))throw TypeError(".google.spanner.v1.StructType.fields: array expected");n.fields=[];for(var o=0;o<e.fields.length;++o){if(!d.isObject(e.fields[o]))throw TypeError(".google.spanner.v1.StructType.fields: object expected");n.fields[o]=g.google.spanner.v1.StructType.Field.fromObject(e.fields[o],t+1)}}return n},qo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.fields=[]),e.fields&&e.fields.length){o.fields=[];for(var r=0;r<e.fields.length;++r)o.fields[r]=g.google.spanner.v1.StructType.Field.toObject(e.fields[r],t,n+1)}return o},qo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},qo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.StructType"},qo.Field=(Vo.prototype.name="",Vo.prototype.type=null,Vo.create=function(e){return new Vo(e)},Vo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&g.google.spanner.v1.Type.encode(e.type,t.uint32(18).fork(),n+1).ldelim(),t},Vo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Vo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.StructType.Field;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.type=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Vo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Vo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.type&&Object.hasOwnProperty.call(e,"type")){e=g.google.spanner.v1.Type.verify(e.type,t+1);if(e)return"type."+e}return null},Vo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.StructType.Field)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.StructType.Field: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.StructType.Field;if(null!=e.name&&(n.name=String(e.name)),null!=e.type){if(!d.isObject(e.type))throw TypeError(".google.spanner.v1.StructType.Field.type: object expected");n.type=g.google.spanner.v1.Type.fromObject(e.type,t+1)}return n},Vo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.type=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(o.type=g.google.spanner.v1.Type.toObject(e.type,t,n+1)),o},Vo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Vo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.StructType.Field"},Vo),qo),r.TypeCode=(t={},(a=Object.create(t))[t[0]="TYPE_CODE_UNSPECIFIED"]=0,a[t[1]="BOOL"]=1,a[t[2]="INT64"]=2,a[t[3]="FLOAT64"]=3,a[t[15]="FLOAT32"]=15,a[t[4]="TIMESTAMP"]=4,a[t[5]="DATE"]=5,a[t[6]="STRING"]=6,a[t[7]="BYTES"]=7,a[t[8]="ARRAY"]=8,a[t[9]="STRUCT"]=9,a[t[10]="NUMERIC"]=10,a[t[11]="JSON"]=11,a[t[13]="PROTO"]=13,a[t[14]="ENUM"]=14,a[t[16]="INTERVAL"]=16,a[t[17]="UUID"]=17,a),r.TypeAnnotationCode=(t={},(a=Object.create(t))[t[0]="TYPE_ANNOTATION_CODE_UNSPECIFIED"]=0,a[t[2]="PG_NUMERIC"]=2,a[t[3]="PG_JSONB"]=3,a[t[4]="PG_OID"]=4,a),r.TransactionOptions=(Fo.prototype.readWrite=null,Fo.prototype.partitionedDml=null,Fo.prototype.readOnly=null,Fo.prototype.excludeTxnFromChangeStreams=!1,Fo.prototype.isolationLevel=0,Object.defineProperty(Fo.prototype,"mode",{get:d.oneOfGetter(t=["readWrite","partitionedDml","readOnly"]),set:d.oneOfSetter(t)}),Fo.create=function(e){return new Fo(e)},Fo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.readWrite&&Object.hasOwnProperty.call(e,"readWrite")&&g.google.spanner.v1.TransactionOptions.ReadWrite.encode(e.readWrite,t.uint32(10).fork(),n+1).ldelim(),null!=e.readOnly&&Object.hasOwnProperty.call(e,"readOnly")&&g.google.spanner.v1.TransactionOptions.ReadOnly.encode(e.readOnly,t.uint32(18).fork(),n+1).ldelim(),null!=e.partitionedDml&&Object.hasOwnProperty.call(e,"partitionedDml")&&g.google.spanner.v1.TransactionOptions.PartitionedDml.encode(e.partitionedDml,t.uint32(26).fork(),n+1).ldelim(),null!=e.excludeTxnFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeTxnFromChangeStreams")&&t.uint32(40).bool(e.excludeTxnFromChangeStreams),null!=e.isolationLevel&&Object.hasOwnProperty.call(e,"isolationLevel")&&t.uint32(48).int32(e.isolationLevel),t},Fo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Fo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.TransactionOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.readWrite=g.google.spanner.v1.TransactionOptions.ReadWrite.decode(e,e.uint32(),void 0,o+1);break;case 3:i.partitionedDml=g.google.spanner.v1.TransactionOptions.PartitionedDml.decode(e,e.uint32(),void 0,o+1);break;case 2:i.readOnly=g.google.spanner.v1.TransactionOptions.ReadOnly.decode(e,e.uint32(),void 0,o+1);break;case 5:i.excludeTxnFromChangeStreams=e.bool();break;case 6:i.isolationLevel=e.int32();break;default:e.skipType(7&a,o)}}return i},Fo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Fo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.readWrite&&Object.hasOwnProperty.call(e,"readWrite")&&(n=g.google.spanner.v1.TransactionOptions.ReadWrite.verify(e.readWrite,t+(o.mode=1))))return"readWrite."+n;if(null!=e.partitionedDml&&Object.hasOwnProperty.call(e,"partitionedDml")){if(1===o.mode)return"mode: multiple values";if(n=g.google.spanner.v1.TransactionOptions.PartitionedDml.verify(e.partitionedDml,t+(o.mode=1)))return"partitionedDml."+n}if(null!=e.readOnly&&Object.hasOwnProperty.call(e,"readOnly")){if(1===o.mode)return"mode: multiple values";if(n=g.google.spanner.v1.TransactionOptions.ReadOnly.verify(e.readOnly,t+(o.mode=1)))return"readOnly."+n}if(null!=e.excludeTxnFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeTxnFromChangeStreams")&&"boolean"!=typeof e.excludeTxnFromChangeStreams)return"excludeTxnFromChangeStreams: boolean expected";if(null!=e.isolationLevel&&Object.hasOwnProperty.call(e,"isolationLevel"))switch(e.isolationLevel){default:return"isolationLevel: enum value expected";case 0:case 1:case 2:}return null},Fo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.TransactionOptions)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.TransactionOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.TransactionOptions;if(null!=e.readWrite){if(!d.isObject(e.readWrite))throw TypeError(".google.spanner.v1.TransactionOptions.readWrite: object expected");n.readWrite=g.google.spanner.v1.TransactionOptions.ReadWrite.fromObject(e.readWrite,t+1)}if(null!=e.partitionedDml){if(!d.isObject(e.partitionedDml))throw TypeError(".google.spanner.v1.TransactionOptions.partitionedDml: object expected");n.partitionedDml=g.google.spanner.v1.TransactionOptions.PartitionedDml.fromObject(e.partitionedDml,t+1)}if(null!=e.readOnly){if(!d.isObject(e.readOnly))throw TypeError(".google.spanner.v1.TransactionOptions.readOnly: object expected");n.readOnly=g.google.spanner.v1.TransactionOptions.ReadOnly.fromObject(e.readOnly,t+1)}switch(null!=e.excludeTxnFromChangeStreams&&(n.excludeTxnFromChangeStreams=Boolean(e.excludeTxnFromChangeStreams)),e.isolationLevel){default:"number"==typeof e.isolationLevel&&(n.isolationLevel=e.isolationLevel);break;case"ISOLATION_LEVEL_UNSPECIFIED":case 0:n.isolationLevel=0;break;case"SERIALIZABLE":case 1:n.isolationLevel=1;break;case"REPEATABLE_READ":case 2:n.isolationLevel=2}return n},Fo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.excludeTxnFromChangeStreams=!1,o.isolationLevel=t.enums===String?"ISOLATION_LEVEL_UNSPECIFIED":0),null!=e.readWrite&&Object.hasOwnProperty.call(e,"readWrite")&&(o.readWrite=g.google.spanner.v1.TransactionOptions.ReadWrite.toObject(e.readWrite,t,n+1),t.oneofs)&&(o.mode="readWrite"),null!=e.readOnly&&Object.hasOwnProperty.call(e,"readOnly")&&(o.readOnly=g.google.spanner.v1.TransactionOptions.ReadOnly.toObject(e.readOnly,t,n+1),t.oneofs)&&(o.mode="readOnly"),null!=e.partitionedDml&&Object.hasOwnProperty.call(e,"partitionedDml")&&(o.partitionedDml=g.google.spanner.v1.TransactionOptions.PartitionedDml.toObject(e.partitionedDml,t,n+1),t.oneofs)&&(o.mode="partitionedDml"),null!=e.excludeTxnFromChangeStreams&&Object.hasOwnProperty.call(e,"excludeTxnFromChangeStreams")&&(o.excludeTxnFromChangeStreams=e.excludeTxnFromChangeStreams),null!=e.isolationLevel&&Object.hasOwnProperty.call(e,"isolationLevel")&&(o.isolationLevel=t.enums!==String||void 0===g.google.spanner.v1.TransactionOptions.IsolationLevel[e.isolationLevel]?e.isolationLevel:g.google.spanner.v1.TransactionOptions.IsolationLevel[e.isolationLevel]),o},Fo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Fo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.TransactionOptions"},Fo.ReadWrite=(Go.prototype.readLockMode=0,Go.prototype.multiplexedSessionPreviousTransactionId=d.newBuffer([]),Go.create=function(e){return new Go(e)},Go.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.readLockMode&&Object.hasOwnProperty.call(e,"readLockMode")&&t.uint32(8).int32(e.readLockMode),null!=e.multiplexedSessionPreviousTransactionId&&Object.hasOwnProperty.call(e,"multiplexedSessionPreviousTransactionId")&&t.uint32(18).bytes(e.multiplexedSessionPreviousTransactionId),t},Go.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Go.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.TransactionOptions.ReadWrite;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.readLockMode=e.int32();break;case 2:i.multiplexedSessionPreviousTransactionId=e.bytes();break;default:e.skipType(7&a,o)}}return i},Go.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Go.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.readLockMode&&Object.hasOwnProperty.call(e,"readLockMode"))switch(e.readLockMode){default:return"readLockMode: enum value expected";case 0:case 1:case 2:}return null!=e.multiplexedSessionPreviousTransactionId&&Object.hasOwnProperty.call(e,"multiplexedSessionPreviousTransactionId")&&!(e.multiplexedSessionPreviousTransactionId&&"number"==typeof e.multiplexedSessionPreviousTransactionId.length||d.isString(e.multiplexedSessionPreviousTransactionId))?"multiplexedSessionPreviousTransactionId: buffer expected":null},Go.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.TransactionOptions.ReadWrite)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.TransactionOptions.ReadWrite: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.TransactionOptions.ReadWrite;switch(e.readLockMode){default:"number"==typeof e.readLockMode&&(n.readLockMode=e.readLockMode);break;case"READ_LOCK_MODE_UNSPECIFIED":case 0:n.readLockMode=0;break;case"PESSIMISTIC":case 1:n.readLockMode=1;break;case"OPTIMISTIC":case 2:n.readLockMode=2}return null!=e.multiplexedSessionPreviousTransactionId&&("string"==typeof e.multiplexedSessionPreviousTransactionId?d.base64.decode(e.multiplexedSessionPreviousTransactionId,n.multiplexedSessionPreviousTransactionId=d.newBuffer(d.base64.length(e.multiplexedSessionPreviousTransactionId)),0):0<=e.multiplexedSessionPreviousTransactionId.length&&(n.multiplexedSessionPreviousTransactionId=e.multiplexedSessionPreviousTransactionId)),n},Go.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.readLockMode=t.enums===String?"READ_LOCK_MODE_UNSPECIFIED":0,t.bytes===String?n.multiplexedSessionPreviousTransactionId="":(n.multiplexedSessionPreviousTransactionId=[],t.bytes!==Array&&(n.multiplexedSessionPreviousTransactionId=d.newBuffer(n.multiplexedSessionPreviousTransactionId)))),null!=e.readLockMode&&Object.hasOwnProperty.call(e,"readLockMode")&&(n.readLockMode=t.enums!==String||void 0===g.google.spanner.v1.TransactionOptions.ReadWrite.ReadLockMode[e.readLockMode]?e.readLockMode:g.google.spanner.v1.TransactionOptions.ReadWrite.ReadLockMode[e.readLockMode]),null!=e.multiplexedSessionPreviousTransactionId&&Object.hasOwnProperty.call(e,"multiplexedSessionPreviousTransactionId")&&(n.multiplexedSessionPreviousTransactionId=t.bytes===String?d.base64.encode(e.multiplexedSessionPreviousTransactionId,0,e.multiplexedSessionPreviousTransactionId.length):t.bytes===Array?Array.prototype.slice.call(e.multiplexedSessionPreviousTransactionId):e.multiplexedSessionPreviousTransactionId),n},Go.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Go.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.TransactionOptions.ReadWrite"},Go.ReadLockMode=(t={},(a=Object.create(t))[t[0]="READ_LOCK_MODE_UNSPECIFIED"]=0,a[t[1]="PESSIMISTIC"]=1,a[t[2]="OPTIMISTIC"]=2,a),Go),Fo.PartitionedDml=(Jo.create=function(e){return new Jo(e)},Jo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return t},Jo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Jo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,t=new g.google.spanner.v1.TransactionOptions.PartitionedDml;e.pos<r;){var i=e.uint32();if(i===n)break;e.skipType(7&i,o)}return t},Jo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Jo.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null},Jo.fromObject=function(e,t){return e instanceof g.google.spanner.v1.TransactionOptions.PartitionedDml?e:new g.google.spanner.v1.TransactionOptions.PartitionedDml},Jo.toObject=function(){return{}},Jo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Jo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.TransactionOptions.PartitionedDml"},Jo),Fo.ReadOnly=(zo.prototype.strong=null,zo.prototype.minReadTimestamp=null,zo.prototype.maxStaleness=null,zo.prototype.readTimestamp=null,zo.prototype.exactStaleness=null,zo.prototype.returnReadTimestamp=!1,Object.defineProperty(zo.prototype,"timestampBound",{get:d.oneOfGetter(t=["strong","minReadTimestamp","maxStaleness","readTimestamp","exactStaleness"]),set:d.oneOfSetter(t)}),zo.create=function(e){return new zo(e)},zo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.strong&&Object.hasOwnProperty.call(e,"strong")&&t.uint32(8).bool(e.strong),null!=e.minReadTimestamp&&Object.hasOwnProperty.call(e,"minReadTimestamp")&&g.google.protobuf.Timestamp.encode(e.minReadTimestamp,t.uint32(18).fork(),n+1).ldelim(),null!=e.maxStaleness&&Object.hasOwnProperty.call(e,"maxStaleness")&&g.google.protobuf.Duration.encode(e.maxStaleness,t.uint32(26).fork(),n+1).ldelim(),null!=e.readTimestamp&&Object.hasOwnProperty.call(e,"readTimestamp")&&g.google.protobuf.Timestamp.encode(e.readTimestamp,t.uint32(34).fork(),n+1).ldelim(),null!=e.exactStaleness&&Object.hasOwnProperty.call(e,"exactStaleness")&&g.google.protobuf.Duration.encode(e.exactStaleness,t.uint32(42).fork(),n+1).ldelim(),null!=e.returnReadTimestamp&&Object.hasOwnProperty.call(e,"returnReadTimestamp")&&t.uint32(48).bool(e.returnReadTimestamp),t},zo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},zo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.TransactionOptions.ReadOnly;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.strong=e.bool();break;case 2:i.minReadTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.maxStaleness=g.google.protobuf.Duration.decode(e,e.uint32(),void 0,o+1);break;case 4:i.readTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 5:i.exactStaleness=g.google.protobuf.Duration.decode(e,e.uint32(),void 0,o+1);break;case 6:i.returnReadTimestamp=e.bool();break;default:e.skipType(7&a,o)}}return i},zo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},zo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.strong&&Object.hasOwnProperty.call(e,"strong")&&(o.timestampBound=1,"boolean"!=typeof e.strong))return"strong: boolean expected";if(null!=e.minReadTimestamp&&Object.hasOwnProperty.call(e,"minReadTimestamp")){if(1===o.timestampBound)return"timestampBound: multiple values";if(n=g.google.protobuf.Timestamp.verify(e.minReadTimestamp,t+(o.timestampBound=1)))return"minReadTimestamp."+n}if(null!=e.maxStaleness&&Object.hasOwnProperty.call(e,"maxStaleness")){if(1===o.timestampBound)return"timestampBound: multiple values";if(n=g.google.protobuf.Duration.verify(e.maxStaleness,t+(o.timestampBound=1)))return"maxStaleness."+n}if(null!=e.readTimestamp&&Object.hasOwnProperty.call(e,"readTimestamp")){if(1===o.timestampBound)return"timestampBound: multiple values";if(n=g.google.protobuf.Timestamp.verify(e.readTimestamp,t+(o.timestampBound=1)))return"readTimestamp."+n}if(null!=e.exactStaleness&&Object.hasOwnProperty.call(e,"exactStaleness")){if(1===o.timestampBound)return"timestampBound: multiple values";if(n=g.google.protobuf.Duration.verify(e.exactStaleness,t+(o.timestampBound=1)))return"exactStaleness."+n}return null!=e.returnReadTimestamp&&Object.hasOwnProperty.call(e,"returnReadTimestamp")&&"boolean"!=typeof e.returnReadTimestamp?"returnReadTimestamp: boolean expected":null},zo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.TransactionOptions.ReadOnly)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.TransactionOptions.ReadOnly: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.TransactionOptions.ReadOnly;if(null!=e.strong&&(n.strong=Boolean(e.strong)),null!=e.minReadTimestamp){if(!d.isObject(e.minReadTimestamp))throw TypeError(".google.spanner.v1.TransactionOptions.ReadOnly.minReadTimestamp: object expected");n.minReadTimestamp=g.google.protobuf.Timestamp.fromObject(e.minReadTimestamp,t+1)}if(null!=e.maxStaleness){if(!d.isObject(e.maxStaleness))throw TypeError(".google.spanner.v1.TransactionOptions.ReadOnly.maxStaleness: object expected");n.maxStaleness=g.google.protobuf.Duration.fromObject(e.maxStaleness,t+1)}if(null!=e.readTimestamp){if(!d.isObject(e.readTimestamp))throw TypeError(".google.spanner.v1.TransactionOptions.ReadOnly.readTimestamp: object expected");n.readTimestamp=g.google.protobuf.Timestamp.fromObject(e.readTimestamp,t+1)}if(null!=e.exactStaleness){if(!d.isObject(e.exactStaleness))throw TypeError(".google.spanner.v1.TransactionOptions.ReadOnly.exactStaleness: object expected");n.exactStaleness=g.google.protobuf.Duration.fromObject(e.exactStaleness,t+1)}return null!=e.returnReadTimestamp&&(n.returnReadTimestamp=Boolean(e.returnReadTimestamp)),n},zo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.returnReadTimestamp=!1),null!=e.strong&&Object.hasOwnProperty.call(e,"strong")&&(o.strong=e.strong,t.oneofs)&&(o.timestampBound="strong"),null!=e.minReadTimestamp&&Object.hasOwnProperty.call(e,"minReadTimestamp")&&(o.minReadTimestamp=g.google.protobuf.Timestamp.toObject(e.minReadTimestamp,t,n+1),t.oneofs)&&(o.timestampBound="minReadTimestamp"),null!=e.maxStaleness&&Object.hasOwnProperty.call(e,"maxStaleness")&&(o.maxStaleness=g.google.protobuf.Duration.toObject(e.maxStaleness,t,n+1),t.oneofs)&&(o.timestampBound="maxStaleness"),null!=e.readTimestamp&&Object.hasOwnProperty.call(e,"readTimestamp")&&(o.readTimestamp=g.google.protobuf.Timestamp.toObject(e.readTimestamp,t,n+1),t.oneofs)&&(o.timestampBound="readTimestamp"),null!=e.exactStaleness&&Object.hasOwnProperty.call(e,"exactStaleness")&&(o.exactStaleness=g.google.protobuf.Duration.toObject(e.exactStaleness,t,n+1),t.oneofs)&&(o.timestampBound="exactStaleness"),null!=e.returnReadTimestamp&&Object.hasOwnProperty.call(e,"returnReadTimestamp")&&(o.returnReadTimestamp=e.returnReadTimestamp),o},zo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},zo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.TransactionOptions.ReadOnly"},zo),Fo.IsolationLevel=(a={},(t=Object.create(a))[a[0]="ISOLATION_LEVEL_UNSPECIFIED"]=0,t[a[1]="SERIALIZABLE"]=1,t[a[2]="REPEATABLE_READ"]=2,t),Fo),r.Transaction=(Ko.prototype.id=d.newBuffer([]),Ko.prototype.readTimestamp=null,Ko.prototype.precommitToken=null,Ko.prototype.cacheUpdate=null,Ko.create=function(e){return new Ko(e)},Ko.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.id&&Object.hasOwnProperty.call(e,"id")&&t.uint32(10).bytes(e.id),null!=e.readTimestamp&&Object.hasOwnProperty.call(e,"readTimestamp")&&g.google.protobuf.Timestamp.encode(e.readTimestamp,t.uint32(18).fork(),n+1).ldelim(),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&g.google.spanner.v1.MultiplexedSessionPrecommitToken.encode(e.precommitToken,t.uint32(26).fork(),n+1).ldelim(),null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&g.google.spanner.v1.CacheUpdate.encode(e.cacheUpdate,t.uint32(42).fork(),n+1).ldelim(),t},Ko.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ko.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Transaction;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.id=e.bytes();break;case 2:i.readTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 3:i.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.decode(e,e.uint32(),void 0,o+1);break;case 5:i.cacheUpdate=g.google.spanner.v1.CacheUpdate.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ko.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ko.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.id&&Object.hasOwnProperty.call(e,"id")&&!(e.id&&"number"==typeof e.id.length||d.isString(e.id)))return"id: buffer expected";var n;if(null!=e.readTimestamp&&Object.hasOwnProperty.call(e,"readTimestamp")&&(n=g.google.protobuf.Timestamp.verify(e.readTimestamp,t+1)))return"readTimestamp."+n;if(null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(n=g.google.spanner.v1.MultiplexedSessionPrecommitToken.verify(e.precommitToken,t+1)))return"precommitToken."+n;if(null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&(n=g.google.spanner.v1.CacheUpdate.verify(e.cacheUpdate,t+1)))return"cacheUpdate."+n;return null},Ko.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Transaction)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Transaction: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Transaction;if(null!=e.id&&("string"==typeof e.id?d.base64.decode(e.id,n.id=d.newBuffer(d.base64.length(e.id)),0):0<=e.id.length&&(n.id=e.id)),null!=e.readTimestamp){if(!d.isObject(e.readTimestamp))throw TypeError(".google.spanner.v1.Transaction.readTimestamp: object expected");n.readTimestamp=g.google.protobuf.Timestamp.fromObject(e.readTimestamp,t+1)}if(null!=e.precommitToken){if(!d.isObject(e.precommitToken))throw TypeError(".google.spanner.v1.Transaction.precommitToken: object expected");n.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.fromObject(e.precommitToken,t+1)}if(null!=e.cacheUpdate){if(!d.isObject(e.cacheUpdate))throw TypeError(".google.spanner.v1.Transaction.cacheUpdate: object expected");n.cacheUpdate=g.google.spanner.v1.CacheUpdate.fromObject(e.cacheUpdate,t+1)}return n},Ko.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(t.bytes===String?o.id="":(o.id=[],t.bytes!==Array&&(o.id=d.newBuffer(o.id))),o.readTimestamp=null,o.precommitToken=null,o.cacheUpdate=null),null!=e.id&&Object.hasOwnProperty.call(e,"id")&&(o.id=t.bytes===String?d.base64.encode(e.id,0,e.id.length):t.bytes===Array?Array.prototype.slice.call(e.id):e.id),null!=e.readTimestamp&&Object.hasOwnProperty.call(e,"readTimestamp")&&(o.readTimestamp=g.google.protobuf.Timestamp.toObject(e.readTimestamp,t,n+1)),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(o.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.toObject(e.precommitToken,t,n+1)),null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&(o.cacheUpdate=g.google.spanner.v1.CacheUpdate.toObject(e.cacheUpdate,t,n+1)),o},Ko.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ko.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Transaction"},Ko),r.TransactionSelector=(Ho.prototype.singleUse=null,Ho.prototype.id=null,Ho.prototype.begin=null,Object.defineProperty(Ho.prototype,"selector",{get:d.oneOfGetter(a=["singleUse","id","begin"]),set:d.oneOfSetter(a)}),Ho.create=function(e){return new Ho(e)},Ho.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.singleUse&&Object.hasOwnProperty.call(e,"singleUse")&&g.google.spanner.v1.TransactionOptions.encode(e.singleUse,t.uint32(10).fork(),n+1).ldelim(),null!=e.id&&Object.hasOwnProperty.call(e,"id")&&t.uint32(18).bytes(e.id),null!=e.begin&&Object.hasOwnProperty.call(e,"begin")&&g.google.spanner.v1.TransactionOptions.encode(e.begin,t.uint32(26).fork(),n+1).ldelim(),t},Ho.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ho.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.TransactionSelector;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.singleUse=g.google.spanner.v1.TransactionOptions.decode(e,e.uint32(),void 0,o+1);break;case 2:i.id=e.bytes();break;case 3:i.begin=g.google.spanner.v1.TransactionOptions.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ho.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ho.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.singleUse&&Object.hasOwnProperty.call(e,"singleUse")&&(n=g.google.spanner.v1.TransactionOptions.verify(e.singleUse,t+(o.selector=1))))return"singleUse."+n;if(null!=e.id&&Object.hasOwnProperty.call(e,"id")){if(1===o.selector)return"selector: multiple values";if(o.selector=1,!(e.id&&"number"==typeof e.id.length||d.isString(e.id)))return"id: buffer expected"}if(null!=e.begin&&Object.hasOwnProperty.call(e,"begin")){if(1===o.selector)return"selector: multiple values";if(n=g.google.spanner.v1.TransactionOptions.verify(e.begin,t+(o.selector=1)))return"begin."+n}return null},Ho.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.TransactionSelector)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.TransactionSelector: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.TransactionSelector;if(null!=e.singleUse){if(!d.isObject(e.singleUse))throw TypeError(".google.spanner.v1.TransactionSelector.singleUse: object expected");n.singleUse=g.google.spanner.v1.TransactionOptions.fromObject(e.singleUse,t+1)}if(null!=e.id&&("string"==typeof e.id?d.base64.decode(e.id,n.id=d.newBuffer(d.base64.length(e.id)),0):0<=e.id.length&&(n.id=e.id)),null!=e.begin){if(!d.isObject(e.begin))throw TypeError(".google.spanner.v1.TransactionSelector.begin: object expected");n.begin=g.google.spanner.v1.TransactionOptions.fromObject(e.begin,t+1)}return n},Ho.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.singleUse&&Object.hasOwnProperty.call(e,"singleUse")&&(o.singleUse=g.google.spanner.v1.TransactionOptions.toObject(e.singleUse,t,n+1),t.oneofs)&&(o.selector="singleUse"),null!=e.id&&Object.hasOwnProperty.call(e,"id")&&(o.id=t.bytes===String?d.base64.encode(e.id,0,e.id.length):t.bytes===Array?Array.prototype.slice.call(e.id):e.id,t.oneofs)&&(o.selector="id"),null!=e.begin&&Object.hasOwnProperty.call(e,"begin")&&(o.begin=g.google.spanner.v1.TransactionOptions.toObject(e.begin,t,n+1),t.oneofs)&&(o.selector="begin"),o},Ho.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ho.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.TransactionSelector"},Ho),r.MultiplexedSessionPrecommitToken=(Yo.prototype.precommitToken=d.newBuffer([]),Yo.prototype.seqNum=0,Yo.create=function(e){return new Yo(e)},Yo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&t.uint32(10).bytes(e.precommitToken),null!=e.seqNum&&Object.hasOwnProperty.call(e,"seqNum")&&t.uint32(16).int32(e.seqNum),t},Yo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Yo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.MultiplexedSessionPrecommitToken;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.precommitToken=e.bytes();break;case 2:i.seqNum=e.int32();break;default:e.skipType(7&a,o)}}return i},Yo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Yo.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&!(e.precommitToken&&"number"==typeof e.precommitToken.length||d.isString(e.precommitToken))?"precommitToken: buffer expected":null!=e.seqNum&&Object.hasOwnProperty.call(e,"seqNum")&&!d.isInteger(e.seqNum)?"seqNum: integer expected":null},Yo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.MultiplexedSessionPrecommitToken)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.MultiplexedSessionPrecommitToken: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.MultiplexedSessionPrecommitToken;return null!=e.precommitToken&&("string"==typeof e.precommitToken?d.base64.decode(e.precommitToken,t.precommitToken=d.newBuffer(d.base64.length(e.precommitToken)),0):0<=e.precommitToken.length&&(t.precommitToken=e.precommitToken)),null!=e.seqNum&&(t.seqNum=0|e.seqNum),t},Yo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(t.bytes===String?n.precommitToken="":(n.precommitToken=[],t.bytes!==Array&&(n.precommitToken=d.newBuffer(n.precommitToken))),n.seqNum=0),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(n.precommitToken=t.bytes===String?d.base64.encode(e.precommitToken,0,e.precommitToken.length):t.bytes===Array?Array.prototype.slice.call(e.precommitToken):e.precommitToken),null!=e.seqNum&&Object.hasOwnProperty.call(e,"seqNum")&&(n.seqNum=e.seqNum),n},Yo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Yo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.MultiplexedSessionPrecommitToken"},Yo),r.KeyRange=(Qo.prototype.startClosed=null,Qo.prototype.startOpen=null,Qo.prototype.endClosed=null,Qo.prototype.endOpen=null,Object.defineProperty(Qo.prototype,"startKeyType",{get:d.oneOfGetter(t=["startClosed","startOpen"]),set:d.oneOfSetter(t)}),Object.defineProperty(Qo.prototype,"endKeyType",{get:d.oneOfGetter(t=["endClosed","endOpen"]),set:d.oneOfSetter(t)}),Qo.create=function(e){return new Qo(e)},Qo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.startClosed&&Object.hasOwnProperty.call(e,"startClosed")&&g.google.protobuf.ListValue.encode(e.startClosed,t.uint32(10).fork(),n+1).ldelim(),null!=e.startOpen&&Object.hasOwnProperty.call(e,"startOpen")&&g.google.protobuf.ListValue.encode(e.startOpen,t.uint32(18).fork(),n+1).ldelim(),null!=e.endClosed&&Object.hasOwnProperty.call(e,"endClosed")&&g.google.protobuf.ListValue.encode(e.endClosed,t.uint32(26).fork(),n+1).ldelim(),null!=e.endOpen&&Object.hasOwnProperty.call(e,"endOpen")&&g.google.protobuf.ListValue.encode(e.endOpen,t.uint32(34).fork(),n+1).ldelim(),t},Qo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Qo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.KeyRange;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.startClosed=g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1);break;case 2:i.startOpen=g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1);break;case 3:i.endClosed=g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1);break;case 4:i.endOpen=g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Qo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Qo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.startClosed&&Object.hasOwnProperty.call(e,"startClosed")&&(n=g.google.protobuf.ListValue.verify(e.startClosed,t+(o.startKeyType=1))))return"startClosed."+n;if(null!=e.startOpen&&Object.hasOwnProperty.call(e,"startOpen")){if(1===o.startKeyType)return"startKeyType: multiple values";if(n=g.google.protobuf.ListValue.verify(e.startOpen,t+(o.startKeyType=1)))return"startOpen."+n}if(null!=e.endClosed&&Object.hasOwnProperty.call(e,"endClosed")&&(n=g.google.protobuf.ListValue.verify(e.endClosed,t+(o.endKeyType=1))))return"endClosed."+n;if(null!=e.endOpen&&Object.hasOwnProperty.call(e,"endOpen")){if(1===o.endKeyType)return"endKeyType: multiple values";if(n=g.google.protobuf.ListValue.verify(e.endOpen,t+(o.endKeyType=1)))return"endOpen."+n}return null},Qo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.KeyRange)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.KeyRange: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.KeyRange;if(null!=e.startClosed){if(!d.isObject(e.startClosed))throw TypeError(".google.spanner.v1.KeyRange.startClosed: object expected");n.startClosed=g.google.protobuf.ListValue.fromObject(e.startClosed,t+1)}if(null!=e.startOpen){if(!d.isObject(e.startOpen))throw TypeError(".google.spanner.v1.KeyRange.startOpen: object expected");n.startOpen=g.google.protobuf.ListValue.fromObject(e.startOpen,t+1)}if(null!=e.endClosed){if(!d.isObject(e.endClosed))throw TypeError(".google.spanner.v1.KeyRange.endClosed: object expected");n.endClosed=g.google.protobuf.ListValue.fromObject(e.endClosed,t+1)}if(null!=e.endOpen){if(!d.isObject(e.endOpen))throw TypeError(".google.spanner.v1.KeyRange.endOpen: object expected");n.endOpen=g.google.protobuf.ListValue.fromObject(e.endOpen,t+1)}return n},Qo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.startClosed&&Object.hasOwnProperty.call(e,"startClosed")&&(o.startClosed=g.google.protobuf.ListValue.toObject(e.startClosed,t,n+1),t.oneofs)&&(o.startKeyType="startClosed"),null!=e.startOpen&&Object.hasOwnProperty.call(e,"startOpen")&&(o.startOpen=g.google.protobuf.ListValue.toObject(e.startOpen,t,n+1),t.oneofs)&&(o.startKeyType="startOpen"),null!=e.endClosed&&Object.hasOwnProperty.call(e,"endClosed")&&(o.endClosed=g.google.protobuf.ListValue.toObject(e.endClosed,t,n+1),t.oneofs)&&(o.endKeyType="endClosed"),null!=e.endOpen&&Object.hasOwnProperty.call(e,"endOpen")&&(o.endOpen=g.google.protobuf.ListValue.toObject(e.endOpen,t,n+1),t.oneofs)&&(o.endKeyType="endOpen"),o},Qo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Qo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.KeyRange"},Qo),r.KeySet=(Wo.prototype.keys=d.emptyArray,Wo.prototype.ranges=d.emptyArray,Wo.prototype.all=!1,Wo.create=function(e){return new Wo(e)},Wo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.keys&&e.keys.length)for(var o=0;o<e.keys.length;++o)g.google.protobuf.ListValue.encode(e.keys[o],t.uint32(10).fork(),n+1).ldelim();if(null!=e.ranges&&e.ranges.length)for(o=0;o<e.ranges.length;++o)g.google.spanner.v1.KeyRange.encode(e.ranges[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.all&&Object.hasOwnProperty.call(e,"all")&&t.uint32(24).bool(e.all),t},Wo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Wo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.KeySet;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.keys&&i.keys.length||(i.keys=[]),i.keys.push(g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1));break;case 2:i.ranges&&i.ranges.length||(i.ranges=[]),i.ranges.push(g.google.spanner.v1.KeyRange.decode(e,e.uint32(),void 0,o+1));break;case 3:i.all=e.bool();break;default:e.skipType(7&a,o)}}return i},Wo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Wo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.keys&&Object.hasOwnProperty.call(e,"keys")){if(!Array.isArray(e.keys))return"keys: array expected";for(var n=0;n<e.keys.length;++n)if(o=g.google.protobuf.ListValue.verify(e.keys[n],t+1))return"keys."+o}if(null!=e.ranges&&Object.hasOwnProperty.call(e,"ranges")){if(!Array.isArray(e.ranges))return"ranges: array expected";for(var o,n=0;n<e.ranges.length;++n)if(o=g.google.spanner.v1.KeyRange.verify(e.ranges[n],t+1))return"ranges."+o}return null!=e.all&&Object.hasOwnProperty.call(e,"all")&&"boolean"!=typeof e.all?"all: boolean expected":null},Wo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.KeySet)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.KeySet: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.KeySet;if(e.keys){if(!Array.isArray(e.keys))throw TypeError(".google.spanner.v1.KeySet.keys: array expected");n.keys=[];for(var o=0;o<e.keys.length;++o){if(!d.isObject(e.keys[o]))throw TypeError(".google.spanner.v1.KeySet.keys: object expected");n.keys[o]=g.google.protobuf.ListValue.fromObject(e.keys[o],t+1)}}if(e.ranges){if(!Array.isArray(e.ranges))throw TypeError(".google.spanner.v1.KeySet.ranges: array expected");n.ranges=[];for(o=0;o<e.ranges.length;++o){if(!d.isObject(e.ranges[o]))throw TypeError(".google.spanner.v1.KeySet.ranges: object expected");n.ranges[o]=g.google.spanner.v1.KeyRange.fromObject(e.ranges[o],t+1)}}return null!=e.all&&(n.all=Boolean(e.all)),n},Wo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.keys=[],o.ranges=[]),t.defaults&&(o.all=!1),e.keys&&e.keys.length){o.keys=[];for(var r=0;r<e.keys.length;++r)o.keys[r]=g.google.protobuf.ListValue.toObject(e.keys[r],t,n+1)}if(e.ranges&&e.ranges.length){o.ranges=[];for(r=0;r<e.ranges.length;++r)o.ranges[r]=g.google.spanner.v1.KeyRange.toObject(e.ranges[r],t,n+1)}return null!=e.all&&Object.hasOwnProperty.call(e,"all")&&(o.all=e.all),o},Wo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Wo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.KeySet"},Wo),r.Mutation=(I.prototype.insert=null,I.prototype.update=null,I.prototype.insertOrUpdate=null,I.prototype.replace=null,I.prototype.delete=null,I.prototype.send=null,I.prototype.ack=null,Object.defineProperty(I.prototype,"operation",{get:d.oneOfGetter(a=["insert","update","insertOrUpdate","replace","delete","send","ack"]),set:d.oneOfSetter(a)}),I.create=function(e){return new I(e)},I.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.insert&&Object.hasOwnProperty.call(e,"insert")&&g.google.spanner.v1.Mutation.Write.encode(e.insert,t.uint32(10).fork(),n+1).ldelim(),null!=e.update&&Object.hasOwnProperty.call(e,"update")&&g.google.spanner.v1.Mutation.Write.encode(e.update,t.uint32(18).fork(),n+1).ldelim(),null!=e.insertOrUpdate&&Object.hasOwnProperty.call(e,"insertOrUpdate")&&g.google.spanner.v1.Mutation.Write.encode(e.insertOrUpdate,t.uint32(26).fork(),n+1).ldelim(),null!=e.replace&&Object.hasOwnProperty.call(e,"replace")&&g.google.spanner.v1.Mutation.Write.encode(e.replace,t.uint32(34).fork(),n+1).ldelim(),null!=e.delete&&Object.hasOwnProperty.call(e,"delete")&&g.google.spanner.v1.Mutation.Delete.encode(e.delete,t.uint32(42).fork(),n+1).ldelim(),null!=e.send&&Object.hasOwnProperty.call(e,"send")&&g.google.spanner.v1.Mutation.Send.encode(e.send,t.uint32(50).fork(),n+1).ldelim(),null!=e.ack&&Object.hasOwnProperty.call(e,"ack")&&g.google.spanner.v1.Mutation.Ack.encode(e.ack,t.uint32(58).fork(),n+1).ldelim(),t},I.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},I.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Mutation;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.insert=g.google.spanner.v1.Mutation.Write.decode(e,e.uint32(),void 0,o+1);break;case 2:i.update=g.google.spanner.v1.Mutation.Write.decode(e,e.uint32(),void 0,o+1);break;case 3:i.insertOrUpdate=g.google.spanner.v1.Mutation.Write.decode(e,e.uint32(),void 0,o+1);break;case 4:i.replace=g.google.spanner.v1.Mutation.Write.decode(e,e.uint32(),void 0,o+1);break;case 5:i.delete=g.google.spanner.v1.Mutation.Delete.decode(e,e.uint32(),void 0,o+1);break;case 6:i.send=g.google.spanner.v1.Mutation.Send.decode(e,e.uint32(),void 0,o+1);break;case 7:i.ack=g.google.spanner.v1.Mutation.Ack.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},I.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},I.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.insert&&Object.hasOwnProperty.call(e,"insert")&&(n=g.google.spanner.v1.Mutation.Write.verify(e.insert,t+(o.operation=1))))return"insert."+n;if(null!=e.update&&Object.hasOwnProperty.call(e,"update")){if(1===o.operation)return"operation: multiple values";if(n=g.google.spanner.v1.Mutation.Write.verify(e.update,t+(o.operation=1)))return"update."+n}if(null!=e.insertOrUpdate&&Object.hasOwnProperty.call(e,"insertOrUpdate")){if(1===o.operation)return"operation: multiple values";if(n=g.google.spanner.v1.Mutation.Write.verify(e.insertOrUpdate,t+(o.operation=1)))return"insertOrUpdate."+n}if(null!=e.replace&&Object.hasOwnProperty.call(e,"replace")){if(1===o.operation)return"operation: multiple values";if(n=g.google.spanner.v1.Mutation.Write.verify(e.replace,t+(o.operation=1)))return"replace."+n}if(null!=e.delete&&Object.hasOwnProperty.call(e,"delete")){if(1===o.operation)return"operation: multiple values";if(n=g.google.spanner.v1.Mutation.Delete.verify(e.delete,t+(o.operation=1)))return"delete."+n}if(null!=e.send&&Object.hasOwnProperty.call(e,"send")){if(1===o.operation)return"operation: multiple values";if(n=g.google.spanner.v1.Mutation.Send.verify(e.send,t+(o.operation=1)))return"send."+n}if(null!=e.ack&&Object.hasOwnProperty.call(e,"ack")){if(1===o.operation)return"operation: multiple values";if(n=g.google.spanner.v1.Mutation.Ack.verify(e.ack,t+(o.operation=1)))return"ack."+n}return null},I.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Mutation)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Mutation: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Mutation;if(null!=e.insert){if(!d.isObject(e.insert))throw TypeError(".google.spanner.v1.Mutation.insert: object expected");n.insert=g.google.spanner.v1.Mutation.Write.fromObject(e.insert,t+1)}if(null!=e.update){if(!d.isObject(e.update))throw TypeError(".google.spanner.v1.Mutation.update: object expected");n.update=g.google.spanner.v1.Mutation.Write.fromObject(e.update,t+1)}if(null!=e.insertOrUpdate){if(!d.isObject(e.insertOrUpdate))throw TypeError(".google.spanner.v1.Mutation.insertOrUpdate: object expected");n.insertOrUpdate=g.google.spanner.v1.Mutation.Write.fromObject(e.insertOrUpdate,t+1)}if(null!=e.replace){if(!d.isObject(e.replace))throw TypeError(".google.spanner.v1.Mutation.replace: object expected");n.replace=g.google.spanner.v1.Mutation.Write.fromObject(e.replace,t+1)}if(null!=e.delete){if(!d.isObject(e.delete))throw TypeError(".google.spanner.v1.Mutation.delete: object expected");n.delete=g.google.spanner.v1.Mutation.Delete.fromObject(e.delete,t+1)}if(null!=e.send){if(!d.isObject(e.send))throw TypeError(".google.spanner.v1.Mutation.send: object expected");n.send=g.google.spanner.v1.Mutation.Send.fromObject(e.send,t+1)}if(null!=e.ack){if(!d.isObject(e.ack))throw TypeError(".google.spanner.v1.Mutation.ack: object expected");n.ack=g.google.spanner.v1.Mutation.Ack.fromObject(e.ack,t+1)}return n},I.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.insert&&Object.hasOwnProperty.call(e,"insert")&&(o.insert=g.google.spanner.v1.Mutation.Write.toObject(e.insert,t,n+1),t.oneofs)&&(o.operation="insert"),null!=e.update&&Object.hasOwnProperty.call(e,"update")&&(o.update=g.google.spanner.v1.Mutation.Write.toObject(e.update,t,n+1),t.oneofs)&&(o.operation="update"),null!=e.insertOrUpdate&&Object.hasOwnProperty.call(e,"insertOrUpdate")&&(o.insertOrUpdate=g.google.spanner.v1.Mutation.Write.toObject(e.insertOrUpdate,t,n+1),t.oneofs)&&(o.operation="insertOrUpdate"),null!=e.replace&&Object.hasOwnProperty.call(e,"replace")&&(o.replace=g.google.spanner.v1.Mutation.Write.toObject(e.replace,t,n+1),t.oneofs)&&(o.operation="replace"),null!=e.delete&&Object.hasOwnProperty.call(e,"delete")&&(o.delete=g.google.spanner.v1.Mutation.Delete.toObject(e.delete,t,n+1),t.oneofs)&&(o.operation="delete"),null!=e.send&&Object.hasOwnProperty.call(e,"send")&&(o.send=g.google.spanner.v1.Mutation.Send.toObject(e.send,t,n+1),t.oneofs)&&(o.operation="send"),null!=e.ack&&Object.hasOwnProperty.call(e,"ack")&&(o.ack=g.google.spanner.v1.Mutation.Ack.toObject(e.ack,t,n+1),t.oneofs)&&(o.operation="ack"),o},I.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},I.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Mutation"},I.Write=(Xo.prototype.table="",Xo.prototype.columns=d.emptyArray,Xo.prototype.values=d.emptyArray,Xo.create=function(e){return new Xo(e)},Xo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(10).string(e.table),null!=e.columns&&e.columns.length)for(var o=0;o<e.columns.length;++o)t.uint32(18).string(e.columns[o]);if(null!=e.values&&e.values.length)for(o=0;o<e.values.length;++o)g.google.protobuf.ListValue.encode(e.values[o],t.uint32(26).fork(),n+1).ldelim();return t},Xo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Xo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Mutation.Write;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.table=e.string();break;case 2:i.columns&&i.columns.length||(i.columns=[]),i.columns.push(e.string());break;case 3:i.values&&i.values.length||(i.values=[]),i.values.push(g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Xo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Xo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";if(null!=e.columns&&Object.hasOwnProperty.call(e,"columns")){if(!Array.isArray(e.columns))return"columns: array expected";for(var n=0;n<e.columns.length;++n)if(!d.isString(e.columns[n]))return"columns: string[] expected"}if(null!=e.values&&Object.hasOwnProperty.call(e,"values")){if(!Array.isArray(e.values))return"values: array expected";for(n=0;n<e.values.length;++n){var o=g.google.protobuf.ListValue.verify(e.values[n],t+1);if(o)return"values."+o}}return null},Xo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Mutation.Write)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Mutation.Write: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Mutation.Write;if(null!=e.table&&(n.table=String(e.table)),e.columns){if(!Array.isArray(e.columns))throw TypeError(".google.spanner.v1.Mutation.Write.columns: array expected");n.columns=[];for(var o=0;o<e.columns.length;++o)n.columns[o]=String(e.columns[o])}if(e.values){if(!Array.isArray(e.values))throw TypeError(".google.spanner.v1.Mutation.Write.values: array expected");n.values=[];for(o=0;o<e.values.length;++o){if(!d.isObject(e.values[o]))throw TypeError(".google.spanner.v1.Mutation.Write.values: object expected");n.values[o]=g.google.protobuf.ListValue.fromObject(e.values[o],t+1)}}return n},Xo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.columns=[],o.values=[]),t.defaults&&(o.table=""),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(o.table=e.table),e.columns&&e.columns.length){o.columns=[];for(var r=0;r<e.columns.length;++r)o.columns[r]=e.columns[r]}if(e.values&&e.values.length){o.values=[];for(r=0;r<e.values.length;++r)o.values[r]=g.google.protobuf.ListValue.toObject(e.values[r],t,n+1)}return o},Xo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Xo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Mutation.Write"},Xo),I.Delete=(Zo.prototype.table="",Zo.prototype.keySet=null,Zo.create=function(e){return new Zo(e)},Zo.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(10).string(e.table),null!=e.keySet&&Object.hasOwnProperty.call(e,"keySet")&&g.google.spanner.v1.KeySet.encode(e.keySet,t.uint32(18).fork(),n+1).ldelim(),t},Zo.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Zo.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Mutation.Delete;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.table=e.string();break;case 2:i.keySet=g.google.spanner.v1.KeySet.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Zo.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Zo.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";if(null!=e.keySet&&Object.hasOwnProperty.call(e,"keySet")){e=g.google.spanner.v1.KeySet.verify(e.keySet,t+1);if(e)return"keySet."+e}return null},Zo.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Mutation.Delete)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Mutation.Delete: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Mutation.Delete;if(null!=e.table&&(n.table=String(e.table)),null!=e.keySet){if(!d.isObject(e.keySet))throw TypeError(".google.spanner.v1.Mutation.Delete.keySet: object expected");n.keySet=g.google.spanner.v1.KeySet.fromObject(e.keySet,t+1)}return n},Zo.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.table="",o.keySet=null),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(o.table=e.table),null!=e.keySet&&Object.hasOwnProperty.call(e,"keySet")&&(o.keySet=g.google.spanner.v1.KeySet.toObject(e.keySet,t,n+1)),o},Zo.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Zo.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Mutation.Delete"},Zo),I.Send=($o.prototype.queue="",$o.prototype.key=null,$o.prototype.deliverTime=null,$o.prototype.payload=null,$o.create=function(e){return new $o(e)},$o.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.queue&&Object.hasOwnProperty.call(e,"queue")&&t.uint32(10).string(e.queue),null!=e.key&&Object.hasOwnProperty.call(e,"key")&&g.google.protobuf.ListValue.encode(e.key,t.uint32(18).fork(),n+1).ldelim(),null!=e.deliverTime&&Object.hasOwnProperty.call(e,"deliverTime")&&g.google.protobuf.Timestamp.encode(e.deliverTime,t.uint32(26).fork(),n+1).ldelim(),null!=e.payload&&Object.hasOwnProperty.call(e,"payload")&&g.google.protobuf.Value.encode(e.payload,t.uint32(34).fork(),n+1).ldelim(),t},$o.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},$o.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Mutation.Send;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.queue=e.string();break;case 2:i.key=g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1);break;case 3:i.deliverTime=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 4:i.payload=g.google.protobuf.Value.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},$o.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},$o.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.queue&&Object.hasOwnProperty.call(e,"queue")&&!d.isString(e.queue))return"queue: string expected";var n;if(null!=e.key&&Object.hasOwnProperty.call(e,"key")&&(n=g.google.protobuf.ListValue.verify(e.key,t+1)))return"key."+n;if(null!=e.deliverTime&&Object.hasOwnProperty.call(e,"deliverTime")&&(n=g.google.protobuf.Timestamp.verify(e.deliverTime,t+1)))return"deliverTime."+n;if(null!=e.payload&&Object.hasOwnProperty.call(e,"payload")&&(n=g.google.protobuf.Value.verify(e.payload,t+1)))return"payload."+n;return null},$o.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Mutation.Send)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Mutation.Send: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Mutation.Send;if(null!=e.queue&&(n.queue=String(e.queue)),null!=e.key){if(!d.isObject(e.key))throw TypeError(".google.spanner.v1.Mutation.Send.key: object expected");n.key=g.google.protobuf.ListValue.fromObject(e.key,t+1)}if(null!=e.deliverTime){if(!d.isObject(e.deliverTime))throw TypeError(".google.spanner.v1.Mutation.Send.deliverTime: object expected");n.deliverTime=g.google.protobuf.Timestamp.fromObject(e.deliverTime,t+1)}if(null!=e.payload){if(!d.isObject(e.payload))throw TypeError(".google.spanner.v1.Mutation.Send.payload: object expected");n.payload=g.google.protobuf.Value.fromObject(e.payload,t+1)}return n},$o.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.queue="",o.key=null,o.deliverTime=null,o.payload=null),null!=e.queue&&Object.hasOwnProperty.call(e,"queue")&&(o.queue=e.queue),null!=e.key&&Object.hasOwnProperty.call(e,"key")&&(o.key=g.google.protobuf.ListValue.toObject(e.key,t,n+1)),null!=e.deliverTime&&Object.hasOwnProperty.call(e,"deliverTime")&&(o.deliverTime=g.google.protobuf.Timestamp.toObject(e.deliverTime,t,n+1)),null!=e.payload&&Object.hasOwnProperty.call(e,"payload")&&(o.payload=g.google.protobuf.Value.toObject(e.payload,t,n+1)),o},$o.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},$o.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Mutation.Send"},$o),I.Ack=(er.prototype.queue="",er.prototype.key=null,er.prototype.ignoreNotFound=!1,er.create=function(e){return new er(e)},er.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.queue&&Object.hasOwnProperty.call(e,"queue")&&t.uint32(10).string(e.queue),null!=e.key&&Object.hasOwnProperty.call(e,"key")&&g.google.protobuf.ListValue.encode(e.key,t.uint32(18).fork(),n+1).ldelim(),null!=e.ignoreNotFound&&Object.hasOwnProperty.call(e,"ignoreNotFound")&&t.uint32(24).bool(e.ignoreNotFound),t},er.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},er.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.Mutation.Ack;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.queue=e.string();break;case 2:i.key=g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1);break;case 3:i.ignoreNotFound=e.bool();break;default:e.skipType(7&a,o)}}return i},er.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},er.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.queue&&Object.hasOwnProperty.call(e,"queue")&&!d.isString(e.queue))return"queue: string expected";if(null!=e.key&&Object.hasOwnProperty.call(e,"key")){t=g.google.protobuf.ListValue.verify(e.key,t+1);if(t)return"key."+t}return null!=e.ignoreNotFound&&Object.hasOwnProperty.call(e,"ignoreNotFound")&&"boolean"!=typeof e.ignoreNotFound?"ignoreNotFound: boolean expected":null},er.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.Mutation.Ack)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.Mutation.Ack: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.Mutation.Ack;if(null!=e.queue&&(n.queue=String(e.queue)),null!=e.key){if(!d.isObject(e.key))throw TypeError(".google.spanner.v1.Mutation.Ack.key: object expected");n.key=g.google.protobuf.ListValue.fromObject(e.key,t+1)}return null!=e.ignoreNotFound&&(n.ignoreNotFound=Boolean(e.ignoreNotFound)),n},er.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.queue="",o.key=null,o.ignoreNotFound=!1),null!=e.queue&&Object.hasOwnProperty.call(e,"queue")&&(o.queue=e.queue),null!=e.key&&Object.hasOwnProperty.call(e,"key")&&(o.key=g.google.protobuf.ListValue.toObject(e.key,t,n+1)),null!=e.ignoreNotFound&&Object.hasOwnProperty.call(e,"ignoreNotFound")&&(o.ignoreNotFound=e.ignoreNotFound),o},er.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},er.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.Mutation.Ack"},er),I),r.ResultSet=(tr.prototype.metadata=null,tr.prototype.rows=d.emptyArray,tr.prototype.stats=null,tr.prototype.precommitToken=null,tr.prototype.cacheUpdate=null,tr.create=function(e){return new tr(e)},tr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&g.google.spanner.v1.ResultSetMetadata.encode(e.metadata,t.uint32(10).fork(),n+1).ldelim(),null!=e.rows&&e.rows.length)for(var o=0;o<e.rows.length;++o)g.google.protobuf.ListValue.encode(e.rows[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.stats&&Object.hasOwnProperty.call(e,"stats")&&g.google.spanner.v1.ResultSetStats.encode(e.stats,t.uint32(26).fork(),n+1).ldelim(),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&g.google.spanner.v1.MultiplexedSessionPrecommitToken.encode(e.precommitToken,t.uint32(42).fork(),n+1).ldelim(),null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&g.google.spanner.v1.CacheUpdate.encode(e.cacheUpdate,t.uint32(50).fork(),n+1).ldelim(),t},tr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},tr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ResultSet;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.metadata=g.google.spanner.v1.ResultSetMetadata.decode(e,e.uint32(),void 0,o+1);break;case 2:i.rows&&i.rows.length||(i.rows=[]),i.rows.push(g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1));break;case 3:i.stats=g.google.spanner.v1.ResultSetStats.decode(e,e.uint32(),void 0,o+1);break;case 5:i.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.decode(e,e.uint32(),void 0,o+1);break;case 6:i.cacheUpdate=g.google.spanner.v1.CacheUpdate.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},tr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},tr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&(n=g.google.spanner.v1.ResultSetMetadata.verify(e.metadata,t+1)))return"metadata."+n;if(null!=e.rows&&Object.hasOwnProperty.call(e,"rows")){if(!Array.isArray(e.rows))return"rows: array expected";for(var n,o=0;o<e.rows.length;++o)if(n=g.google.protobuf.ListValue.verify(e.rows[o],t+1))return"rows."+n}if(null!=e.stats&&Object.hasOwnProperty.call(e,"stats")&&(n=g.google.spanner.v1.ResultSetStats.verify(e.stats,t+1)))return"stats."+n;if(null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(n=g.google.spanner.v1.MultiplexedSessionPrecommitToken.verify(e.precommitToken,t+1)))return"precommitToken."+n;if(null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&(n=g.google.spanner.v1.CacheUpdate.verify(e.cacheUpdate,t+1)))return"cacheUpdate."+n;return null},tr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ResultSet)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ResultSet: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ResultSet;if(null!=e.metadata){if(!d.isObject(e.metadata))throw TypeError(".google.spanner.v1.ResultSet.metadata: object expected");n.metadata=g.google.spanner.v1.ResultSetMetadata.fromObject(e.metadata,t+1)}if(e.rows){if(!Array.isArray(e.rows))throw TypeError(".google.spanner.v1.ResultSet.rows: array expected");n.rows=[];for(var o=0;o<e.rows.length;++o){if(!d.isObject(e.rows[o]))throw TypeError(".google.spanner.v1.ResultSet.rows: object expected");n.rows[o]=g.google.protobuf.ListValue.fromObject(e.rows[o],t+1)}}if(null!=e.stats){if(!d.isObject(e.stats))throw TypeError(".google.spanner.v1.ResultSet.stats: object expected");n.stats=g.google.spanner.v1.ResultSetStats.fromObject(e.stats,t+1)}if(null!=e.precommitToken){if(!d.isObject(e.precommitToken))throw TypeError(".google.spanner.v1.ResultSet.precommitToken: object expected");n.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.fromObject(e.precommitToken,t+1)}if(null!=e.cacheUpdate){if(!d.isObject(e.cacheUpdate))throw TypeError(".google.spanner.v1.ResultSet.cacheUpdate: object expected");n.cacheUpdate=g.google.spanner.v1.CacheUpdate.fromObject(e.cacheUpdate,t+1)}return n},tr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.rows=[]),t.defaults&&(o.metadata=null,o.stats=null,o.precommitToken=null,o.cacheUpdate=null),null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&(o.metadata=g.google.spanner.v1.ResultSetMetadata.toObject(e.metadata,t,n+1)),e.rows&&e.rows.length){o.rows=[];for(var r=0;r<e.rows.length;++r)o.rows[r]=g.google.protobuf.ListValue.toObject(e.rows[r],t,n+1)}return null!=e.stats&&Object.hasOwnProperty.call(e,"stats")&&(o.stats=g.google.spanner.v1.ResultSetStats.toObject(e.stats,t,n+1)),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(o.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.toObject(e.precommitToken,t,n+1)),null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&(o.cacheUpdate=g.google.spanner.v1.CacheUpdate.toObject(e.cacheUpdate,t,n+1)),o},tr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},tr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ResultSet"},tr),r.PartialResultSet=(nr.prototype.metadata=null,nr.prototype.values=d.emptyArray,nr.prototype.chunkedValue=!1,nr.prototype.resumeToken=d.newBuffer([]),nr.prototype.stats=null,nr.prototype.precommitToken=null,nr.prototype.last=!1,nr.prototype.cacheUpdate=null,nr.create=function(e){return new nr(e)},nr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&g.google.spanner.v1.ResultSetMetadata.encode(e.metadata,t.uint32(10).fork(),n+1).ldelim(),null!=e.values&&e.values.length)for(var o=0;o<e.values.length;++o)g.google.protobuf.Value.encode(e.values[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.chunkedValue&&Object.hasOwnProperty.call(e,"chunkedValue")&&t.uint32(24).bool(e.chunkedValue),null!=e.resumeToken&&Object.hasOwnProperty.call(e,"resumeToken")&&t.uint32(34).bytes(e.resumeToken),null!=e.stats&&Object.hasOwnProperty.call(e,"stats")&&g.google.spanner.v1.ResultSetStats.encode(e.stats,t.uint32(42).fork(),n+1).ldelim(),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&g.google.spanner.v1.MultiplexedSessionPrecommitToken.encode(e.precommitToken,t.uint32(66).fork(),n+1).ldelim(),null!=e.last&&Object.hasOwnProperty.call(e,"last")&&t.uint32(72).bool(e.last),null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&g.google.spanner.v1.CacheUpdate.encode(e.cacheUpdate,t.uint32(82).fork(),n+1).ldelim(),t},nr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},nr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.PartialResultSet;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.metadata=g.google.spanner.v1.ResultSetMetadata.decode(e,e.uint32(),void 0,o+1);break;case 2:i.values&&i.values.length||(i.values=[]),i.values.push(g.google.protobuf.Value.decode(e,e.uint32(),void 0,o+1));break;case 3:i.chunkedValue=e.bool();break;case 4:i.resumeToken=e.bytes();break;case 5:i.stats=g.google.spanner.v1.ResultSetStats.decode(e,e.uint32(),void 0,o+1);break;case 8:i.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.decode(e,e.uint32(),void 0,o+1);break;case 9:i.last=e.bool();break;case 10:i.cacheUpdate=g.google.spanner.v1.CacheUpdate.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},nr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},nr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&(n=g.google.spanner.v1.ResultSetMetadata.verify(e.metadata,t+1)))return"metadata."+n;if(null!=e.values&&Object.hasOwnProperty.call(e,"values")){if(!Array.isArray(e.values))return"values: array expected";for(var n,o=0;o<e.values.length;++o)if(n=g.google.protobuf.Value.verify(e.values[o],t+1))return"values."+n}if(null!=e.chunkedValue&&Object.hasOwnProperty.call(e,"chunkedValue")&&"boolean"!=typeof e.chunkedValue)return"chunkedValue: boolean expected";if(null!=e.resumeToken&&Object.hasOwnProperty.call(e,"resumeToken")&&!(e.resumeToken&&"number"==typeof e.resumeToken.length||d.isString(e.resumeToken)))return"resumeToken: buffer expected";if(null!=e.stats&&Object.hasOwnProperty.call(e,"stats")&&(n=g.google.spanner.v1.ResultSetStats.verify(e.stats,t+1)))return"stats."+n;if(null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(n=g.google.spanner.v1.MultiplexedSessionPrecommitToken.verify(e.precommitToken,t+1)))return"precommitToken."+n;if(null!=e.last&&Object.hasOwnProperty.call(e,"last")&&"boolean"!=typeof e.last)return"last: boolean expected";if(null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&(n=g.google.spanner.v1.CacheUpdate.verify(e.cacheUpdate,t+1)))return"cacheUpdate."+n;return null},nr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.PartialResultSet)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.PartialResultSet: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.PartialResultSet;if(null!=e.metadata){if(!d.isObject(e.metadata))throw TypeError(".google.spanner.v1.PartialResultSet.metadata: object expected");n.metadata=g.google.spanner.v1.ResultSetMetadata.fromObject(e.metadata,t+1)}if(e.values){if(!Array.isArray(e.values))throw TypeError(".google.spanner.v1.PartialResultSet.values: array expected");n.values=[];for(var o=0;o<e.values.length;++o){if(!d.isObject(e.values[o]))throw TypeError(".google.spanner.v1.PartialResultSet.values: object expected");n.values[o]=g.google.protobuf.Value.fromObject(e.values[o],t+1)}}if(null!=e.chunkedValue&&(n.chunkedValue=Boolean(e.chunkedValue)),null!=e.resumeToken&&("string"==typeof e.resumeToken?d.base64.decode(e.resumeToken,n.resumeToken=d.newBuffer(d.base64.length(e.resumeToken)),0):0<=e.resumeToken.length&&(n.resumeToken=e.resumeToken)),null!=e.stats){if(!d.isObject(e.stats))throw TypeError(".google.spanner.v1.PartialResultSet.stats: object expected");n.stats=g.google.spanner.v1.ResultSetStats.fromObject(e.stats,t+1)}if(null!=e.precommitToken){if(!d.isObject(e.precommitToken))throw TypeError(".google.spanner.v1.PartialResultSet.precommitToken: object expected");n.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.fromObject(e.precommitToken,t+1)}if(null!=e.last&&(n.last=Boolean(e.last)),null!=e.cacheUpdate){if(!d.isObject(e.cacheUpdate))throw TypeError(".google.spanner.v1.PartialResultSet.cacheUpdate: object expected");n.cacheUpdate=g.google.spanner.v1.CacheUpdate.fromObject(e.cacheUpdate,t+1)}return n},nr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.values=[]),t.defaults&&(o.metadata=null,o.chunkedValue=!1,t.bytes===String?o.resumeToken="":(o.resumeToken=[],t.bytes!==Array&&(o.resumeToken=d.newBuffer(o.resumeToken))),o.stats=null,o.precommitToken=null,o.last=!1,o.cacheUpdate=null),null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&(o.metadata=g.google.spanner.v1.ResultSetMetadata.toObject(e.metadata,t,n+1)),e.values&&e.values.length){o.values=[];for(var r=0;r<e.values.length;++r)o.values[r]=g.google.protobuf.Value.toObject(e.values[r],t,n+1)}return null!=e.chunkedValue&&Object.hasOwnProperty.call(e,"chunkedValue")&&(o.chunkedValue=e.chunkedValue),null!=e.resumeToken&&Object.hasOwnProperty.call(e,"resumeToken")&&(o.resumeToken=t.bytes===String?d.base64.encode(e.resumeToken,0,e.resumeToken.length):t.bytes===Array?Array.prototype.slice.call(e.resumeToken):e.resumeToken),null!=e.stats&&Object.hasOwnProperty.call(e,"stats")&&(o.stats=g.google.spanner.v1.ResultSetStats.toObject(e.stats,t,n+1)),null!=e.precommitToken&&Object.hasOwnProperty.call(e,"precommitToken")&&(o.precommitToken=g.google.spanner.v1.MultiplexedSessionPrecommitToken.toObject(e.precommitToken,t,n+1)),null!=e.last&&Object.hasOwnProperty.call(e,"last")&&(o.last=e.last),null!=e.cacheUpdate&&Object.hasOwnProperty.call(e,"cacheUpdate")&&(o.cacheUpdate=g.google.spanner.v1.CacheUpdate.toObject(e.cacheUpdate,t,n+1)),o},nr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},nr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.PartialResultSet"},nr),r.ResultSetMetadata=(or.prototype.rowType=null,or.prototype.transaction=null,or.prototype.undeclaredParameters=null,or.create=function(e){return new or(e)},or.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.rowType&&Object.hasOwnProperty.call(e,"rowType")&&g.google.spanner.v1.StructType.encode(e.rowType,t.uint32(10).fork(),n+1).ldelim(),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&g.google.spanner.v1.Transaction.encode(e.transaction,t.uint32(18).fork(),n+1).ldelim(),null!=e.undeclaredParameters&&Object.hasOwnProperty.call(e,"undeclaredParameters")&&g.google.spanner.v1.StructType.encode(e.undeclaredParameters,t.uint32(26).fork(),n+1).ldelim(),t},or.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},or.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ResultSetMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.rowType=g.google.spanner.v1.StructType.decode(e,e.uint32(),void 0,o+1);break;case 2:i.transaction=g.google.spanner.v1.Transaction.decode(e,e.uint32(),void 0,o+1);break;case 3:i.undeclaredParameters=g.google.spanner.v1.StructType.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},or.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},or.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.rowType&&Object.hasOwnProperty.call(e,"rowType")&&(n=g.google.spanner.v1.StructType.verify(e.rowType,t+1)))return"rowType."+n;if(null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(n=g.google.spanner.v1.Transaction.verify(e.transaction,t+1)))return"transaction."+n;if(null!=e.undeclaredParameters&&Object.hasOwnProperty.call(e,"undeclaredParameters")&&(n=g.google.spanner.v1.StructType.verify(e.undeclaredParameters,t+1)))return"undeclaredParameters."+n;return null},or.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ResultSetMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ResultSetMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ResultSetMetadata;if(null!=e.rowType){if(!d.isObject(e.rowType))throw TypeError(".google.spanner.v1.ResultSetMetadata.rowType: object expected");n.rowType=g.google.spanner.v1.StructType.fromObject(e.rowType,t+1)}if(null!=e.transaction){if(!d.isObject(e.transaction))throw TypeError(".google.spanner.v1.ResultSetMetadata.transaction: object expected");n.transaction=g.google.spanner.v1.Transaction.fromObject(e.transaction,t+1)}if(null!=e.undeclaredParameters){if(!d.isObject(e.undeclaredParameters))throw TypeError(".google.spanner.v1.ResultSetMetadata.undeclaredParameters: object expected");n.undeclaredParameters=g.google.spanner.v1.StructType.fromObject(e.undeclaredParameters,t+1)}return n},or.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.rowType=null,o.transaction=null,o.undeclaredParameters=null),null!=e.rowType&&Object.hasOwnProperty.call(e,"rowType")&&(o.rowType=g.google.spanner.v1.StructType.toObject(e.rowType,t,n+1)),null!=e.transaction&&Object.hasOwnProperty.call(e,"transaction")&&(o.transaction=g.google.spanner.v1.Transaction.toObject(e.transaction,t,n+1)),null!=e.undeclaredParameters&&Object.hasOwnProperty.call(e,"undeclaredParameters")&&(o.undeclaredParameters=g.google.spanner.v1.StructType.toObject(e.undeclaredParameters,t,n+1)),o},or.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},or.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ResultSetMetadata"},or),r.ResultSetStats=(rr.prototype.queryPlan=null,rr.prototype.queryStats=null,rr.prototype.rowCountExact=null,rr.prototype.rowCountLowerBound=null,Object.defineProperty(rr.prototype,"rowCount",{get:d.oneOfGetter(t=["rowCountExact","rowCountLowerBound"]),set:d.oneOfSetter(t)}),rr.create=function(e){return new rr(e)},rr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.queryPlan&&Object.hasOwnProperty.call(e,"queryPlan")&&g.google.spanner.v1.QueryPlan.encode(e.queryPlan,t.uint32(10).fork(),n+1).ldelim(),null!=e.queryStats&&Object.hasOwnProperty.call(e,"queryStats")&&g.google.protobuf.Struct.encode(e.queryStats,t.uint32(18).fork(),n+1).ldelim(),null!=e.rowCountExact&&Object.hasOwnProperty.call(e,"rowCountExact")&&t.uint32(24).int64(e.rowCountExact),null!=e.rowCountLowerBound&&Object.hasOwnProperty.call(e,"rowCountLowerBound")&&t.uint32(32).int64(e.rowCountLowerBound),t},rr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},rr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ResultSetStats;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.queryPlan=g.google.spanner.v1.QueryPlan.decode(e,e.uint32(),void 0,o+1);break;case 2:i.queryStats=g.google.protobuf.Struct.decode(e,e.uint32(),void 0,o+1);break;case 3:i.rowCountExact=e.int64();break;case 4:i.rowCountLowerBound=e.int64();break;default:e.skipType(7&a,o)}}return i},rr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},rr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.queryPlan&&Object.hasOwnProperty.call(e,"queryPlan")&&(n=g.google.spanner.v1.QueryPlan.verify(e.queryPlan,t+1)))return"queryPlan."+n;if(null!=e.queryStats&&Object.hasOwnProperty.call(e,"queryStats")&&(n=g.google.protobuf.Struct.verify(e.queryStats,t+1)))return"queryStats."+n;if(null!=e.rowCountExact&&Object.hasOwnProperty.call(e,"rowCountExact")&&(o.rowCount=1,!(d.isInteger(e.rowCountExact)||e.rowCountExact&&d.isInteger(e.rowCountExact.low)&&d.isInteger(e.rowCountExact.high))))return"rowCountExact: integer|Long expected";if(null!=e.rowCountLowerBound&&Object.hasOwnProperty.call(e,"rowCountLowerBound")){if(1===o.rowCount)return"rowCount: multiple values";if(o.rowCount=1,!(d.isInteger(e.rowCountLowerBound)||e.rowCountLowerBound&&d.isInteger(e.rowCountLowerBound.low)&&d.isInteger(e.rowCountLowerBound.high)))return"rowCountLowerBound: integer|Long expected"}return null},rr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ResultSetStats)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ResultSetStats: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ResultSetStats;if(null!=e.queryPlan){if(!d.isObject(e.queryPlan))throw TypeError(".google.spanner.v1.ResultSetStats.queryPlan: object expected");n.queryPlan=g.google.spanner.v1.QueryPlan.fromObject(e.queryPlan,t+1)}if(null!=e.queryStats){if(!d.isObject(e.queryStats))throw TypeError(".google.spanner.v1.ResultSetStats.queryStats: object expected");n.queryStats=g.google.protobuf.Struct.fromObject(e.queryStats,t+1)}return null!=e.rowCountExact&&(d.Long?n.rowCountExact=d.Long.fromValue(e.rowCountExact,!1):"string"==typeof e.rowCountExact?n.rowCountExact=parseInt(e.rowCountExact,10):"number"==typeof e.rowCountExact?n.rowCountExact=e.rowCountExact:"object"==typeof e.rowCountExact&&(n.rowCountExact=new d.LongBits(e.rowCountExact.low>>>0,e.rowCountExact.high>>>0).toNumber())),null!=e.rowCountLowerBound&&(d.Long?n.rowCountLowerBound=d.Long.fromValue(e.rowCountLowerBound,!1):"string"==typeof e.rowCountLowerBound?n.rowCountLowerBound=parseInt(e.rowCountLowerBound,10):"number"==typeof e.rowCountLowerBound?n.rowCountLowerBound=e.rowCountLowerBound:"object"==typeof e.rowCountLowerBound&&(n.rowCountLowerBound=new d.LongBits(e.rowCountLowerBound.low>>>0,e.rowCountLowerBound.high>>>0).toNumber())),n},rr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.queryPlan=null,o.queryStats=null),null!=e.queryPlan&&Object.hasOwnProperty.call(e,"queryPlan")&&(o.queryPlan=g.google.spanner.v1.QueryPlan.toObject(e.queryPlan,t,n+1)),null!=e.queryStats&&Object.hasOwnProperty.call(e,"queryStats")&&(o.queryStats=g.google.protobuf.Struct.toObject(e.queryStats,t,n+1)),null!=e.rowCountExact&&Object.hasOwnProperty.call(e,"rowCountExact")&&("undefined"!=typeof BigInt&&t.longs===BigInt?o.rowCountExact="number"==typeof e.rowCountExact?BigInt(e.rowCountExact):d.Long.fromBits(e.rowCountExact.low>>>0,e.rowCountExact.high>>>0,!1).toBigInt():"number"==typeof e.rowCountExact?o.rowCountExact=t.longs===String?String(e.rowCountExact):e.rowCountExact:o.rowCountExact=t.longs===String?d.Long.prototype.toString.call(e.rowCountExact):t.longs===Number?new d.LongBits(e.rowCountExact.low>>>0,e.rowCountExact.high>>>0).toNumber():e.rowCountExact,t.oneofs)&&(o.rowCount="rowCountExact"),null!=e.rowCountLowerBound&&Object.hasOwnProperty.call(e,"rowCountLowerBound")&&("undefined"!=typeof BigInt&&t.longs===BigInt?o.rowCountLowerBound="number"==typeof e.rowCountLowerBound?BigInt(e.rowCountLowerBound):d.Long.fromBits(e.rowCountLowerBound.low>>>0,e.rowCountLowerBound.high>>>0,!1).toBigInt():"number"==typeof e.rowCountLowerBound?o.rowCountLowerBound=t.longs===String?String(e.rowCountLowerBound):e.rowCountLowerBound:o.rowCountLowerBound=t.longs===String?d.Long.prototype.toString.call(e.rowCountLowerBound):t.longs===Number?new d.LongBits(e.rowCountLowerBound.low>>>0,e.rowCountLowerBound.high>>>0).toNumber():e.rowCountLowerBound,t.oneofs)&&(o.rowCount="rowCountLowerBound"),o},rr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},rr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ResultSetStats"},rr),r.PlanNode=(ir.prototype.index=0,ir.prototype.kind=0,ir.prototype.displayName="",ir.prototype.childLinks=d.emptyArray,ir.prototype.shortRepresentation=null,ir.prototype.metadata=null,ir.prototype.executionStats=null,ir.create=function(e){return new ir(e)},ir.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.index&&Object.hasOwnProperty.call(e,"index")&&t.uint32(8).int32(e.index),null!=e.kind&&Object.hasOwnProperty.call(e,"kind")&&t.uint32(16).int32(e.kind),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&t.uint32(26).string(e.displayName),null!=e.childLinks&&e.childLinks.length)for(var o=0;o<e.childLinks.length;++o)g.google.spanner.v1.PlanNode.ChildLink.encode(e.childLinks[o],t.uint32(34).fork(),n+1).ldelim();return null!=e.shortRepresentation&&Object.hasOwnProperty.call(e,"shortRepresentation")&&g.google.spanner.v1.PlanNode.ShortRepresentation.encode(e.shortRepresentation,t.uint32(42).fork(),n+1).ldelim(),null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&g.google.protobuf.Struct.encode(e.metadata,t.uint32(50).fork(),n+1).ldelim(),null!=e.executionStats&&Object.hasOwnProperty.call(e,"executionStats")&&g.google.protobuf.Struct.encode(e.executionStats,t.uint32(58).fork(),n+1).ldelim(),t},ir.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ir.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.PlanNode;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.index=e.int32();break;case 2:i.kind=e.int32();break;case 3:i.displayName=e.string();break;case 4:i.childLinks&&i.childLinks.length||(i.childLinks=[]),i.childLinks.push(g.google.spanner.v1.PlanNode.ChildLink.decode(e,e.uint32(),void 0,o+1));break;case 5:i.shortRepresentation=g.google.spanner.v1.PlanNode.ShortRepresentation.decode(e,e.uint32(),void 0,o+1);break;case 6:i.metadata=g.google.protobuf.Struct.decode(e,e.uint32(),void 0,o+1);break;case 7:i.executionStats=g.google.protobuf.Struct.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ir.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ir.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.index&&Object.hasOwnProperty.call(e,"index")&&!d.isInteger(e.index))return"index: integer expected";if(null!=e.kind&&Object.hasOwnProperty.call(e,"kind"))switch(e.kind){default:return"kind: enum value expected";case 0:case 1:case 2:}if(null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&!d.isString(e.displayName))return"displayName: string expected";if(null!=e.childLinks&&Object.hasOwnProperty.call(e,"childLinks")){if(!Array.isArray(e.childLinks))return"childLinks: array expected";for(var n=0;n<e.childLinks.length;++n)if(o=g.google.spanner.v1.PlanNode.ChildLink.verify(e.childLinks[n],t+1))return"childLinks."+o}var o;if(null!=e.shortRepresentation&&Object.hasOwnProperty.call(e,"shortRepresentation")&&(o=g.google.spanner.v1.PlanNode.ShortRepresentation.verify(e.shortRepresentation,t+1)))return"shortRepresentation."+o;if(null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&(o=g.google.protobuf.Struct.verify(e.metadata,t+1)))return"metadata."+o;if(null!=e.executionStats&&Object.hasOwnProperty.call(e,"executionStats")&&(o=g.google.protobuf.Struct.verify(e.executionStats,t+1)))return"executionStats."+o;return null},ir.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.PlanNode)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.PlanNode: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.PlanNode;switch(null!=e.index&&(n.index=0|e.index),e.kind){default:"number"==typeof e.kind&&(n.kind=e.kind);break;case"KIND_UNSPECIFIED":case 0:n.kind=0;break;case"RELATIONAL":case 1:n.kind=1;break;case"SCALAR":case 2:n.kind=2}if(null!=e.displayName&&(n.displayName=String(e.displayName)),e.childLinks){if(!Array.isArray(e.childLinks))throw TypeError(".google.spanner.v1.PlanNode.childLinks: array expected");n.childLinks=[];for(var o=0;o<e.childLinks.length;++o){if(!d.isObject(e.childLinks[o]))throw TypeError(".google.spanner.v1.PlanNode.childLinks: object expected");n.childLinks[o]=g.google.spanner.v1.PlanNode.ChildLink.fromObject(e.childLinks[o],t+1)}}if(null!=e.shortRepresentation){if(!d.isObject(e.shortRepresentation))throw TypeError(".google.spanner.v1.PlanNode.shortRepresentation: object expected");n.shortRepresentation=g.google.spanner.v1.PlanNode.ShortRepresentation.fromObject(e.shortRepresentation,t+1)}if(null!=e.metadata){if(!d.isObject(e.metadata))throw TypeError(".google.spanner.v1.PlanNode.metadata: object expected");n.metadata=g.google.protobuf.Struct.fromObject(e.metadata,t+1)}if(null!=e.executionStats){if(!d.isObject(e.executionStats))throw TypeError(".google.spanner.v1.PlanNode.executionStats: object expected");n.executionStats=g.google.protobuf.Struct.fromObject(e.executionStats,t+1)}return n},ir.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.childLinks=[]),t.defaults&&(o.index=0,o.kind=t.enums===String?"KIND_UNSPECIFIED":0,o.displayName="",o.shortRepresentation=null,o.metadata=null,o.executionStats=null),null!=e.index&&Object.hasOwnProperty.call(e,"index")&&(o.index=e.index),null!=e.kind&&Object.hasOwnProperty.call(e,"kind")&&(o.kind=t.enums!==String||void 0===g.google.spanner.v1.PlanNode.Kind[e.kind]?e.kind:g.google.spanner.v1.PlanNode.Kind[e.kind]),null!=e.displayName&&Object.hasOwnProperty.call(e,"displayName")&&(o.displayName=e.displayName),e.childLinks&&e.childLinks.length){o.childLinks=[];for(var r=0;r<e.childLinks.length;++r)o.childLinks[r]=g.google.spanner.v1.PlanNode.ChildLink.toObject(e.childLinks[r],t,n+1)}return null!=e.shortRepresentation&&Object.hasOwnProperty.call(e,"shortRepresentation")&&(o.shortRepresentation=g.google.spanner.v1.PlanNode.ShortRepresentation.toObject(e.shortRepresentation,t,n+1)),null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&(o.metadata=g.google.protobuf.Struct.toObject(e.metadata,t,n+1)),null!=e.executionStats&&Object.hasOwnProperty.call(e,"executionStats")&&(o.executionStats=g.google.protobuf.Struct.toObject(e.executionStats,t,n+1)),o},ir.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ir.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.PlanNode"},ir.Kind=(a={},(t=Object.create(a))[a[0]="KIND_UNSPECIFIED"]=0,t[a[1]="RELATIONAL"]=1,t[a[2]="SCALAR"]=2,t),ir.ChildLink=(ar.prototype.childIndex=0,ar.prototype.type="",ar.prototype.variable="",ar.create=function(e){return new ar(e)},ar.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.childIndex&&Object.hasOwnProperty.call(e,"childIndex")&&t.uint32(8).int32(e.childIndex),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&t.uint32(18).string(e.type),null!=e.variable&&Object.hasOwnProperty.call(e,"variable")&&t.uint32(26).string(e.variable),t},ar.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ar.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.PlanNode.ChildLink;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.childIndex=e.int32();break;case 2:i.type=e.string();break;case 3:i.variable=e.string();break;default:e.skipType(7&a,o)}}return i},ar.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ar.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.childIndex&&Object.hasOwnProperty.call(e,"childIndex")&&!d.isInteger(e.childIndex)?"childIndex: integer expected":null!=e.type&&Object.hasOwnProperty.call(e,"type")&&!d.isString(e.type)?"type: string expected":null!=e.variable&&Object.hasOwnProperty.call(e,"variable")&&!d.isString(e.variable)?"variable: string expected":null},ar.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.PlanNode.ChildLink)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.PlanNode.ChildLink: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.PlanNode.ChildLink;return null!=e.childIndex&&(t.childIndex=0|e.childIndex),null!=e.type&&(t.type=String(e.type)),null!=e.variable&&(t.variable=String(e.variable)),t},ar.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.childIndex=0,n.type="",n.variable=""),null!=e.childIndex&&Object.hasOwnProperty.call(e,"childIndex")&&(n.childIndex=e.childIndex),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(n.type=e.type),null!=e.variable&&Object.hasOwnProperty.call(e,"variable")&&(n.variable=e.variable),n},ar.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ar.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.PlanNode.ChildLink"},ar),ir.ShortRepresentation=(sr.prototype.description="",sr.prototype.subqueries=d.emptyObject,sr.create=function(e){return new sr(e)},sr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.description&&Object.hasOwnProperty.call(e,"description")&&t.uint32(10).string(e.description),null!=e.subqueries&&Object.hasOwnProperty.call(e,"subqueries"))for(var o=Object.keys(e.subqueries),r=0;r<o.length;++r)t.uint32(18).fork().uint32(10).string(o[r]).uint32(16).int32(e.subqueries[o[r]]).ldelim();return t},sr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},sr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.PlanNode.ShortRepresentation;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.description=e.string();break;case 2:i.subqueries===d.emptyObject&&(i.subqueries={});for(var s=e.uint32()+e.pos,c="",l=0;e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.int32();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.subqueries,c),i.subqueries[c]=l;break;default:e.skipType(7&a,o)}}return i},sr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},sr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.description&&Object.hasOwnProperty.call(e,"description")&&!d.isString(e.description))return"description: string expected";if(null!=e.subqueries&&Object.hasOwnProperty.call(e,"subqueries")){if(!d.isObject(e.subqueries))return"subqueries: object expected";for(var n=Object.keys(e.subqueries),o=0;o<n.length;++o)if(!d.isInteger(e.subqueries[n[o]]))return"subqueries: integer{k:string} expected"}return null},sr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.PlanNode.ShortRepresentation)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.PlanNode.ShortRepresentation: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.PlanNode.ShortRepresentation;if(null!=e.description&&(n.description=String(e.description)),e.subqueries){if(!d.isObject(e.subqueries))throw TypeError(".google.spanner.v1.PlanNode.ShortRepresentation.subqueries: object expected");n.subqueries={};for(var o=Object.keys(e.subqueries),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.subqueries,o[r]),n.subqueries[o[r]]=0|e.subqueries[o[r]]}return n},sr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.subqueries={}),t.defaults&&(r.description=""),null!=e.description&&Object.hasOwnProperty.call(e,"description")&&(r.description=e.description),e.subqueries&&(o=Object.keys(e.subqueries)).length){r.subqueries={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.subqueries,o[i]),r.subqueries[o[i]]=e.subqueries[o[i]]}return r},sr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},sr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.PlanNode.ShortRepresentation"},sr),ir),r.QueryAdvisorResult=(cr.prototype.indexAdvice=d.emptyArray,cr.create=function(e){return new cr(e)},cr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.indexAdvice&&e.indexAdvice.length)for(var o=0;o<e.indexAdvice.length;++o)g.google.spanner.v1.QueryAdvisorResult.IndexAdvice.encode(e.indexAdvice[o],t.uint32(10).fork(),n+1).ldelim();return t},cr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},cr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.QueryAdvisorResult;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.indexAdvice&&i.indexAdvice.length||(i.indexAdvice=[]),i.indexAdvice.push(g.google.spanner.v1.QueryAdvisorResult.IndexAdvice.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},cr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},cr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.indexAdvice&&Object.hasOwnProperty.call(e,"indexAdvice")){if(!Array.isArray(e.indexAdvice))return"indexAdvice: array expected";for(var n=0;n<e.indexAdvice.length;++n){var o=g.google.spanner.v1.QueryAdvisorResult.IndexAdvice.verify(e.indexAdvice[n],t+1);if(o)return"indexAdvice."+o}}return null},cr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.QueryAdvisorResult)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.QueryAdvisorResult: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.QueryAdvisorResult;if(e.indexAdvice){if(!Array.isArray(e.indexAdvice))throw TypeError(".google.spanner.v1.QueryAdvisorResult.indexAdvice: array expected");n.indexAdvice=[];for(var o=0;o<e.indexAdvice.length;++o){if(!d.isObject(e.indexAdvice[o]))throw TypeError(".google.spanner.v1.QueryAdvisorResult.indexAdvice: object expected");n.indexAdvice[o]=g.google.spanner.v1.QueryAdvisorResult.IndexAdvice.fromObject(e.indexAdvice[o],t+1)}}return n},cr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.indexAdvice=[]),e.indexAdvice&&e.indexAdvice.length){o.indexAdvice=[];for(var r=0;r<e.indexAdvice.length;++r)o.indexAdvice[r]=g.google.spanner.v1.QueryAdvisorResult.IndexAdvice.toObject(e.indexAdvice[r],t,n+1)}return o},cr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},cr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.QueryAdvisorResult"},cr.IndexAdvice=(lr.prototype.ddl=d.emptyArray,lr.prototype.improvementFactor=0,lr.create=function(e){return new lr(e)},lr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.ddl&&e.ddl.length)for(var o=0;o<e.ddl.length;++o)t.uint32(10).string(e.ddl[o]);return null!=e.improvementFactor&&Object.hasOwnProperty.call(e,"improvementFactor")&&t.uint32(17).double(e.improvementFactor),t},lr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},lr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.QueryAdvisorResult.IndexAdvice;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.ddl&&i.ddl.length||(i.ddl=[]),i.ddl.push(e.string());break;case 2:i.improvementFactor=e.double();break;default:e.skipType(7&a,o)}}return i},lr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},lr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.ddl&&Object.hasOwnProperty.call(e,"ddl")){if(!Array.isArray(e.ddl))return"ddl: array expected";for(var n=0;n<e.ddl.length;++n)if(!d.isString(e.ddl[n]))return"ddl: string[] expected"}return null!=e.improvementFactor&&Object.hasOwnProperty.call(e,"improvementFactor")&&"number"!=typeof e.improvementFactor?"improvementFactor: number expected":null},lr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.QueryAdvisorResult.IndexAdvice)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.QueryAdvisorResult.IndexAdvice: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.QueryAdvisorResult.IndexAdvice;if(e.ddl){if(!Array.isArray(e.ddl))throw TypeError(".google.spanner.v1.QueryAdvisorResult.IndexAdvice.ddl: array expected");n.ddl=[];for(var o=0;o<e.ddl.length;++o)n.ddl[o]=String(e.ddl[o])}return null!=e.improvementFactor&&(n.improvementFactor=Number(e.improvementFactor)),n},lr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.ddl=[]),t.defaults&&(o.improvementFactor=0),e.ddl&&e.ddl.length){o.ddl=[];for(var r=0;r<e.ddl.length;++r)o.ddl[r]=e.ddl[r]}return null!=e.improvementFactor&&Object.hasOwnProperty.call(e,"improvementFactor")&&(o.improvementFactor=t.json&&!isFinite(e.improvementFactor)?String(e.improvementFactor):e.improvementFactor),o},lr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},lr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.QueryAdvisorResult.IndexAdvice"},lr),cr),r.QueryPlan=(ur.prototype.planNodes=d.emptyArray,ur.prototype.queryAdvice=null,ur.create=function(e){return new ur(e)},ur.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.planNodes&&e.planNodes.length)for(var o=0;o<e.planNodes.length;++o)g.google.spanner.v1.PlanNode.encode(e.planNodes[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.queryAdvice&&Object.hasOwnProperty.call(e,"queryAdvice")&&g.google.spanner.v1.QueryAdvisorResult.encode(e.queryAdvice,t.uint32(18).fork(),n+1).ldelim(),t},ur.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ur.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.QueryPlan;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.planNodes&&i.planNodes.length||(i.planNodes=[]),i.planNodes.push(g.google.spanner.v1.PlanNode.decode(e,e.uint32(),void 0,o+1));break;case 2:i.queryAdvice=g.google.spanner.v1.QueryAdvisorResult.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ur.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ur.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.planNodes&&Object.hasOwnProperty.call(e,"planNodes")){if(!Array.isArray(e.planNodes))return"planNodes: array expected";for(var n=0;n<e.planNodes.length;++n)if(o=g.google.spanner.v1.PlanNode.verify(e.planNodes[n],t+1))return"planNodes."+o}var o;if(null!=e.queryAdvice&&Object.hasOwnProperty.call(e,"queryAdvice")&&(o=g.google.spanner.v1.QueryAdvisorResult.verify(e.queryAdvice,t+1)))return"queryAdvice."+o;return null},ur.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.QueryPlan)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.QueryPlan: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.QueryPlan;if(e.planNodes){if(!Array.isArray(e.planNodes))throw TypeError(".google.spanner.v1.QueryPlan.planNodes: array expected");n.planNodes=[];for(var o=0;o<e.planNodes.length;++o){if(!d.isObject(e.planNodes[o]))throw TypeError(".google.spanner.v1.QueryPlan.planNodes: object expected");n.planNodes[o]=g.google.spanner.v1.PlanNode.fromObject(e.planNodes[o],t+1)}}if(null!=e.queryAdvice){if(!d.isObject(e.queryAdvice))throw TypeError(".google.spanner.v1.QueryPlan.queryAdvice: object expected");n.queryAdvice=g.google.spanner.v1.QueryAdvisorResult.fromObject(e.queryAdvice,t+1)}return n},ur.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.planNodes=[]),t.defaults&&(o.queryAdvice=null),e.planNodes&&e.planNodes.length){o.planNodes=[];for(var r=0;r<e.planNodes.length;++r)o.planNodes[r]=g.google.spanner.v1.PlanNode.toObject(e.planNodes[r],t,n+1)}return null!=e.queryAdvice&&Object.hasOwnProperty.call(e,"queryAdvice")&&(o.queryAdvice=g.google.spanner.v1.QueryAdvisorResult.toObject(e.queryAdvice,t,n+1)),o},ur.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ur.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.QueryPlan"},ur),r.ChangeStreamRecord=(pr.prototype.dataChangeRecord=null,pr.prototype.heartbeatRecord=null,pr.prototype.partitionStartRecord=null,pr.prototype.partitionEndRecord=null,pr.prototype.partitionEventRecord=null,Object.defineProperty(pr.prototype,"record",{get:d.oneOfGetter(a=["dataChangeRecord","heartbeatRecord","partitionStartRecord","partitionEndRecord","partitionEventRecord"]),set:d.oneOfSetter(a)}),pr.create=function(e){return new pr(e)},pr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.dataChangeRecord&&Object.hasOwnProperty.call(e,"dataChangeRecord")&&g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.encode(e.dataChangeRecord,t.uint32(10).fork(),n+1).ldelim(),null!=e.heartbeatRecord&&Object.hasOwnProperty.call(e,"heartbeatRecord")&&g.google.spanner.v1.ChangeStreamRecord.HeartbeatRecord.encode(e.heartbeatRecord,t.uint32(18).fork(),n+1).ldelim(),null!=e.partitionStartRecord&&Object.hasOwnProperty.call(e,"partitionStartRecord")&&g.google.spanner.v1.ChangeStreamRecord.PartitionStartRecord.encode(e.partitionStartRecord,t.uint32(26).fork(),n+1).ldelim(),null!=e.partitionEndRecord&&Object.hasOwnProperty.call(e,"partitionEndRecord")&&g.google.spanner.v1.ChangeStreamRecord.PartitionEndRecord.encode(e.partitionEndRecord,t.uint32(34).fork(),n+1).ldelim(),null!=e.partitionEventRecord&&Object.hasOwnProperty.call(e,"partitionEventRecord")&&g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.encode(e.partitionEventRecord,t.uint32(42).fork(),n+1).ldelim(),t},pr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},pr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.dataChangeRecord=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.decode(e,e.uint32(),void 0,o+1);break;case 2:i.heartbeatRecord=g.google.spanner.v1.ChangeStreamRecord.HeartbeatRecord.decode(e,e.uint32(),void 0,o+1);break;case 3:i.partitionStartRecord=g.google.spanner.v1.ChangeStreamRecord.PartitionStartRecord.decode(e,e.uint32(),void 0,o+1);break;case 4:i.partitionEndRecord=g.google.spanner.v1.ChangeStreamRecord.PartitionEndRecord.decode(e,e.uint32(),void 0,o+1);break;case 5:i.partitionEventRecord=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},pr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},pr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.dataChangeRecord&&Object.hasOwnProperty.call(e,"dataChangeRecord")&&(n=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.verify(e.dataChangeRecord,t+(o.record=1))))return"dataChangeRecord."+n;if(null!=e.heartbeatRecord&&Object.hasOwnProperty.call(e,"heartbeatRecord")){if(1===o.record)return"record: multiple values";if(n=g.google.spanner.v1.ChangeStreamRecord.HeartbeatRecord.verify(e.heartbeatRecord,t+(o.record=1)))return"heartbeatRecord."+n}if(null!=e.partitionStartRecord&&Object.hasOwnProperty.call(e,"partitionStartRecord")){if(1===o.record)return"record: multiple values";if(n=g.google.spanner.v1.ChangeStreamRecord.PartitionStartRecord.verify(e.partitionStartRecord,t+(o.record=1)))return"partitionStartRecord."+n}if(null!=e.partitionEndRecord&&Object.hasOwnProperty.call(e,"partitionEndRecord")){if(1===o.record)return"record: multiple values";if(n=g.google.spanner.v1.ChangeStreamRecord.PartitionEndRecord.verify(e.partitionEndRecord,t+(o.record=1)))return"partitionEndRecord."+n}if(null!=e.partitionEventRecord&&Object.hasOwnProperty.call(e,"partitionEventRecord")){if(1===o.record)return"record: multiple values";if(n=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.verify(e.partitionEventRecord,t+(o.record=1)))return"partitionEventRecord."+n}return null},pr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ChangeStreamRecord;if(null!=e.dataChangeRecord){if(!d.isObject(e.dataChangeRecord))throw TypeError(".google.spanner.v1.ChangeStreamRecord.dataChangeRecord: object expected");n.dataChangeRecord=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.fromObject(e.dataChangeRecord,t+1)}if(null!=e.heartbeatRecord){if(!d.isObject(e.heartbeatRecord))throw TypeError(".google.spanner.v1.ChangeStreamRecord.heartbeatRecord: object expected");n.heartbeatRecord=g.google.spanner.v1.ChangeStreamRecord.HeartbeatRecord.fromObject(e.heartbeatRecord,t+1)}if(null!=e.partitionStartRecord){if(!d.isObject(e.partitionStartRecord))throw TypeError(".google.spanner.v1.ChangeStreamRecord.partitionStartRecord: object expected");n.partitionStartRecord=g.google.spanner.v1.ChangeStreamRecord.PartitionStartRecord.fromObject(e.partitionStartRecord,t+1)}if(null!=e.partitionEndRecord){if(!d.isObject(e.partitionEndRecord))throw TypeError(".google.spanner.v1.ChangeStreamRecord.partitionEndRecord: object expected");n.partitionEndRecord=g.google.spanner.v1.ChangeStreamRecord.PartitionEndRecord.fromObject(e.partitionEndRecord,t+1)}if(null!=e.partitionEventRecord){if(!d.isObject(e.partitionEventRecord))throw TypeError(".google.spanner.v1.ChangeStreamRecord.partitionEventRecord: object expected");n.partitionEventRecord=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.fromObject(e.partitionEventRecord,t+1)}return n},pr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.dataChangeRecord&&Object.hasOwnProperty.call(e,"dataChangeRecord")&&(o.dataChangeRecord=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.toObject(e.dataChangeRecord,t,n+1),t.oneofs)&&(o.record="dataChangeRecord"),null!=e.heartbeatRecord&&Object.hasOwnProperty.call(e,"heartbeatRecord")&&(o.heartbeatRecord=g.google.spanner.v1.ChangeStreamRecord.HeartbeatRecord.toObject(e.heartbeatRecord,t,n+1),t.oneofs)&&(o.record="heartbeatRecord"),null!=e.partitionStartRecord&&Object.hasOwnProperty.call(e,"partitionStartRecord")&&(o.partitionStartRecord=g.google.spanner.v1.ChangeStreamRecord.PartitionStartRecord.toObject(e.partitionStartRecord,t,n+1),t.oneofs)&&(o.record="partitionStartRecord"),null!=e.partitionEndRecord&&Object.hasOwnProperty.call(e,"partitionEndRecord")&&(o.partitionEndRecord=g.google.spanner.v1.ChangeStreamRecord.PartitionEndRecord.toObject(e.partitionEndRecord,t,n+1),t.oneofs)&&(o.record="partitionEndRecord"),null!=e.partitionEventRecord&&Object.hasOwnProperty.call(e,"partitionEventRecord")&&(o.partitionEventRecord=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.toObject(e.partitionEventRecord,t,n+1),t.oneofs)&&(o.record="partitionEventRecord"),o},pr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},pr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord"},pr.DataChangeRecord=(E.prototype.commitTimestamp=null,E.prototype.recordSequence="",E.prototype.serverTransactionId="",E.prototype.isLastRecordInTransactionInPartition=!1,E.prototype.table="",E.prototype.columnMetadata=d.emptyArray,E.prototype.mods=d.emptyArray,E.prototype.modType=0,E.prototype.valueCaptureType=0,E.prototype.numberOfRecordsInTransaction=0,E.prototype.numberOfPartitionsInTransaction=0,E.prototype.transactionTag="",E.prototype.isSystemTransaction=!1,E.create=function(e){return new E(e)},E.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&g.google.protobuf.Timestamp.encode(e.commitTimestamp,t.uint32(10).fork(),n+1).ldelim(),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&t.uint32(18).string(e.recordSequence),null!=e.serverTransactionId&&Object.hasOwnProperty.call(e,"serverTransactionId")&&t.uint32(26).string(e.serverTransactionId),null!=e.isLastRecordInTransactionInPartition&&Object.hasOwnProperty.call(e,"isLastRecordInTransactionInPartition")&&t.uint32(32).bool(e.isLastRecordInTransactionInPartition),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&t.uint32(42).string(e.table),null!=e.columnMetadata&&e.columnMetadata.length)for(var o=0;o<e.columnMetadata.length;++o)g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata.encode(e.columnMetadata[o],t.uint32(50).fork(),n+1).ldelim();if(null!=e.mods&&e.mods.length)for(o=0;o<e.mods.length;++o)g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.encode(e.mods[o],t.uint32(58).fork(),n+1).ldelim();return null!=e.modType&&Object.hasOwnProperty.call(e,"modType")&&t.uint32(64).int32(e.modType),null!=e.valueCaptureType&&Object.hasOwnProperty.call(e,"valueCaptureType")&&t.uint32(72).int32(e.valueCaptureType),null!=e.numberOfRecordsInTransaction&&Object.hasOwnProperty.call(e,"numberOfRecordsInTransaction")&&t.uint32(80).int32(e.numberOfRecordsInTransaction),null!=e.numberOfPartitionsInTransaction&&Object.hasOwnProperty.call(e,"numberOfPartitionsInTransaction")&&t.uint32(88).int32(e.numberOfPartitionsInTransaction),null!=e.transactionTag&&Object.hasOwnProperty.call(e,"transactionTag")&&t.uint32(98).string(e.transactionTag),null!=e.isSystemTransaction&&Object.hasOwnProperty.call(e,"isSystemTransaction")&&t.uint32(104).bool(e.isSystemTransaction),t},E.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},E.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.commitTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.recordSequence=e.string();break;case 3:i.serverTransactionId=e.string();break;case 4:i.isLastRecordInTransactionInPartition=e.bool();break;case 5:i.table=e.string();break;case 6:i.columnMetadata&&i.columnMetadata.length||(i.columnMetadata=[]),i.columnMetadata.push(g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata.decode(e,e.uint32(),void 0,o+1));break;case 7:i.mods&&i.mods.length||(i.mods=[]),i.mods.push(g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.decode(e,e.uint32(),void 0,o+1));break;case 8:i.modType=e.int32();break;case 9:i.valueCaptureType=e.int32();break;case 10:i.numberOfRecordsInTransaction=e.int32();break;case 11:i.numberOfPartitionsInTransaction=e.int32();break;case 12:i.transactionTag=e.string();break;case 13:i.isSystemTransaction=e.bool();break;default:e.skipType(7&a,o)}}return i},E.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},E.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&(o=g.google.protobuf.Timestamp.verify(e.commitTimestamp,t+1)))return"commitTimestamp."+o;if(null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&!d.isString(e.recordSequence))return"recordSequence: string expected";if(null!=e.serverTransactionId&&Object.hasOwnProperty.call(e,"serverTransactionId")&&!d.isString(e.serverTransactionId))return"serverTransactionId: string expected";if(null!=e.isLastRecordInTransactionInPartition&&Object.hasOwnProperty.call(e,"isLastRecordInTransactionInPartition")&&"boolean"!=typeof e.isLastRecordInTransactionInPartition)return"isLastRecordInTransactionInPartition: boolean expected";if(null!=e.table&&Object.hasOwnProperty.call(e,"table")&&!d.isString(e.table))return"table: string expected";if(null!=e.columnMetadata&&Object.hasOwnProperty.call(e,"columnMetadata")){if(!Array.isArray(e.columnMetadata))return"columnMetadata: array expected";for(var n=0;n<e.columnMetadata.length;++n)if(o=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata.verify(e.columnMetadata[n],t+1))return"columnMetadata."+o}if(null!=e.mods&&Object.hasOwnProperty.call(e,"mods")){if(!Array.isArray(e.mods))return"mods: array expected";for(var o,n=0;n<e.mods.length;++n)if(o=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.verify(e.mods[n],t+1))return"mods."+o}if(null!=e.modType&&Object.hasOwnProperty.call(e,"modType"))switch(e.modType){default:return"modType: enum value expected";case 0:case 10:case 20:case 30:}if(null!=e.valueCaptureType&&Object.hasOwnProperty.call(e,"valueCaptureType"))switch(e.valueCaptureType){default:return"valueCaptureType: enum value expected";case 0:case 10:case 20:case 30:case 40:}return null!=e.numberOfRecordsInTransaction&&Object.hasOwnProperty.call(e,"numberOfRecordsInTransaction")&&!d.isInteger(e.numberOfRecordsInTransaction)?"numberOfRecordsInTransaction: integer expected":null!=e.numberOfPartitionsInTransaction&&Object.hasOwnProperty.call(e,"numberOfPartitionsInTransaction")&&!d.isInteger(e.numberOfPartitionsInTransaction)?"numberOfPartitionsInTransaction: integer expected":null!=e.transactionTag&&Object.hasOwnProperty.call(e,"transactionTag")&&!d.isString(e.transactionTag)?"transactionTag: string expected":null!=e.isSystemTransaction&&Object.hasOwnProperty.call(e,"isSystemTransaction")&&"boolean"!=typeof e.isSystemTransaction?"isSystemTransaction: boolean expected":null},E.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord;if(null!=e.commitTimestamp){if(!d.isObject(e.commitTimestamp))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.commitTimestamp: object expected");n.commitTimestamp=g.google.protobuf.Timestamp.fromObject(e.commitTimestamp,t+1)}if(null!=e.recordSequence&&(n.recordSequence=String(e.recordSequence)),null!=e.serverTransactionId&&(n.serverTransactionId=String(e.serverTransactionId)),null!=e.isLastRecordInTransactionInPartition&&(n.isLastRecordInTransactionInPartition=Boolean(e.isLastRecordInTransactionInPartition)),null!=e.table&&(n.table=String(e.table)),e.columnMetadata){if(!Array.isArray(e.columnMetadata))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.columnMetadata: array expected");n.columnMetadata=[];for(var o=0;o<e.columnMetadata.length;++o){if(!d.isObject(e.columnMetadata[o]))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.columnMetadata: object expected");n.columnMetadata[o]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata.fromObject(e.columnMetadata[o],t+1)}}if(e.mods){if(!Array.isArray(e.mods))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.mods: array expected");n.mods=[];for(o=0;o<e.mods.length;++o){if(!d.isObject(e.mods[o]))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.mods: object expected");n.mods[o]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.fromObject(e.mods[o],t+1)}}switch(e.modType){default:"number"==typeof e.modType&&(n.modType=e.modType);break;case"MOD_TYPE_UNSPECIFIED":case 0:n.modType=0;break;case"INSERT":case 10:n.modType=10;break;case"UPDATE":case 20:n.modType=20;break;case"DELETE":case 30:n.modType=30}switch(e.valueCaptureType){default:"number"==typeof e.valueCaptureType&&(n.valueCaptureType=e.valueCaptureType);break;case"VALUE_CAPTURE_TYPE_UNSPECIFIED":case 0:n.valueCaptureType=0;break;case"OLD_AND_NEW_VALUES":case 10:n.valueCaptureType=10;break;case"NEW_VALUES":case 20:n.valueCaptureType=20;break;case"NEW_ROW":case 30:n.valueCaptureType=30;break;case"NEW_ROW_AND_OLD_VALUES":case 40:n.valueCaptureType=40}return null!=e.numberOfRecordsInTransaction&&(n.numberOfRecordsInTransaction=0|e.numberOfRecordsInTransaction),null!=e.numberOfPartitionsInTransaction&&(n.numberOfPartitionsInTransaction=0|e.numberOfPartitionsInTransaction),null!=e.transactionTag&&(n.transactionTag=String(e.transactionTag)),null!=e.isSystemTransaction&&(n.isSystemTransaction=Boolean(e.isSystemTransaction)),n},E.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.columnMetadata=[],o.mods=[]),t.defaults&&(o.commitTimestamp=null,o.recordSequence="",o.serverTransactionId="",o.isLastRecordInTransactionInPartition=!1,o.table="",o.modType=t.enums===String?"MOD_TYPE_UNSPECIFIED":0,o.valueCaptureType=t.enums===String?"VALUE_CAPTURE_TYPE_UNSPECIFIED":0,o.numberOfRecordsInTransaction=0,o.numberOfPartitionsInTransaction=0,o.transactionTag="",o.isSystemTransaction=!1),null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&(o.commitTimestamp=g.google.protobuf.Timestamp.toObject(e.commitTimestamp,t,n+1)),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&(o.recordSequence=e.recordSequence),null!=e.serverTransactionId&&Object.hasOwnProperty.call(e,"serverTransactionId")&&(o.serverTransactionId=e.serverTransactionId),null!=e.isLastRecordInTransactionInPartition&&Object.hasOwnProperty.call(e,"isLastRecordInTransactionInPartition")&&(o.isLastRecordInTransactionInPartition=e.isLastRecordInTransactionInPartition),null!=e.table&&Object.hasOwnProperty.call(e,"table")&&(o.table=e.table),e.columnMetadata&&e.columnMetadata.length){o.columnMetadata=[];for(var r=0;r<e.columnMetadata.length;++r)o.columnMetadata[r]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata.toObject(e.columnMetadata[r],t,n+1)}if(e.mods&&e.mods.length){o.mods=[];for(r=0;r<e.mods.length;++r)o.mods[r]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.toObject(e.mods[r],t,n+1)}return null!=e.modType&&Object.hasOwnProperty.call(e,"modType")&&(o.modType=t.enums!==String||void 0===g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModType[e.modType]?e.modType:g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModType[e.modType]),null!=e.valueCaptureType&&Object.hasOwnProperty.call(e,"valueCaptureType")&&(o.valueCaptureType=t.enums!==String||void 0===g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ValueCaptureType[e.valueCaptureType]?e.valueCaptureType:g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ValueCaptureType[e.valueCaptureType]),null!=e.numberOfRecordsInTransaction&&Object.hasOwnProperty.call(e,"numberOfRecordsInTransaction")&&(o.numberOfRecordsInTransaction=e.numberOfRecordsInTransaction),null!=e.numberOfPartitionsInTransaction&&Object.hasOwnProperty.call(e,"numberOfPartitionsInTransaction")&&(o.numberOfPartitionsInTransaction=e.numberOfPartitionsInTransaction),null!=e.transactionTag&&Object.hasOwnProperty.call(e,"transactionTag")&&(o.transactionTag=e.transactionTag),null!=e.isSystemTransaction&&Object.hasOwnProperty.call(e,"isSystemTransaction")&&(o.isSystemTransaction=e.isSystemTransaction),o},E.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},E.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.DataChangeRecord"},E.ColumnMetadata=(dr.prototype.name="",dr.prototype.type=null,dr.prototype.isPrimaryKey=!1,dr.prototype.ordinalPosition=d.Long?d.Long.fromBits(0,0,!1):0,dr.create=function(e){return new dr(e)},dr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&g.google.spanner.v1.Type.encode(e.type,t.uint32(18).fork(),n+1).ldelim(),null!=e.isPrimaryKey&&Object.hasOwnProperty.call(e,"isPrimaryKey")&&t.uint32(24).bool(e.isPrimaryKey),null!=e.ordinalPosition&&Object.hasOwnProperty.call(e,"ordinalPosition")&&t.uint32(32).int64(e.ordinalPosition),t},dr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},dr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.type=g.google.spanner.v1.Type.decode(e,e.uint32(),void 0,o+1);break;case 3:i.isPrimaryKey=e.bool();break;case 4:i.ordinalPosition=e.int64();break;default:e.skipType(7&a,o)}}return i},dr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},dr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.type&&Object.hasOwnProperty.call(e,"type")){t=g.google.spanner.v1.Type.verify(e.type,t+1);if(t)return"type."+t}return null!=e.isPrimaryKey&&Object.hasOwnProperty.call(e,"isPrimaryKey")&&"boolean"!=typeof e.isPrimaryKey?"isPrimaryKey: boolean expected":null!=e.ordinalPosition&&Object.hasOwnProperty.call(e,"ordinalPosition")&&!(d.isInteger(e.ordinalPosition)||e.ordinalPosition&&d.isInteger(e.ordinalPosition.low)&&d.isInteger(e.ordinalPosition.high))?"ordinalPosition: integer|Long expected":null},dr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata;if(null!=e.name&&(n.name=String(e.name)),null!=e.type){if(!d.isObject(e.type))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata.type: object expected");n.type=g.google.spanner.v1.Type.fromObject(e.type,t+1)}return null!=e.isPrimaryKey&&(n.isPrimaryKey=Boolean(e.isPrimaryKey)),null!=e.ordinalPosition&&(d.Long?n.ordinalPosition=d.Long.fromValue(e.ordinalPosition,!1):"string"==typeof e.ordinalPosition?n.ordinalPosition=parseInt(e.ordinalPosition,10):"number"==typeof e.ordinalPosition?n.ordinalPosition=e.ordinalPosition:"object"==typeof e.ordinalPosition&&(n.ordinalPosition=new d.LongBits(e.ordinalPosition.low>>>0,e.ordinalPosition.high>>>0).toNumber())),n},dr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};return t.defaults&&(r.name="",r.type=null,r.isPrimaryKey=!1,d.Long?(o=new d.Long(0,0,!1),r.ordinalPosition=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.ordinalPosition=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(r.name=e.name),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(r.type=g.google.spanner.v1.Type.toObject(e.type,t,n+1)),null!=e.isPrimaryKey&&Object.hasOwnProperty.call(e,"isPrimaryKey")&&(r.isPrimaryKey=e.isPrimaryKey),null!=e.ordinalPosition&&Object.hasOwnProperty.call(e,"ordinalPosition")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.ordinalPosition="number"==typeof e.ordinalPosition?BigInt(e.ordinalPosition):d.Long.fromBits(e.ordinalPosition.low>>>0,e.ordinalPosition.high>>>0,!1).toBigInt():"number"==typeof e.ordinalPosition?r.ordinalPosition=t.longs===String?String(e.ordinalPosition):e.ordinalPosition:r.ordinalPosition=t.longs===String?d.Long.prototype.toString.call(e.ordinalPosition):t.longs===Number?new d.LongBits(e.ordinalPosition.low>>>0,e.ordinalPosition.high>>>0).toNumber():e.ordinalPosition),r},dr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},dr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ColumnMetadata"},dr),E.ModValue=(gr.prototype.columnMetadataIndex=0,gr.prototype.value=null,gr.create=function(e){return new gr(e)},gr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.columnMetadataIndex&&Object.hasOwnProperty.call(e,"columnMetadataIndex")&&t.uint32(8).int32(e.columnMetadataIndex),null!=e.value&&Object.hasOwnProperty.call(e,"value")&&g.google.protobuf.Value.encode(e.value,t.uint32(18).fork(),n+1).ldelim(),t},gr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},gr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.columnMetadataIndex=e.int32();break;case 2:i.value=g.google.protobuf.Value.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},gr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},gr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.columnMetadataIndex&&Object.hasOwnProperty.call(e,"columnMetadataIndex")&&!d.isInteger(e.columnMetadataIndex))return"columnMetadataIndex: integer expected";if(null!=e.value&&Object.hasOwnProperty.call(e,"value")){e=g.google.protobuf.Value.verify(e.value,t+1);if(e)return"value."+e}return null},gr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue;if(null!=e.columnMetadataIndex&&(n.columnMetadataIndex=0|e.columnMetadataIndex),null!=e.value){if(!d.isObject(e.value))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.value: object expected");n.value=g.google.protobuf.Value.fromObject(e.value,t+1)}return n},gr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.columnMetadataIndex=0,o.value=null),null!=e.columnMetadataIndex&&Object.hasOwnProperty.call(e,"columnMetadataIndex")&&(o.columnMetadataIndex=e.columnMetadataIndex),null!=e.value&&Object.hasOwnProperty.call(e,"value")&&(o.value=g.google.protobuf.Value.toObject(e.value,t,n+1)),o},gr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},gr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue"},gr),E.Mod=(fr.prototype.keys=d.emptyArray,fr.prototype.oldValues=d.emptyArray,fr.prototype.newValues=d.emptyArray,fr.create=function(e){return new fr(e)},fr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.keys&&e.keys.length)for(var o=0;o<e.keys.length;++o)g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.encode(e.keys[o],t.uint32(10).fork(),n+1).ldelim();if(null!=e.oldValues&&e.oldValues.length)for(o=0;o<e.oldValues.length;++o)g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.encode(e.oldValues[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.newValues&&e.newValues.length)for(o=0;o<e.newValues.length;++o)g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.encode(e.newValues[o],t.uint32(26).fork(),n+1).ldelim();return t},fr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},fr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.keys&&i.keys.length||(i.keys=[]),i.keys.push(g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.decode(e,e.uint32(),void 0,o+1));break;case 2:i.oldValues&&i.oldValues.length||(i.oldValues=[]),i.oldValues.push(g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.decode(e,e.uint32(),void 0,o+1));break;case 3:i.newValues&&i.newValues.length||(i.newValues=[]),i.newValues.push(g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},fr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},fr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.keys&&Object.hasOwnProperty.call(e,"keys")){if(!Array.isArray(e.keys))return"keys: array expected";for(var n=0;n<e.keys.length;++n)if(o=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.verify(e.keys[n],t+1))return"keys."+o}if(null!=e.oldValues&&Object.hasOwnProperty.call(e,"oldValues")){if(!Array.isArray(e.oldValues))return"oldValues: array expected";for(n=0;n<e.oldValues.length;++n)if(o=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.verify(e.oldValues[n],t+1))return"oldValues."+o}if(null!=e.newValues&&Object.hasOwnProperty.call(e,"newValues")){if(!Array.isArray(e.newValues))return"newValues: array expected";for(var o,n=0;n<e.newValues.length;++n)if(o=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.verify(e.newValues[n],t+1))return"newValues."+o}return null},fr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod;if(e.keys){if(!Array.isArray(e.keys))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.keys: array expected");n.keys=[];for(var o=0;o<e.keys.length;++o){if(!d.isObject(e.keys[o]))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.keys: object expected");n.keys[o]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.fromObject(e.keys[o],t+1)}}if(e.oldValues){if(!Array.isArray(e.oldValues))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.oldValues: array expected");n.oldValues=[];for(o=0;o<e.oldValues.length;++o){if(!d.isObject(e.oldValues[o]))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.oldValues: object expected");n.oldValues[o]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.fromObject(e.oldValues[o],t+1)}}if(e.newValues){if(!Array.isArray(e.newValues))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.newValues: array expected");n.newValues=[];for(o=0;o<e.newValues.length;++o){if(!d.isObject(e.newValues[o]))throw TypeError(".google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod.newValues: object expected");n.newValues[o]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.fromObject(e.newValues[o],t+1)}}return n},fr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.keys=[],o.oldValues=[],o.newValues=[]),e.keys&&e.keys.length){o.keys=[];for(var r=0;r<e.keys.length;++r)o.keys[r]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.toObject(e.keys[r],t,n+1)}if(e.oldValues&&e.oldValues.length){o.oldValues=[];for(r=0;r<e.oldValues.length;++r)o.oldValues[r]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.toObject(e.oldValues[r],t,n+1)}if(e.newValues&&e.newValues.length){o.newValues=[];for(r=0;r<e.newValues.length;++r)o.newValues[r]=g.google.spanner.v1.ChangeStreamRecord.DataChangeRecord.ModValue.toObject(e.newValues[r],t,n+1)}return o},fr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},fr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.DataChangeRecord.Mod"},fr),E.ModType=(a={},(t=Object.create(a))[a[0]="MOD_TYPE_UNSPECIFIED"]=0,t[a[10]="INSERT"]=10,t[a[20]="UPDATE"]=20,t[a[30]="DELETE"]=30,t),E.ValueCaptureType=(a={},(t=Object.create(a))[a[0]="VALUE_CAPTURE_TYPE_UNSPECIFIED"]=0,t[a[10]="OLD_AND_NEW_VALUES"]=10,t[a[20]="NEW_VALUES"]=20,t[a[30]="NEW_ROW"]=30,t[a[40]="NEW_ROW_AND_OLD_VALUES"]=40,t),E),pr.HeartbeatRecord=(mr.prototype.timestamp=null,mr.create=function(e){return new mr(e)},mr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.timestamp&&Object.hasOwnProperty.call(e,"timestamp")&&g.google.protobuf.Timestamp.encode(e.timestamp,t.uint32(10).fork(),n+1).ldelim(),t},mr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},mr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.HeartbeatRecord;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.timestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},mr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},mr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.timestamp&&Object.hasOwnProperty.call(e,"timestamp")){e=g.google.protobuf.Timestamp.verify(e.timestamp,t+1);if(e)return"timestamp."+e}return null},mr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.HeartbeatRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.HeartbeatRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ChangeStreamRecord.HeartbeatRecord;if(null!=e.timestamp){if(!d.isObject(e.timestamp))throw TypeError(".google.spanner.v1.ChangeStreamRecord.HeartbeatRecord.timestamp: object expected");n.timestamp=g.google.protobuf.Timestamp.fromObject(e.timestamp,t+1)}return n},mr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.timestamp=null),null!=e.timestamp&&Object.hasOwnProperty.call(e,"timestamp")&&(o.timestamp=g.google.protobuf.Timestamp.toObject(e.timestamp,t,n+1)),o},mr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},mr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.HeartbeatRecord"},mr),pr.PartitionStartRecord=(br.prototype.startTimestamp=null,br.prototype.recordSequence="",br.prototype.partitionTokens=d.emptyArray,br.create=function(e){return new br(e)},br.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.startTimestamp&&Object.hasOwnProperty.call(e,"startTimestamp")&&g.google.protobuf.Timestamp.encode(e.startTimestamp,t.uint32(10).fork(),n+1).ldelim(),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&t.uint32(18).string(e.recordSequence),null!=e.partitionTokens&&e.partitionTokens.length)for(var o=0;o<e.partitionTokens.length;++o)t.uint32(26).string(e.partitionTokens[o]);return t},br.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},br.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.PartitionStartRecord;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.startTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.recordSequence=e.string();break;case 3:i.partitionTokens&&i.partitionTokens.length||(i.partitionTokens=[]),i.partitionTokens.push(e.string());break;default:e.skipType(7&a,o)}}return i},br.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},br.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.startTimestamp&&Object.hasOwnProperty.call(e,"startTimestamp")){t=g.google.protobuf.Timestamp.verify(e.startTimestamp,t+1);if(t)return"startTimestamp."+t}if(null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&!d.isString(e.recordSequence))return"recordSequence: string expected";if(null!=e.partitionTokens&&Object.hasOwnProperty.call(e,"partitionTokens")){if(!Array.isArray(e.partitionTokens))return"partitionTokens: array expected";for(var n=0;n<e.partitionTokens.length;++n)if(!d.isString(e.partitionTokens[n]))return"partitionTokens: string[] expected"}return null},br.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.PartitionStartRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionStartRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ChangeStreamRecord.PartitionStartRecord;if(null!=e.startTimestamp){if(!d.isObject(e.startTimestamp))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionStartRecord.startTimestamp: object expected");n.startTimestamp=g.google.protobuf.Timestamp.fromObject(e.startTimestamp,t+1)}if(null!=e.recordSequence&&(n.recordSequence=String(e.recordSequence)),e.partitionTokens){if(!Array.isArray(e.partitionTokens))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionStartRecord.partitionTokens: array expected");n.partitionTokens=[];for(var o=0;o<e.partitionTokens.length;++o)n.partitionTokens[o]=String(e.partitionTokens[o])}return n},br.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.partitionTokens=[]),t.defaults&&(o.startTimestamp=null,o.recordSequence=""),null!=e.startTimestamp&&Object.hasOwnProperty.call(e,"startTimestamp")&&(o.startTimestamp=g.google.protobuf.Timestamp.toObject(e.startTimestamp,t,n+1)),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&(o.recordSequence=e.recordSequence),e.partitionTokens&&e.partitionTokens.length){o.partitionTokens=[];for(var r=0;r<e.partitionTokens.length;++r)o.partitionTokens[r]=e.partitionTokens[r]}return o},br.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},br.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.PartitionStartRecord"},br),pr.PartitionEndRecord=(yr.prototype.endTimestamp=null,yr.prototype.recordSequence="",yr.prototype.partitionToken="",yr.create=function(e){return new yr(e)},yr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.endTimestamp&&Object.hasOwnProperty.call(e,"endTimestamp")&&g.google.protobuf.Timestamp.encode(e.endTimestamp,t.uint32(10).fork(),n+1).ldelim(),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&t.uint32(18).string(e.recordSequence),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&t.uint32(26).string(e.partitionToken),t},yr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},yr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.PartitionEndRecord;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.endTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.recordSequence=e.string();break;case 3:i.partitionToken=e.string();break;default:e.skipType(7&a,o)}}return i},yr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},yr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.endTimestamp&&Object.hasOwnProperty.call(e,"endTimestamp")){t=g.google.protobuf.Timestamp.verify(e.endTimestamp,t+1);if(t)return"endTimestamp."+t}return null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&!d.isString(e.recordSequence)?"recordSequence: string expected":null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&!d.isString(e.partitionToken)?"partitionToken: string expected":null},yr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.PartitionEndRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEndRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ChangeStreamRecord.PartitionEndRecord;if(null!=e.endTimestamp){if(!d.isObject(e.endTimestamp))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEndRecord.endTimestamp: object expected");n.endTimestamp=g.google.protobuf.Timestamp.fromObject(e.endTimestamp,t+1)}return null!=e.recordSequence&&(n.recordSequence=String(e.recordSequence)),null!=e.partitionToken&&(n.partitionToken=String(e.partitionToken)),n},yr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.endTimestamp=null,o.recordSequence="",o.partitionToken=""),null!=e.endTimestamp&&Object.hasOwnProperty.call(e,"endTimestamp")&&(o.endTimestamp=g.google.protobuf.Timestamp.toObject(e.endTimestamp,t,n+1)),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&(o.recordSequence=e.recordSequence),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&(o.partitionToken=e.partitionToken),o},yr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},yr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.PartitionEndRecord"},yr),pr.PartitionEventRecord=(hr.prototype.commitTimestamp=null,hr.prototype.recordSequence="",hr.prototype.partitionToken="",hr.prototype.moveInEvents=d.emptyArray,hr.prototype.moveOutEvents=d.emptyArray,hr.create=function(e){return new hr(e)},hr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&g.google.protobuf.Timestamp.encode(e.commitTimestamp,t.uint32(10).fork(),n+1).ldelim(),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&t.uint32(18).string(e.recordSequence),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&t.uint32(26).string(e.partitionToken),null!=e.moveInEvents&&e.moveInEvents.length)for(var o=0;o<e.moveInEvents.length;++o)g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent.encode(e.moveInEvents[o],t.uint32(34).fork(),n+1).ldelim();if(null!=e.moveOutEvents&&e.moveOutEvents.length)for(o=0;o<e.moveOutEvents.length;++o)g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent.encode(e.moveOutEvents[o],t.uint32(42).fork(),n+1).ldelim();return t},hr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},hr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.commitTimestamp=g.google.protobuf.Timestamp.decode(e,e.uint32(),void 0,o+1);break;case 2:i.recordSequence=e.string();break;case 3:i.partitionToken=e.string();break;case 4:i.moveInEvents&&i.moveInEvents.length||(i.moveInEvents=[]),i.moveInEvents.push(g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent.decode(e,e.uint32(),void 0,o+1));break;case 5:i.moveOutEvents&&i.moveOutEvents.length||(i.moveOutEvents=[]),i.moveOutEvents.push(g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},hr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},hr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&(o=g.google.protobuf.Timestamp.verify(e.commitTimestamp,t+1)))return"commitTimestamp."+o;if(null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&!d.isString(e.recordSequence))return"recordSequence: string expected";if(null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&!d.isString(e.partitionToken))return"partitionToken: string expected";if(null!=e.moveInEvents&&Object.hasOwnProperty.call(e,"moveInEvents")){if(!Array.isArray(e.moveInEvents))return"moveInEvents: array expected";for(var n=0;n<e.moveInEvents.length;++n)if(o=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent.verify(e.moveInEvents[n],t+1))return"moveInEvents."+o}if(null!=e.moveOutEvents&&Object.hasOwnProperty.call(e,"moveOutEvents")){if(!Array.isArray(e.moveOutEvents))return"moveOutEvents: array expected";for(var o,n=0;n<e.moveOutEvents.length;++n)if(o=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent.verify(e.moveOutEvents[n],t+1))return"moveOutEvents."+o}return null},hr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEventRecord: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord;if(null!=e.commitTimestamp){if(!d.isObject(e.commitTimestamp))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.commitTimestamp: object expected");n.commitTimestamp=g.google.protobuf.Timestamp.fromObject(e.commitTimestamp,t+1)}if(null!=e.recordSequence&&(n.recordSequence=String(e.recordSequence)),null!=e.partitionToken&&(n.partitionToken=String(e.partitionToken)),e.moveInEvents){if(!Array.isArray(e.moveInEvents))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.moveInEvents: array expected");n.moveInEvents=[];for(var o=0;o<e.moveInEvents.length;++o){if(!d.isObject(e.moveInEvents[o]))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.moveInEvents: object expected");n.moveInEvents[o]=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent.fromObject(e.moveInEvents[o],t+1)}}if(e.moveOutEvents){if(!Array.isArray(e.moveOutEvents))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.moveOutEvents: array expected");n.moveOutEvents=[];for(o=0;o<e.moveOutEvents.length;++o){if(!d.isObject(e.moveOutEvents[o]))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.moveOutEvents: object expected");n.moveOutEvents[o]=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent.fromObject(e.moveOutEvents[o],t+1)}}return n},hr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.moveInEvents=[],o.moveOutEvents=[]),t.defaults&&(o.commitTimestamp=null,o.recordSequence="",o.partitionToken=""),null!=e.commitTimestamp&&Object.hasOwnProperty.call(e,"commitTimestamp")&&(o.commitTimestamp=g.google.protobuf.Timestamp.toObject(e.commitTimestamp,t,n+1)),null!=e.recordSequence&&Object.hasOwnProperty.call(e,"recordSequence")&&(o.recordSequence=e.recordSequence),null!=e.partitionToken&&Object.hasOwnProperty.call(e,"partitionToken")&&(o.partitionToken=e.partitionToken),e.moveInEvents&&e.moveInEvents.length){o.moveInEvents=[];for(var r=0;r<e.moveInEvents.length;++r)o.moveInEvents[r]=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent.toObject(e.moveInEvents[r],t,n+1)}if(e.moveOutEvents&&e.moveOutEvents.length){o.moveOutEvents=[];for(r=0;r<e.moveOutEvents.length;++r)o.moveOutEvents[r]=g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent.toObject(e.moveOutEvents[r],t,n+1)}return o},hr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},hr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.PartitionEventRecord"},hr.MoveInEvent=(Or.prototype.sourcePartitionToken="",Or.create=function(e){return new Or(e)},Or.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.sourcePartitionToken&&Object.hasOwnProperty.call(e,"sourcePartitionToken")&&t.uint32(10).string(e.sourcePartitionToken),t},Or.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Or.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.sourcePartitionToken=e.string():e.skipType(7&a,o)}return i},Or.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Or.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.sourcePartitionToken&&Object.hasOwnProperty.call(e,"sourcePartitionToken")&&!d.isString(e.sourcePartitionToken)?"sourcePartitionToken: string expected":null},Or.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent;return null!=e.sourcePartitionToken&&(t.sourcePartitionToken=String(e.sourcePartitionToken)),t},Or.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.sourcePartitionToken=""),null!=e.sourcePartitionToken&&Object.hasOwnProperty.call(e,"sourcePartitionToken")&&(n.sourcePartitionToken=e.sourcePartitionToken),n},Or.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Or.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveInEvent"},Or),hr.MoveOutEvent=(vr.prototype.destinationPartitionToken="",vr.create=function(e){return new vr(e)},vr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.destinationPartitionToken&&Object.hasOwnProperty.call(e,"destinationPartitionToken")&&t.uint32(10).string(e.destinationPartitionToken),t},vr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},vr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.destinationPartitionToken=e.string():e.skipType(7&a,o)}return i},vr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},vr.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.destinationPartitionToken&&Object.hasOwnProperty.call(e,"destinationPartitionToken")&&!d.isString(e.destinationPartitionToken)?"destinationPartitionToken: string expected":null},vr.fromObject=function(e,t){if(e instanceof g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent)return e;if(!d.isObject(e))throw TypeError(".google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent;return null!=e.destinationPartitionToken&&(t.destinationPartitionToken=String(e.destinationPartitionToken)),t},vr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.destinationPartitionToken=""),null!=e.destinationPartitionToken&&Object.hasOwnProperty.call(e,"destinationPartitionToken")&&(n.destinationPartitionToken=e.destinationPartitionToken),n},vr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},vr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.spanner.v1.ChangeStreamRecord.PartitionEventRecord.MoveOutEvent"},vr),hr),pr),r),i),_.api=((e={}).FieldBehavior=(n={},(a=Object.create(n))[n[0]="FIELD_BEHAVIOR_UNSPECIFIED"]=0,a[n[1]="OPTIONAL"]=1,a[n[2]="REQUIRED"]=2,a[n[3]="OUTPUT_ONLY"]=3,a[n[4]="INPUT_ONLY"]=4,a[n[5]="IMMUTABLE"]=5,a[n[6]="UNORDERED_LIST"]=6,a[n[7]="NON_EMPTY_DEFAULT"]=7,a[n[8]="IDENTIFIER"]=8,a),e.ResourceDescriptor=(jr.prototype.type="",jr.prototype.pattern=d.emptyArray,jr.prototype.nameField="",jr.prototype.history=0,jr.prototype.plural="",jr.prototype.singular="",jr.prototype.style=d.emptyArray,jr.create=function(e){return new jr(e)},jr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.type&&Object.hasOwnProperty.call(e,"type")&&t.uint32(10).string(e.type),null!=e.pattern&&e.pattern.length)for(var o=0;o<e.pattern.length;++o)t.uint32(18).string(e.pattern[o]);if(null!=e.nameField&&Object.hasOwnProperty.call(e,"nameField")&&t.uint32(26).string(e.nameField),null!=e.history&&Object.hasOwnProperty.call(e,"history")&&t.uint32(32).int32(e.history),null!=e.plural&&Object.hasOwnProperty.call(e,"plural")&&t.uint32(42).string(e.plural),null!=e.singular&&Object.hasOwnProperty.call(e,"singular")&&t.uint32(50).string(e.singular),null!=e.style&&e.style.length){t.uint32(82).fork();for(o=0;o<e.style.length;++o)t.int32(e.style[o]);t.ldelim()}return t},jr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},jr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.ResourceDescriptor;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.type=e.string();break;case 2:i.pattern&&i.pattern.length||(i.pattern=[]),i.pattern.push(e.string());break;case 3:i.nameField=e.string();break;case 4:i.history=e.int32();break;case 5:i.plural=e.string();break;case 6:i.singular=e.string();break;case 10:if(i.style&&i.style.length||(i.style=[]),2==(7&a))for(var s=e.uint32()+e.pos;e.pos<s;)i.style.push(e.int32());else i.style.push(e.int32());break;default:e.skipType(7&a,o)}}return i},jr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},jr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.type&&Object.hasOwnProperty.call(e,"type")&&!d.isString(e.type))return"type: string expected";if(null!=e.pattern&&Object.hasOwnProperty.call(e,"pattern")){if(!Array.isArray(e.pattern))return"pattern: array expected";for(var n=0;n<e.pattern.length;++n)if(!d.isString(e.pattern[n]))return"pattern: string[] expected"}if(null!=e.nameField&&Object.hasOwnProperty.call(e,"nameField")&&!d.isString(e.nameField))return"nameField: string expected";if(null!=e.history&&Object.hasOwnProperty.call(e,"history"))switch(e.history){default:return"history: enum value expected";case 0:case 1:case 2:}if(null!=e.plural&&Object.hasOwnProperty.call(e,"plural")&&!d.isString(e.plural))return"plural: string expected";if(null!=e.singular&&Object.hasOwnProperty.call(e,"singular")&&!d.isString(e.singular))return"singular: string expected";if(null!=e.style&&Object.hasOwnProperty.call(e,"style")){if(!Array.isArray(e.style))return"style: array expected";for(n=0;n<e.style.length;++n)switch(e.style[n]){default:return"style: enum value[] expected";case 0:case 1:}}return null},jr.fromObject=function(e,t){if(e instanceof g.google.api.ResourceDescriptor)return e;if(!d.isObject(e))throw TypeError(".google.api.ResourceDescriptor: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.ResourceDescriptor;if(null!=e.type&&(n.type=String(e.type)),e.pattern){if(!Array.isArray(e.pattern))throw TypeError(".google.api.ResourceDescriptor.pattern: array expected");n.pattern=[];for(var o=0;o<e.pattern.length;++o)n.pattern[o]=String(e.pattern[o])}switch(null!=e.nameField&&(n.nameField=String(e.nameField)),e.history){default:"number"==typeof e.history&&(n.history=e.history);break;case"HISTORY_UNSPECIFIED":case 0:n.history=0;break;case"ORIGINALLY_SINGLE_PATTERN":case 1:n.history=1;break;case"FUTURE_MULTI_PATTERN":case 2:n.history=2}if(null!=e.plural&&(n.plural=String(e.plural)),null!=e.singular&&(n.singular=String(e.singular)),e.style){if(!Array.isArray(e.style))throw TypeError(".google.api.ResourceDescriptor.style: array expected");n.style=[];for(o=0;o<e.style.length;++o)switch(e.style[o]){default:if("number"==typeof e.style[o]){n.style[o]=e.style[o];break}case"STYLE_UNSPECIFIED":case 0:n.style[o]=0;break;case"DECLARATIVE_FRIENDLY":case 1:n.style[o]=1}}return n},jr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.pattern=[],o.style=[]),t.defaults&&(o.type="",o.nameField="",o.history=t.enums===String?"HISTORY_UNSPECIFIED":0,o.plural="",o.singular=""),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(o.type=e.type),e.pattern&&e.pattern.length){o.pattern=[];for(var r=0;r<e.pattern.length;++r)o.pattern[r]=e.pattern[r]}if(null!=e.nameField&&Object.hasOwnProperty.call(e,"nameField")&&(o.nameField=e.nameField),null!=e.history&&Object.hasOwnProperty.call(e,"history")&&(o.history=t.enums!==String||void 0===g.google.api.ResourceDescriptor.History[e.history]?e.history:g.google.api.ResourceDescriptor.History[e.history]),null!=e.plural&&Object.hasOwnProperty.call(e,"plural")&&(o.plural=e.plural),null!=e.singular&&Object.hasOwnProperty.call(e,"singular")&&(o.singular=e.singular),e.style&&e.style.length){o.style=[];for(r=0;r<e.style.length;++r)o.style[r]=t.enums!==String||void 0===g.google.api.ResourceDescriptor.Style[e.style[r]]?e.style[r]:g.google.api.ResourceDescriptor.Style[e.style[r]]}return o},jr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},jr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.ResourceDescriptor"},jr.History=(n={},(a=Object.create(n))[n[0]="HISTORY_UNSPECIFIED"]=0,a[n[1]="ORIGINALLY_SINGLE_PATTERN"]=1,a[n[2]="FUTURE_MULTI_PATTERN"]=2,a),jr.Style=(n={},(a=Object.create(n))[n[0]="STYLE_UNSPECIFIED"]=0,a[n[1]="DECLARATIVE_FRIENDLY"]=1,a),jr),e.ResourceReference=(xr.prototype.type="",xr.prototype.childType="",xr.create=function(e){return new xr(e)},xr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.type&&Object.hasOwnProperty.call(e,"type")&&t.uint32(10).string(e.type),null!=e.childType&&Object.hasOwnProperty.call(e,"childType")&&t.uint32(18).string(e.childType),t},xr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},xr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.ResourceReference;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.type=e.string();break;case 2:i.childType=e.string();break;default:e.skipType(7&a,o)}}return i},xr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},xr.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.type&&Object.hasOwnProperty.call(e,"type")&&!d.isString(e.type)?"type: string expected":null!=e.childType&&Object.hasOwnProperty.call(e,"childType")&&!d.isString(e.childType)?"childType: string expected":null},xr.fromObject=function(e,t){if(e instanceof g.google.api.ResourceReference)return e;if(!d.isObject(e))throw TypeError(".google.api.ResourceReference: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.api.ResourceReference;return null!=e.type&&(t.type=String(e.type)),null!=e.childType&&(t.childType=String(e.childType)),t},xr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.type="",n.childType=""),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(n.type=e.type),null!=e.childType&&Object.hasOwnProperty.call(e,"childType")&&(n.childType=e.childType),n},xr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},xr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.ResourceReference"},xr),e.Http=(wr.prototype.rules=d.emptyArray,wr.prototype.fullyDecodeReservedExpansion=!1,wr.create=function(e){return new wr(e)},wr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.rules&&e.rules.length)for(var o=0;o<e.rules.length;++o)g.google.api.HttpRule.encode(e.rules[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.fullyDecodeReservedExpansion&&Object.hasOwnProperty.call(e,"fullyDecodeReservedExpansion")&&t.uint32(16).bool(e.fullyDecodeReservedExpansion),t},wr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},wr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.Http;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.rules&&i.rules.length||(i.rules=[]),i.rules.push(g.google.api.HttpRule.decode(e,e.uint32(),void 0,o+1));break;case 2:i.fullyDecodeReservedExpansion=e.bool();break;default:e.skipType(7&a,o)}}return i},wr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},wr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.rules&&Object.hasOwnProperty.call(e,"rules")){if(!Array.isArray(e.rules))return"rules: array expected";for(var n=0;n<e.rules.length;++n){var o=g.google.api.HttpRule.verify(e.rules[n],t+1);if(o)return"rules."+o}}return null!=e.fullyDecodeReservedExpansion&&Object.hasOwnProperty.call(e,"fullyDecodeReservedExpansion")&&"boolean"!=typeof e.fullyDecodeReservedExpansion?"fullyDecodeReservedExpansion: boolean expected":null},wr.fromObject=function(e,t){if(e instanceof g.google.api.Http)return e;if(!d.isObject(e))throw TypeError(".google.api.Http: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.Http;if(e.rules){if(!Array.isArray(e.rules))throw TypeError(".google.api.Http.rules: array expected");n.rules=[];for(var o=0;o<e.rules.length;++o){if(!d.isObject(e.rules[o]))throw TypeError(".google.api.Http.rules: object expected");n.rules[o]=g.google.api.HttpRule.fromObject(e.rules[o],t+1)}}return null!=e.fullyDecodeReservedExpansion&&(n.fullyDecodeReservedExpansion=Boolean(e.fullyDecodeReservedExpansion)),n},wr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.rules=[]),t.defaults&&(o.fullyDecodeReservedExpansion=!1),e.rules&&e.rules.length){o.rules=[];for(var r=0;r<e.rules.length;++r)o.rules[r]=g.google.api.HttpRule.toObject(e.rules[r],t,n+1)}return null!=e.fullyDecodeReservedExpansion&&Object.hasOwnProperty.call(e,"fullyDecodeReservedExpansion")&&(o.fullyDecodeReservedExpansion=e.fullyDecodeReservedExpansion),o},wr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},wr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.Http"},wr),e.HttpRule=(Tr.prototype.selector="",Tr.prototype.get=null,Tr.prototype.put=null,Tr.prototype.post=null,Tr.prototype.delete=null,Tr.prototype.patch=null,Tr.prototype.custom=null,Tr.prototype.body="",Tr.prototype.responseBody="",Tr.prototype.additionalBindings=d.emptyArray,Object.defineProperty(Tr.prototype,"pattern",{get:d.oneOfGetter(n=["get","put","post","delete","patch","custom"]),set:d.oneOfSetter(n)}),Tr.create=function(e){return new Tr(e)},Tr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.selector&&Object.hasOwnProperty.call(e,"selector")&&t.uint32(10).string(e.selector),null!=e.get&&Object.hasOwnProperty.call(e,"get")&&t.uint32(18).string(e.get),null!=e.put&&Object.hasOwnProperty.call(e,"put")&&t.uint32(26).string(e.put),null!=e.post&&Object.hasOwnProperty.call(e,"post")&&t.uint32(34).string(e.post),null!=e.delete&&Object.hasOwnProperty.call(e,"delete")&&t.uint32(42).string(e.delete),null!=e.patch&&Object.hasOwnProperty.call(e,"patch")&&t.uint32(50).string(e.patch),null!=e.body&&Object.hasOwnProperty.call(e,"body")&&t.uint32(58).string(e.body),null!=e.custom&&Object.hasOwnProperty.call(e,"custom")&&g.google.api.CustomHttpPattern.encode(e.custom,t.uint32(66).fork(),n+1).ldelim(),null!=e.additionalBindings&&e.additionalBindings.length)for(var o=0;o<e.additionalBindings.length;++o)g.google.api.HttpRule.encode(e.additionalBindings[o],t.uint32(90).fork(),n+1).ldelim();return null!=e.responseBody&&Object.hasOwnProperty.call(e,"responseBody")&&t.uint32(98).string(e.responseBody),t},Tr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Tr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.HttpRule;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.selector=e.string();break;case 2:i.get=e.string();break;case 3:i.put=e.string();break;case 4:i.post=e.string();break;case 5:i.delete=e.string();break;case 6:i.patch=e.string();break;case 8:i.custom=g.google.api.CustomHttpPattern.decode(e,e.uint32(),void 0,o+1);break;case 7:i.body=e.string();break;case 12:i.responseBody=e.string();break;case 11:i.additionalBindings&&i.additionalBindings.length||(i.additionalBindings=[]),i.additionalBindings.push(g.google.api.HttpRule.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Tr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Tr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n={};if(null!=e.selector&&Object.hasOwnProperty.call(e,"selector")&&!d.isString(e.selector))return"selector: string expected";if(null!=e.get&&Object.hasOwnProperty.call(e,"get")&&(n.pattern=1,!d.isString(e.get)))return"get: string expected";if(null!=e.put&&Object.hasOwnProperty.call(e,"put")){if(1===n.pattern)return"pattern: multiple values";if(n.pattern=1,!d.isString(e.put))return"put: string expected"}if(null!=e.post&&Object.hasOwnProperty.call(e,"post")){if(1===n.pattern)return"pattern: multiple values";if(n.pattern=1,!d.isString(e.post))return"post: string expected"}if(null!=e.delete&&Object.hasOwnProperty.call(e,"delete")){if(1===n.pattern)return"pattern: multiple values";if(n.pattern=1,!d.isString(e.delete))return"delete: string expected"}if(null!=e.patch&&Object.hasOwnProperty.call(e,"patch")){if(1===n.pattern)return"pattern: multiple values";if(n.pattern=1,!d.isString(e.patch))return"patch: string expected"}if(null!=e.custom&&Object.hasOwnProperty.call(e,"custom")){if(1===n.pattern)return"pattern: multiple values";if(o=g.google.api.CustomHttpPattern.verify(e.custom,t+(n.pattern=1)))return"custom."+o}if(null!=e.body&&Object.hasOwnProperty.call(e,"body")&&!d.isString(e.body))return"body: string expected";if(null!=e.responseBody&&Object.hasOwnProperty.call(e,"responseBody")&&!d.isString(e.responseBody))return"responseBody: string expected";if(null!=e.additionalBindings&&Object.hasOwnProperty.call(e,"additionalBindings")){if(!Array.isArray(e.additionalBindings))return"additionalBindings: array expected";for(var o,r=0;r<e.additionalBindings.length;++r)if(o=g.google.api.HttpRule.verify(e.additionalBindings[r],t+1))return"additionalBindings."+o}return null},Tr.fromObject=function(e,t){if(e instanceof g.google.api.HttpRule)return e;if(!d.isObject(e))throw TypeError(".google.api.HttpRule: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.HttpRule;if(null!=e.selector&&(n.selector=String(e.selector)),null!=e.get&&(n.get=String(e.get)),null!=e.put&&(n.put=String(e.put)),null!=e.post&&(n.post=String(e.post)),null!=e.delete&&(n.delete=String(e.delete)),null!=e.patch&&(n.patch=String(e.patch)),null!=e.custom){if(!d.isObject(e.custom))throw TypeError(".google.api.HttpRule.custom: object expected");n.custom=g.google.api.CustomHttpPattern.fromObject(e.custom,t+1)}if(null!=e.body&&(n.body=String(e.body)),null!=e.responseBody&&(n.responseBody=String(e.responseBody)),e.additionalBindings){if(!Array.isArray(e.additionalBindings))throw TypeError(".google.api.HttpRule.additionalBindings: array expected");n.additionalBindings=[];for(var o=0;o<e.additionalBindings.length;++o){if(!d.isObject(e.additionalBindings[o]))throw TypeError(".google.api.HttpRule.additionalBindings: object expected");n.additionalBindings[o]=g.google.api.HttpRule.fromObject(e.additionalBindings[o],t+1)}}return n},Tr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.additionalBindings=[]),t.defaults&&(o.selector="",o.body="",o.responseBody=""),null!=e.selector&&Object.hasOwnProperty.call(e,"selector")&&(o.selector=e.selector),null!=e.get&&Object.hasOwnProperty.call(e,"get")&&(o.get=e.get,t.oneofs)&&(o.pattern="get"),null!=e.put&&Object.hasOwnProperty.call(e,"put")&&(o.put=e.put,t.oneofs)&&(o.pattern="put"),null!=e.post&&Object.hasOwnProperty.call(e,"post")&&(o.post=e.post,t.oneofs)&&(o.pattern="post"),null!=e.delete&&Object.hasOwnProperty.call(e,"delete")&&(o.delete=e.delete,t.oneofs)&&(o.pattern="delete"),null!=e.patch&&Object.hasOwnProperty.call(e,"patch")&&(o.patch=e.patch,t.oneofs)&&(o.pattern="patch"),null!=e.body&&Object.hasOwnProperty.call(e,"body")&&(o.body=e.body),null!=e.custom&&Object.hasOwnProperty.call(e,"custom")&&(o.custom=g.google.api.CustomHttpPattern.toObject(e.custom,t,n+1),t.oneofs)&&(o.pattern="custom"),e.additionalBindings&&e.additionalBindings.length){o.additionalBindings=[];for(var r=0;r<e.additionalBindings.length;++r)o.additionalBindings[r]=g.google.api.HttpRule.toObject(e.additionalBindings[r],t,n+1)}return null!=e.responseBody&&Object.hasOwnProperty.call(e,"responseBody")&&(o.responseBody=e.responseBody),o},Tr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Tr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.HttpRule"},Tr),e.CustomHttpPattern=(kr.prototype.kind="",kr.prototype.path="",kr.create=function(e){return new kr(e)},kr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.kind&&Object.hasOwnProperty.call(e,"kind")&&t.uint32(10).string(e.kind),null!=e.path&&Object.hasOwnProperty.call(e,"path")&&t.uint32(18).string(e.path),t},kr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},kr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.CustomHttpPattern;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.kind=e.string();break;case 2:i.path=e.string();break;default:e.skipType(7&a,o)}}return i},kr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},kr.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.kind&&Object.hasOwnProperty.call(e,"kind")&&!d.isString(e.kind)?"kind: string expected":null!=e.path&&Object.hasOwnProperty.call(e,"path")&&!d.isString(e.path)?"path: string expected":null},kr.fromObject=function(e,t){if(e instanceof g.google.api.CustomHttpPattern)return e;if(!d.isObject(e))throw TypeError(".google.api.CustomHttpPattern: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.api.CustomHttpPattern;return null!=e.kind&&(t.kind=String(e.kind)),null!=e.path&&(t.path=String(e.path)),t},kr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.kind="",n.path=""),null!=e.kind&&Object.hasOwnProperty.call(e,"kind")&&(n.kind=e.kind),null!=e.path&&Object.hasOwnProperty.call(e,"path")&&(n.path=e.path),n},kr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},kr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.CustomHttpPattern"},kr),e.CommonLanguageSettings=(Pr.prototype.referenceDocsUri="",Pr.prototype.destinations=d.emptyArray,Pr.prototype.selectiveGapicGeneration=null,Pr.create=function(e){return new Pr(e)},Pr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.referenceDocsUri&&Object.hasOwnProperty.call(e,"referenceDocsUri")&&t.uint32(10).string(e.referenceDocsUri),null!=e.destinations&&e.destinations.length){t.uint32(18).fork();for(var o=0;o<e.destinations.length;++o)t.int32(e.destinations[o]);t.ldelim()}return null!=e.selectiveGapicGeneration&&Object.hasOwnProperty.call(e,"selectiveGapicGeneration")&&g.google.api.SelectiveGapicGeneration.encode(e.selectiveGapicGeneration,t.uint32(26).fork(),n+1).ldelim(),t},Pr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Pr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.CommonLanguageSettings;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.referenceDocsUri=e.string();break;case 2:if(i.destinations&&i.destinations.length||(i.destinations=[]),2==(7&a))for(var s=e.uint32()+e.pos;e.pos<s;)i.destinations.push(e.int32());else i.destinations.push(e.int32());break;case 3:i.selectiveGapicGeneration=g.google.api.SelectiveGapicGeneration.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Pr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Pr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.referenceDocsUri&&Object.hasOwnProperty.call(e,"referenceDocsUri")&&!d.isString(e.referenceDocsUri))return"referenceDocsUri: string expected";if(null!=e.destinations&&Object.hasOwnProperty.call(e,"destinations")){if(!Array.isArray(e.destinations))return"destinations: array expected";for(var n=0;n<e.destinations.length;++n)switch(e.destinations[n]){default:return"destinations: enum value[] expected";case 0:case 10:case 20:}}if(null!=e.selectiveGapicGeneration&&Object.hasOwnProperty.call(e,"selectiveGapicGeneration")){t=g.google.api.SelectiveGapicGeneration.verify(e.selectiveGapicGeneration,t+1);if(t)return"selectiveGapicGeneration."+t}return null},Pr.fromObject=function(e,t){if(e instanceof g.google.api.CommonLanguageSettings)return e;if(!d.isObject(e))throw TypeError(".google.api.CommonLanguageSettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.CommonLanguageSettings;if(null!=e.referenceDocsUri&&(n.referenceDocsUri=String(e.referenceDocsUri)),e.destinations){if(!Array.isArray(e.destinations))throw TypeError(".google.api.CommonLanguageSettings.destinations: array expected");n.destinations=[];for(var o=0;o<e.destinations.length;++o)switch(e.destinations[o]){default:if("number"==typeof e.destinations[o]){n.destinations[o]=e.destinations[o];break}case"CLIENT_LIBRARY_DESTINATION_UNSPECIFIED":case 0:n.destinations[o]=0;break;case"GITHUB":case 10:n.destinations[o]=10;break;case"PACKAGE_MANAGER":case 20:n.destinations[o]=20}}if(null!=e.selectiveGapicGeneration){if(!d.isObject(e.selectiveGapicGeneration))throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected");n.selectiveGapicGeneration=g.google.api.SelectiveGapicGeneration.fromObject(e.selectiveGapicGeneration,t+1)}return n},Pr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.destinations=[]),t.defaults&&(o.referenceDocsUri="",o.selectiveGapicGeneration=null),null!=e.referenceDocsUri&&Object.hasOwnProperty.call(e,"referenceDocsUri")&&(o.referenceDocsUri=e.referenceDocsUri),e.destinations&&e.destinations.length){o.destinations=[];for(var r=0;r<e.destinations.length;++r)o.destinations[r]=t.enums!==String||void 0===g.google.api.ClientLibraryDestination[e.destinations[r]]?e.destinations[r]:g.google.api.ClientLibraryDestination[e.destinations[r]]}return null!=e.selectiveGapicGeneration&&Object.hasOwnProperty.call(e,"selectiveGapicGeneration")&&(o.selectiveGapicGeneration=g.google.api.SelectiveGapicGeneration.toObject(e.selectiveGapicGeneration,t,n+1)),o},Pr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Pr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.CommonLanguageSettings"},Pr),e.ClientLibrarySettings=(Sr.prototype.version="",Sr.prototype.launchStage=0,Sr.prototype.restNumericEnums=!1,Sr.prototype.javaSettings=null,Sr.prototype.cppSettings=null,Sr.prototype.phpSettings=null,Sr.prototype.pythonSettings=null,Sr.prototype.nodeSettings=null,Sr.prototype.dotnetSettings=null,Sr.prototype.rubySettings=null,Sr.prototype.goSettings=null,Sr.create=function(e){return new Sr(e)},Sr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.version&&Object.hasOwnProperty.call(e,"version")&&t.uint32(10).string(e.version),null!=e.launchStage&&Object.hasOwnProperty.call(e,"launchStage")&&t.uint32(16).int32(e.launchStage),null!=e.restNumericEnums&&Object.hasOwnProperty.call(e,"restNumericEnums")&&t.uint32(24).bool(e.restNumericEnums),null!=e.javaSettings&&Object.hasOwnProperty.call(e,"javaSettings")&&g.google.api.JavaSettings.encode(e.javaSettings,t.uint32(170).fork(),n+1).ldelim(),null!=e.cppSettings&&Object.hasOwnProperty.call(e,"cppSettings")&&g.google.api.CppSettings.encode(e.cppSettings,t.uint32(178).fork(),n+1).ldelim(),null!=e.phpSettings&&Object.hasOwnProperty.call(e,"phpSettings")&&g.google.api.PhpSettings.encode(e.phpSettings,t.uint32(186).fork(),n+1).ldelim(),null!=e.pythonSettings&&Object.hasOwnProperty.call(e,"pythonSettings")&&g.google.api.PythonSettings.encode(e.pythonSettings,t.uint32(194).fork(),n+1).ldelim(),null!=e.nodeSettings&&Object.hasOwnProperty.call(e,"nodeSettings")&&g.google.api.NodeSettings.encode(e.nodeSettings,t.uint32(202).fork(),n+1).ldelim(),null!=e.dotnetSettings&&Object.hasOwnProperty.call(e,"dotnetSettings")&&g.google.api.DotnetSettings.encode(e.dotnetSettings,t.uint32(210).fork(),n+1).ldelim(),null!=e.rubySettings&&Object.hasOwnProperty.call(e,"rubySettings")&&g.google.api.RubySettings.encode(e.rubySettings,t.uint32(218).fork(),n+1).ldelim(),null!=e.goSettings&&Object.hasOwnProperty.call(e,"goSettings")&&g.google.api.GoSettings.encode(e.goSettings,t.uint32(226).fork(),n+1).ldelim(),t},Sr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Sr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.ClientLibrarySettings;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.version=e.string();break;case 2:i.launchStage=e.int32();break;case 3:i.restNumericEnums=e.bool();break;case 21:i.javaSettings=g.google.api.JavaSettings.decode(e,e.uint32(),void 0,o+1);break;case 22:i.cppSettings=g.google.api.CppSettings.decode(e,e.uint32(),void 0,o+1);break;case 23:i.phpSettings=g.google.api.PhpSettings.decode(e,e.uint32(),void 0,o+1);break;case 24:i.pythonSettings=g.google.api.PythonSettings.decode(e,e.uint32(),void 0,o+1);break;case 25:i.nodeSettings=g.google.api.NodeSettings.decode(e,e.uint32(),void 0,o+1);break;case 26:i.dotnetSettings=g.google.api.DotnetSettings.decode(e,e.uint32(),void 0,o+1);break;case 27:i.rubySettings=g.google.api.RubySettings.decode(e,e.uint32(),void 0,o+1);break;case 28:i.goSettings=g.google.api.GoSettings.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Sr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Sr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.version&&Object.hasOwnProperty.call(e,"version")&&!d.isString(e.version))return"version: string expected";if(null!=e.launchStage&&Object.hasOwnProperty.call(e,"launchStage"))switch(e.launchStage){default:return"launchStage: enum value expected";case 0:case 6:case 7:case 1:case 2:case 3:case 4:case 5:}if(null!=e.restNumericEnums&&Object.hasOwnProperty.call(e,"restNumericEnums")&&"boolean"!=typeof e.restNumericEnums)return"restNumericEnums: boolean expected";var n;if(null!=e.javaSettings&&Object.hasOwnProperty.call(e,"javaSettings")&&(n=g.google.api.JavaSettings.verify(e.javaSettings,t+1)))return"javaSettings."+n;if(null!=e.cppSettings&&Object.hasOwnProperty.call(e,"cppSettings")&&(n=g.google.api.CppSettings.verify(e.cppSettings,t+1)))return"cppSettings."+n;if(null!=e.phpSettings&&Object.hasOwnProperty.call(e,"phpSettings")&&(n=g.google.api.PhpSettings.verify(e.phpSettings,t+1)))return"phpSettings."+n;if(null!=e.pythonSettings&&Object.hasOwnProperty.call(e,"pythonSettings")&&(n=g.google.api.PythonSettings.verify(e.pythonSettings,t+1)))return"pythonSettings."+n;if(null!=e.nodeSettings&&Object.hasOwnProperty.call(e,"nodeSettings")&&(n=g.google.api.NodeSettings.verify(e.nodeSettings,t+1)))return"nodeSettings."+n;if(null!=e.dotnetSettings&&Object.hasOwnProperty.call(e,"dotnetSettings")&&(n=g.google.api.DotnetSettings.verify(e.dotnetSettings,t+1)))return"dotnetSettings."+n;if(null!=e.rubySettings&&Object.hasOwnProperty.call(e,"rubySettings")&&(n=g.google.api.RubySettings.verify(e.rubySettings,t+1)))return"rubySettings."+n;if(null!=e.goSettings&&Object.hasOwnProperty.call(e,"goSettings")&&(n=g.google.api.GoSettings.verify(e.goSettings,t+1)))return"goSettings."+n;return null},Sr.fromObject=function(e,t){if(e instanceof g.google.api.ClientLibrarySettings)return e;if(!d.isObject(e))throw TypeError(".google.api.ClientLibrarySettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.ClientLibrarySettings;switch(null!=e.version&&(n.version=String(e.version)),e.launchStage){default:"number"==typeof e.launchStage&&(n.launchStage=e.launchStage);break;case"LAUNCH_STAGE_UNSPECIFIED":case 0:n.launchStage=0;break;case"UNIMPLEMENTED":case 6:n.launchStage=6;break;case"PRELAUNCH":case 7:n.launchStage=7;break;case"EARLY_ACCESS":case 1:n.launchStage=1;break;case"ALPHA":case 2:n.launchStage=2;break;case"BETA":case 3:n.launchStage=3;break;case"GA":case 4:n.launchStage=4;break;case"DEPRECATED":case 5:n.launchStage=5}if(null!=e.restNumericEnums&&(n.restNumericEnums=Boolean(e.restNumericEnums)),null!=e.javaSettings){if(!d.isObject(e.javaSettings))throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected");n.javaSettings=g.google.api.JavaSettings.fromObject(e.javaSettings,t+1)}if(null!=e.cppSettings){if(!d.isObject(e.cppSettings))throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected");n.cppSettings=g.google.api.CppSettings.fromObject(e.cppSettings,t+1)}if(null!=e.phpSettings){if(!d.isObject(e.phpSettings))throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected");n.phpSettings=g.google.api.PhpSettings.fromObject(e.phpSettings,t+1)}if(null!=e.pythonSettings){if(!d.isObject(e.pythonSettings))throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected");n.pythonSettings=g.google.api.PythonSettings.fromObject(e.pythonSettings,t+1)}if(null!=e.nodeSettings){if(!d.isObject(e.nodeSettings))throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected");n.nodeSettings=g.google.api.NodeSettings.fromObject(e.nodeSettings,t+1)}if(null!=e.dotnetSettings){if(!d.isObject(e.dotnetSettings))throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected");n.dotnetSettings=g.google.api.DotnetSettings.fromObject(e.dotnetSettings,t+1)}if(null!=e.rubySettings){if(!d.isObject(e.rubySettings))throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected");n.rubySettings=g.google.api.RubySettings.fromObject(e.rubySettings,t+1)}if(null!=e.goSettings){if(!d.isObject(e.goSettings))throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected");n.goSettings=g.google.api.GoSettings.fromObject(e.goSettings,t+1)}return n},Sr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.version="",o.launchStage=t.enums===String?"LAUNCH_STAGE_UNSPECIFIED":0,o.restNumericEnums=!1,o.javaSettings=null,o.cppSettings=null,o.phpSettings=null,o.pythonSettings=null,o.nodeSettings=null,o.dotnetSettings=null,o.rubySettings=null,o.goSettings=null),null!=e.version&&Object.hasOwnProperty.call(e,"version")&&(o.version=e.version),null!=e.launchStage&&Object.hasOwnProperty.call(e,"launchStage")&&(o.launchStage=t.enums!==String||void 0===g.google.api.LaunchStage[e.launchStage]?e.launchStage:g.google.api.LaunchStage[e.launchStage]),null!=e.restNumericEnums&&Object.hasOwnProperty.call(e,"restNumericEnums")&&(o.restNumericEnums=e.restNumericEnums),null!=e.javaSettings&&Object.hasOwnProperty.call(e,"javaSettings")&&(o.javaSettings=g.google.api.JavaSettings.toObject(e.javaSettings,t,n+1)),null!=e.cppSettings&&Object.hasOwnProperty.call(e,"cppSettings")&&(o.cppSettings=g.google.api.CppSettings.toObject(e.cppSettings,t,n+1)),null!=e.phpSettings&&Object.hasOwnProperty.call(e,"phpSettings")&&(o.phpSettings=g.google.api.PhpSettings.toObject(e.phpSettings,t,n+1)),null!=e.pythonSettings&&Object.hasOwnProperty.call(e,"pythonSettings")&&(o.pythonSettings=g.google.api.PythonSettings.toObject(e.pythonSettings,t,n+1)),null!=e.nodeSettings&&Object.hasOwnProperty.call(e,"nodeSettings")&&(o.nodeSettings=g.google.api.NodeSettings.toObject(e.nodeSettings,t,n+1)),null!=e.dotnetSettings&&Object.hasOwnProperty.call(e,"dotnetSettings")&&(o.dotnetSettings=g.google.api.DotnetSettings.toObject(e.dotnetSettings,t,n+1)),null!=e.rubySettings&&Object.hasOwnProperty.call(e,"rubySettings")&&(o.rubySettings=g.google.api.RubySettings.toObject(e.rubySettings,t,n+1)),null!=e.goSettings&&Object.hasOwnProperty.call(e,"goSettings")&&(o.goSettings=g.google.api.GoSettings.toObject(e.goSettings,t,n+1)),o},Sr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Sr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.ClientLibrarySettings"},Sr),e.Publishing=(Ir.prototype.methodSettings=d.emptyArray,Ir.prototype.newIssueUri="",Ir.prototype.documentationUri="",Ir.prototype.apiShortName="",Ir.prototype.githubLabel="",Ir.prototype.codeownerGithubTeams=d.emptyArray,Ir.prototype.docTagPrefix="",Ir.prototype.organization=0,Ir.prototype.librarySettings=d.emptyArray,Ir.prototype.protoReferenceDocumentationUri="",Ir.prototype.restReferenceDocumentationUri="",Ir.create=function(e){return new Ir(e)},Ir.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.methodSettings&&e.methodSettings.length)for(var o=0;o<e.methodSettings.length;++o)g.google.api.MethodSettings.encode(e.methodSettings[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.newIssueUri&&Object.hasOwnProperty.call(e,"newIssueUri")&&t.uint32(810).string(e.newIssueUri),null!=e.documentationUri&&Object.hasOwnProperty.call(e,"documentationUri")&&t.uint32(818).string(e.documentationUri),null!=e.apiShortName&&Object.hasOwnProperty.call(e,"apiShortName")&&t.uint32(826).string(e.apiShortName),null!=e.githubLabel&&Object.hasOwnProperty.call(e,"githubLabel")&&t.uint32(834).string(e.githubLabel),null!=e.codeownerGithubTeams&&e.codeownerGithubTeams.length)for(o=0;o<e.codeownerGithubTeams.length;++o)t.uint32(842).string(e.codeownerGithubTeams[o]);if(null!=e.docTagPrefix&&Object.hasOwnProperty.call(e,"docTagPrefix")&&t.uint32(850).string(e.docTagPrefix),null!=e.organization&&Object.hasOwnProperty.call(e,"organization")&&t.uint32(856).int32(e.organization),null!=e.librarySettings&&e.librarySettings.length)for(o=0;o<e.librarySettings.length;++o)g.google.api.ClientLibrarySettings.encode(e.librarySettings[o],t.uint32(874).fork(),n+1).ldelim();return null!=e.protoReferenceDocumentationUri&&Object.hasOwnProperty.call(e,"protoReferenceDocumentationUri")&&t.uint32(882).string(e.protoReferenceDocumentationUri),null!=e.restReferenceDocumentationUri&&Object.hasOwnProperty.call(e,"restReferenceDocumentationUri")&&t.uint32(890).string(e.restReferenceDocumentationUri),t},Ir.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ir.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.Publishing;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 2:i.methodSettings&&i.methodSettings.length||(i.methodSettings=[]),i.methodSettings.push(g.google.api.MethodSettings.decode(e,e.uint32(),void 0,o+1));break;case 101:i.newIssueUri=e.string();break;case 102:i.documentationUri=e.string();break;case 103:i.apiShortName=e.string();break;case 104:i.githubLabel=e.string();break;case 105:i.codeownerGithubTeams&&i.codeownerGithubTeams.length||(i.codeownerGithubTeams=[]),i.codeownerGithubTeams.push(e.string());break;case 106:i.docTagPrefix=e.string();break;case 107:i.organization=e.int32();break;case 109:i.librarySettings&&i.librarySettings.length||(i.librarySettings=[]),i.librarySettings.push(g.google.api.ClientLibrarySettings.decode(e,e.uint32(),void 0,o+1));break;case 110:i.protoReferenceDocumentationUri=e.string();break;case 111:i.restReferenceDocumentationUri=e.string();break;default:e.skipType(7&a,o)}}return i},Ir.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ir.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.methodSettings&&Object.hasOwnProperty.call(e,"methodSettings")){if(!Array.isArray(e.methodSettings))return"methodSettings: array expected";for(var n=0;n<e.methodSettings.length;++n)if(o=g.google.api.MethodSettings.verify(e.methodSettings[n],t+1))return"methodSettings."+o}if(null!=e.newIssueUri&&Object.hasOwnProperty.call(e,"newIssueUri")&&!d.isString(e.newIssueUri))return"newIssueUri: string expected";if(null!=e.documentationUri&&Object.hasOwnProperty.call(e,"documentationUri")&&!d.isString(e.documentationUri))return"documentationUri: string expected";if(null!=e.apiShortName&&Object.hasOwnProperty.call(e,"apiShortName")&&!d.isString(e.apiShortName))return"apiShortName: string expected";if(null!=e.githubLabel&&Object.hasOwnProperty.call(e,"githubLabel")&&!d.isString(e.githubLabel))return"githubLabel: string expected";if(null!=e.codeownerGithubTeams&&Object.hasOwnProperty.call(e,"codeownerGithubTeams")){if(!Array.isArray(e.codeownerGithubTeams))return"codeownerGithubTeams: array expected";for(n=0;n<e.codeownerGithubTeams.length;++n)if(!d.isString(e.codeownerGithubTeams[n]))return"codeownerGithubTeams: string[] expected"}if(null!=e.docTagPrefix&&Object.hasOwnProperty.call(e,"docTagPrefix")&&!d.isString(e.docTagPrefix))return"docTagPrefix: string expected";if(null!=e.organization&&Object.hasOwnProperty.call(e,"organization"))switch(e.organization){default:return"organization: enum value expected";case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:}if(null!=e.librarySettings&&Object.hasOwnProperty.call(e,"librarySettings")){if(!Array.isArray(e.librarySettings))return"librarySettings: array expected";for(var o,n=0;n<e.librarySettings.length;++n)if(o=g.google.api.ClientLibrarySettings.verify(e.librarySettings[n],t+1))return"librarySettings."+o}return null!=e.protoReferenceDocumentationUri&&Object.hasOwnProperty.call(e,"protoReferenceDocumentationUri")&&!d.isString(e.protoReferenceDocumentationUri)?"protoReferenceDocumentationUri: string expected":null!=e.restReferenceDocumentationUri&&Object.hasOwnProperty.call(e,"restReferenceDocumentationUri")&&!d.isString(e.restReferenceDocumentationUri)?"restReferenceDocumentationUri: string expected":null},Ir.fromObject=function(e,t){if(e instanceof g.google.api.Publishing)return e;if(!d.isObject(e))throw TypeError(".google.api.Publishing: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.Publishing;if(e.methodSettings){if(!Array.isArray(e.methodSettings))throw TypeError(".google.api.Publishing.methodSettings: array expected");n.methodSettings=[];for(var o=0;o<e.methodSettings.length;++o){if(!d.isObject(e.methodSettings[o]))throw TypeError(".google.api.Publishing.methodSettings: object expected");n.methodSettings[o]=g.google.api.MethodSettings.fromObject(e.methodSettings[o],t+1)}}if(null!=e.newIssueUri&&(n.newIssueUri=String(e.newIssueUri)),null!=e.documentationUri&&(n.documentationUri=String(e.documentationUri)),null!=e.apiShortName&&(n.apiShortName=String(e.apiShortName)),null!=e.githubLabel&&(n.githubLabel=String(e.githubLabel)),e.codeownerGithubTeams){if(!Array.isArray(e.codeownerGithubTeams))throw TypeError(".google.api.Publishing.codeownerGithubTeams: array expected");n.codeownerGithubTeams=[];for(o=0;o<e.codeownerGithubTeams.length;++o)n.codeownerGithubTeams[o]=String(e.codeownerGithubTeams[o])}switch(null!=e.docTagPrefix&&(n.docTagPrefix=String(e.docTagPrefix)),e.organization){default:"number"==typeof e.organization&&(n.organization=e.organization);break;case"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":case 0:n.organization=0;break;case"CLOUD":case 1:n.organization=1;break;case"ADS":case 2:n.organization=2;break;case"PHOTOS":case 3:n.organization=3;break;case"STREET_VIEW":case 4:n.organization=4;break;case"SHOPPING":case 5:n.organization=5;break;case"GEO":case 6:n.organization=6;break;case"GENERATIVE_AI":case 7:n.organization=7}if(e.librarySettings){if(!Array.isArray(e.librarySettings))throw TypeError(".google.api.Publishing.librarySettings: array expected");n.librarySettings=[];for(o=0;o<e.librarySettings.length;++o){if(!d.isObject(e.librarySettings[o]))throw TypeError(".google.api.Publishing.librarySettings: object expected");n.librarySettings[o]=g.google.api.ClientLibrarySettings.fromObject(e.librarySettings[o],t+1)}}return null!=e.protoReferenceDocumentationUri&&(n.protoReferenceDocumentationUri=String(e.protoReferenceDocumentationUri)),null!=e.restReferenceDocumentationUri&&(n.restReferenceDocumentationUri=String(e.restReferenceDocumentationUri)),n},Ir.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.methodSettings=[],o.codeownerGithubTeams=[],o.librarySettings=[]),t.defaults&&(o.newIssueUri="",o.documentationUri="",o.apiShortName="",o.githubLabel="",o.docTagPrefix="",o.organization=t.enums===String?"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":0,o.protoReferenceDocumentationUri="",o.restReferenceDocumentationUri=""),e.methodSettings&&e.methodSettings.length){o.methodSettings=[];for(var r=0;r<e.methodSettings.length;++r)o.methodSettings[r]=g.google.api.MethodSettings.toObject(e.methodSettings[r],t,n+1)}if(null!=e.newIssueUri&&Object.hasOwnProperty.call(e,"newIssueUri")&&(o.newIssueUri=e.newIssueUri),null!=e.documentationUri&&Object.hasOwnProperty.call(e,"documentationUri")&&(o.documentationUri=e.documentationUri),null!=e.apiShortName&&Object.hasOwnProperty.call(e,"apiShortName")&&(o.apiShortName=e.apiShortName),null!=e.githubLabel&&Object.hasOwnProperty.call(e,"githubLabel")&&(o.githubLabel=e.githubLabel),e.codeownerGithubTeams&&e.codeownerGithubTeams.length){o.codeownerGithubTeams=[];for(r=0;r<e.codeownerGithubTeams.length;++r)o.codeownerGithubTeams[r]=e.codeownerGithubTeams[r]}if(null!=e.docTagPrefix&&Object.hasOwnProperty.call(e,"docTagPrefix")&&(o.docTagPrefix=e.docTagPrefix),null!=e.organization&&Object.hasOwnProperty.call(e,"organization")&&(o.organization=t.enums!==String||void 0===g.google.api.ClientLibraryOrganization[e.organization]?e.organization:g.google.api.ClientLibraryOrganization[e.organization]),e.librarySettings&&e.librarySettings.length){o.librarySettings=[];for(r=0;r<e.librarySettings.length;++r)o.librarySettings[r]=g.google.api.ClientLibrarySettings.toObject(e.librarySettings[r],t,n+1)}return null!=e.protoReferenceDocumentationUri&&Object.hasOwnProperty.call(e,"protoReferenceDocumentationUri")&&(o.protoReferenceDocumentationUri=e.protoReferenceDocumentationUri),null!=e.restReferenceDocumentationUri&&Object.hasOwnProperty.call(e,"restReferenceDocumentationUri")&&(o.restReferenceDocumentationUri=e.restReferenceDocumentationUri),o},Ir.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ir.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.Publishing"},Ir),e.JavaSettings=(Er.prototype.libraryPackage="",Er.prototype.serviceClassNames=d.emptyObject,Er.prototype.common=null,Er.create=function(e){return new Er(e)},Er.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.libraryPackage&&Object.hasOwnProperty.call(e,"libraryPackage")&&t.uint32(10).string(e.libraryPackage),null!=e.serviceClassNames&&Object.hasOwnProperty.call(e,"serviceClassNames"))for(var o=Object.keys(e.serviceClassNames),r=0;r<o.length;++r)t.uint32(18).fork().uint32(10).string(o[r]).uint32(18).string(e.serviceClassNames[o[r]]).ldelim();return null!=e.common&&Object.hasOwnProperty.call(e,"common")&&g.google.api.CommonLanguageSettings.encode(e.common,t.uint32(26).fork(),n+1).ldelim(),t},Er.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Er.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.JavaSettings;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.libraryPackage=e.string();break;case 2:i.serviceClassNames===d.emptyObject&&(i.serviceClassNames={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.serviceClassNames,c),i.serviceClassNames[c]=l;break;case 3:i.common=g.google.api.CommonLanguageSettings.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Er.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Er.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.libraryPackage&&Object.hasOwnProperty.call(e,"libraryPackage")&&!d.isString(e.libraryPackage))return"libraryPackage: string expected";if(null!=e.serviceClassNames&&Object.hasOwnProperty.call(e,"serviceClassNames")){if(!d.isObject(e.serviceClassNames))return"serviceClassNames: object expected";for(var n=Object.keys(e.serviceClassNames),o=0;o<n.length;++o)if(!d.isString(e.serviceClassNames[n[o]]))return"serviceClassNames: string{k:string} expected"}if(null!=e.common&&Object.hasOwnProperty.call(e,"common")){t=g.google.api.CommonLanguageSettings.verify(e.common,t+1);if(t)return"common."+t}return null},Er.fromObject=function(e,t){if(e instanceof g.google.api.JavaSettings)return e;if(!d.isObject(e))throw TypeError(".google.api.JavaSettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.JavaSettings;if(null!=e.libraryPackage&&(n.libraryPackage=String(e.libraryPackage)),e.serviceClassNames){if(!d.isObject(e.serviceClassNames))throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected");n.serviceClassNames={};for(var o=Object.keys(e.serviceClassNames),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.serviceClassNames,o[r]),n.serviceClassNames[o[r]]=String(e.serviceClassNames[o[r]])}if(null!=e.common){if(!d.isObject(e.common))throw TypeError(".google.api.JavaSettings.common: object expected");n.common=g.google.api.CommonLanguageSettings.fromObject(e.common,t+1)}return n},Er.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.serviceClassNames={}),t.defaults&&(r.libraryPackage="",r.common=null),null!=e.libraryPackage&&Object.hasOwnProperty.call(e,"libraryPackage")&&(r.libraryPackage=e.libraryPackage),e.serviceClassNames&&(o=Object.keys(e.serviceClassNames)).length){r.serviceClassNames={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.serviceClassNames,o[i]),r.serviceClassNames[o[i]]=e.serviceClassNames[o[i]]}return null!=e.common&&Object.hasOwnProperty.call(e,"common")&&(r.common=g.google.api.CommonLanguageSettings.toObject(e.common,t,n+1)),r},Er.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Er.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.JavaSettings"},Er),e.CppSettings=(Cr.prototype.common=null,Cr.create=function(e){return new Cr(e)},Cr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.common&&Object.hasOwnProperty.call(e,"common")&&g.google.api.CommonLanguageSettings.encode(e.common,t.uint32(10).fork(),n+1).ldelim(),t},Cr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Cr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.CppSettings;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.common=g.google.api.CommonLanguageSettings.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},Cr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Cr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.common&&Object.hasOwnProperty.call(e,"common")){e=g.google.api.CommonLanguageSettings.verify(e.common,t+1);if(e)return"common."+e}return null},Cr.fromObject=function(e,t){if(e instanceof g.google.api.CppSettings)return e;if(!d.isObject(e))throw TypeError(".google.api.CppSettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.CppSettings;if(null!=e.common){if(!d.isObject(e.common))throw TypeError(".google.api.CppSettings.common: object expected");n.common=g.google.api.CommonLanguageSettings.fromObject(e.common,t+1)}return n},Cr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.common=null),null!=e.common&&Object.hasOwnProperty.call(e,"common")&&(o.common=g.google.api.CommonLanguageSettings.toObject(e.common,t,n+1)),o},Cr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Cr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.CppSettings"},Cr),e.PhpSettings=(Rr.prototype.common=null,Rr.create=function(e){return new Rr(e)},Rr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.common&&Object.hasOwnProperty.call(e,"common")&&g.google.api.CommonLanguageSettings.encode(e.common,t.uint32(10).fork(),n+1).ldelim(),t},Rr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Rr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.PhpSettings;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.common=g.google.api.CommonLanguageSettings.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},Rr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Rr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.common&&Object.hasOwnProperty.call(e,"common")){e=g.google.api.CommonLanguageSettings.verify(e.common,t+1);if(e)return"common."+e}return null},Rr.fromObject=function(e,t){if(e instanceof g.google.api.PhpSettings)return e;if(!d.isObject(e))throw TypeError(".google.api.PhpSettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.PhpSettings;if(null!=e.common){if(!d.isObject(e.common))throw TypeError(".google.api.PhpSettings.common: object expected");n.common=g.google.api.CommonLanguageSettings.fromObject(e.common,t+1)}return n},Rr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.common=null),null!=e.common&&Object.hasOwnProperty.call(e,"common")&&(o.common=g.google.api.CommonLanguageSettings.toObject(e.common,t,n+1)),o},Rr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Rr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.PhpSettings"},Rr),e.PythonSettings=(Dr.prototype.common=null,Dr.prototype.experimentalFeatures=null,Dr.create=function(e){return new Dr(e)},Dr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.common&&Object.hasOwnProperty.call(e,"common")&&g.google.api.CommonLanguageSettings.encode(e.common,t.uint32(10).fork(),n+1).ldelim(),null!=e.experimentalFeatures&&Object.hasOwnProperty.call(e,"experimentalFeatures")&&g.google.api.PythonSettings.ExperimentalFeatures.encode(e.experimentalFeatures,t.uint32(18).fork(),n+1).ldelim(),t},Dr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Dr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.PythonSettings;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.common=g.google.api.CommonLanguageSettings.decode(e,e.uint32(),void 0,o+1);break;case 2:i.experimentalFeatures=g.google.api.PythonSettings.ExperimentalFeatures.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Dr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Dr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.common&&Object.hasOwnProperty.call(e,"common")&&(n=g.google.api.CommonLanguageSettings.verify(e.common,t+1)))return"common."+n;if(null!=e.experimentalFeatures&&Object.hasOwnProperty.call(e,"experimentalFeatures")&&(n=g.google.api.PythonSettings.ExperimentalFeatures.verify(e.experimentalFeatures,t+1)))return"experimentalFeatures."+n;return null},Dr.fromObject=function(e,t){if(e instanceof g.google.api.PythonSettings)return e;if(!d.isObject(e))throw TypeError(".google.api.PythonSettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.PythonSettings;if(null!=e.common){if(!d.isObject(e.common))throw TypeError(".google.api.PythonSettings.common: object expected");n.common=g.google.api.CommonLanguageSettings.fromObject(e.common,t+1)}if(null!=e.experimentalFeatures){if(!d.isObject(e.experimentalFeatures))throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected");n.experimentalFeatures=g.google.api.PythonSettings.ExperimentalFeatures.fromObject(e.experimentalFeatures,t+1)}return n},Dr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.common=null,o.experimentalFeatures=null),null!=e.common&&Object.hasOwnProperty.call(e,"common")&&(o.common=g.google.api.CommonLanguageSettings.toObject(e.common,t,n+1)),null!=e.experimentalFeatures&&Object.hasOwnProperty.call(e,"experimentalFeatures")&&(o.experimentalFeatures=g.google.api.PythonSettings.ExperimentalFeatures.toObject(e.experimentalFeatures,t,n+1)),o},Dr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Dr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.PythonSettings"},Dr.ExperimentalFeatures=(Lr.prototype.restAsyncIoEnabled=!1,Lr.prototype.protobufPythonicTypesEnabled=!1,Lr.prototype.unversionedPackageDisabled=!1,Lr.create=function(e){return new Lr(e)},Lr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.restAsyncIoEnabled&&Object.hasOwnProperty.call(e,"restAsyncIoEnabled")&&t.uint32(8).bool(e.restAsyncIoEnabled),null!=e.protobufPythonicTypesEnabled&&Object.hasOwnProperty.call(e,"protobufPythonicTypesEnabled")&&t.uint32(16).bool(e.protobufPythonicTypesEnabled),null!=e.unversionedPackageDisabled&&Object.hasOwnProperty.call(e,"unversionedPackageDisabled")&&t.uint32(24).bool(e.unversionedPackageDisabled),t},Lr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Lr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.PythonSettings.ExperimentalFeatures;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.restAsyncIoEnabled=e.bool();break;case 2:i.protobufPythonicTypesEnabled=e.bool();break;case 3:i.unversionedPackageDisabled=e.bool();break;default:e.skipType(7&a,o)}}return i},Lr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Lr.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.restAsyncIoEnabled&&Object.hasOwnProperty.call(e,"restAsyncIoEnabled")&&"boolean"!=typeof e.restAsyncIoEnabled?"restAsyncIoEnabled: boolean expected":null!=e.protobufPythonicTypesEnabled&&Object.hasOwnProperty.call(e,"protobufPythonicTypesEnabled")&&"boolean"!=typeof e.protobufPythonicTypesEnabled?"protobufPythonicTypesEnabled: boolean expected":null!=e.unversionedPackageDisabled&&Object.hasOwnProperty.call(e,"unversionedPackageDisabled")&&"boolean"!=typeof e.unversionedPackageDisabled?"unversionedPackageDisabled: boolean expected":null},Lr.fromObject=function(e,t){if(e instanceof g.google.api.PythonSettings.ExperimentalFeatures)return e;if(!d.isObject(e))throw TypeError(".google.api.PythonSettings.ExperimentalFeatures: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.api.PythonSettings.ExperimentalFeatures;return null!=e.restAsyncIoEnabled&&(t.restAsyncIoEnabled=Boolean(e.restAsyncIoEnabled)),null!=e.protobufPythonicTypesEnabled&&(t.protobufPythonicTypesEnabled=Boolean(e.protobufPythonicTypesEnabled)),null!=e.unversionedPackageDisabled&&(t.unversionedPackageDisabled=Boolean(e.unversionedPackageDisabled)),t},Lr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.restAsyncIoEnabled=!1,n.protobufPythonicTypesEnabled=!1,n.unversionedPackageDisabled=!1),null!=e.restAsyncIoEnabled&&Object.hasOwnProperty.call(e,"restAsyncIoEnabled")&&(n.restAsyncIoEnabled=e.restAsyncIoEnabled),null!=e.protobufPythonicTypesEnabled&&Object.hasOwnProperty.call(e,"protobufPythonicTypesEnabled")&&(n.protobufPythonicTypesEnabled=e.protobufPythonicTypesEnabled),null!=e.unversionedPackageDisabled&&Object.hasOwnProperty.call(e,"unversionedPackageDisabled")&&(n.unversionedPackageDisabled=e.unversionedPackageDisabled),n},Lr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Lr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.PythonSettings.ExperimentalFeatures"},Lr),Dr),e.NodeSettings=(Ar.prototype.common=null,Ar.create=function(e){return new Ar(e)},Ar.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.common&&Object.hasOwnProperty.call(e,"common")&&g.google.api.CommonLanguageSettings.encode(e.common,t.uint32(10).fork(),n+1).ldelim(),t},Ar.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ar.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.NodeSettings;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.common=g.google.api.CommonLanguageSettings.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},Ar.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ar.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.common&&Object.hasOwnProperty.call(e,"common")){e=g.google.api.CommonLanguageSettings.verify(e.common,t+1);if(e)return"common."+e}return null},Ar.fromObject=function(e,t){if(e instanceof g.google.api.NodeSettings)return e;if(!d.isObject(e))throw TypeError(".google.api.NodeSettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.NodeSettings;if(null!=e.common){if(!d.isObject(e.common))throw TypeError(".google.api.NodeSettings.common: object expected");n.common=g.google.api.CommonLanguageSettings.fromObject(e.common,t+1)}return n},Ar.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.common=null),null!=e.common&&Object.hasOwnProperty.call(e,"common")&&(o.common=g.google.api.CommonLanguageSettings.toObject(e.common,t,n+1)),o},Ar.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ar.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.NodeSettings"},Ar),e.DotnetSettings=(Nr.prototype.common=null,Nr.prototype.renamedServices=d.emptyObject,Nr.prototype.renamedResources=d.emptyObject,Nr.prototype.ignoredResources=d.emptyArray,Nr.prototype.forcedNamespaceAliases=d.emptyArray,Nr.prototype.handwrittenSignatures=d.emptyArray,Nr.create=function(e){return new Nr(e)},Nr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.common&&Object.hasOwnProperty.call(e,"common")&&g.google.api.CommonLanguageSettings.encode(e.common,t.uint32(10).fork(),n+1).ldelim(),null!=e.renamedServices&&Object.hasOwnProperty.call(e,"renamedServices"))for(var o=Object.keys(e.renamedServices),r=0;r<o.length;++r)t.uint32(18).fork().uint32(10).string(o[r]).uint32(18).string(e.renamedServices[o[r]]).ldelim();if(null!=e.renamedResources&&Object.hasOwnProperty.call(e,"renamedResources"))for(o=Object.keys(e.renamedResources),r=0;r<o.length;++r)t.uint32(26).fork().uint32(10).string(o[r]).uint32(18).string(e.renamedResources[o[r]]).ldelim();if(null!=e.ignoredResources&&e.ignoredResources.length)for(r=0;r<e.ignoredResources.length;++r)t.uint32(34).string(e.ignoredResources[r]);if(null!=e.forcedNamespaceAliases&&e.forcedNamespaceAliases.length)for(r=0;r<e.forcedNamespaceAliases.length;++r)t.uint32(42).string(e.forcedNamespaceAliases[r]);if(null!=e.handwrittenSignatures&&e.handwrittenSignatures.length)for(r=0;r<e.handwrittenSignatures.length;++r)t.uint32(50).string(e.handwrittenSignatures[r]);return t},Nr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Nr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.DotnetSettings;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.common=g.google.api.CommonLanguageSettings.decode(e,e.uint32(),void 0,o+1);break;case 2:i.renamedServices===d.emptyObject&&(i.renamedServices={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;)switch((u=e.uint32())>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}"__proto__"===c&&d.makeProp(i.renamedServices,c),i.renamedServices[c]=l;break;case 3:i.renamedResources===d.emptyObject&&(i.renamedResources={});var u,s=e.uint32()+e.pos;for(l=c="";e.pos<s;)switch((u=e.uint32())>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}"__proto__"===c&&d.makeProp(i.renamedResources,c),i.renamedResources[c]=l;break;case 4:i.ignoredResources&&i.ignoredResources.length||(i.ignoredResources=[]),i.ignoredResources.push(e.string());break;case 5:i.forcedNamespaceAliases&&i.forcedNamespaceAliases.length||(i.forcedNamespaceAliases=[]),i.forcedNamespaceAliases.push(e.string());break;case 6:i.handwrittenSignatures&&i.handwrittenSignatures.length||(i.handwrittenSignatures=[]),i.handwrittenSignatures.push(e.string());break;default:e.skipType(7&a,o)}}return i},Nr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Nr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.common&&Object.hasOwnProperty.call(e,"common")){t=g.google.api.CommonLanguageSettings.verify(e.common,t+1);if(t)return"common."+t}if(null!=e.renamedServices&&Object.hasOwnProperty.call(e,"renamedServices")){if(!d.isObject(e.renamedServices))return"renamedServices: object expected";for(var n=Object.keys(e.renamedServices),o=0;o<n.length;++o)if(!d.isString(e.renamedServices[n[o]]))return"renamedServices: string{k:string} expected"}if(null!=e.renamedResources&&Object.hasOwnProperty.call(e,"renamedResources")){if(!d.isObject(e.renamedResources))return"renamedResources: object expected";for(n=Object.keys(e.renamedResources),o=0;o<n.length;++o)if(!d.isString(e.renamedResources[n[o]]))return"renamedResources: string{k:string} expected"}if(null!=e.ignoredResources&&Object.hasOwnProperty.call(e,"ignoredResources")){if(!Array.isArray(e.ignoredResources))return"ignoredResources: array expected";for(o=0;o<e.ignoredResources.length;++o)if(!d.isString(e.ignoredResources[o]))return"ignoredResources: string[] expected"}if(null!=e.forcedNamespaceAliases&&Object.hasOwnProperty.call(e,"forcedNamespaceAliases")){if(!Array.isArray(e.forcedNamespaceAliases))return"forcedNamespaceAliases: array expected";for(o=0;o<e.forcedNamespaceAliases.length;++o)if(!d.isString(e.forcedNamespaceAliases[o]))return"forcedNamespaceAliases: string[] expected"}if(null!=e.handwrittenSignatures&&Object.hasOwnProperty.call(e,"handwrittenSignatures")){if(!Array.isArray(e.handwrittenSignatures))return"handwrittenSignatures: array expected";for(o=0;o<e.handwrittenSignatures.length;++o)if(!d.isString(e.handwrittenSignatures[o]))return"handwrittenSignatures: string[] expected"}return null},Nr.fromObject=function(e,t){if(e instanceof g.google.api.DotnetSettings)return e;if(!d.isObject(e))throw TypeError(".google.api.DotnetSettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.DotnetSettings;if(null!=e.common){if(!d.isObject(e.common))throw TypeError(".google.api.DotnetSettings.common: object expected");n.common=g.google.api.CommonLanguageSettings.fromObject(e.common,t+1)}if(e.renamedServices){if(!d.isObject(e.renamedServices))throw TypeError(".google.api.DotnetSettings.renamedServices: object expected");n.renamedServices={};for(var o=Object.keys(e.renamedServices),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.renamedServices,o[r]),n.renamedServices[o[r]]=String(e.renamedServices[o[r]])}if(e.renamedResources){if(!d.isObject(e.renamedResources))throw TypeError(".google.api.DotnetSettings.renamedResources: object expected");n.renamedResources={};for(o=Object.keys(e.renamedResources),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.renamedResources,o[r]),n.renamedResources[o[r]]=String(e.renamedResources[o[r]])}if(e.ignoredResources){if(!Array.isArray(e.ignoredResources))throw TypeError(".google.api.DotnetSettings.ignoredResources: array expected");n.ignoredResources=[];for(r=0;r<e.ignoredResources.length;++r)n.ignoredResources[r]=String(e.ignoredResources[r])}if(e.forcedNamespaceAliases){if(!Array.isArray(e.forcedNamespaceAliases))throw TypeError(".google.api.DotnetSettings.forcedNamespaceAliases: array expected");n.forcedNamespaceAliases=[];for(r=0;r<e.forcedNamespaceAliases.length;++r)n.forcedNamespaceAliases[r]=String(e.forcedNamespaceAliases[r])}if(e.handwrittenSignatures){if(!Array.isArray(e.handwrittenSignatures))throw TypeError(".google.api.DotnetSettings.handwrittenSignatures: array expected");n.handwrittenSignatures=[];for(r=0;r<e.handwrittenSignatures.length;++r)n.handwrittenSignatures[r]=String(e.handwrittenSignatures[r])}return n},Nr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.ignoredResources=[],r.forcedNamespaceAliases=[],r.handwrittenSignatures=[]),(t.objects||t.defaults)&&(r.renamedServices={},r.renamedResources={}),t.defaults&&(r.common=null),null!=e.common&&Object.hasOwnProperty.call(e,"common")&&(r.common=g.google.api.CommonLanguageSettings.toObject(e.common,t,n+1)),e.renamedServices&&(o=Object.keys(e.renamedServices)).length){r.renamedServices={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.renamedServices,o[i]),r.renamedServices[o[i]]=e.renamedServices[o[i]]}if(e.renamedResources&&(o=Object.keys(e.renamedResources)).length){r.renamedResources={};for(i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.renamedResources,o[i]),r.renamedResources[o[i]]=e.renamedResources[o[i]]}if(e.ignoredResources&&e.ignoredResources.length){r.ignoredResources=[];for(i=0;i<e.ignoredResources.length;++i)r.ignoredResources[i]=e.ignoredResources[i]}if(e.forcedNamespaceAliases&&e.forcedNamespaceAliases.length){r.forcedNamespaceAliases=[];for(i=0;i<e.forcedNamespaceAliases.length;++i)r.forcedNamespaceAliases[i]=e.forcedNamespaceAliases[i]}if(e.handwrittenSignatures&&e.handwrittenSignatures.length){r.handwrittenSignatures=[];for(i=0;i<e.handwrittenSignatures.length;++i)r.handwrittenSignatures[i]=e.handwrittenSignatures[i]}return r},Nr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Nr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.DotnetSettings"},Nr),e.RubySettings=(_r.prototype.common=null,_r.create=function(e){return new _r(e)},_r.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.common&&Object.hasOwnProperty.call(e,"common")&&g.google.api.CommonLanguageSettings.encode(e.common,t.uint32(10).fork(),n+1).ldelim(),t},_r.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},_r.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.RubySettings;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.common=g.google.api.CommonLanguageSettings.decode(e,e.uint32(),void 0,o+1):e.skipType(7&a,o)}return i},_r.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},_r.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.common&&Object.hasOwnProperty.call(e,"common")){e=g.google.api.CommonLanguageSettings.verify(e.common,t+1);if(e)return"common."+e}return null},_r.fromObject=function(e,t){if(e instanceof g.google.api.RubySettings)return e;if(!d.isObject(e))throw TypeError(".google.api.RubySettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.RubySettings;if(null!=e.common){if(!d.isObject(e.common))throw TypeError(".google.api.RubySettings.common: object expected");n.common=g.google.api.CommonLanguageSettings.fromObject(e.common,t+1)}return n},_r.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.common=null),null!=e.common&&Object.hasOwnProperty.call(e,"common")&&(o.common=g.google.api.CommonLanguageSettings.toObject(e.common,t,n+1)),o},_r.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},_r.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.RubySettings"},_r),e.GoSettings=(Br.prototype.common=null,Br.prototype.renamedServices=d.emptyObject,Br.create=function(e){return new Br(e)},Br.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.common&&Object.hasOwnProperty.call(e,"common")&&g.google.api.CommonLanguageSettings.encode(e.common,t.uint32(10).fork(),n+1).ldelim(),null!=e.renamedServices&&Object.hasOwnProperty.call(e,"renamedServices"))for(var o=Object.keys(e.renamedServices),r=0;r<o.length;++r)t.uint32(18).fork().uint32(10).string(o[r]).uint32(18).string(e.renamedServices[o[r]]).ldelim();return t},Br.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Br.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.GoSettings;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.common=g.google.api.CommonLanguageSettings.decode(e,e.uint32(),void 0,o+1);break;case 2:i.renamedServices===d.emptyObject&&(i.renamedServices={});for(var s=e.uint32()+e.pos,c="",l="";e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=e.string();break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.renamedServices,c),i.renamedServices[c]=l;break;default:e.skipType(7&a,o)}}return i},Br.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Br.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.common&&Object.hasOwnProperty.call(e,"common")){t=g.google.api.CommonLanguageSettings.verify(e.common,t+1);if(t)return"common."+t}if(null!=e.renamedServices&&Object.hasOwnProperty.call(e,"renamedServices")){if(!d.isObject(e.renamedServices))return"renamedServices: object expected";for(var n=Object.keys(e.renamedServices),o=0;o<n.length;++o)if(!d.isString(e.renamedServices[n[o]]))return"renamedServices: string{k:string} expected"}return null},Br.fromObject=function(e,t){if(e instanceof g.google.api.GoSettings)return e;if(!d.isObject(e))throw TypeError(".google.api.GoSettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.GoSettings;if(null!=e.common){if(!d.isObject(e.common))throw TypeError(".google.api.GoSettings.common: object expected");n.common=g.google.api.CommonLanguageSettings.fromObject(e.common,t+1)}if(e.renamedServices){if(!d.isObject(e.renamedServices))throw TypeError(".google.api.GoSettings.renamedServices: object expected");n.renamedServices={};for(var o=Object.keys(e.renamedServices),r=0;r<o.length;++r)"__proto__"===o[r]&&d.makeProp(n.renamedServices,o[r]),n.renamedServices[o[r]]=String(e.renamedServices[o[r]])}return n},Br.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.renamedServices={}),t.defaults&&(r.common=null),null!=e.common&&Object.hasOwnProperty.call(e,"common")&&(r.common=g.google.api.CommonLanguageSettings.toObject(e.common,t,n+1)),e.renamedServices&&(o=Object.keys(e.renamedServices)).length){r.renamedServices={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.renamedServices,o[i]),r.renamedServices[o[i]]=e.renamedServices[o[i]]}return r},Br.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Br.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.GoSettings"},Br),e.MethodSettings=(Ur.prototype.selector="",Ur.prototype.longRunning=null,Ur.prototype.autoPopulatedFields=d.emptyArray,Ur.create=function(e){return new Ur(e)},Ur.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.selector&&Object.hasOwnProperty.call(e,"selector")&&t.uint32(10).string(e.selector),null!=e.longRunning&&Object.hasOwnProperty.call(e,"longRunning")&&g.google.api.MethodSettings.LongRunning.encode(e.longRunning,t.uint32(18).fork(),n+1).ldelim(),null!=e.autoPopulatedFields&&e.autoPopulatedFields.length)for(var o=0;o<e.autoPopulatedFields.length;++o)t.uint32(26).string(e.autoPopulatedFields[o]);return t},Ur.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ur.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.MethodSettings;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.selector=e.string();break;case 2:i.longRunning=g.google.api.MethodSettings.LongRunning.decode(e,e.uint32(),void 0,o+1);break;case 3:i.autoPopulatedFields&&i.autoPopulatedFields.length||(i.autoPopulatedFields=[]),i.autoPopulatedFields.push(e.string());break;default:e.skipType(7&a,o)}}return i},Ur.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ur.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.selector&&Object.hasOwnProperty.call(e,"selector")&&!d.isString(e.selector))return"selector: string expected";if(null!=e.longRunning&&Object.hasOwnProperty.call(e,"longRunning")){t=g.google.api.MethodSettings.LongRunning.verify(e.longRunning,t+1);if(t)return"longRunning."+t}if(null!=e.autoPopulatedFields&&Object.hasOwnProperty.call(e,"autoPopulatedFields")){if(!Array.isArray(e.autoPopulatedFields))return"autoPopulatedFields: array expected";for(var n=0;n<e.autoPopulatedFields.length;++n)if(!d.isString(e.autoPopulatedFields[n]))return"autoPopulatedFields: string[] expected"}return null},Ur.fromObject=function(e,t){if(e instanceof g.google.api.MethodSettings)return e;if(!d.isObject(e))throw TypeError(".google.api.MethodSettings: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.MethodSettings;if(null!=e.selector&&(n.selector=String(e.selector)),null!=e.longRunning){if(!d.isObject(e.longRunning))throw TypeError(".google.api.MethodSettings.longRunning: object expected");n.longRunning=g.google.api.MethodSettings.LongRunning.fromObject(e.longRunning,t+1)}if(e.autoPopulatedFields){if(!Array.isArray(e.autoPopulatedFields))throw TypeError(".google.api.MethodSettings.autoPopulatedFields: array expected");n.autoPopulatedFields=[];for(var o=0;o<e.autoPopulatedFields.length;++o)n.autoPopulatedFields[o]=String(e.autoPopulatedFields[o])}return n},Ur.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.autoPopulatedFields=[]),t.defaults&&(o.selector="",o.longRunning=null),null!=e.selector&&Object.hasOwnProperty.call(e,"selector")&&(o.selector=e.selector),null!=e.longRunning&&Object.hasOwnProperty.call(e,"longRunning")&&(o.longRunning=g.google.api.MethodSettings.LongRunning.toObject(e.longRunning,t,n+1)),e.autoPopulatedFields&&e.autoPopulatedFields.length){o.autoPopulatedFields=[];for(var r=0;r<e.autoPopulatedFields.length;++r)o.autoPopulatedFields[r]=e.autoPopulatedFields[r]}return o},Ur.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ur.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.MethodSettings"},Ur.LongRunning=(Mr.prototype.initialPollDelay=null,Mr.prototype.pollDelayMultiplier=0,Mr.prototype.maxPollDelay=null,Mr.prototype.totalPollTimeout=null,Mr.create=function(e){return new Mr(e)},Mr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.initialPollDelay&&Object.hasOwnProperty.call(e,"initialPollDelay")&&g.google.protobuf.Duration.encode(e.initialPollDelay,t.uint32(10).fork(),n+1).ldelim(),null!=e.pollDelayMultiplier&&Object.hasOwnProperty.call(e,"pollDelayMultiplier")&&t.uint32(21).float(e.pollDelayMultiplier),null!=e.maxPollDelay&&Object.hasOwnProperty.call(e,"maxPollDelay")&&g.google.protobuf.Duration.encode(e.maxPollDelay,t.uint32(26).fork(),n+1).ldelim(),null!=e.totalPollTimeout&&Object.hasOwnProperty.call(e,"totalPollTimeout")&&g.google.protobuf.Duration.encode(e.totalPollTimeout,t.uint32(34).fork(),n+1).ldelim(),t},Mr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Mr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.MethodSettings.LongRunning;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.initialPollDelay=g.google.protobuf.Duration.decode(e,e.uint32(),void 0,o+1);break;case 2:i.pollDelayMultiplier=e.float();break;case 3:i.maxPollDelay=g.google.protobuf.Duration.decode(e,e.uint32(),void 0,o+1);break;case 4:i.totalPollTimeout=g.google.protobuf.Duration.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Mr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Mr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n;if(null!=e.initialPollDelay&&Object.hasOwnProperty.call(e,"initialPollDelay")&&(n=g.google.protobuf.Duration.verify(e.initialPollDelay,t+1)))return"initialPollDelay."+n;if(null!=e.pollDelayMultiplier&&Object.hasOwnProperty.call(e,"pollDelayMultiplier")&&"number"!=typeof e.pollDelayMultiplier)return"pollDelayMultiplier: number expected";if(null!=e.maxPollDelay&&Object.hasOwnProperty.call(e,"maxPollDelay")&&(n=g.google.protobuf.Duration.verify(e.maxPollDelay,t+1)))return"maxPollDelay."+n;if(null!=e.totalPollTimeout&&Object.hasOwnProperty.call(e,"totalPollTimeout")&&(n=g.google.protobuf.Duration.verify(e.totalPollTimeout,t+1)))return"totalPollTimeout."+n;return null},Mr.fromObject=function(e,t){if(e instanceof g.google.api.MethodSettings.LongRunning)return e;if(!d.isObject(e))throw TypeError(".google.api.MethodSettings.LongRunning: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.MethodSettings.LongRunning;if(null!=e.initialPollDelay){if(!d.isObject(e.initialPollDelay))throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected");n.initialPollDelay=g.google.protobuf.Duration.fromObject(e.initialPollDelay,t+1)}if(null!=e.pollDelayMultiplier&&(n.pollDelayMultiplier=Number(e.pollDelayMultiplier)),null!=e.maxPollDelay){if(!d.isObject(e.maxPollDelay))throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected");n.maxPollDelay=g.google.protobuf.Duration.fromObject(e.maxPollDelay,t+1)}if(null!=e.totalPollTimeout){if(!d.isObject(e.totalPollTimeout))throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected");n.totalPollTimeout=g.google.protobuf.Duration.fromObject(e.totalPollTimeout,t+1)}return n},Mr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.initialPollDelay=null,o.pollDelayMultiplier=0,o.maxPollDelay=null,o.totalPollTimeout=null),null!=e.initialPollDelay&&Object.hasOwnProperty.call(e,"initialPollDelay")&&(o.initialPollDelay=g.google.protobuf.Duration.toObject(e.initialPollDelay,t,n+1)),null!=e.pollDelayMultiplier&&Object.hasOwnProperty.call(e,"pollDelayMultiplier")&&(o.pollDelayMultiplier=t.json&&!isFinite(e.pollDelayMultiplier)?String(e.pollDelayMultiplier):e.pollDelayMultiplier),null!=e.maxPollDelay&&Object.hasOwnProperty.call(e,"maxPollDelay")&&(o.maxPollDelay=g.google.protobuf.Duration.toObject(e.maxPollDelay,t,n+1)),null!=e.totalPollTimeout&&Object.hasOwnProperty.call(e,"totalPollTimeout")&&(o.totalPollTimeout=g.google.protobuf.Duration.toObject(e.totalPollTimeout,t,n+1)),o},Mr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Mr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.MethodSettings.LongRunning"},Mr),Ur),e.ClientLibraryOrganization=(a={},(n=Object.create(a))[a[0]="CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED"]=0,n[a[1]="CLOUD"]=1,n[a[2]="ADS"]=2,n[a[3]="PHOTOS"]=3,n[a[4]="STREET_VIEW"]=4,n[a[5]="SHOPPING"]=5,n[a[6]="GEO"]=6,n[a[7]="GENERATIVE_AI"]=7,n),e.ClientLibraryDestination=(a={},(n=Object.create(a))[a[0]="CLIENT_LIBRARY_DESTINATION_UNSPECIFIED"]=0,n[a[10]="GITHUB"]=10,n[a[20]="PACKAGE_MANAGER"]=20,n),e.SelectiveGapicGeneration=(qr.prototype.methods=d.emptyArray,qr.prototype.generateOmittedAsInternal=!1,qr.create=function(e){return new qr(e)},qr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.methods&&e.methods.length)for(var o=0;o<e.methods.length;++o)t.uint32(10).string(e.methods[o]);return null!=e.generateOmittedAsInternal&&Object.hasOwnProperty.call(e,"generateOmittedAsInternal")&&t.uint32(16).bool(e.generateOmittedAsInternal),t},qr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},qr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.api.SelectiveGapicGeneration;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.methods&&i.methods.length||(i.methods=[]),i.methods.push(e.string());break;case 2:i.generateOmittedAsInternal=e.bool();break;default:e.skipType(7&a,o)}}return i},qr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},qr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.methods&&Object.hasOwnProperty.call(e,"methods")){if(!Array.isArray(e.methods))return"methods: array expected";for(var n=0;n<e.methods.length;++n)if(!d.isString(e.methods[n]))return"methods: string[] expected"}return null!=e.generateOmittedAsInternal&&Object.hasOwnProperty.call(e,"generateOmittedAsInternal")&&"boolean"!=typeof e.generateOmittedAsInternal?"generateOmittedAsInternal: boolean expected":null},qr.fromObject=function(e,t){if(e instanceof g.google.api.SelectiveGapicGeneration)return e;if(!d.isObject(e))throw TypeError(".google.api.SelectiveGapicGeneration: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.api.SelectiveGapicGeneration;if(e.methods){if(!Array.isArray(e.methods))throw TypeError(".google.api.SelectiveGapicGeneration.methods: array expected");n.methods=[];for(var o=0;o<e.methods.length;++o)n.methods[o]=String(e.methods[o])}return null!=e.generateOmittedAsInternal&&(n.generateOmittedAsInternal=Boolean(e.generateOmittedAsInternal)),n},qr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.methods=[]),t.defaults&&(o.generateOmittedAsInternal=!1),e.methods&&e.methods.length){o.methods=[];for(var r=0;r<e.methods.length;++r)o.methods[r]=e.methods[r]}return null!=e.generateOmittedAsInternal&&Object.hasOwnProperty.call(e,"generateOmittedAsInternal")&&(o.generateOmittedAsInternal=e.generateOmittedAsInternal),o},qr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},qr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.api.SelectiveGapicGeneration"},qr),e.LaunchStage=(a={},(n=Object.create(a))[a[0]="LAUNCH_STAGE_UNSPECIFIED"]=0,n[a[6]="UNIMPLEMENTED"]=6,n[a[7]="PRELAUNCH"]=7,n[a[1]="EARLY_ACCESS"]=1,n[a[2]="ALPHA"]=2,n[a[3]="BETA"]=3,n[a[4]="GA"]=4,n[a[5]="DEPRECATED"]=5,n),e),_.protobuf=((t={}).FileDescriptorSet=(Vr.prototype.file=d.emptyArray,Vr.create=function(e){return new Vr(e)},Vr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.file&&e.file.length)for(var o=0;o<e.file.length;++o)g.google.protobuf.FileDescriptorProto.encode(e.file[o],t.uint32(10).fork(),n+1).ldelim();return t},Vr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Vr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FileDescriptorSet;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.file&&i.file.length||(i.file=[]),i.file.push(g.google.protobuf.FileDescriptorProto.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},Vr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Vr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.file&&Object.hasOwnProperty.call(e,"file")){if(!Array.isArray(e.file))return"file: array expected";for(var n=0;n<e.file.length;++n){var o=g.google.protobuf.FileDescriptorProto.verify(e.file[n],t+1);if(o)return"file."+o}}return null},Vr.fromObject=function(e,t){if(e instanceof g.google.protobuf.FileDescriptorSet)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FileDescriptorSet: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FileDescriptorSet;if(e.file){if(!Array.isArray(e.file))throw TypeError(".google.protobuf.FileDescriptorSet.file: array expected");n.file=[];for(var o=0;o<e.file.length;++o){if(!d.isObject(e.file[o]))throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected");n.file[o]=g.google.protobuf.FileDescriptorProto.fromObject(e.file[o],t+1)}}return n},Vr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.file=[]),e.file&&e.file.length){o.file=[];for(var r=0;r<e.file.length;++r)o.file[r]=g.google.protobuf.FileDescriptorProto.toObject(e.file[r],t,n+1)}return o},Vr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Vr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FileDescriptorSet"},Vr),t.Edition=(r={},(i=Object.create(r))[r[0]="EDITION_UNKNOWN"]=0,i[r[900]="EDITION_LEGACY"]=900,i[r[998]="EDITION_PROTO2"]=998,i[r[999]="EDITION_PROTO3"]=999,i[r[1e3]="EDITION_2023"]=1e3,i[r[1001]="EDITION_2024"]=1001,i[r[1]="EDITION_1_TEST_ONLY"]=1,i[r[2]="EDITION_2_TEST_ONLY"]=2,i[r[99997]="EDITION_99997_TEST_ONLY"]=99997,i[r[99998]="EDITION_99998_TEST_ONLY"]=99998,i[r[99999]="EDITION_99999_TEST_ONLY"]=99999,i[r[2147483647]="EDITION_MAX"]=2147483647,i),t.FileDescriptorProto=(C.prototype.name="",C.prototype.package="",C.prototype.dependency=d.emptyArray,C.prototype.publicDependency=d.emptyArray,C.prototype.weakDependency=d.emptyArray,C.prototype.optionDependency=d.emptyArray,C.prototype.messageType=d.emptyArray,C.prototype.enumType=d.emptyArray,C.prototype.service=d.emptyArray,C.prototype.extension=d.emptyArray,C.prototype.options=null,C.prototype.sourceCodeInfo=null,C.prototype.syntax="",C.prototype.edition=0,C.create=function(e){return new C(e)},C.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.package&&Object.hasOwnProperty.call(e,"package")&&t.uint32(18).string(e.package),null!=e.dependency&&e.dependency.length)for(var o=0;o<e.dependency.length;++o)t.uint32(26).string(e.dependency[o]);if(null!=e.messageType&&e.messageType.length)for(o=0;o<e.messageType.length;++o)g.google.protobuf.DescriptorProto.encode(e.messageType[o],t.uint32(34).fork(),n+1).ldelim();if(null!=e.enumType&&e.enumType.length)for(o=0;o<e.enumType.length;++o)g.google.protobuf.EnumDescriptorProto.encode(e.enumType[o],t.uint32(42).fork(),n+1).ldelim();if(null!=e.service&&e.service.length)for(o=0;o<e.service.length;++o)g.google.protobuf.ServiceDescriptorProto.encode(e.service[o],t.uint32(50).fork(),n+1).ldelim();if(null!=e.extension&&e.extension.length)for(o=0;o<e.extension.length;++o)g.google.protobuf.FieldDescriptorProto.encode(e.extension[o],t.uint32(58).fork(),n+1).ldelim();if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.protobuf.FileOptions.encode(e.options,t.uint32(66).fork(),n+1).ldelim(),null!=e.sourceCodeInfo&&Object.hasOwnProperty.call(e,"sourceCodeInfo")&&g.google.protobuf.SourceCodeInfo.encode(e.sourceCodeInfo,t.uint32(74).fork(),n+1).ldelim(),null!=e.publicDependency&&e.publicDependency.length)for(o=0;o<e.publicDependency.length;++o)t.uint32(80).int32(e.publicDependency[o]);if(null!=e.weakDependency&&e.weakDependency.length)for(o=0;o<e.weakDependency.length;++o)t.uint32(88).int32(e.weakDependency[o]);if(null!=e.syntax&&Object.hasOwnProperty.call(e,"syntax")&&t.uint32(98).string(e.syntax),null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&t.uint32(112).int32(e.edition),null!=e.optionDependency&&e.optionDependency.length)for(o=0;o<e.optionDependency.length;++o)t.uint32(122).string(e.optionDependency[o]);return t},C.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},C.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FileDescriptorProto;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.package=e.string();break;case 3:i.dependency&&i.dependency.length||(i.dependency=[]),i.dependency.push(e.string());break;case 10:if(i.publicDependency&&i.publicDependency.length||(i.publicDependency=[]),2==(7&a))for(var s=e.uint32()+e.pos;e.pos<s;)i.publicDependency.push(e.int32());else i.publicDependency.push(e.int32());break;case 11:if(i.weakDependency&&i.weakDependency.length||(i.weakDependency=[]),2==(7&a))for(s=e.uint32()+e.pos;e.pos<s;)i.weakDependency.push(e.int32());else i.weakDependency.push(e.int32());break;case 15:i.optionDependency&&i.optionDependency.length||(i.optionDependency=[]),i.optionDependency.push(e.string());break;case 4:i.messageType&&i.messageType.length||(i.messageType=[]),i.messageType.push(g.google.protobuf.DescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 5:i.enumType&&i.enumType.length||(i.enumType=[]),i.enumType.push(g.google.protobuf.EnumDescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 6:i.service&&i.service.length||(i.service=[]),i.service.push(g.google.protobuf.ServiceDescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 7:i.extension&&i.extension.length||(i.extension=[]),i.extension.push(g.google.protobuf.FieldDescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 8:i.options=g.google.protobuf.FileOptions.decode(e,e.uint32(),void 0,o+1);break;case 9:i.sourceCodeInfo=g.google.protobuf.SourceCodeInfo.decode(e,e.uint32(),void 0,o+1);break;case 12:i.syntax=e.string();break;case 14:i.edition=e.int32();break;default:e.skipType(7&a,o)}}return i},C.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},C.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.package&&Object.hasOwnProperty.call(e,"package")&&!d.isString(e.package))return"package: string expected";if(null!=e.dependency&&Object.hasOwnProperty.call(e,"dependency")){if(!Array.isArray(e.dependency))return"dependency: array expected";for(var n=0;n<e.dependency.length;++n)if(!d.isString(e.dependency[n]))return"dependency: string[] expected"}if(null!=e.publicDependency&&Object.hasOwnProperty.call(e,"publicDependency")){if(!Array.isArray(e.publicDependency))return"publicDependency: array expected";for(n=0;n<e.publicDependency.length;++n)if(!d.isInteger(e.publicDependency[n]))return"publicDependency: integer[] expected"}if(null!=e.weakDependency&&Object.hasOwnProperty.call(e,"weakDependency")){if(!Array.isArray(e.weakDependency))return"weakDependency: array expected";for(n=0;n<e.weakDependency.length;++n)if(!d.isInteger(e.weakDependency[n]))return"weakDependency: integer[] expected"}if(null!=e.optionDependency&&Object.hasOwnProperty.call(e,"optionDependency")){if(!Array.isArray(e.optionDependency))return"optionDependency: array expected";for(n=0;n<e.optionDependency.length;++n)if(!d.isString(e.optionDependency[n]))return"optionDependency: string[] expected"}if(null!=e.messageType&&Object.hasOwnProperty.call(e,"messageType")){if(!Array.isArray(e.messageType))return"messageType: array expected";for(n=0;n<e.messageType.length;++n)if(o=g.google.protobuf.DescriptorProto.verify(e.messageType[n],t+1))return"messageType."+o}if(null!=e.enumType&&Object.hasOwnProperty.call(e,"enumType")){if(!Array.isArray(e.enumType))return"enumType: array expected";for(n=0;n<e.enumType.length;++n)if(o=g.google.protobuf.EnumDescriptorProto.verify(e.enumType[n],t+1))return"enumType."+o}if(null!=e.service&&Object.hasOwnProperty.call(e,"service")){if(!Array.isArray(e.service))return"service: array expected";for(n=0;n<e.service.length;++n)if(o=g.google.protobuf.ServiceDescriptorProto.verify(e.service[n],t+1))return"service."+o}if(null!=e.extension&&Object.hasOwnProperty.call(e,"extension")){if(!Array.isArray(e.extension))return"extension: array expected";for(n=0;n<e.extension.length;++n)if(o=g.google.protobuf.FieldDescriptorProto.verify(e.extension[n],t+1))return"extension."+o}var o;if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o=g.google.protobuf.FileOptions.verify(e.options,t+1)))return"options."+o;if(null!=e.sourceCodeInfo&&Object.hasOwnProperty.call(e,"sourceCodeInfo")&&(o=g.google.protobuf.SourceCodeInfo.verify(e.sourceCodeInfo,t+1)))return"sourceCodeInfo."+o;if(null!=e.syntax&&Object.hasOwnProperty.call(e,"syntax")&&!d.isString(e.syntax))return"syntax: string expected";if(null!=e.edition&&Object.hasOwnProperty.call(e,"edition"))switch(e.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:}return null},C.fromObject=function(e,t){if(e instanceof g.google.protobuf.FileDescriptorProto)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FileDescriptorProto: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FileDescriptorProto;if(null!=e.name&&(n.name=String(e.name)),null!=e.package&&(n.package=String(e.package)),e.dependency){if(!Array.isArray(e.dependency))throw TypeError(".google.protobuf.FileDescriptorProto.dependency: array expected");n.dependency=[];for(var o=0;o<e.dependency.length;++o)n.dependency[o]=String(e.dependency[o])}if(e.publicDependency){if(!Array.isArray(e.publicDependency))throw TypeError(".google.protobuf.FileDescriptorProto.publicDependency: array expected");n.publicDependency=[];for(o=0;o<e.publicDependency.length;++o)n.publicDependency[o]=0|e.publicDependency[o]}if(e.weakDependency){if(!Array.isArray(e.weakDependency))throw TypeError(".google.protobuf.FileDescriptorProto.weakDependency: array expected");n.weakDependency=[];for(o=0;o<e.weakDependency.length;++o)n.weakDependency[o]=0|e.weakDependency[o]}if(e.optionDependency){if(!Array.isArray(e.optionDependency))throw TypeError(".google.protobuf.FileDescriptorProto.optionDependency: array expected");n.optionDependency=[];for(o=0;o<e.optionDependency.length;++o)n.optionDependency[o]=String(e.optionDependency[o])}if(e.messageType){if(!Array.isArray(e.messageType))throw TypeError(".google.protobuf.FileDescriptorProto.messageType: array expected");n.messageType=[];for(o=0;o<e.messageType.length;++o){if(!d.isObject(e.messageType[o]))throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected");n.messageType[o]=g.google.protobuf.DescriptorProto.fromObject(e.messageType[o],t+1)}}if(e.enumType){if(!Array.isArray(e.enumType))throw TypeError(".google.protobuf.FileDescriptorProto.enumType: array expected");n.enumType=[];for(o=0;o<e.enumType.length;++o){if(!d.isObject(e.enumType[o]))throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected");n.enumType[o]=g.google.protobuf.EnumDescriptorProto.fromObject(e.enumType[o],t+1)}}if(e.service){if(!Array.isArray(e.service))throw TypeError(".google.protobuf.FileDescriptorProto.service: array expected");n.service=[];for(o=0;o<e.service.length;++o){if(!d.isObject(e.service[o]))throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected");n.service[o]=g.google.protobuf.ServiceDescriptorProto.fromObject(e.service[o],t+1)}}if(e.extension){if(!Array.isArray(e.extension))throw TypeError(".google.protobuf.FileDescriptorProto.extension: array expected");n.extension=[];for(o=0;o<e.extension.length;++o){if(!d.isObject(e.extension[o]))throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected");n.extension[o]=g.google.protobuf.FieldDescriptorProto.fromObject(e.extension[o],t+1)}}if(null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected");n.options=g.google.protobuf.FileOptions.fromObject(e.options,t+1)}if(null!=e.sourceCodeInfo){if(!d.isObject(e.sourceCodeInfo))throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected");n.sourceCodeInfo=g.google.protobuf.SourceCodeInfo.fromObject(e.sourceCodeInfo,t+1)}switch(null!=e.syntax&&(n.syntax=String(e.syntax)),e.edition){default:"number"==typeof e.edition&&(n.edition=e.edition);break;case"EDITION_UNKNOWN":case 0:n.edition=0;break;case"EDITION_LEGACY":case 900:n.edition=900;break;case"EDITION_PROTO2":case 998:n.edition=998;break;case"EDITION_PROTO3":case 999:n.edition=999;break;case"EDITION_2023":case 1e3:n.edition=1e3;break;case"EDITION_2024":case 1001:n.edition=1001;break;case"EDITION_1_TEST_ONLY":case 1:n.edition=1;break;case"EDITION_2_TEST_ONLY":case 2:n.edition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:n.edition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:n.edition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:n.edition=99999;break;case"EDITION_MAX":case 2147483647:n.edition=2147483647}return n},C.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.dependency=[],o.messageType=[],o.enumType=[],o.service=[],o.extension=[],o.publicDependency=[],o.weakDependency=[],o.optionDependency=[]),t.defaults&&(o.name="",o.package="",o.options=null,o.sourceCodeInfo=null,o.syntax="",o.edition=t.enums===String?"EDITION_UNKNOWN":0),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.package&&Object.hasOwnProperty.call(e,"package")&&(o.package=e.package),e.dependency&&e.dependency.length){o.dependency=[];for(var r=0;r<e.dependency.length;++r)o.dependency[r]=e.dependency[r]}if(e.messageType&&e.messageType.length){o.messageType=[];for(r=0;r<e.messageType.length;++r)o.messageType[r]=g.google.protobuf.DescriptorProto.toObject(e.messageType[r],t,n+1)}if(e.enumType&&e.enumType.length){o.enumType=[];for(r=0;r<e.enumType.length;++r)o.enumType[r]=g.google.protobuf.EnumDescriptorProto.toObject(e.enumType[r],t,n+1)}if(e.service&&e.service.length){o.service=[];for(r=0;r<e.service.length;++r)o.service[r]=g.google.protobuf.ServiceDescriptorProto.toObject(e.service[r],t,n+1)}if(e.extension&&e.extension.length){o.extension=[];for(r=0;r<e.extension.length;++r)o.extension[r]=g.google.protobuf.FieldDescriptorProto.toObject(e.extension[r],t,n+1)}if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.protobuf.FileOptions.toObject(e.options,t,n+1)),null!=e.sourceCodeInfo&&Object.hasOwnProperty.call(e,"sourceCodeInfo")&&(o.sourceCodeInfo=g.google.protobuf.SourceCodeInfo.toObject(e.sourceCodeInfo,t,n+1)),e.publicDependency&&e.publicDependency.length){o.publicDependency=[];for(r=0;r<e.publicDependency.length;++r)o.publicDependency[r]=e.publicDependency[r]}if(e.weakDependency&&e.weakDependency.length){o.weakDependency=[];for(r=0;r<e.weakDependency.length;++r)o.weakDependency[r]=e.weakDependency[r]}if(null!=e.syntax&&Object.hasOwnProperty.call(e,"syntax")&&(o.syntax=e.syntax),null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&(o.edition=t.enums!==String||void 0===g.google.protobuf.Edition[e.edition]?e.edition:g.google.protobuf.Edition[e.edition]),e.optionDependency&&e.optionDependency.length){o.optionDependency=[];for(r=0;r<e.optionDependency.length;++r)o.optionDependency[r]=e.optionDependency[r]}return o},C.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},C.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FileDescriptorProto"},C),t.DescriptorProto=(R.prototype.name="",R.prototype.field=d.emptyArray,R.prototype.extension=d.emptyArray,R.prototype.nestedType=d.emptyArray,R.prototype.enumType=d.emptyArray,R.prototype.extensionRange=d.emptyArray,R.prototype.oneofDecl=d.emptyArray,R.prototype.options=null,R.prototype.reservedRange=d.emptyArray,R.prototype.reservedName=d.emptyArray,R.prototype.visibility=0,R.create=function(e){return new R(e)},R.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.field&&e.field.length)for(var o=0;o<e.field.length;++o)g.google.protobuf.FieldDescriptorProto.encode(e.field[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.nestedType&&e.nestedType.length)for(o=0;o<e.nestedType.length;++o)g.google.protobuf.DescriptorProto.encode(e.nestedType[o],t.uint32(26).fork(),n+1).ldelim();if(null!=e.enumType&&e.enumType.length)for(o=0;o<e.enumType.length;++o)g.google.protobuf.EnumDescriptorProto.encode(e.enumType[o],t.uint32(34).fork(),n+1).ldelim();if(null!=e.extensionRange&&e.extensionRange.length)for(o=0;o<e.extensionRange.length;++o)g.google.protobuf.DescriptorProto.ExtensionRange.encode(e.extensionRange[o],t.uint32(42).fork(),n+1).ldelim();if(null!=e.extension&&e.extension.length)for(o=0;o<e.extension.length;++o)g.google.protobuf.FieldDescriptorProto.encode(e.extension[o],t.uint32(50).fork(),n+1).ldelim();if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.protobuf.MessageOptions.encode(e.options,t.uint32(58).fork(),n+1).ldelim(),null!=e.oneofDecl&&e.oneofDecl.length)for(o=0;o<e.oneofDecl.length;++o)g.google.protobuf.OneofDescriptorProto.encode(e.oneofDecl[o],t.uint32(66).fork(),n+1).ldelim();if(null!=e.reservedRange&&e.reservedRange.length)for(o=0;o<e.reservedRange.length;++o)g.google.protobuf.DescriptorProto.ReservedRange.encode(e.reservedRange[o],t.uint32(74).fork(),n+1).ldelim();if(null!=e.reservedName&&e.reservedName.length)for(o=0;o<e.reservedName.length;++o)t.uint32(82).string(e.reservedName[o]);return null!=e.visibility&&Object.hasOwnProperty.call(e,"visibility")&&t.uint32(88).int32(e.visibility),t},R.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},R.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.DescriptorProto;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.field&&i.field.length||(i.field=[]),i.field.push(g.google.protobuf.FieldDescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 6:i.extension&&i.extension.length||(i.extension=[]),i.extension.push(g.google.protobuf.FieldDescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 3:i.nestedType&&i.nestedType.length||(i.nestedType=[]),i.nestedType.push(g.google.protobuf.DescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 4:i.enumType&&i.enumType.length||(i.enumType=[]),i.enumType.push(g.google.protobuf.EnumDescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 5:i.extensionRange&&i.extensionRange.length||(i.extensionRange=[]),i.extensionRange.push(g.google.protobuf.DescriptorProto.ExtensionRange.decode(e,e.uint32(),void 0,o+1));break;case 8:i.oneofDecl&&i.oneofDecl.length||(i.oneofDecl=[]),i.oneofDecl.push(g.google.protobuf.OneofDescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 7:i.options=g.google.protobuf.MessageOptions.decode(e,e.uint32(),void 0,o+1);break;case 9:i.reservedRange&&i.reservedRange.length||(i.reservedRange=[]),i.reservedRange.push(g.google.protobuf.DescriptorProto.ReservedRange.decode(e,e.uint32(),void 0,o+1));break;case 10:i.reservedName&&i.reservedName.length||(i.reservedName=[]),i.reservedName.push(e.string());break;case 11:i.visibility=e.int32();break;default:e.skipType(7&a,o)}}return i},R.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},R.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.field&&Object.hasOwnProperty.call(e,"field")){if(!Array.isArray(e.field))return"field: array expected";for(var n=0;n<e.field.length;++n)if(o=g.google.protobuf.FieldDescriptorProto.verify(e.field[n],t+1))return"field."+o}if(null!=e.extension&&Object.hasOwnProperty.call(e,"extension")){if(!Array.isArray(e.extension))return"extension: array expected";for(n=0;n<e.extension.length;++n)if(o=g.google.protobuf.FieldDescriptorProto.verify(e.extension[n],t+1))return"extension."+o}if(null!=e.nestedType&&Object.hasOwnProperty.call(e,"nestedType")){if(!Array.isArray(e.nestedType))return"nestedType: array expected";for(n=0;n<e.nestedType.length;++n)if(o=g.google.protobuf.DescriptorProto.verify(e.nestedType[n],t+1))return"nestedType."+o}if(null!=e.enumType&&Object.hasOwnProperty.call(e,"enumType")){if(!Array.isArray(e.enumType))return"enumType: array expected";for(n=0;n<e.enumType.length;++n)if(o=g.google.protobuf.EnumDescriptorProto.verify(e.enumType[n],t+1))return"enumType."+o}if(null!=e.extensionRange&&Object.hasOwnProperty.call(e,"extensionRange")){if(!Array.isArray(e.extensionRange))return"extensionRange: array expected";for(n=0;n<e.extensionRange.length;++n)if(o=g.google.protobuf.DescriptorProto.ExtensionRange.verify(e.extensionRange[n],t+1))return"extensionRange."+o}if(null!=e.oneofDecl&&Object.hasOwnProperty.call(e,"oneofDecl")){if(!Array.isArray(e.oneofDecl))return"oneofDecl: array expected";for(n=0;n<e.oneofDecl.length;++n)if(o=g.google.protobuf.OneofDescriptorProto.verify(e.oneofDecl[n],t+1))return"oneofDecl."+o}if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o=g.google.protobuf.MessageOptions.verify(e.options,t+1)))return"options."+o;if(null!=e.reservedRange&&Object.hasOwnProperty.call(e,"reservedRange")){if(!Array.isArray(e.reservedRange))return"reservedRange: array expected";for(var o,n=0;n<e.reservedRange.length;++n)if(o=g.google.protobuf.DescriptorProto.ReservedRange.verify(e.reservedRange[n],t+1))return"reservedRange."+o}if(null!=e.reservedName&&Object.hasOwnProperty.call(e,"reservedName")){if(!Array.isArray(e.reservedName))return"reservedName: array expected";for(n=0;n<e.reservedName.length;++n)if(!d.isString(e.reservedName[n]))return"reservedName: string[] expected"}if(null!=e.visibility&&Object.hasOwnProperty.call(e,"visibility"))switch(e.visibility){default:return"visibility: enum value expected";case 0:case 1:case 2:}return null},R.fromObject=function(e,t){if(e instanceof g.google.protobuf.DescriptorProto)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.DescriptorProto: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.DescriptorProto;if(null!=e.name&&(n.name=String(e.name)),e.field){if(!Array.isArray(e.field))throw TypeError(".google.protobuf.DescriptorProto.field: array expected");n.field=[];for(var o=0;o<e.field.length;++o){if(!d.isObject(e.field[o]))throw TypeError(".google.protobuf.DescriptorProto.field: object expected");n.field[o]=g.google.protobuf.FieldDescriptorProto.fromObject(e.field[o],t+1)}}if(e.extension){if(!Array.isArray(e.extension))throw TypeError(".google.protobuf.DescriptorProto.extension: array expected");n.extension=[];for(o=0;o<e.extension.length;++o){if(!d.isObject(e.extension[o]))throw TypeError(".google.protobuf.DescriptorProto.extension: object expected");n.extension[o]=g.google.protobuf.FieldDescriptorProto.fromObject(e.extension[o],t+1)}}if(e.nestedType){if(!Array.isArray(e.nestedType))throw TypeError(".google.protobuf.DescriptorProto.nestedType: array expected");n.nestedType=[];for(o=0;o<e.nestedType.length;++o){if(!d.isObject(e.nestedType[o]))throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected");n.nestedType[o]=g.google.protobuf.DescriptorProto.fromObject(e.nestedType[o],t+1)}}if(e.enumType){if(!Array.isArray(e.enumType))throw TypeError(".google.protobuf.DescriptorProto.enumType: array expected");n.enumType=[];for(o=0;o<e.enumType.length;++o){if(!d.isObject(e.enumType[o]))throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected");n.enumType[o]=g.google.protobuf.EnumDescriptorProto.fromObject(e.enumType[o],t+1)}}if(e.extensionRange){if(!Array.isArray(e.extensionRange))throw TypeError(".google.protobuf.DescriptorProto.extensionRange: array expected");n.extensionRange=[];for(o=0;o<e.extensionRange.length;++o){if(!d.isObject(e.extensionRange[o]))throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected");n.extensionRange[o]=g.google.protobuf.DescriptorProto.ExtensionRange.fromObject(e.extensionRange[o],t+1)}}if(e.oneofDecl){if(!Array.isArray(e.oneofDecl))throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: array expected");n.oneofDecl=[];for(o=0;o<e.oneofDecl.length;++o){if(!d.isObject(e.oneofDecl[o]))throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected");n.oneofDecl[o]=g.google.protobuf.OneofDescriptorProto.fromObject(e.oneofDecl[o],t+1)}}if(null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.protobuf.DescriptorProto.options: object expected");n.options=g.google.protobuf.MessageOptions.fromObject(e.options,t+1)}if(e.reservedRange){if(!Array.isArray(e.reservedRange))throw TypeError(".google.protobuf.DescriptorProto.reservedRange: array expected");n.reservedRange=[];for(o=0;o<e.reservedRange.length;++o){if(!d.isObject(e.reservedRange[o]))throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected");n.reservedRange[o]=g.google.protobuf.DescriptorProto.ReservedRange.fromObject(e.reservedRange[o],t+1)}}if(e.reservedName){if(!Array.isArray(e.reservedName))throw TypeError(".google.protobuf.DescriptorProto.reservedName: array expected");n.reservedName=[];for(o=0;o<e.reservedName.length;++o)n.reservedName[o]=String(e.reservedName[o])}switch(e.visibility){default:"number"==typeof e.visibility&&(n.visibility=e.visibility);break;case"VISIBILITY_UNSET":case 0:n.visibility=0;break;case"VISIBILITY_LOCAL":case 1:n.visibility=1;break;case"VISIBILITY_EXPORT":case 2:n.visibility=2}return n},R.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.field=[],o.nestedType=[],o.enumType=[],o.extensionRange=[],o.extension=[],o.oneofDecl=[],o.reservedRange=[],o.reservedName=[]),t.defaults&&(o.name="",o.options=null,o.visibility=t.enums===String?"VISIBILITY_UNSET":0),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),e.field&&e.field.length){o.field=[];for(var r=0;r<e.field.length;++r)o.field[r]=g.google.protobuf.FieldDescriptorProto.toObject(e.field[r],t,n+1)}if(e.nestedType&&e.nestedType.length){o.nestedType=[];for(r=0;r<e.nestedType.length;++r)o.nestedType[r]=g.google.protobuf.DescriptorProto.toObject(e.nestedType[r],t,n+1)}if(e.enumType&&e.enumType.length){o.enumType=[];for(r=0;r<e.enumType.length;++r)o.enumType[r]=g.google.protobuf.EnumDescriptorProto.toObject(e.enumType[r],t,n+1)}if(e.extensionRange&&e.extensionRange.length){o.extensionRange=[];for(r=0;r<e.extensionRange.length;++r)o.extensionRange[r]=g.google.protobuf.DescriptorProto.ExtensionRange.toObject(e.extensionRange[r],t,n+1)}if(e.extension&&e.extension.length){o.extension=[];for(r=0;r<e.extension.length;++r)o.extension[r]=g.google.protobuf.FieldDescriptorProto.toObject(e.extension[r],t,n+1)}if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.protobuf.MessageOptions.toObject(e.options,t,n+1)),e.oneofDecl&&e.oneofDecl.length){o.oneofDecl=[];for(r=0;r<e.oneofDecl.length;++r)o.oneofDecl[r]=g.google.protobuf.OneofDescriptorProto.toObject(e.oneofDecl[r],t,n+1)}if(e.reservedRange&&e.reservedRange.length){o.reservedRange=[];for(r=0;r<e.reservedRange.length;++r)o.reservedRange[r]=g.google.protobuf.DescriptorProto.ReservedRange.toObject(e.reservedRange[r],t,n+1)}if(e.reservedName&&e.reservedName.length){o.reservedName=[];for(r=0;r<e.reservedName.length;++r)o.reservedName[r]=e.reservedName[r]}return null!=e.visibility&&Object.hasOwnProperty.call(e,"visibility")&&(o.visibility=t.enums!==String||void 0===g.google.protobuf.SymbolVisibility[e.visibility]?e.visibility:g.google.protobuf.SymbolVisibility[e.visibility]),o},R.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},R.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.DescriptorProto"},R.ExtensionRange=(Fr.prototype.start=0,Fr.prototype.end=0,Fr.prototype.options=null,Fr.create=function(e){return new Fr(e)},Fr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.start&&Object.hasOwnProperty.call(e,"start")&&t.uint32(8).int32(e.start),null!=e.end&&Object.hasOwnProperty.call(e,"end")&&t.uint32(16).int32(e.end),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.protobuf.ExtensionRangeOptions.encode(e.options,t.uint32(26).fork(),n+1).ldelim(),t},Fr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Fr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.DescriptorProto.ExtensionRange;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.start=e.int32();break;case 2:i.end=e.int32();break;case 3:i.options=g.google.protobuf.ExtensionRangeOptions.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Fr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Fr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.start&&Object.hasOwnProperty.call(e,"start")&&!d.isInteger(e.start))return"start: integer expected";if(null!=e.end&&Object.hasOwnProperty.call(e,"end")&&!d.isInteger(e.end))return"end: integer expected";if(null!=e.options&&Object.hasOwnProperty.call(e,"options")){e=g.google.protobuf.ExtensionRangeOptions.verify(e.options,t+1);if(e)return"options."+e}return null},Fr.fromObject=function(e,t){if(e instanceof g.google.protobuf.DescriptorProto.ExtensionRange)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.DescriptorProto.ExtensionRange;if(null!=e.start&&(n.start=0|e.start),null!=e.end&&(n.end=0|e.end),null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected");n.options=g.google.protobuf.ExtensionRangeOptions.fromObject(e.options,t+1)}return n},Fr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.start=0,o.end=0,o.options=null),null!=e.start&&Object.hasOwnProperty.call(e,"start")&&(o.start=e.start),null!=e.end&&Object.hasOwnProperty.call(e,"end")&&(o.end=e.end),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.protobuf.ExtensionRangeOptions.toObject(e.options,t,n+1)),o},Fr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Fr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.DescriptorProto.ExtensionRange"},Fr),R.ReservedRange=(Gr.prototype.start=0,Gr.prototype.end=0,Gr.create=function(e){return new Gr(e)},Gr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.start&&Object.hasOwnProperty.call(e,"start")&&t.uint32(8).int32(e.start),null!=e.end&&Object.hasOwnProperty.call(e,"end")&&t.uint32(16).int32(e.end),t},Gr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Gr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.DescriptorProto.ReservedRange;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.start=e.int32();break;case 2:i.end=e.int32();break;default:e.skipType(7&a,o)}}return i},Gr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Gr.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.start&&Object.hasOwnProperty.call(e,"start")&&!d.isInteger(e.start)?"start: integer expected":null!=e.end&&Object.hasOwnProperty.call(e,"end")&&!d.isInteger(e.end)?"end: integer expected":null},Gr.fromObject=function(e,t){if(e instanceof g.google.protobuf.DescriptorProto.ReservedRange)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.DescriptorProto.ReservedRange: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.protobuf.DescriptorProto.ReservedRange;return null!=e.start&&(t.start=0|e.start),null!=e.end&&(t.end=0|e.end),t},Gr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.start=0,n.end=0),null!=e.start&&Object.hasOwnProperty.call(e,"start")&&(n.start=e.start),null!=e.end&&Object.hasOwnProperty.call(e,"end")&&(n.end=e.end),n},Gr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Gr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.DescriptorProto.ReservedRange"},Gr),R),t.ExtensionRangeOptions=(Jr.prototype.uninterpretedOption=d.emptyArray,Jr.prototype.declaration=d.emptyArray,Jr.prototype.features=null,Jr.prototype.verification=1,Jr.create=function(e){return new Jr(e)},Jr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.declaration&&e.declaration.length)for(var o=0;o<e.declaration.length;++o)g.google.protobuf.ExtensionRangeOptions.Declaration.encode(e.declaration[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.verification&&Object.hasOwnProperty.call(e,"verification")&&t.uint32(24).int32(e.verification),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&g.google.protobuf.FeatureSet.encode(e.features,t.uint32(402).fork(),n+1).ldelim(),null!=e.uninterpretedOption&&e.uninterpretedOption.length)for(o=0;o<e.uninterpretedOption.length;++o)g.google.protobuf.UninterpretedOption.encode(e.uninterpretedOption[o],t.uint32(7994).fork(),n+1).ldelim();return t},Jr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Jr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.ExtensionRangeOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 999:i.uninterpretedOption&&i.uninterpretedOption.length||(i.uninterpretedOption=[]),i.uninterpretedOption.push(g.google.protobuf.UninterpretedOption.decode(e,e.uint32(),void 0,o+1));break;case 2:i.declaration&&i.declaration.length||(i.declaration=[]),i.declaration.push(g.google.protobuf.ExtensionRangeOptions.Declaration.decode(e,e.uint32(),void 0,o+1));break;case 50:i.features=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 3:i.verification=e.int32();break;default:e.skipType(7&a,o)}}return i},Jr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Jr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.uninterpretedOption&&Object.hasOwnProperty.call(e,"uninterpretedOption")){if(!Array.isArray(e.uninterpretedOption))return"uninterpretedOption: array expected";for(var n=0;n<e.uninterpretedOption.length;++n)if(o=g.google.protobuf.UninterpretedOption.verify(e.uninterpretedOption[n],t+1))return"uninterpretedOption."+o}if(null!=e.declaration&&Object.hasOwnProperty.call(e,"declaration")){if(!Array.isArray(e.declaration))return"declaration: array expected";for(n=0;n<e.declaration.length;++n)if(o=g.google.protobuf.ExtensionRangeOptions.Declaration.verify(e.declaration[n],t+1))return"declaration."+o}var o;if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o=g.google.protobuf.FeatureSet.verify(e.features,t+1)))return"features."+o;if(null!=e.verification&&Object.hasOwnProperty.call(e,"verification"))switch(e.verification){default:return"verification: enum value expected";case 0:case 1:}return null},Jr.fromObject=function(e,t){if(e instanceof g.google.protobuf.ExtensionRangeOptions)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.ExtensionRangeOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.ExtensionRangeOptions;if(e.uninterpretedOption){if(!Array.isArray(e.uninterpretedOption))throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected");n.uninterpretedOption=[];for(var o=0;o<e.uninterpretedOption.length;++o){if(!d.isObject(e.uninterpretedOption[o]))throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected");n.uninterpretedOption[o]=g.google.protobuf.UninterpretedOption.fromObject(e.uninterpretedOption[o],t+1)}}if(e.declaration){if(!Array.isArray(e.declaration))throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: array expected");n.declaration=[];for(o=0;o<e.declaration.length;++o){if(!d.isObject(e.declaration[o]))throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected");n.declaration[o]=g.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(e.declaration[o],t+1)}}if(null!=e.features){if(!d.isObject(e.features))throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected");n.features=g.google.protobuf.FeatureSet.fromObject(e.features,t+1)}switch(e.verification){case"DECLARATION":case 0:n.verification=0;break;default:"number"==typeof e.verification&&(n.verification=e.verification);break;case"UNVERIFIED":case 1:n.verification=1}return n},Jr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.declaration=[],o.uninterpretedOption=[]),t.defaults&&(o.verification=t.enums===String?"UNVERIFIED":1,o.features=null),e.declaration&&e.declaration.length){o.declaration=[];for(var r=0;r<e.declaration.length;++r)o.declaration[r]=g.google.protobuf.ExtensionRangeOptions.Declaration.toObject(e.declaration[r],t,n+1)}if(null!=e.verification&&Object.hasOwnProperty.call(e,"verification")&&(o.verification=t.enums!==String||void 0===g.google.protobuf.ExtensionRangeOptions.VerificationState[e.verification]?e.verification:g.google.protobuf.ExtensionRangeOptions.VerificationState[e.verification]),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o.features=g.google.protobuf.FeatureSet.toObject(e.features,t,n+1)),e.uninterpretedOption&&e.uninterpretedOption.length){o.uninterpretedOption=[];for(r=0;r<e.uninterpretedOption.length;++r)o.uninterpretedOption[r]=g.google.protobuf.UninterpretedOption.toObject(e.uninterpretedOption[r],t,n+1)}return o},Jr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Jr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.ExtensionRangeOptions"},Jr.Declaration=(zr.prototype.number=0,zr.prototype.fullName="",zr.prototype.type="",zr.prototype.reserved=!1,zr.prototype.repeated=!1,zr.create=function(e){return new zr(e)},zr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.number&&Object.hasOwnProperty.call(e,"number")&&t.uint32(8).int32(e.number),null!=e.fullName&&Object.hasOwnProperty.call(e,"fullName")&&t.uint32(18).string(e.fullName),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&t.uint32(26).string(e.type),null!=e.reserved&&Object.hasOwnProperty.call(e,"reserved")&&t.uint32(40).bool(e.reserved),null!=e.repeated&&Object.hasOwnProperty.call(e,"repeated")&&t.uint32(48).bool(e.repeated),t},zr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},zr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.ExtensionRangeOptions.Declaration;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.number=e.int32();break;case 2:i.fullName=e.string();break;case 3:i.type=e.string();break;case 5:i.reserved=e.bool();break;case 6:i.repeated=e.bool();break;default:e.skipType(7&a,o)}}return i},zr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},zr.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.number&&Object.hasOwnProperty.call(e,"number")&&!d.isInteger(e.number)?"number: integer expected":null!=e.fullName&&Object.hasOwnProperty.call(e,"fullName")&&!d.isString(e.fullName)?"fullName: string expected":null!=e.type&&Object.hasOwnProperty.call(e,"type")&&!d.isString(e.type)?"type: string expected":null!=e.reserved&&Object.hasOwnProperty.call(e,"reserved")&&"boolean"!=typeof e.reserved?"reserved: boolean expected":null!=e.repeated&&Object.hasOwnProperty.call(e,"repeated")&&"boolean"!=typeof e.repeated?"repeated: boolean expected":null},zr.fromObject=function(e,t){if(e instanceof g.google.protobuf.ExtensionRangeOptions.Declaration)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.ExtensionRangeOptions.Declaration: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.protobuf.ExtensionRangeOptions.Declaration;return null!=e.number&&(t.number=0|e.number),null!=e.fullName&&(t.fullName=String(e.fullName)),null!=e.type&&(t.type=String(e.type)),null!=e.reserved&&(t.reserved=Boolean(e.reserved)),null!=e.repeated&&(t.repeated=Boolean(e.repeated)),t},zr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.number=0,n.fullName="",n.type="",n.reserved=!1,n.repeated=!1),null!=e.number&&Object.hasOwnProperty.call(e,"number")&&(n.number=e.number),null!=e.fullName&&Object.hasOwnProperty.call(e,"fullName")&&(n.fullName=e.fullName),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(n.type=e.type),null!=e.reserved&&Object.hasOwnProperty.call(e,"reserved")&&(n.reserved=e.reserved),null!=e.repeated&&Object.hasOwnProperty.call(e,"repeated")&&(n.repeated=e.repeated),n},zr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},zr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.ExtensionRangeOptions.Declaration"},zr),Jr.VerificationState=(r={},(i=Object.create(r))[r[0]="DECLARATION"]=0,i[r[1]="UNVERIFIED"]=1,i),Jr),t.FieldDescriptorProto=(D.prototype.name="",D.prototype.number=0,D.prototype.label=1,D.prototype.type=1,D.prototype.typeName="",D.prototype.extendee="",D.prototype.defaultValue="",D.prototype.oneofIndex=0,D.prototype.jsonName="",D.prototype.options=null,D.prototype.proto3Optional=!1,D.create=function(e){return new D(e)},D.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.extendee&&Object.hasOwnProperty.call(e,"extendee")&&t.uint32(18).string(e.extendee),null!=e.number&&Object.hasOwnProperty.call(e,"number")&&t.uint32(24).int32(e.number),null!=e.label&&Object.hasOwnProperty.call(e,"label")&&t.uint32(32).int32(e.label),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&t.uint32(40).int32(e.type),null!=e.typeName&&Object.hasOwnProperty.call(e,"typeName")&&t.uint32(50).string(e.typeName),null!=e.defaultValue&&Object.hasOwnProperty.call(e,"defaultValue")&&t.uint32(58).string(e.defaultValue),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.protobuf.FieldOptions.encode(e.options,t.uint32(66).fork(),n+1).ldelim(),null!=e.oneofIndex&&Object.hasOwnProperty.call(e,"oneofIndex")&&t.uint32(72).int32(e.oneofIndex),null!=e.jsonName&&Object.hasOwnProperty.call(e,"jsonName")&&t.uint32(82).string(e.jsonName),null!=e.proto3Optional&&Object.hasOwnProperty.call(e,"proto3Optional")&&t.uint32(136).bool(e.proto3Optional),t},D.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},D.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FieldDescriptorProto;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 3:i.number=e.int32();break;case 4:i.label=e.int32();break;case 5:i.type=e.int32();break;case 6:i.typeName=e.string();break;case 2:i.extendee=e.string();break;case 7:i.defaultValue=e.string();break;case 9:i.oneofIndex=e.int32();break;case 10:i.jsonName=e.string();break;case 8:i.options=g.google.protobuf.FieldOptions.decode(e,e.uint32(),void 0,o+1);break;case 17:i.proto3Optional=e.bool();break;default:e.skipType(7&a,o)}}return i},D.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},D.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.number&&Object.hasOwnProperty.call(e,"number")&&!d.isInteger(e.number))return"number: integer expected";if(null!=e.label&&Object.hasOwnProperty.call(e,"label"))switch(e.label){default:return"label: enum value expected";case 1:case 3:case 2:}if(null!=e.type&&Object.hasOwnProperty.call(e,"type"))switch(e.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:}if(null!=e.typeName&&Object.hasOwnProperty.call(e,"typeName")&&!d.isString(e.typeName))return"typeName: string expected";if(null!=e.extendee&&Object.hasOwnProperty.call(e,"extendee")&&!d.isString(e.extendee))return"extendee: string expected";if(null!=e.defaultValue&&Object.hasOwnProperty.call(e,"defaultValue")&&!d.isString(e.defaultValue))return"defaultValue: string expected";if(null!=e.oneofIndex&&Object.hasOwnProperty.call(e,"oneofIndex")&&!d.isInteger(e.oneofIndex))return"oneofIndex: integer expected";if(null!=e.jsonName&&Object.hasOwnProperty.call(e,"jsonName")&&!d.isString(e.jsonName))return"jsonName: string expected";if(null!=e.options&&Object.hasOwnProperty.call(e,"options")){t=g.google.protobuf.FieldOptions.verify(e.options,t+1);if(t)return"options."+t}return null!=e.proto3Optional&&Object.hasOwnProperty.call(e,"proto3Optional")&&"boolean"!=typeof e.proto3Optional?"proto3Optional: boolean expected":null},D.fromObject=function(e,t){if(e instanceof g.google.protobuf.FieldDescriptorProto)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FieldDescriptorProto: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FieldDescriptorProto;switch(null!=e.name&&(n.name=String(e.name)),null!=e.number&&(n.number=0|e.number),e.label){default:"number"==typeof e.label&&(n.label=e.label);break;case"LABEL_OPTIONAL":case 1:n.label=1;break;case"LABEL_REPEATED":case 3:n.label=3;break;case"LABEL_REQUIRED":case 2:n.label=2}switch(e.type){default:"number"==typeof e.type&&(n.type=e.type);break;case"TYPE_DOUBLE":case 1:n.type=1;break;case"TYPE_FLOAT":case 2:n.type=2;break;case"TYPE_INT64":case 3:n.type=3;break;case"TYPE_UINT64":case 4:n.type=4;break;case"TYPE_INT32":case 5:n.type=5;break;case"TYPE_FIXED64":case 6:n.type=6;break;case"TYPE_FIXED32":case 7:n.type=7;break;case"TYPE_BOOL":case 8:n.type=8;break;case"TYPE_STRING":case 9:n.type=9;break;case"TYPE_GROUP":case 10:n.type=10;break;case"TYPE_MESSAGE":case 11:n.type=11;break;case"TYPE_BYTES":case 12:n.type=12;break;case"TYPE_UINT32":case 13:n.type=13;break;case"TYPE_ENUM":case 14:n.type=14;break;case"TYPE_SFIXED32":case 15:n.type=15;break;case"TYPE_SFIXED64":case 16:n.type=16;break;case"TYPE_SINT32":case 17:n.type=17;break;case"TYPE_SINT64":case 18:n.type=18}if(null!=e.typeName&&(n.typeName=String(e.typeName)),null!=e.extendee&&(n.extendee=String(e.extendee)),null!=e.defaultValue&&(n.defaultValue=String(e.defaultValue)),null!=e.oneofIndex&&(n.oneofIndex=0|e.oneofIndex),null!=e.jsonName&&(n.jsonName=String(e.jsonName)),null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected");n.options=g.google.protobuf.FieldOptions.fromObject(e.options,t+1)}return null!=e.proto3Optional&&(n.proto3Optional=Boolean(e.proto3Optional)),n},D.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.extendee="",o.number=0,o.label=t.enums===String?"LABEL_OPTIONAL":1,o.type=t.enums===String?"TYPE_DOUBLE":1,o.typeName="",o.defaultValue="",o.options=null,o.oneofIndex=0,o.jsonName="",o.proto3Optional=!1),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.extendee&&Object.hasOwnProperty.call(e,"extendee")&&(o.extendee=e.extendee),null!=e.number&&Object.hasOwnProperty.call(e,"number")&&(o.number=e.number),null!=e.label&&Object.hasOwnProperty.call(e,"label")&&(o.label=t.enums!==String||void 0===g.google.protobuf.FieldDescriptorProto.Label[e.label]?e.label:g.google.protobuf.FieldDescriptorProto.Label[e.label]),null!=e.type&&Object.hasOwnProperty.call(e,"type")&&(o.type=t.enums!==String||void 0===g.google.protobuf.FieldDescriptorProto.Type[e.type]?e.type:g.google.protobuf.FieldDescriptorProto.Type[e.type]),null!=e.typeName&&Object.hasOwnProperty.call(e,"typeName")&&(o.typeName=e.typeName),null!=e.defaultValue&&Object.hasOwnProperty.call(e,"defaultValue")&&(o.defaultValue=e.defaultValue),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.protobuf.FieldOptions.toObject(e.options,t,n+1)),null!=e.oneofIndex&&Object.hasOwnProperty.call(e,"oneofIndex")&&(o.oneofIndex=e.oneofIndex),null!=e.jsonName&&Object.hasOwnProperty.call(e,"jsonName")&&(o.jsonName=e.jsonName),null!=e.proto3Optional&&Object.hasOwnProperty.call(e,"proto3Optional")&&(o.proto3Optional=e.proto3Optional),o},D.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},D.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FieldDescriptorProto"},D.Type=(r={},(i=Object.create(r))[r[1]="TYPE_DOUBLE"]=1,i[r[2]="TYPE_FLOAT"]=2,i[r[3]="TYPE_INT64"]=3,i[r[4]="TYPE_UINT64"]=4,i[r[5]="TYPE_INT32"]=5,i[r[6]="TYPE_FIXED64"]=6,i[r[7]="TYPE_FIXED32"]=7,i[r[8]="TYPE_BOOL"]=8,i[r[9]="TYPE_STRING"]=9,i[r[10]="TYPE_GROUP"]=10,i[r[11]="TYPE_MESSAGE"]=11,i[r[12]="TYPE_BYTES"]=12,i[r[13]="TYPE_UINT32"]=13,i[r[14]="TYPE_ENUM"]=14,i[r[15]="TYPE_SFIXED32"]=15,i[r[16]="TYPE_SFIXED64"]=16,i[r[17]="TYPE_SINT32"]=17,i[r[18]="TYPE_SINT64"]=18,i),D.Label=(r={},(i=Object.create(r))[r[1]="LABEL_OPTIONAL"]=1,i[r[3]="LABEL_REPEATED"]=3,i[r[2]="LABEL_REQUIRED"]=2,i),D),t.OneofDescriptorProto=(Kr.prototype.name="",Kr.prototype.options=null,Kr.create=function(e){return new Kr(e)},Kr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.protobuf.OneofOptions.encode(e.options,t.uint32(18).fork(),n+1).ldelim(),t},Kr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Kr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.OneofDescriptorProto;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.options=g.google.protobuf.OneofOptions.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Kr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Kr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.options&&Object.hasOwnProperty.call(e,"options")){e=g.google.protobuf.OneofOptions.verify(e.options,t+1);if(e)return"options."+e}return null},Kr.fromObject=function(e,t){if(e instanceof g.google.protobuf.OneofDescriptorProto)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.OneofDescriptorProto: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.OneofDescriptorProto;if(null!=e.name&&(n.name=String(e.name)),null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected");n.options=g.google.protobuf.OneofOptions.fromObject(e.options,t+1)}return n},Kr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.options=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.protobuf.OneofOptions.toObject(e.options,t,n+1)),o},Kr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Kr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.OneofDescriptorProto"},Kr),t.EnumDescriptorProto=(Hr.prototype.name="",Hr.prototype.value=d.emptyArray,Hr.prototype.options=null,Hr.prototype.reservedRange=d.emptyArray,Hr.prototype.reservedName=d.emptyArray,Hr.prototype.visibility=0,Hr.create=function(e){return new Hr(e)},Hr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.value&&e.value.length)for(var o=0;o<e.value.length;++o)g.google.protobuf.EnumValueDescriptorProto.encode(e.value[o],t.uint32(18).fork(),n+1).ldelim();if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.protobuf.EnumOptions.encode(e.options,t.uint32(26).fork(),n+1).ldelim(),null!=e.reservedRange&&e.reservedRange.length)for(o=0;o<e.reservedRange.length;++o)g.google.protobuf.EnumDescriptorProto.EnumReservedRange.encode(e.reservedRange[o],t.uint32(34).fork(),n+1).ldelim();if(null!=e.reservedName&&e.reservedName.length)for(o=0;o<e.reservedName.length;++o)t.uint32(42).string(e.reservedName[o]);return null!=e.visibility&&Object.hasOwnProperty.call(e,"visibility")&&t.uint32(48).int32(e.visibility),t},Hr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Hr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.EnumDescriptorProto;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.value&&i.value.length||(i.value=[]),i.value.push(g.google.protobuf.EnumValueDescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 3:i.options=g.google.protobuf.EnumOptions.decode(e,e.uint32(),void 0,o+1);break;case 4:i.reservedRange&&i.reservedRange.length||(i.reservedRange=[]),i.reservedRange.push(g.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(e,e.uint32(),void 0,o+1));break;case 5:i.reservedName&&i.reservedName.length||(i.reservedName=[]),i.reservedName.push(e.string());break;case 6:i.visibility=e.int32();break;default:e.skipType(7&a,o)}}return i},Hr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Hr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.value&&Object.hasOwnProperty.call(e,"value")){if(!Array.isArray(e.value))return"value: array expected";for(var n=0;n<e.value.length;++n)if(o=g.google.protobuf.EnumValueDescriptorProto.verify(e.value[n],t+1))return"value."+o}if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o=g.google.protobuf.EnumOptions.verify(e.options,t+1)))return"options."+o;if(null!=e.reservedRange&&Object.hasOwnProperty.call(e,"reservedRange")){if(!Array.isArray(e.reservedRange))return"reservedRange: array expected";for(var o,n=0;n<e.reservedRange.length;++n)if(o=g.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(e.reservedRange[n],t+1))return"reservedRange."+o}if(null!=e.reservedName&&Object.hasOwnProperty.call(e,"reservedName")){if(!Array.isArray(e.reservedName))return"reservedName: array expected";for(n=0;n<e.reservedName.length;++n)if(!d.isString(e.reservedName[n]))return"reservedName: string[] expected"}if(null!=e.visibility&&Object.hasOwnProperty.call(e,"visibility"))switch(e.visibility){default:return"visibility: enum value expected";case 0:case 1:case 2:}return null},Hr.fromObject=function(e,t){if(e instanceof g.google.protobuf.EnumDescriptorProto)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.EnumDescriptorProto: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.EnumDescriptorProto;if(null!=e.name&&(n.name=String(e.name)),e.value){if(!Array.isArray(e.value))throw TypeError(".google.protobuf.EnumDescriptorProto.value: array expected");n.value=[];for(var o=0;o<e.value.length;++o){if(!d.isObject(e.value[o]))throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected");n.value[o]=g.google.protobuf.EnumValueDescriptorProto.fromObject(e.value[o],t+1)}}if(null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected");n.options=g.google.protobuf.EnumOptions.fromObject(e.options,t+1)}if(e.reservedRange){if(!Array.isArray(e.reservedRange))throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: array expected");n.reservedRange=[];for(o=0;o<e.reservedRange.length;++o){if(!d.isObject(e.reservedRange[o]))throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected");n.reservedRange[o]=g.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(e.reservedRange[o],t+1)}}if(e.reservedName){if(!Array.isArray(e.reservedName))throw TypeError(".google.protobuf.EnumDescriptorProto.reservedName: array expected");n.reservedName=[];for(o=0;o<e.reservedName.length;++o)n.reservedName[o]=String(e.reservedName[o])}switch(e.visibility){default:"number"==typeof e.visibility&&(n.visibility=e.visibility);break;case"VISIBILITY_UNSET":case 0:n.visibility=0;break;case"VISIBILITY_LOCAL":case 1:n.visibility=1;break;case"VISIBILITY_EXPORT":case 2:n.visibility=2}return n},Hr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.value=[],o.reservedRange=[],o.reservedName=[]),t.defaults&&(o.name="",o.options=null,o.visibility=t.enums===String?"VISIBILITY_UNSET":0),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),e.value&&e.value.length){o.value=[];for(var r=0;r<e.value.length;++r)o.value[r]=g.google.protobuf.EnumValueDescriptorProto.toObject(e.value[r],t,n+1)}if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.protobuf.EnumOptions.toObject(e.options,t,n+1)),e.reservedRange&&e.reservedRange.length){o.reservedRange=[];for(r=0;r<e.reservedRange.length;++r)o.reservedRange[r]=g.google.protobuf.EnumDescriptorProto.EnumReservedRange.toObject(e.reservedRange[r],t,n+1)}if(e.reservedName&&e.reservedName.length){o.reservedName=[];for(r=0;r<e.reservedName.length;++r)o.reservedName[r]=e.reservedName[r]}return null!=e.visibility&&Object.hasOwnProperty.call(e,"visibility")&&(o.visibility=t.enums!==String||void 0===g.google.protobuf.SymbolVisibility[e.visibility]?e.visibility:g.google.protobuf.SymbolVisibility[e.visibility]),o},Hr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Hr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.EnumDescriptorProto"},Hr.EnumReservedRange=(Yr.prototype.start=0,Yr.prototype.end=0,Yr.create=function(e){return new Yr(e)},Yr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.start&&Object.hasOwnProperty.call(e,"start")&&t.uint32(8).int32(e.start),null!=e.end&&Object.hasOwnProperty.call(e,"end")&&t.uint32(16).int32(e.end),t},Yr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Yr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.EnumDescriptorProto.EnumReservedRange;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.start=e.int32();break;case 2:i.end=e.int32();break;default:e.skipType(7&a,o)}}return i},Yr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Yr.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.start&&Object.hasOwnProperty.call(e,"start")&&!d.isInteger(e.start)?"start: integer expected":null!=e.end&&Object.hasOwnProperty.call(e,"end")&&!d.isInteger(e.end)?"end: integer expected":null},Yr.fromObject=function(e,t){if(e instanceof g.google.protobuf.EnumDescriptorProto.EnumReservedRange)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.EnumDescriptorProto.EnumReservedRange: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.protobuf.EnumDescriptorProto.EnumReservedRange;return null!=e.start&&(t.start=0|e.start),null!=e.end&&(t.end=0|e.end),t},Yr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.start=0,n.end=0),null!=e.start&&Object.hasOwnProperty.call(e,"start")&&(n.start=e.start),null!=e.end&&Object.hasOwnProperty.call(e,"end")&&(n.end=e.end),n},Yr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Yr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.EnumDescriptorProto.EnumReservedRange"},Yr),Hr),t.EnumValueDescriptorProto=(Qr.prototype.name="",Qr.prototype.number=0,Qr.prototype.options=null,Qr.create=function(e){return new Qr(e)},Qr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.number&&Object.hasOwnProperty.call(e,"number")&&t.uint32(16).int32(e.number),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.protobuf.EnumValueOptions.encode(e.options,t.uint32(26).fork(),n+1).ldelim(),t},Qr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Qr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.EnumValueDescriptorProto;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.number=e.int32();break;case 3:i.options=g.google.protobuf.EnumValueOptions.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Qr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Qr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.number&&Object.hasOwnProperty.call(e,"number")&&!d.isInteger(e.number))return"number: integer expected";if(null!=e.options&&Object.hasOwnProperty.call(e,"options")){e=g.google.protobuf.EnumValueOptions.verify(e.options,t+1);if(e)return"options."+e}return null},Qr.fromObject=function(e,t){if(e instanceof g.google.protobuf.EnumValueDescriptorProto)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.EnumValueDescriptorProto: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.EnumValueDescriptorProto;if(null!=e.name&&(n.name=String(e.name)),null!=e.number&&(n.number=0|e.number),null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected");n.options=g.google.protobuf.EnumValueOptions.fromObject(e.options,t+1)}return n},Qr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.number=0,o.options=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.number&&Object.hasOwnProperty.call(e,"number")&&(o.number=e.number),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.protobuf.EnumValueOptions.toObject(e.options,t,n+1)),o},Qr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Qr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.EnumValueDescriptorProto"},Qr),t.ServiceDescriptorProto=(Wr.prototype.name="",Wr.prototype.method=d.emptyArray,Wr.prototype.options=null,Wr.create=function(e){return new Wr(e)},Wr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.method&&e.method.length)for(var o=0;o<e.method.length;++o)g.google.protobuf.MethodDescriptorProto.encode(e.method[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.protobuf.ServiceOptions.encode(e.options,t.uint32(26).fork(),n+1).ldelim(),t},Wr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Wr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.ServiceDescriptorProto;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.method&&i.method.length||(i.method=[]),i.method.push(g.google.protobuf.MethodDescriptorProto.decode(e,e.uint32(),void 0,o+1));break;case 3:i.options=g.google.protobuf.ServiceOptions.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Wr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Wr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.method&&Object.hasOwnProperty.call(e,"method")){if(!Array.isArray(e.method))return"method: array expected";for(var n=0;n<e.method.length;++n)if(o=g.google.protobuf.MethodDescriptorProto.verify(e.method[n],t+1))return"method."+o}var o;if(null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o=g.google.protobuf.ServiceOptions.verify(e.options,t+1)))return"options."+o;return null},Wr.fromObject=function(e,t){if(e instanceof g.google.protobuf.ServiceDescriptorProto)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.ServiceDescriptorProto: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.ServiceDescriptorProto;if(null!=e.name&&(n.name=String(e.name)),e.method){if(!Array.isArray(e.method))throw TypeError(".google.protobuf.ServiceDescriptorProto.method: array expected");n.method=[];for(var o=0;o<e.method.length;++o){if(!d.isObject(e.method[o]))throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected");n.method[o]=g.google.protobuf.MethodDescriptorProto.fromObject(e.method[o],t+1)}}if(null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected");n.options=g.google.protobuf.ServiceOptions.fromObject(e.options,t+1)}return n},Wr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.method=[]),t.defaults&&(o.name="",o.options=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),e.method&&e.method.length){o.method=[];for(var r=0;r<e.method.length;++r)o.method[r]=g.google.protobuf.MethodDescriptorProto.toObject(e.method[r],t,n+1)}return null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.protobuf.ServiceOptions.toObject(e.options,t,n+1)),o},Wr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Wr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.ServiceDescriptorProto"},Wr),t.MethodDescriptorProto=(Xr.prototype.name="",Xr.prototype.inputType="",Xr.prototype.outputType="",Xr.prototype.options=null,Xr.prototype.clientStreaming=!1,Xr.prototype.serverStreaming=!1,Xr.create=function(e){return new Xr(e)},Xr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.inputType&&Object.hasOwnProperty.call(e,"inputType")&&t.uint32(18).string(e.inputType),null!=e.outputType&&Object.hasOwnProperty.call(e,"outputType")&&t.uint32(26).string(e.outputType),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.protobuf.MethodOptions.encode(e.options,t.uint32(34).fork(),n+1).ldelim(),null!=e.clientStreaming&&Object.hasOwnProperty.call(e,"clientStreaming")&&t.uint32(40).bool(e.clientStreaming),null!=e.serverStreaming&&Object.hasOwnProperty.call(e,"serverStreaming")&&t.uint32(48).bool(e.serverStreaming),t},Xr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Xr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.MethodDescriptorProto;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.inputType=e.string();break;case 3:i.outputType=e.string();break;case 4:i.options=g.google.protobuf.MethodOptions.decode(e,e.uint32(),void 0,o+1);break;case 5:i.clientStreaming=e.bool();break;case 6:i.serverStreaming=e.bool();break;default:e.skipType(7&a,o)}}return i},Xr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Xr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.inputType&&Object.hasOwnProperty.call(e,"inputType")&&!d.isString(e.inputType))return"inputType: string expected";if(null!=e.outputType&&Object.hasOwnProperty.call(e,"outputType")&&!d.isString(e.outputType))return"outputType: string expected";if(null!=e.options&&Object.hasOwnProperty.call(e,"options")){t=g.google.protobuf.MethodOptions.verify(e.options,t+1);if(t)return"options."+t}return null!=e.clientStreaming&&Object.hasOwnProperty.call(e,"clientStreaming")&&"boolean"!=typeof e.clientStreaming?"clientStreaming: boolean expected":null!=e.serverStreaming&&Object.hasOwnProperty.call(e,"serverStreaming")&&"boolean"!=typeof e.serverStreaming?"serverStreaming: boolean expected":null},Xr.fromObject=function(e,t){if(e instanceof g.google.protobuf.MethodDescriptorProto)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.MethodDescriptorProto: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.MethodDescriptorProto;if(null!=e.name&&(n.name=String(e.name)),null!=e.inputType&&(n.inputType=String(e.inputType)),null!=e.outputType&&(n.outputType=String(e.outputType)),null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected");n.options=g.google.protobuf.MethodOptions.fromObject(e.options,t+1)}return null!=e.clientStreaming&&(n.clientStreaming=Boolean(e.clientStreaming)),null!=e.serverStreaming&&(n.serverStreaming=Boolean(e.serverStreaming)),n},Xr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.inputType="",o.outputType="",o.options=null,o.clientStreaming=!1,o.serverStreaming=!1),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.inputType&&Object.hasOwnProperty.call(e,"inputType")&&(o.inputType=e.inputType),null!=e.outputType&&Object.hasOwnProperty.call(e,"outputType")&&(o.outputType=e.outputType),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.protobuf.MethodOptions.toObject(e.options,t,n+1)),null!=e.clientStreaming&&Object.hasOwnProperty.call(e,"clientStreaming")&&(o.clientStreaming=e.clientStreaming),null!=e.serverStreaming&&Object.hasOwnProperty.call(e,"serverStreaming")&&(o.serverStreaming=e.serverStreaming),o},Xr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Xr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.MethodDescriptorProto"},Xr),t.FileOptions=(L.prototype.javaPackage="",L.prototype.javaOuterClassname="",L.prototype.javaMultipleFiles=!1,L.prototype.javaGenerateEqualsAndHash=!1,L.prototype.javaStringCheckUtf8=!1,L.prototype.optimizeFor=1,L.prototype.goPackage="",L.prototype.ccGenericServices=!1,L.prototype.javaGenericServices=!1,L.prototype.pyGenericServices=!1,L.prototype.deprecated=!1,L.prototype.ccEnableArenas=!0,L.prototype.objcClassPrefix="",L.prototype.csharpNamespace="",L.prototype.swiftPrefix="",L.prototype.phpClassPrefix="",L.prototype.phpNamespace="",L.prototype.phpMetadataNamespace="",L.prototype.rubyPackage="",L.prototype.features=null,L.prototype.uninterpretedOption=d.emptyArray,L.prototype[".google.api.resourceDefinition"]=d.emptyArray,L.create=function(e){return new L(e)},L.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.javaPackage&&Object.hasOwnProperty.call(e,"javaPackage")&&t.uint32(10).string(e.javaPackage),null!=e.javaOuterClassname&&Object.hasOwnProperty.call(e,"javaOuterClassname")&&t.uint32(66).string(e.javaOuterClassname),null!=e.optimizeFor&&Object.hasOwnProperty.call(e,"optimizeFor")&&t.uint32(72).int32(e.optimizeFor),null!=e.javaMultipleFiles&&Object.hasOwnProperty.call(e,"javaMultipleFiles")&&t.uint32(80).bool(e.javaMultipleFiles),null!=e.goPackage&&Object.hasOwnProperty.call(e,"goPackage")&&t.uint32(90).string(e.goPackage),null!=e.ccGenericServices&&Object.hasOwnProperty.call(e,"ccGenericServices")&&t.uint32(128).bool(e.ccGenericServices),null!=e.javaGenericServices&&Object.hasOwnProperty.call(e,"javaGenericServices")&&t.uint32(136).bool(e.javaGenericServices),null!=e.pyGenericServices&&Object.hasOwnProperty.call(e,"pyGenericServices")&&t.uint32(144).bool(e.pyGenericServices),null!=e.javaGenerateEqualsAndHash&&Object.hasOwnProperty.call(e,"javaGenerateEqualsAndHash")&&t.uint32(160).bool(e.javaGenerateEqualsAndHash),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&t.uint32(184).bool(e.deprecated),null!=e.javaStringCheckUtf8&&Object.hasOwnProperty.call(e,"javaStringCheckUtf8")&&t.uint32(216).bool(e.javaStringCheckUtf8),null!=e.ccEnableArenas&&Object.hasOwnProperty.call(e,"ccEnableArenas")&&t.uint32(248).bool(e.ccEnableArenas),null!=e.objcClassPrefix&&Object.hasOwnProperty.call(e,"objcClassPrefix")&&t.uint32(290).string(e.objcClassPrefix),null!=e.csharpNamespace&&Object.hasOwnProperty.call(e,"csharpNamespace")&&t.uint32(298).string(e.csharpNamespace),null!=e.swiftPrefix&&Object.hasOwnProperty.call(e,"swiftPrefix")&&t.uint32(314).string(e.swiftPrefix),null!=e.phpClassPrefix&&Object.hasOwnProperty.call(e,"phpClassPrefix")&&t.uint32(322).string(e.phpClassPrefix),null!=e.phpNamespace&&Object.hasOwnProperty.call(e,"phpNamespace")&&t.uint32(330).string(e.phpNamespace),null!=e.phpMetadataNamespace&&Object.hasOwnProperty.call(e,"phpMetadataNamespace")&&t.uint32(354).string(e.phpMetadataNamespace),null!=e.rubyPackage&&Object.hasOwnProperty.call(e,"rubyPackage")&&t.uint32(362).string(e.rubyPackage),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&g.google.protobuf.FeatureSet.encode(e.features,t.uint32(402).fork(),n+1).ldelim(),null!=e.uninterpretedOption&&e.uninterpretedOption.length)for(var o=0;o<e.uninterpretedOption.length;++o)g.google.protobuf.UninterpretedOption.encode(e.uninterpretedOption[o],t.uint32(7994).fork(),n+1).ldelim();if(null!=e[".google.api.resourceDefinition"]&&e[".google.api.resourceDefinition"].length)for(o=0;o<e[".google.api.resourceDefinition"].length;++o)g.google.api.ResourceDescriptor.encode(e[".google.api.resourceDefinition"][o],t.uint32(8426).fork(),n+1).ldelim();return t},L.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},L.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FileOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.javaPackage=e.string();break;case 8:i.javaOuterClassname=e.string();break;case 10:i.javaMultipleFiles=e.bool();break;case 20:i.javaGenerateEqualsAndHash=e.bool();break;case 27:i.javaStringCheckUtf8=e.bool();break;case 9:i.optimizeFor=e.int32();break;case 11:i.goPackage=e.string();break;case 16:i.ccGenericServices=e.bool();break;case 17:i.javaGenericServices=e.bool();break;case 18:i.pyGenericServices=e.bool();break;case 23:i.deprecated=e.bool();break;case 31:i.ccEnableArenas=e.bool();break;case 36:i.objcClassPrefix=e.string();break;case 37:i.csharpNamespace=e.string();break;case 39:i.swiftPrefix=e.string();break;case 40:i.phpClassPrefix=e.string();break;case 41:i.phpNamespace=e.string();break;case 44:i.phpMetadataNamespace=e.string();break;case 45:i.rubyPackage=e.string();break;case 50:i.features=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 999:i.uninterpretedOption&&i.uninterpretedOption.length||(i.uninterpretedOption=[]),i.uninterpretedOption.push(g.google.protobuf.UninterpretedOption.decode(e,e.uint32(),void 0,o+1));break;case 1053:i[".google.api.resourceDefinition"]&&i[".google.api.resourceDefinition"].length||(i[".google.api.resourceDefinition"]=[]),i[".google.api.resourceDefinition"].push(g.google.api.ResourceDescriptor.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},L.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},L.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.javaPackage&&Object.hasOwnProperty.call(e,"javaPackage")&&!d.isString(e.javaPackage))return"javaPackage: string expected";if(null!=e.javaOuterClassname&&Object.hasOwnProperty.call(e,"javaOuterClassname")&&!d.isString(e.javaOuterClassname))return"javaOuterClassname: string expected";if(null!=e.javaMultipleFiles&&Object.hasOwnProperty.call(e,"javaMultipleFiles")&&"boolean"!=typeof e.javaMultipleFiles)return"javaMultipleFiles: boolean expected";if(null!=e.javaGenerateEqualsAndHash&&Object.hasOwnProperty.call(e,"javaGenerateEqualsAndHash")&&"boolean"!=typeof e.javaGenerateEqualsAndHash)return"javaGenerateEqualsAndHash: boolean expected";if(null!=e.javaStringCheckUtf8&&Object.hasOwnProperty.call(e,"javaStringCheckUtf8")&&"boolean"!=typeof e.javaStringCheckUtf8)return"javaStringCheckUtf8: boolean expected";if(null!=e.optimizeFor&&Object.hasOwnProperty.call(e,"optimizeFor"))switch(e.optimizeFor){default:return"optimizeFor: enum value expected";case 1:case 2:case 3:}if(null!=e.goPackage&&Object.hasOwnProperty.call(e,"goPackage")&&!d.isString(e.goPackage))return"goPackage: string expected";if(null!=e.ccGenericServices&&Object.hasOwnProperty.call(e,"ccGenericServices")&&"boolean"!=typeof e.ccGenericServices)return"ccGenericServices: boolean expected";if(null!=e.javaGenericServices&&Object.hasOwnProperty.call(e,"javaGenericServices")&&"boolean"!=typeof e.javaGenericServices)return"javaGenericServices: boolean expected";if(null!=e.pyGenericServices&&Object.hasOwnProperty.call(e,"pyGenericServices")&&"boolean"!=typeof e.pyGenericServices)return"pyGenericServices: boolean expected";if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&"boolean"!=typeof e.deprecated)return"deprecated: boolean expected";if(null!=e.ccEnableArenas&&Object.hasOwnProperty.call(e,"ccEnableArenas")&&"boolean"!=typeof e.ccEnableArenas)return"ccEnableArenas: boolean expected";if(null!=e.objcClassPrefix&&Object.hasOwnProperty.call(e,"objcClassPrefix")&&!d.isString(e.objcClassPrefix))return"objcClassPrefix: string expected";if(null!=e.csharpNamespace&&Object.hasOwnProperty.call(e,"csharpNamespace")&&!d.isString(e.csharpNamespace))return"csharpNamespace: string expected";if(null!=e.swiftPrefix&&Object.hasOwnProperty.call(e,"swiftPrefix")&&!d.isString(e.swiftPrefix))return"swiftPrefix: string expected";if(null!=e.phpClassPrefix&&Object.hasOwnProperty.call(e,"phpClassPrefix")&&!d.isString(e.phpClassPrefix))return"phpClassPrefix: string expected";if(null!=e.phpNamespace&&Object.hasOwnProperty.call(e,"phpNamespace")&&!d.isString(e.phpNamespace))return"phpNamespace: string expected";if(null!=e.phpMetadataNamespace&&Object.hasOwnProperty.call(e,"phpMetadataNamespace")&&!d.isString(e.phpMetadataNamespace))return"phpMetadataNamespace: string expected";if(null!=e.rubyPackage&&Object.hasOwnProperty.call(e,"rubyPackage")&&!d.isString(e.rubyPackage))return"rubyPackage: string expected";if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o=g.google.protobuf.FeatureSet.verify(e.features,t+1)))return"features."+o;if(null!=e.uninterpretedOption&&Object.hasOwnProperty.call(e,"uninterpretedOption")){if(!Array.isArray(e.uninterpretedOption))return"uninterpretedOption: array expected";for(var n=0;n<e.uninterpretedOption.length;++n)if(o=g.google.protobuf.UninterpretedOption.verify(e.uninterpretedOption[n],t+1))return"uninterpretedOption."+o}if(null!=e[".google.api.resourceDefinition"]&&Object.hasOwnProperty.call(e,".google.api.resourceDefinition")){if(!Array.isArray(e[".google.api.resourceDefinition"]))return".google.api.resourceDefinition: array expected";for(var o,n=0;n<e[".google.api.resourceDefinition"].length;++n)if(o=g.google.api.ResourceDescriptor.verify(e[".google.api.resourceDefinition"][n],t+1))return".google.api.resourceDefinition."+o}return null},L.fromObject=function(e,t){if(e instanceof g.google.protobuf.FileOptions)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FileOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FileOptions;switch(null!=e.javaPackage&&(n.javaPackage=String(e.javaPackage)),null!=e.javaOuterClassname&&(n.javaOuterClassname=String(e.javaOuterClassname)),null!=e.javaMultipleFiles&&(n.javaMultipleFiles=Boolean(e.javaMultipleFiles)),null!=e.javaGenerateEqualsAndHash&&(n.javaGenerateEqualsAndHash=Boolean(e.javaGenerateEqualsAndHash)),null!=e.javaStringCheckUtf8&&(n.javaStringCheckUtf8=Boolean(e.javaStringCheckUtf8)),e.optimizeFor){default:"number"==typeof e.optimizeFor&&(n.optimizeFor=e.optimizeFor);break;case"SPEED":case 1:n.optimizeFor=1;break;case"CODE_SIZE":case 2:n.optimizeFor=2;break;case"LITE_RUNTIME":case 3:n.optimizeFor=3}if(null!=e.goPackage&&(n.goPackage=String(e.goPackage)),null!=e.ccGenericServices&&(n.ccGenericServices=Boolean(e.ccGenericServices)),null!=e.javaGenericServices&&(n.javaGenericServices=Boolean(e.javaGenericServices)),null!=e.pyGenericServices&&(n.pyGenericServices=Boolean(e.pyGenericServices)),null!=e.deprecated&&(n.deprecated=Boolean(e.deprecated)),null!=e.ccEnableArenas&&(n.ccEnableArenas=Boolean(e.ccEnableArenas)),null!=e.objcClassPrefix&&(n.objcClassPrefix=String(e.objcClassPrefix)),null!=e.csharpNamespace&&(n.csharpNamespace=String(e.csharpNamespace)),null!=e.swiftPrefix&&(n.swiftPrefix=String(e.swiftPrefix)),null!=e.phpClassPrefix&&(n.phpClassPrefix=String(e.phpClassPrefix)),null!=e.phpNamespace&&(n.phpNamespace=String(e.phpNamespace)),null!=e.phpMetadataNamespace&&(n.phpMetadataNamespace=String(e.phpMetadataNamespace)),null!=e.rubyPackage&&(n.rubyPackage=String(e.rubyPackage)),null!=e.features){if(!d.isObject(e.features))throw TypeError(".google.protobuf.FileOptions.features: object expected");n.features=g.google.protobuf.FeatureSet.fromObject(e.features,t+1)}if(e.uninterpretedOption){if(!Array.isArray(e.uninterpretedOption))throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected");n.uninterpretedOption=[];for(var o=0;o<e.uninterpretedOption.length;++o){if(!d.isObject(e.uninterpretedOption[o]))throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected");n.uninterpretedOption[o]=g.google.protobuf.UninterpretedOption.fromObject(e.uninterpretedOption[o],t+1)}}if(e[".google.api.resourceDefinition"]){if(!Array.isArray(e[".google.api.resourceDefinition"]))throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: array expected");n[".google.api.resourceDefinition"]=[];for(o=0;o<e[".google.api.resourceDefinition"].length;++o){if(!d.isObject(e[".google.api.resourceDefinition"][o]))throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected");n[".google.api.resourceDefinition"][o]=g.google.api.ResourceDescriptor.fromObject(e[".google.api.resourceDefinition"][o],t+1)}}return n},L.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.uninterpretedOption=[],o[".google.api.resourceDefinition"]=[]),t.defaults&&(o.javaPackage="",o.javaOuterClassname="",o.optimizeFor=t.enums===String?"SPEED":1,o.javaMultipleFiles=!1,o.goPackage="",o.ccGenericServices=!1,o.javaGenericServices=!1,o.pyGenericServices=!1,o.javaGenerateEqualsAndHash=!1,o.deprecated=!1,o.javaStringCheckUtf8=!1,o.ccEnableArenas=!0,o.objcClassPrefix="",o.csharpNamespace="",o.swiftPrefix="",o.phpClassPrefix="",o.phpNamespace="",o.phpMetadataNamespace="",o.rubyPackage="",o.features=null),null!=e.javaPackage&&Object.hasOwnProperty.call(e,"javaPackage")&&(o.javaPackage=e.javaPackage),null!=e.javaOuterClassname&&Object.hasOwnProperty.call(e,"javaOuterClassname")&&(o.javaOuterClassname=e.javaOuterClassname),null!=e.optimizeFor&&Object.hasOwnProperty.call(e,"optimizeFor")&&(o.optimizeFor=t.enums!==String||void 0===g.google.protobuf.FileOptions.OptimizeMode[e.optimizeFor]?e.optimizeFor:g.google.protobuf.FileOptions.OptimizeMode[e.optimizeFor]),null!=e.javaMultipleFiles&&Object.hasOwnProperty.call(e,"javaMultipleFiles")&&(o.javaMultipleFiles=e.javaMultipleFiles),null!=e.goPackage&&Object.hasOwnProperty.call(e,"goPackage")&&(o.goPackage=e.goPackage),null!=e.ccGenericServices&&Object.hasOwnProperty.call(e,"ccGenericServices")&&(o.ccGenericServices=e.ccGenericServices),null!=e.javaGenericServices&&Object.hasOwnProperty.call(e,"javaGenericServices")&&(o.javaGenericServices=e.javaGenericServices),null!=e.pyGenericServices&&Object.hasOwnProperty.call(e,"pyGenericServices")&&(o.pyGenericServices=e.pyGenericServices),null!=e.javaGenerateEqualsAndHash&&Object.hasOwnProperty.call(e,"javaGenerateEqualsAndHash")&&(o.javaGenerateEqualsAndHash=e.javaGenerateEqualsAndHash),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&(o.deprecated=e.deprecated),null!=e.javaStringCheckUtf8&&Object.hasOwnProperty.call(e,"javaStringCheckUtf8")&&(o.javaStringCheckUtf8=e.javaStringCheckUtf8),null!=e.ccEnableArenas&&Object.hasOwnProperty.call(e,"ccEnableArenas")&&(o.ccEnableArenas=e.ccEnableArenas),null!=e.objcClassPrefix&&Object.hasOwnProperty.call(e,"objcClassPrefix")&&(o.objcClassPrefix=e.objcClassPrefix),null!=e.csharpNamespace&&Object.hasOwnProperty.call(e,"csharpNamespace")&&(o.csharpNamespace=e.csharpNamespace),null!=e.swiftPrefix&&Object.hasOwnProperty.call(e,"swiftPrefix")&&(o.swiftPrefix=e.swiftPrefix),null!=e.phpClassPrefix&&Object.hasOwnProperty.call(e,"phpClassPrefix")&&(o.phpClassPrefix=e.phpClassPrefix),null!=e.phpNamespace&&Object.hasOwnProperty.call(e,"phpNamespace")&&(o.phpNamespace=e.phpNamespace),null!=e.phpMetadataNamespace&&Object.hasOwnProperty.call(e,"phpMetadataNamespace")&&(o.phpMetadataNamespace=e.phpMetadataNamespace),null!=e.rubyPackage&&Object.hasOwnProperty.call(e,"rubyPackage")&&(o.rubyPackage=e.rubyPackage),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o.features=g.google.protobuf.FeatureSet.toObject(e.features,t,n+1)),e.uninterpretedOption&&e.uninterpretedOption.length){o.uninterpretedOption=[];for(var r=0;r<e.uninterpretedOption.length;++r)o.uninterpretedOption[r]=g.google.protobuf.UninterpretedOption.toObject(e.uninterpretedOption[r],t,n+1)}if(e[".google.api.resourceDefinition"]&&e[".google.api.resourceDefinition"].length){o[".google.api.resourceDefinition"]=[];for(r=0;r<e[".google.api.resourceDefinition"].length;++r)o[".google.api.resourceDefinition"][r]=g.google.api.ResourceDescriptor.toObject(e[".google.api.resourceDefinition"][r],t,n+1)}return o},L.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},L.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FileOptions"},L.OptimizeMode=(r={},(i=Object.create(r))[r[1]="SPEED"]=1,i[r[2]="CODE_SIZE"]=2,i[r[3]="LITE_RUNTIME"]=3,i),L),t.MessageOptions=(Zr.prototype.messageSetWireFormat=!1,Zr.prototype.noStandardDescriptorAccessor=!1,Zr.prototype.deprecated=!1,Zr.prototype.mapEntry=!1,Zr.prototype.deprecatedLegacyJsonFieldConflicts=!1,Zr.prototype.features=null,Zr.prototype.uninterpretedOption=d.emptyArray,Zr.prototype[".google.api.resource"]=null,Zr.create=function(e){return new Zr(e)},Zr.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.messageSetWireFormat&&Object.hasOwnProperty.call(e,"messageSetWireFormat")&&t.uint32(8).bool(e.messageSetWireFormat),null!=e.noStandardDescriptorAccessor&&Object.hasOwnProperty.call(e,"noStandardDescriptorAccessor")&&t.uint32(16).bool(e.noStandardDescriptorAccessor),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&t.uint32(24).bool(e.deprecated),null!=e.mapEntry&&Object.hasOwnProperty.call(e,"mapEntry")&&t.uint32(56).bool(e.mapEntry),null!=e.deprecatedLegacyJsonFieldConflicts&&Object.hasOwnProperty.call(e,"deprecatedLegacyJsonFieldConflicts")&&t.uint32(88).bool(e.deprecatedLegacyJsonFieldConflicts),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&g.google.protobuf.FeatureSet.encode(e.features,t.uint32(98).fork(),n+1).ldelim(),null!=e.uninterpretedOption&&e.uninterpretedOption.length)for(var o=0;o<e.uninterpretedOption.length;++o)g.google.protobuf.UninterpretedOption.encode(e.uninterpretedOption[o],t.uint32(7994).fork(),n+1).ldelim();return null!=e[".google.api.resource"]&&Object.hasOwnProperty.call(e,".google.api.resource")&&g.google.api.ResourceDescriptor.encode(e[".google.api.resource"],t.uint32(8426).fork(),n+1).ldelim(),t},Zr.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Zr.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.MessageOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.messageSetWireFormat=e.bool();break;case 2:i.noStandardDescriptorAccessor=e.bool();break;case 3:i.deprecated=e.bool();break;case 7:i.mapEntry=e.bool();break;case 11:i.deprecatedLegacyJsonFieldConflicts=e.bool();break;case 12:i.features=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 999:i.uninterpretedOption&&i.uninterpretedOption.length||(i.uninterpretedOption=[]),i.uninterpretedOption.push(g.google.protobuf.UninterpretedOption.decode(e,e.uint32(),void 0,o+1));break;case 1053:i[".google.api.resource"]=g.google.api.ResourceDescriptor.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Zr.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Zr.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.messageSetWireFormat&&Object.hasOwnProperty.call(e,"messageSetWireFormat")&&"boolean"!=typeof e.messageSetWireFormat)return"messageSetWireFormat: boolean expected";if(null!=e.noStandardDescriptorAccessor&&Object.hasOwnProperty.call(e,"noStandardDescriptorAccessor")&&"boolean"!=typeof e.noStandardDescriptorAccessor)return"noStandardDescriptorAccessor: boolean expected";if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&"boolean"!=typeof e.deprecated)return"deprecated: boolean expected";if(null!=e.mapEntry&&Object.hasOwnProperty.call(e,"mapEntry")&&"boolean"!=typeof e.mapEntry)return"mapEntry: boolean expected";if(null!=e.deprecatedLegacyJsonFieldConflicts&&Object.hasOwnProperty.call(e,"deprecatedLegacyJsonFieldConflicts")&&"boolean"!=typeof e.deprecatedLegacyJsonFieldConflicts)return"deprecatedLegacyJsonFieldConflicts: boolean expected";if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(n=g.google.protobuf.FeatureSet.verify(e.features,t+1)))return"features."+n;if(null!=e.uninterpretedOption&&Object.hasOwnProperty.call(e,"uninterpretedOption")){if(!Array.isArray(e.uninterpretedOption))return"uninterpretedOption: array expected";for(var n,o=0;o<e.uninterpretedOption.length;++o)if(n=g.google.protobuf.UninterpretedOption.verify(e.uninterpretedOption[o],t+1))return"uninterpretedOption."+n}if(null!=e[".google.api.resource"]&&Object.hasOwnProperty.call(e,".google.api.resource")&&(n=g.google.api.ResourceDescriptor.verify(e[".google.api.resource"],t+1)))return".google.api.resource."+n;return null},Zr.fromObject=function(e,t){if(e instanceof g.google.protobuf.MessageOptions)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.MessageOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.MessageOptions;if(null!=e.messageSetWireFormat&&(n.messageSetWireFormat=Boolean(e.messageSetWireFormat)),null!=e.noStandardDescriptorAccessor&&(n.noStandardDescriptorAccessor=Boolean(e.noStandardDescriptorAccessor)),null!=e.deprecated&&(n.deprecated=Boolean(e.deprecated)),null!=e.mapEntry&&(n.mapEntry=Boolean(e.mapEntry)),null!=e.deprecatedLegacyJsonFieldConflicts&&(n.deprecatedLegacyJsonFieldConflicts=Boolean(e.deprecatedLegacyJsonFieldConflicts)),null!=e.features){if(!d.isObject(e.features))throw TypeError(".google.protobuf.MessageOptions.features: object expected");n.features=g.google.protobuf.FeatureSet.fromObject(e.features,t+1)}if(e.uninterpretedOption){if(!Array.isArray(e.uninterpretedOption))throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected");n.uninterpretedOption=[];for(var o=0;o<e.uninterpretedOption.length;++o){if(!d.isObject(e.uninterpretedOption[o]))throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected");n.uninterpretedOption[o]=g.google.protobuf.UninterpretedOption.fromObject(e.uninterpretedOption[o],t+1)}}if(null!=e[".google.api.resource"]){if(!d.isObject(e[".google.api.resource"]))throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected");n[".google.api.resource"]=g.google.api.ResourceDescriptor.fromObject(e[".google.api.resource"],t+1)}return n},Zr.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.uninterpretedOption=[]),t.defaults&&(o.messageSetWireFormat=!1,o.noStandardDescriptorAccessor=!1,o.deprecated=!1,o.mapEntry=!1,o.deprecatedLegacyJsonFieldConflicts=!1,o.features=null,o[".google.api.resource"]=null),null!=e.messageSetWireFormat&&Object.hasOwnProperty.call(e,"messageSetWireFormat")&&(o.messageSetWireFormat=e.messageSetWireFormat),null!=e.noStandardDescriptorAccessor&&Object.hasOwnProperty.call(e,"noStandardDescriptorAccessor")&&(o.noStandardDescriptorAccessor=e.noStandardDescriptorAccessor),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&(o.deprecated=e.deprecated),null!=e.mapEntry&&Object.hasOwnProperty.call(e,"mapEntry")&&(o.mapEntry=e.mapEntry),null!=e.deprecatedLegacyJsonFieldConflicts&&Object.hasOwnProperty.call(e,"deprecatedLegacyJsonFieldConflicts")&&(o.deprecatedLegacyJsonFieldConflicts=e.deprecatedLegacyJsonFieldConflicts),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o.features=g.google.protobuf.FeatureSet.toObject(e.features,t,n+1)),e.uninterpretedOption&&e.uninterpretedOption.length){o.uninterpretedOption=[];for(var r=0;r<e.uninterpretedOption.length;++r)o.uninterpretedOption[r]=g.google.protobuf.UninterpretedOption.toObject(e.uninterpretedOption[r],t,n+1)}return null!=e[".google.api.resource"]&&Object.hasOwnProperty.call(e,".google.api.resource")&&(o[".google.api.resource"]=g.google.api.ResourceDescriptor.toObject(e[".google.api.resource"],t,n+1)),o},Zr.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Zr.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.MessageOptions"},Zr),t.FieldOptions=(A.prototype.ctype=0,A.prototype.packed=!1,A.prototype.jstype=0,A.prototype.lazy=!1,A.prototype.unverifiedLazy=!1,A.prototype.deprecated=!1,A.prototype.weak=!1,A.prototype.debugRedact=!1,A.prototype.retention=0,A.prototype.targets=d.emptyArray,A.prototype.editionDefaults=d.emptyArray,A.prototype.features=null,A.prototype.featureSupport=null,A.prototype.uninterpretedOption=d.emptyArray,A.prototype[".google.api.fieldBehavior"]=d.emptyArray,A.prototype[".google.api.resourceReference"]=null,A.create=function(e){return new A(e)},A.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.ctype&&Object.hasOwnProperty.call(e,"ctype")&&t.uint32(8).int32(e.ctype),null!=e.packed&&Object.hasOwnProperty.call(e,"packed")&&t.uint32(16).bool(e.packed),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&t.uint32(24).bool(e.deprecated),null!=e.lazy&&Object.hasOwnProperty.call(e,"lazy")&&t.uint32(40).bool(e.lazy),null!=e.jstype&&Object.hasOwnProperty.call(e,"jstype")&&t.uint32(48).int32(e.jstype),null!=e.weak&&Object.hasOwnProperty.call(e,"weak")&&t.uint32(80).bool(e.weak),null!=e.unverifiedLazy&&Object.hasOwnProperty.call(e,"unverifiedLazy")&&t.uint32(120).bool(e.unverifiedLazy),null!=e.debugRedact&&Object.hasOwnProperty.call(e,"debugRedact")&&t.uint32(128).bool(e.debugRedact),null!=e.retention&&Object.hasOwnProperty.call(e,"retention")&&t.uint32(136).int32(e.retention),null!=e.targets&&e.targets.length)for(var o=0;o<e.targets.length;++o)t.uint32(152).int32(e.targets[o]);if(null!=e.editionDefaults&&e.editionDefaults.length)for(o=0;o<e.editionDefaults.length;++o)g.google.protobuf.FieldOptions.EditionDefault.encode(e.editionDefaults[o],t.uint32(162).fork(),n+1).ldelim();if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&g.google.protobuf.FeatureSet.encode(e.features,t.uint32(170).fork(),n+1).ldelim(),null!=e.featureSupport&&Object.hasOwnProperty.call(e,"featureSupport")&&g.google.protobuf.FieldOptions.FeatureSupport.encode(e.featureSupport,t.uint32(178).fork(),n+1).ldelim(),null!=e.uninterpretedOption&&e.uninterpretedOption.length)for(o=0;o<e.uninterpretedOption.length;++o)g.google.protobuf.UninterpretedOption.encode(e.uninterpretedOption[o],t.uint32(7994).fork(),n+1).ldelim();if(null!=e[".google.api.fieldBehavior"]&&e[".google.api.fieldBehavior"].length)for(o=0;o<e[".google.api.fieldBehavior"].length;++o)t.uint32(8416).int32(e[".google.api.fieldBehavior"][o]);return null!=e[".google.api.resourceReference"]&&Object.hasOwnProperty.call(e,".google.api.resourceReference")&&g.google.api.ResourceReference.encode(e[".google.api.resourceReference"],t.uint32(8442).fork(),n+1).ldelim(),t},A.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},A.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FieldOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.ctype=e.int32();break;case 2:i.packed=e.bool();break;case 6:i.jstype=e.int32();break;case 5:i.lazy=e.bool();break;case 15:i.unverifiedLazy=e.bool();break;case 3:i.deprecated=e.bool();break;case 10:i.weak=e.bool();break;case 16:i.debugRedact=e.bool();break;case 17:i.retention=e.int32();break;case 19:if(i.targets&&i.targets.length||(i.targets=[]),2==(7&a))for(var s=e.uint32()+e.pos;e.pos<s;)i.targets.push(e.int32());else i.targets.push(e.int32());break;case 20:i.editionDefaults&&i.editionDefaults.length||(i.editionDefaults=[]),i.editionDefaults.push(g.google.protobuf.FieldOptions.EditionDefault.decode(e,e.uint32(),void 0,o+1));break;case 21:i.features=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 22:i.featureSupport=g.google.protobuf.FieldOptions.FeatureSupport.decode(e,e.uint32(),void 0,o+1);break;case 999:i.uninterpretedOption&&i.uninterpretedOption.length||(i.uninterpretedOption=[]),i.uninterpretedOption.push(g.google.protobuf.UninterpretedOption.decode(e,e.uint32(),void 0,o+1));break;case 1052:if(i[".google.api.fieldBehavior"]&&i[".google.api.fieldBehavior"].length||(i[".google.api.fieldBehavior"]=[]),2==(7&a))for(s=e.uint32()+e.pos;e.pos<s;)i[".google.api.fieldBehavior"].push(e.int32());else i[".google.api.fieldBehavior"].push(e.int32());break;case 1055:i[".google.api.resourceReference"]=g.google.api.ResourceReference.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},A.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},A.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.ctype&&Object.hasOwnProperty.call(e,"ctype"))switch(e.ctype){default:return"ctype: enum value expected";case 0:case 1:case 2:}if(null!=e.packed&&Object.hasOwnProperty.call(e,"packed")&&"boolean"!=typeof e.packed)return"packed: boolean expected";if(null!=e.jstype&&Object.hasOwnProperty.call(e,"jstype"))switch(e.jstype){default:return"jstype: enum value expected";case 0:case 1:case 2:}if(null!=e.lazy&&Object.hasOwnProperty.call(e,"lazy")&&"boolean"!=typeof e.lazy)return"lazy: boolean expected";if(null!=e.unverifiedLazy&&Object.hasOwnProperty.call(e,"unverifiedLazy")&&"boolean"!=typeof e.unverifiedLazy)return"unverifiedLazy: boolean expected";if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&"boolean"!=typeof e.deprecated)return"deprecated: boolean expected";if(null!=e.weak&&Object.hasOwnProperty.call(e,"weak")&&"boolean"!=typeof e.weak)return"weak: boolean expected";if(null!=e.debugRedact&&Object.hasOwnProperty.call(e,"debugRedact")&&"boolean"!=typeof e.debugRedact)return"debugRedact: boolean expected";if(null!=e.retention&&Object.hasOwnProperty.call(e,"retention"))switch(e.retention){default:return"retention: enum value expected";case 0:case 1:case 2:}if(null!=e.targets&&Object.hasOwnProperty.call(e,"targets")){if(!Array.isArray(e.targets))return"targets: array expected";for(var n=0;n<e.targets.length;++n)switch(e.targets[n]){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:}}if(null!=e.editionDefaults&&Object.hasOwnProperty.call(e,"editionDefaults")){if(!Array.isArray(e.editionDefaults))return"editionDefaults: array expected";for(n=0;n<e.editionDefaults.length;++n)if(o=g.google.protobuf.FieldOptions.EditionDefault.verify(e.editionDefaults[n],t+1))return"editionDefaults."+o}if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o=g.google.protobuf.FeatureSet.verify(e.features,t+1)))return"features."+o;if(null!=e.featureSupport&&Object.hasOwnProperty.call(e,"featureSupport")&&(o=g.google.protobuf.FieldOptions.FeatureSupport.verify(e.featureSupport,t+1)))return"featureSupport."+o;if(null!=e.uninterpretedOption&&Object.hasOwnProperty.call(e,"uninterpretedOption")){if(!Array.isArray(e.uninterpretedOption))return"uninterpretedOption: array expected";for(var o,n=0;n<e.uninterpretedOption.length;++n)if(o=g.google.protobuf.UninterpretedOption.verify(e.uninterpretedOption[n],t+1))return"uninterpretedOption."+o}if(null!=e[".google.api.fieldBehavior"]&&Object.hasOwnProperty.call(e,".google.api.fieldBehavior")){if(!Array.isArray(e[".google.api.fieldBehavior"]))return".google.api.fieldBehavior: array expected";for(n=0;n<e[".google.api.fieldBehavior"].length;++n)switch(e[".google.api.fieldBehavior"][n]){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:}}if(null!=e[".google.api.resourceReference"]&&Object.hasOwnProperty.call(e,".google.api.resourceReference")&&(o=g.google.api.ResourceReference.verify(e[".google.api.resourceReference"],t+1)))return".google.api.resourceReference."+o;return null},A.fromObject=function(e,t){if(e instanceof g.google.protobuf.FieldOptions)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FieldOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FieldOptions;switch(e.ctype){default:"number"==typeof e.ctype&&(n.ctype=e.ctype);break;case"STRING":case 0:n.ctype=0;break;case"CORD":case 1:n.ctype=1;break;case"STRING_PIECE":case 2:n.ctype=2}switch(null!=e.packed&&(n.packed=Boolean(e.packed)),e.jstype){default:"number"==typeof e.jstype&&(n.jstype=e.jstype);break;case"JS_NORMAL":case 0:n.jstype=0;break;case"JS_STRING":case 1:n.jstype=1;break;case"JS_NUMBER":case 2:n.jstype=2}switch(null!=e.lazy&&(n.lazy=Boolean(e.lazy)),null!=e.unverifiedLazy&&(n.unverifiedLazy=Boolean(e.unverifiedLazy)),null!=e.deprecated&&(n.deprecated=Boolean(e.deprecated)),null!=e.weak&&(n.weak=Boolean(e.weak)),null!=e.debugRedact&&(n.debugRedact=Boolean(e.debugRedact)),e.retention){default:"number"==typeof e.retention&&(n.retention=e.retention);break;case"RETENTION_UNKNOWN":case 0:n.retention=0;break;case"RETENTION_RUNTIME":case 1:n.retention=1;break;case"RETENTION_SOURCE":case 2:n.retention=2}if(e.targets){if(!Array.isArray(e.targets))throw TypeError(".google.protobuf.FieldOptions.targets: array expected");n.targets=[];for(var o=0;o<e.targets.length;++o)switch(e.targets[o]){default:if("number"==typeof e.targets[o]){n.targets[o]=e.targets[o];break}case"TARGET_TYPE_UNKNOWN":case 0:n.targets[o]=0;break;case"TARGET_TYPE_FILE":case 1:n.targets[o]=1;break;case"TARGET_TYPE_EXTENSION_RANGE":case 2:n.targets[o]=2;break;case"TARGET_TYPE_MESSAGE":case 3:n.targets[o]=3;break;case"TARGET_TYPE_FIELD":case 4:n.targets[o]=4;break;case"TARGET_TYPE_ONEOF":case 5:n.targets[o]=5;break;case"TARGET_TYPE_ENUM":case 6:n.targets[o]=6;break;case"TARGET_TYPE_ENUM_ENTRY":case 7:n.targets[o]=7;break;case"TARGET_TYPE_SERVICE":case 8:n.targets[o]=8;break;case"TARGET_TYPE_METHOD":case 9:n.targets[o]=9}}if(e.editionDefaults){if(!Array.isArray(e.editionDefaults))throw TypeError(".google.protobuf.FieldOptions.editionDefaults: array expected");n.editionDefaults=[];for(o=0;o<e.editionDefaults.length;++o){if(!d.isObject(e.editionDefaults[o]))throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected");n.editionDefaults[o]=g.google.protobuf.FieldOptions.EditionDefault.fromObject(e.editionDefaults[o],t+1)}}if(null!=e.features){if(!d.isObject(e.features))throw TypeError(".google.protobuf.FieldOptions.features: object expected");n.features=g.google.protobuf.FeatureSet.fromObject(e.features,t+1)}if(null!=e.featureSupport){if(!d.isObject(e.featureSupport))throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected");n.featureSupport=g.google.protobuf.FieldOptions.FeatureSupport.fromObject(e.featureSupport,t+1)}if(e.uninterpretedOption){if(!Array.isArray(e.uninterpretedOption))throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: array expected");n.uninterpretedOption=[];for(o=0;o<e.uninterpretedOption.length;++o){if(!d.isObject(e.uninterpretedOption[o]))throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected");n.uninterpretedOption[o]=g.google.protobuf.UninterpretedOption.fromObject(e.uninterpretedOption[o],t+1)}}if(e[".google.api.fieldBehavior"]){if(!Array.isArray(e[".google.api.fieldBehavior"]))throw TypeError(".google.protobuf.FieldOptions..google.api.fieldBehavior: array expected");n[".google.api.fieldBehavior"]=[];for(o=0;o<e[".google.api.fieldBehavior"].length;++o)switch(e[".google.api.fieldBehavior"][o]){default:if("number"==typeof e[".google.api.fieldBehavior"][o]){n[".google.api.fieldBehavior"][o]=e[".google.api.fieldBehavior"][o];break}case"FIELD_BEHAVIOR_UNSPECIFIED":case 0:n[".google.api.fieldBehavior"][o]=0;break;case"OPTIONAL":case 1:n[".google.api.fieldBehavior"][o]=1;break;case"REQUIRED":case 2:n[".google.api.fieldBehavior"][o]=2;break;case"OUTPUT_ONLY":case 3:n[".google.api.fieldBehavior"][o]=3;break;case"INPUT_ONLY":case 4:n[".google.api.fieldBehavior"][o]=4;break;case"IMMUTABLE":case 5:n[".google.api.fieldBehavior"][o]=5;break;case"UNORDERED_LIST":case 6:n[".google.api.fieldBehavior"][o]=6;break;case"NON_EMPTY_DEFAULT":case 7:n[".google.api.fieldBehavior"][o]=7;break;case"IDENTIFIER":case 8:n[".google.api.fieldBehavior"][o]=8}}if(null!=e[".google.api.resourceReference"]){if(!d.isObject(e[".google.api.resourceReference"]))throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected");n[".google.api.resourceReference"]=g.google.api.ResourceReference.fromObject(e[".google.api.resourceReference"],t+1)}return n},A.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.targets=[],o.editionDefaults=[],o.uninterpretedOption=[],o[".google.api.fieldBehavior"]=[]),t.defaults&&(o.ctype=t.enums===String?"STRING":0,o.packed=!1,o.deprecated=!1,o.lazy=!1,o.jstype=t.enums===String?"JS_NORMAL":0,o.weak=!1,o.unverifiedLazy=!1,o.debugRedact=!1,o.retention=t.enums===String?"RETENTION_UNKNOWN":0,o.features=null,o.featureSupport=null,o[".google.api.resourceReference"]=null),null!=e.ctype&&Object.hasOwnProperty.call(e,"ctype")&&(o.ctype=t.enums!==String||void 0===g.google.protobuf.FieldOptions.CType[e.ctype]?e.ctype:g.google.protobuf.FieldOptions.CType[e.ctype]),null!=e.packed&&Object.hasOwnProperty.call(e,"packed")&&(o.packed=e.packed),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&(o.deprecated=e.deprecated),null!=e.lazy&&Object.hasOwnProperty.call(e,"lazy")&&(o.lazy=e.lazy),null!=e.jstype&&Object.hasOwnProperty.call(e,"jstype")&&(o.jstype=t.enums!==String||void 0===g.google.protobuf.FieldOptions.JSType[e.jstype]?e.jstype:g.google.protobuf.FieldOptions.JSType[e.jstype]),null!=e.weak&&Object.hasOwnProperty.call(e,"weak")&&(o.weak=e.weak),null!=e.unverifiedLazy&&Object.hasOwnProperty.call(e,"unverifiedLazy")&&(o.unverifiedLazy=e.unverifiedLazy),null!=e.debugRedact&&Object.hasOwnProperty.call(e,"debugRedact")&&(o.debugRedact=e.debugRedact),null!=e.retention&&Object.hasOwnProperty.call(e,"retention")&&(o.retention=t.enums!==String||void 0===g.google.protobuf.FieldOptions.OptionRetention[e.retention]?e.retention:g.google.protobuf.FieldOptions.OptionRetention[e.retention]),e.targets&&e.targets.length){o.targets=[];for(var r=0;r<e.targets.length;++r)o.targets[r]=t.enums!==String||void 0===g.google.protobuf.FieldOptions.OptionTargetType[e.targets[r]]?e.targets[r]:g.google.protobuf.FieldOptions.OptionTargetType[e.targets[r]]}if(e.editionDefaults&&e.editionDefaults.length){o.editionDefaults=[];for(r=0;r<e.editionDefaults.length;++r)o.editionDefaults[r]=g.google.protobuf.FieldOptions.EditionDefault.toObject(e.editionDefaults[r],t,n+1)}if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o.features=g.google.protobuf.FeatureSet.toObject(e.features,t,n+1)),null!=e.featureSupport&&Object.hasOwnProperty.call(e,"featureSupport")&&(o.featureSupport=g.google.protobuf.FieldOptions.FeatureSupport.toObject(e.featureSupport,t,n+1)),e.uninterpretedOption&&e.uninterpretedOption.length){o.uninterpretedOption=[];for(r=0;r<e.uninterpretedOption.length;++r)o.uninterpretedOption[r]=g.google.protobuf.UninterpretedOption.toObject(e.uninterpretedOption[r],t,n+1)}if(e[".google.api.fieldBehavior"]&&e[".google.api.fieldBehavior"].length){o[".google.api.fieldBehavior"]=[];for(r=0;r<e[".google.api.fieldBehavior"].length;++r)o[".google.api.fieldBehavior"][r]=t.enums!==String||void 0===g.google.api.FieldBehavior[e[".google.api.fieldBehavior"][r]]?e[".google.api.fieldBehavior"][r]:g.google.api.FieldBehavior[e[".google.api.fieldBehavior"][r]]}return null!=e[".google.api.resourceReference"]&&Object.hasOwnProperty.call(e,".google.api.resourceReference")&&(o[".google.api.resourceReference"]=g.google.api.ResourceReference.toObject(e[".google.api.resourceReference"],t,n+1)),o},A.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},A.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FieldOptions"},A.CType=(r={},(i=Object.create(r))[r[0]="STRING"]=0,i[r[1]="CORD"]=1,i[r[2]="STRING_PIECE"]=2,i),A.JSType=(r={},(i=Object.create(r))[r[0]="JS_NORMAL"]=0,i[r[1]="JS_STRING"]=1,i[r[2]="JS_NUMBER"]=2,i),A.OptionRetention=(r={},(i=Object.create(r))[r[0]="RETENTION_UNKNOWN"]=0,i[r[1]="RETENTION_RUNTIME"]=1,i[r[2]="RETENTION_SOURCE"]=2,i),A.OptionTargetType=(r={},(i=Object.create(r))[r[0]="TARGET_TYPE_UNKNOWN"]=0,i[r[1]="TARGET_TYPE_FILE"]=1,i[r[2]="TARGET_TYPE_EXTENSION_RANGE"]=2,i[r[3]="TARGET_TYPE_MESSAGE"]=3,i[r[4]="TARGET_TYPE_FIELD"]=4,i[r[5]="TARGET_TYPE_ONEOF"]=5,i[r[6]="TARGET_TYPE_ENUM"]=6,i[r[7]="TARGET_TYPE_ENUM_ENTRY"]=7,i[r[8]="TARGET_TYPE_SERVICE"]=8,i[r[9]="TARGET_TYPE_METHOD"]=9,i),A.EditionDefault=($r.prototype.edition=0,$r.prototype.value="",$r.create=function(e){return new $r(e)},$r.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.value&&Object.hasOwnProperty.call(e,"value")&&t.uint32(18).string(e.value),null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&t.uint32(24).int32(e.edition),t},$r.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},$r.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FieldOptions.EditionDefault;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 3:i.edition=e.int32();break;case 2:i.value=e.string();break;default:e.skipType(7&a,o)}}return i},$r.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},$r.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.edition&&Object.hasOwnProperty.call(e,"edition"))switch(e.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:}return null!=e.value&&Object.hasOwnProperty.call(e,"value")&&!d.isString(e.value)?"value: string expected":null},$r.fromObject=function(e,t){if(e instanceof g.google.protobuf.FieldOptions.EditionDefault)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FieldOptions.EditionDefault: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FieldOptions.EditionDefault;switch(e.edition){default:"number"==typeof e.edition&&(n.edition=e.edition);break;case"EDITION_UNKNOWN":case 0:n.edition=0;break;case"EDITION_LEGACY":case 900:n.edition=900;break;case"EDITION_PROTO2":case 998:n.edition=998;break;case"EDITION_PROTO3":case 999:n.edition=999;break;case"EDITION_2023":case 1e3:n.edition=1e3;break;case"EDITION_2024":case 1001:n.edition=1001;break;case"EDITION_1_TEST_ONLY":case 1:n.edition=1;break;case"EDITION_2_TEST_ONLY":case 2:n.edition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:n.edition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:n.edition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:n.edition=99999;break;case"EDITION_MAX":case 2147483647:n.edition=2147483647}return null!=e.value&&(n.value=String(e.value)),n},$r.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.value="",n.edition=t.enums===String?"EDITION_UNKNOWN":0),null!=e.value&&Object.hasOwnProperty.call(e,"value")&&(n.value=e.value),null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&(n.edition=t.enums!==String||void 0===g.google.protobuf.Edition[e.edition]?e.edition:g.google.protobuf.Edition[e.edition]),n},$r.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},$r.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FieldOptions.EditionDefault"},$r),A.FeatureSupport=(ei.prototype.editionIntroduced=0,ei.prototype.editionDeprecated=0,ei.prototype.deprecationWarning="",ei.prototype.editionRemoved=0,ei.create=function(e){return new ei(e)},ei.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.editionIntroduced&&Object.hasOwnProperty.call(e,"editionIntroduced")&&t.uint32(8).int32(e.editionIntroduced),null!=e.editionDeprecated&&Object.hasOwnProperty.call(e,"editionDeprecated")&&t.uint32(16).int32(e.editionDeprecated),null!=e.deprecationWarning&&Object.hasOwnProperty.call(e,"deprecationWarning")&&t.uint32(26).string(e.deprecationWarning),null!=e.editionRemoved&&Object.hasOwnProperty.call(e,"editionRemoved")&&t.uint32(32).int32(e.editionRemoved),t},ei.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ei.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FieldOptions.FeatureSupport;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.editionIntroduced=e.int32();break;case 2:i.editionDeprecated=e.int32();break;case 3:i.deprecationWarning=e.string();break;case 4:i.editionRemoved=e.int32();break;default:e.skipType(7&a,o)}}return i},ei.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ei.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.editionIntroduced&&Object.hasOwnProperty.call(e,"editionIntroduced"))switch(e.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:}if(null!=e.editionDeprecated&&Object.hasOwnProperty.call(e,"editionDeprecated"))switch(e.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:}if(null!=e.deprecationWarning&&Object.hasOwnProperty.call(e,"deprecationWarning")&&!d.isString(e.deprecationWarning))return"deprecationWarning: string expected";if(null!=e.editionRemoved&&Object.hasOwnProperty.call(e,"editionRemoved"))switch(e.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:}return null},ei.fromObject=function(e,t){if(e instanceof g.google.protobuf.FieldOptions.FeatureSupport)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FieldOptions.FeatureSupport: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FieldOptions.FeatureSupport;switch(e.editionIntroduced){default:"number"==typeof e.editionIntroduced&&(n.editionIntroduced=e.editionIntroduced);break;case"EDITION_UNKNOWN":case 0:n.editionIntroduced=0;break;case"EDITION_LEGACY":case 900:n.editionIntroduced=900;break;case"EDITION_PROTO2":case 998:n.editionIntroduced=998;break;case"EDITION_PROTO3":case 999:n.editionIntroduced=999;break;case"EDITION_2023":case 1e3:n.editionIntroduced=1e3;break;case"EDITION_2024":case 1001:n.editionIntroduced=1001;break;case"EDITION_1_TEST_ONLY":case 1:n.editionIntroduced=1;break;case"EDITION_2_TEST_ONLY":case 2:n.editionIntroduced=2;break;case"EDITION_99997_TEST_ONLY":case 99997:n.editionIntroduced=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:n.editionIntroduced=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:n.editionIntroduced=99999;break;case"EDITION_MAX":case 2147483647:n.editionIntroduced=2147483647}switch(e.editionDeprecated){default:"number"==typeof e.editionDeprecated&&(n.editionDeprecated=e.editionDeprecated);break;case"EDITION_UNKNOWN":case 0:n.editionDeprecated=0;break;case"EDITION_LEGACY":case 900:n.editionDeprecated=900;break;case"EDITION_PROTO2":case 998:n.editionDeprecated=998;break;case"EDITION_PROTO3":case 999:n.editionDeprecated=999;break;case"EDITION_2023":case 1e3:n.editionDeprecated=1e3;break;case"EDITION_2024":case 1001:n.editionDeprecated=1001;break;case"EDITION_1_TEST_ONLY":case 1:n.editionDeprecated=1;break;case"EDITION_2_TEST_ONLY":case 2:n.editionDeprecated=2;break;case"EDITION_99997_TEST_ONLY":case 99997:n.editionDeprecated=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:n.editionDeprecated=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:n.editionDeprecated=99999;break;case"EDITION_MAX":case 2147483647:n.editionDeprecated=2147483647}switch(null!=e.deprecationWarning&&(n.deprecationWarning=String(e.deprecationWarning)),e.editionRemoved){default:"number"==typeof e.editionRemoved&&(n.editionRemoved=e.editionRemoved);break;case"EDITION_UNKNOWN":case 0:n.editionRemoved=0;break;case"EDITION_LEGACY":case 900:n.editionRemoved=900;break;case"EDITION_PROTO2":case 998:n.editionRemoved=998;break;case"EDITION_PROTO3":case 999:n.editionRemoved=999;break;case"EDITION_2023":case 1e3:n.editionRemoved=1e3;break;case"EDITION_2024":case 1001:n.editionRemoved=1001;break;case"EDITION_1_TEST_ONLY":case 1:n.editionRemoved=1;break;case"EDITION_2_TEST_ONLY":case 2:n.editionRemoved=2;break;case"EDITION_99997_TEST_ONLY":case 99997:n.editionRemoved=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:n.editionRemoved=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:n.editionRemoved=99999;break;case"EDITION_MAX":case 2147483647:n.editionRemoved=2147483647}return n},ei.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.editionIntroduced=t.enums===String?"EDITION_UNKNOWN":0,n.editionDeprecated=t.enums===String?"EDITION_UNKNOWN":0,n.deprecationWarning="",n.editionRemoved=t.enums===String?"EDITION_UNKNOWN":0),null!=e.editionIntroduced&&Object.hasOwnProperty.call(e,"editionIntroduced")&&(n.editionIntroduced=t.enums!==String||void 0===g.google.protobuf.Edition[e.editionIntroduced]?e.editionIntroduced:g.google.protobuf.Edition[e.editionIntroduced]),null!=e.editionDeprecated&&Object.hasOwnProperty.call(e,"editionDeprecated")&&(n.editionDeprecated=t.enums!==String||void 0===g.google.protobuf.Edition[e.editionDeprecated]?e.editionDeprecated:g.google.protobuf.Edition[e.editionDeprecated]),null!=e.deprecationWarning&&Object.hasOwnProperty.call(e,"deprecationWarning")&&(n.deprecationWarning=e.deprecationWarning),null!=e.editionRemoved&&Object.hasOwnProperty.call(e,"editionRemoved")&&(n.editionRemoved=t.enums!==String||void 0===g.google.protobuf.Edition[e.editionRemoved]?e.editionRemoved:g.google.protobuf.Edition[e.editionRemoved]),n},ei.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ei.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FieldOptions.FeatureSupport"},ei),A),t.OneofOptions=(ti.prototype.features=null,ti.prototype.uninterpretedOption=d.emptyArray,ti.create=function(e){return new ti(e)},ti.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&g.google.protobuf.FeatureSet.encode(e.features,t.uint32(10).fork(),n+1).ldelim(),null!=e.uninterpretedOption&&e.uninterpretedOption.length)for(var o=0;o<e.uninterpretedOption.length;++o)g.google.protobuf.UninterpretedOption.encode(e.uninterpretedOption[o],t.uint32(7994).fork(),n+1).ldelim();return t},ti.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ti.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.OneofOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.features=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 999:i.uninterpretedOption&&i.uninterpretedOption.length||(i.uninterpretedOption=[]),i.uninterpretedOption.push(g.google.protobuf.UninterpretedOption.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},ti.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ti.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(n=g.google.protobuf.FeatureSet.verify(e.features,t+1)))return"features."+n;if(null!=e.uninterpretedOption&&Object.hasOwnProperty.call(e,"uninterpretedOption")){if(!Array.isArray(e.uninterpretedOption))return"uninterpretedOption: array expected";for(var n,o=0;o<e.uninterpretedOption.length;++o)if(n=g.google.protobuf.UninterpretedOption.verify(e.uninterpretedOption[o],t+1))return"uninterpretedOption."+n}return null},ti.fromObject=function(e,t){if(e instanceof g.google.protobuf.OneofOptions)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.OneofOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.OneofOptions;if(null!=e.features){if(!d.isObject(e.features))throw TypeError(".google.protobuf.OneofOptions.features: object expected");n.features=g.google.protobuf.FeatureSet.fromObject(e.features,t+1)}if(e.uninterpretedOption){if(!Array.isArray(e.uninterpretedOption))throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected");n.uninterpretedOption=[];for(var o=0;o<e.uninterpretedOption.length;++o){if(!d.isObject(e.uninterpretedOption[o]))throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected");n.uninterpretedOption[o]=g.google.protobuf.UninterpretedOption.fromObject(e.uninterpretedOption[o],t+1)}}return n},ti.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.uninterpretedOption=[]),t.defaults&&(o.features=null),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o.features=g.google.protobuf.FeatureSet.toObject(e.features,t,n+1)),e.uninterpretedOption&&e.uninterpretedOption.length){o.uninterpretedOption=[];for(var r=0;r<e.uninterpretedOption.length;++r)o.uninterpretedOption[r]=g.google.protobuf.UninterpretedOption.toObject(e.uninterpretedOption[r],t,n+1)}return o},ti.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ti.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.OneofOptions"},ti),t.EnumOptions=(ni.prototype.allowAlias=!1,ni.prototype.deprecated=!1,ni.prototype.deprecatedLegacyJsonFieldConflicts=!1,ni.prototype.features=null,ni.prototype.uninterpretedOption=d.emptyArray,ni.create=function(e){return new ni(e)},ni.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.allowAlias&&Object.hasOwnProperty.call(e,"allowAlias")&&t.uint32(16).bool(e.allowAlias),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&t.uint32(24).bool(e.deprecated),null!=e.deprecatedLegacyJsonFieldConflicts&&Object.hasOwnProperty.call(e,"deprecatedLegacyJsonFieldConflicts")&&t.uint32(48).bool(e.deprecatedLegacyJsonFieldConflicts),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&g.google.protobuf.FeatureSet.encode(e.features,t.uint32(58).fork(),n+1).ldelim(),null!=e.uninterpretedOption&&e.uninterpretedOption.length)for(var o=0;o<e.uninterpretedOption.length;++o)g.google.protobuf.UninterpretedOption.encode(e.uninterpretedOption[o],t.uint32(7994).fork(),n+1).ldelim();return t},ni.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ni.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.EnumOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 2:i.allowAlias=e.bool();break;case 3:i.deprecated=e.bool();break;case 6:i.deprecatedLegacyJsonFieldConflicts=e.bool();break;case 7:i.features=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 999:i.uninterpretedOption&&i.uninterpretedOption.length||(i.uninterpretedOption=[]),i.uninterpretedOption.push(g.google.protobuf.UninterpretedOption.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},ni.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ni.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.allowAlias&&Object.hasOwnProperty.call(e,"allowAlias")&&"boolean"!=typeof e.allowAlias)return"allowAlias: boolean expected";if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&"boolean"!=typeof e.deprecated)return"deprecated: boolean expected";if(null!=e.deprecatedLegacyJsonFieldConflicts&&Object.hasOwnProperty.call(e,"deprecatedLegacyJsonFieldConflicts")&&"boolean"!=typeof e.deprecatedLegacyJsonFieldConflicts)return"deprecatedLegacyJsonFieldConflicts: boolean expected";if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(n=g.google.protobuf.FeatureSet.verify(e.features,t+1)))return"features."+n;if(null!=e.uninterpretedOption&&Object.hasOwnProperty.call(e,"uninterpretedOption")){if(!Array.isArray(e.uninterpretedOption))return"uninterpretedOption: array expected";for(var n,o=0;o<e.uninterpretedOption.length;++o)if(n=g.google.protobuf.UninterpretedOption.verify(e.uninterpretedOption[o],t+1))return"uninterpretedOption."+n}return null},ni.fromObject=function(e,t){if(e instanceof g.google.protobuf.EnumOptions)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.EnumOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.EnumOptions;if(null!=e.allowAlias&&(n.allowAlias=Boolean(e.allowAlias)),null!=e.deprecated&&(n.deprecated=Boolean(e.deprecated)),null!=e.deprecatedLegacyJsonFieldConflicts&&(n.deprecatedLegacyJsonFieldConflicts=Boolean(e.deprecatedLegacyJsonFieldConflicts)),null!=e.features){if(!d.isObject(e.features))throw TypeError(".google.protobuf.EnumOptions.features: object expected");n.features=g.google.protobuf.FeatureSet.fromObject(e.features,t+1)}if(e.uninterpretedOption){if(!Array.isArray(e.uninterpretedOption))throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected");n.uninterpretedOption=[];for(var o=0;o<e.uninterpretedOption.length;++o){if(!d.isObject(e.uninterpretedOption[o]))throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected");n.uninterpretedOption[o]=g.google.protobuf.UninterpretedOption.fromObject(e.uninterpretedOption[o],t+1)}}return n},ni.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.uninterpretedOption=[]),t.defaults&&(o.allowAlias=!1,o.deprecated=!1,o.deprecatedLegacyJsonFieldConflicts=!1,o.features=null),null!=e.allowAlias&&Object.hasOwnProperty.call(e,"allowAlias")&&(o.allowAlias=e.allowAlias),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&(o.deprecated=e.deprecated),null!=e.deprecatedLegacyJsonFieldConflicts&&Object.hasOwnProperty.call(e,"deprecatedLegacyJsonFieldConflicts")&&(o.deprecatedLegacyJsonFieldConflicts=e.deprecatedLegacyJsonFieldConflicts),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o.features=g.google.protobuf.FeatureSet.toObject(e.features,t,n+1)),e.uninterpretedOption&&e.uninterpretedOption.length){o.uninterpretedOption=[];for(var r=0;r<e.uninterpretedOption.length;++r)o.uninterpretedOption[r]=g.google.protobuf.UninterpretedOption.toObject(e.uninterpretedOption[r],t,n+1)}return o},ni.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ni.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.EnumOptions"},ni),t.EnumValueOptions=(oi.prototype.deprecated=!1,oi.prototype.features=null,oi.prototype.debugRedact=!1,oi.prototype.featureSupport=null,oi.prototype.uninterpretedOption=d.emptyArray,oi.create=function(e){return new oi(e)},oi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&t.uint32(8).bool(e.deprecated),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&g.google.protobuf.FeatureSet.encode(e.features,t.uint32(18).fork(),n+1).ldelim(),null!=e.debugRedact&&Object.hasOwnProperty.call(e,"debugRedact")&&t.uint32(24).bool(e.debugRedact),null!=e.featureSupport&&Object.hasOwnProperty.call(e,"featureSupport")&&g.google.protobuf.FieldOptions.FeatureSupport.encode(e.featureSupport,t.uint32(34).fork(),n+1).ldelim(),null!=e.uninterpretedOption&&e.uninterpretedOption.length)for(var o=0;o<e.uninterpretedOption.length;++o)g.google.protobuf.UninterpretedOption.encode(e.uninterpretedOption[o],t.uint32(7994).fork(),n+1).ldelim();return t},oi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},oi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.EnumValueOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.deprecated=e.bool();break;case 2:i.features=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 3:i.debugRedact=e.bool();break;case 4:i.featureSupport=g.google.protobuf.FieldOptions.FeatureSupport.decode(e,e.uint32(),void 0,o+1);break;case 999:i.uninterpretedOption&&i.uninterpretedOption.length||(i.uninterpretedOption=[]),i.uninterpretedOption.push(g.google.protobuf.UninterpretedOption.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},oi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},oi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&"boolean"!=typeof e.deprecated)return"deprecated: boolean expected";if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(n=g.google.protobuf.FeatureSet.verify(e.features,t+1)))return"features."+n;if(null!=e.debugRedact&&Object.hasOwnProperty.call(e,"debugRedact")&&"boolean"!=typeof e.debugRedact)return"debugRedact: boolean expected";if(null!=e.featureSupport&&Object.hasOwnProperty.call(e,"featureSupport")&&(n=g.google.protobuf.FieldOptions.FeatureSupport.verify(e.featureSupport,t+1)))return"featureSupport."+n;if(null!=e.uninterpretedOption&&Object.hasOwnProperty.call(e,"uninterpretedOption")){if(!Array.isArray(e.uninterpretedOption))return"uninterpretedOption: array expected";for(var n,o=0;o<e.uninterpretedOption.length;++o)if(n=g.google.protobuf.UninterpretedOption.verify(e.uninterpretedOption[o],t+1))return"uninterpretedOption."+n}return null},oi.fromObject=function(e,t){if(e instanceof g.google.protobuf.EnumValueOptions)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.EnumValueOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.EnumValueOptions;if(null!=e.deprecated&&(n.deprecated=Boolean(e.deprecated)),null!=e.features){if(!d.isObject(e.features))throw TypeError(".google.protobuf.EnumValueOptions.features: object expected");n.features=g.google.protobuf.FeatureSet.fromObject(e.features,t+1)}if(null!=e.debugRedact&&(n.debugRedact=Boolean(e.debugRedact)),null!=e.featureSupport){if(!d.isObject(e.featureSupport))throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected");n.featureSupport=g.google.protobuf.FieldOptions.FeatureSupport.fromObject(e.featureSupport,t+1)}if(e.uninterpretedOption){if(!Array.isArray(e.uninterpretedOption))throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected");n.uninterpretedOption=[];for(var o=0;o<e.uninterpretedOption.length;++o){if(!d.isObject(e.uninterpretedOption[o]))throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected");n.uninterpretedOption[o]=g.google.protobuf.UninterpretedOption.fromObject(e.uninterpretedOption[o],t+1)}}return n},oi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.uninterpretedOption=[]),t.defaults&&(o.deprecated=!1,o.features=null,o.debugRedact=!1,o.featureSupport=null),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&(o.deprecated=e.deprecated),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o.features=g.google.protobuf.FeatureSet.toObject(e.features,t,n+1)),null!=e.debugRedact&&Object.hasOwnProperty.call(e,"debugRedact")&&(o.debugRedact=e.debugRedact),null!=e.featureSupport&&Object.hasOwnProperty.call(e,"featureSupport")&&(o.featureSupport=g.google.protobuf.FieldOptions.FeatureSupport.toObject(e.featureSupport,t,n+1)),e.uninterpretedOption&&e.uninterpretedOption.length){o.uninterpretedOption=[];for(var r=0;r<e.uninterpretedOption.length;++r)o.uninterpretedOption[r]=g.google.protobuf.UninterpretedOption.toObject(e.uninterpretedOption[r],t,n+1)}return o},oi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},oi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.EnumValueOptions"},oi),t.ServiceOptions=(ri.prototype.features=null,ri.prototype.deprecated=!1,ri.prototype.uninterpretedOption=d.emptyArray,ri.prototype[".google.api.defaultHost"]="",ri.prototype[".google.api.oauthScopes"]="",ri.prototype[".google.api.apiVersion"]="",ri.create=function(e){return new ri(e)},ri.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&t.uint32(264).bool(e.deprecated),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&g.google.protobuf.FeatureSet.encode(e.features,t.uint32(274).fork(),n+1).ldelim(),null!=e.uninterpretedOption&&e.uninterpretedOption.length)for(var o=0;o<e.uninterpretedOption.length;++o)g.google.protobuf.UninterpretedOption.encode(e.uninterpretedOption[o],t.uint32(7994).fork(),n+1).ldelim();return null!=e[".google.api.defaultHost"]&&Object.hasOwnProperty.call(e,".google.api.defaultHost")&&t.uint32(8394).string(e[".google.api.defaultHost"]),null!=e[".google.api.oauthScopes"]&&Object.hasOwnProperty.call(e,".google.api.oauthScopes")&&t.uint32(8402).string(e[".google.api.oauthScopes"]),null!=e[".google.api.apiVersion"]&&Object.hasOwnProperty.call(e,".google.api.apiVersion")&&t.uint32(4200000010).string(e[".google.api.apiVersion"]),t},ri.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ri.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.ServiceOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 34:i.features=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 33:i.deprecated=e.bool();break;case 999:i.uninterpretedOption&&i.uninterpretedOption.length||(i.uninterpretedOption=[]),i.uninterpretedOption.push(g.google.protobuf.UninterpretedOption.decode(e,e.uint32(),void 0,o+1));break;case 1049:i[".google.api.defaultHost"]=e.string();break;case 1050:i[".google.api.oauthScopes"]=e.string();break;case 525000001:i[".google.api.apiVersion"]=e.string();break;default:e.skipType(7&a,o)}}return i},ri.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ri.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(n=g.google.protobuf.FeatureSet.verify(e.features,t+1)))return"features."+n;if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&"boolean"!=typeof e.deprecated)return"deprecated: boolean expected";if(null!=e.uninterpretedOption&&Object.hasOwnProperty.call(e,"uninterpretedOption")){if(!Array.isArray(e.uninterpretedOption))return"uninterpretedOption: array expected";for(var n,o=0;o<e.uninterpretedOption.length;++o)if(n=g.google.protobuf.UninterpretedOption.verify(e.uninterpretedOption[o],t+1))return"uninterpretedOption."+n}return null!=e[".google.api.defaultHost"]&&Object.hasOwnProperty.call(e,".google.api.defaultHost")&&!d.isString(e[".google.api.defaultHost"])?".google.api.defaultHost: string expected":null!=e[".google.api.oauthScopes"]&&Object.hasOwnProperty.call(e,".google.api.oauthScopes")&&!d.isString(e[".google.api.oauthScopes"])?".google.api.oauthScopes: string expected":null!=e[".google.api.apiVersion"]&&Object.hasOwnProperty.call(e,".google.api.apiVersion")&&!d.isString(e[".google.api.apiVersion"])?".google.api.apiVersion: string expected":null},ri.fromObject=function(e,t){if(e instanceof g.google.protobuf.ServiceOptions)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.ServiceOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.ServiceOptions;if(null!=e.features){if(!d.isObject(e.features))throw TypeError(".google.protobuf.ServiceOptions.features: object expected");n.features=g.google.protobuf.FeatureSet.fromObject(e.features,t+1)}if(null!=e.deprecated&&(n.deprecated=Boolean(e.deprecated)),e.uninterpretedOption){if(!Array.isArray(e.uninterpretedOption))throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: array expected");n.uninterpretedOption=[];for(var o=0;o<e.uninterpretedOption.length;++o){if(!d.isObject(e.uninterpretedOption[o]))throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected");n.uninterpretedOption[o]=g.google.protobuf.UninterpretedOption.fromObject(e.uninterpretedOption[o],t+1)}}return null!=e[".google.api.defaultHost"]&&(n[".google.api.defaultHost"]=String(e[".google.api.defaultHost"])),null!=e[".google.api.oauthScopes"]&&(n[".google.api.oauthScopes"]=String(e[".google.api.oauthScopes"])),null!=e[".google.api.apiVersion"]&&(n[".google.api.apiVersion"]=String(e[".google.api.apiVersion"])),n},ri.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.uninterpretedOption=[]),t.defaults&&(o.deprecated=!1,o.features=null,o[".google.api.defaultHost"]="",o[".google.api.oauthScopes"]="",o[".google.api.apiVersion"]=""),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&(o.deprecated=e.deprecated),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o.features=g.google.protobuf.FeatureSet.toObject(e.features,t,n+1)),e.uninterpretedOption&&e.uninterpretedOption.length){o.uninterpretedOption=[];for(var r=0;r<e.uninterpretedOption.length;++r)o.uninterpretedOption[r]=g.google.protobuf.UninterpretedOption.toObject(e.uninterpretedOption[r],t,n+1)}return null!=e[".google.api.defaultHost"]&&Object.hasOwnProperty.call(e,".google.api.defaultHost")&&(o[".google.api.defaultHost"]=e[".google.api.defaultHost"]),null!=e[".google.api.oauthScopes"]&&Object.hasOwnProperty.call(e,".google.api.oauthScopes")&&(o[".google.api.oauthScopes"]=e[".google.api.oauthScopes"]),null!=e[".google.api.apiVersion"]&&Object.hasOwnProperty.call(e,".google.api.apiVersion")&&(o[".google.api.apiVersion"]=e[".google.api.apiVersion"]),o},ri.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ri.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.ServiceOptions"},ri),t.MethodOptions=(ii.prototype.deprecated=!1,ii.prototype.idempotencyLevel=0,ii.prototype.features=null,ii.prototype.uninterpretedOption=d.emptyArray,ii.prototype[".google.api.http"]=null,ii.prototype[".google.api.methodSignature"]=d.emptyArray,ii.prototype[".google.longrunning.operationInfo"]=null,ii.create=function(e){return new ii(e)},ii.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&t.uint32(264).bool(e.deprecated),null!=e.idempotencyLevel&&Object.hasOwnProperty.call(e,"idempotencyLevel")&&t.uint32(272).int32(e.idempotencyLevel),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&g.google.protobuf.FeatureSet.encode(e.features,t.uint32(282).fork(),n+1).ldelim(),null!=e.uninterpretedOption&&e.uninterpretedOption.length)for(var o=0;o<e.uninterpretedOption.length;++o)g.google.protobuf.UninterpretedOption.encode(e.uninterpretedOption[o],t.uint32(7994).fork(),n+1).ldelim();if(null!=e[".google.longrunning.operationInfo"]&&Object.hasOwnProperty.call(e,".google.longrunning.operationInfo")&&g.google.longrunning.OperationInfo.encode(e[".google.longrunning.operationInfo"],t.uint32(8394).fork(),n+1).ldelim(),null!=e[".google.api.methodSignature"]&&e[".google.api.methodSignature"].length)for(o=0;o<e[".google.api.methodSignature"].length;++o)t.uint32(8410).string(e[".google.api.methodSignature"][o]);return null!=e[".google.api.http"]&&Object.hasOwnProperty.call(e,".google.api.http")&&g.google.api.HttpRule.encode(e[".google.api.http"],t.uint32(578365826).fork(),n+1).ldelim(),t},ii.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ii.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.MethodOptions;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 33:i.deprecated=e.bool();break;case 34:i.idempotencyLevel=e.int32();break;case 35:i.features=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 999:i.uninterpretedOption&&i.uninterpretedOption.length||(i.uninterpretedOption=[]),i.uninterpretedOption.push(g.google.protobuf.UninterpretedOption.decode(e,e.uint32(),void 0,o+1));break;case 72295728:i[".google.api.http"]=g.google.api.HttpRule.decode(e,e.uint32(),void 0,o+1);break;case 1051:i[".google.api.methodSignature"]&&i[".google.api.methodSignature"].length||(i[".google.api.methodSignature"]=[]),i[".google.api.methodSignature"].push(e.string());break;case 1049:i[".google.longrunning.operationInfo"]=g.google.longrunning.OperationInfo.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ii.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ii.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&"boolean"!=typeof e.deprecated)return"deprecated: boolean expected";if(null!=e.idempotencyLevel&&Object.hasOwnProperty.call(e,"idempotencyLevel"))switch(e.idempotencyLevel){default:return"idempotencyLevel: enum value expected";case 0:case 1:case 2:}if(null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(n=g.google.protobuf.FeatureSet.verify(e.features,t+1)))return"features."+n;if(null!=e.uninterpretedOption&&Object.hasOwnProperty.call(e,"uninterpretedOption")){if(!Array.isArray(e.uninterpretedOption))return"uninterpretedOption: array expected";for(var n,o=0;o<e.uninterpretedOption.length;++o)if(n=g.google.protobuf.UninterpretedOption.verify(e.uninterpretedOption[o],t+1))return"uninterpretedOption."+n}if(null!=e[".google.api.http"]&&Object.hasOwnProperty.call(e,".google.api.http")&&(n=g.google.api.HttpRule.verify(e[".google.api.http"],t+1)))return".google.api.http."+n;if(null!=e[".google.api.methodSignature"]&&Object.hasOwnProperty.call(e,".google.api.methodSignature")){if(!Array.isArray(e[".google.api.methodSignature"]))return".google.api.methodSignature: array expected";for(o=0;o<e[".google.api.methodSignature"].length;++o)if(!d.isString(e[".google.api.methodSignature"][o]))return".google.api.methodSignature: string[] expected"}if(null!=e[".google.longrunning.operationInfo"]&&Object.hasOwnProperty.call(e,".google.longrunning.operationInfo")&&(n=g.google.longrunning.OperationInfo.verify(e[".google.longrunning.operationInfo"],t+1)))return".google.longrunning.operationInfo."+n;return null},ii.fromObject=function(e,t){if(e instanceof g.google.protobuf.MethodOptions)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.MethodOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.MethodOptions;switch(null!=e.deprecated&&(n.deprecated=Boolean(e.deprecated)),e.idempotencyLevel){default:"number"==typeof e.idempotencyLevel&&(n.idempotencyLevel=e.idempotencyLevel);break;case"IDEMPOTENCY_UNKNOWN":case 0:n.idempotencyLevel=0;break;case"NO_SIDE_EFFECTS":case 1:n.idempotencyLevel=1;break;case"IDEMPOTENT":case 2:n.idempotencyLevel=2}if(null!=e.features){if(!d.isObject(e.features))throw TypeError(".google.protobuf.MethodOptions.features: object expected");n.features=g.google.protobuf.FeatureSet.fromObject(e.features,t+1)}if(e.uninterpretedOption){if(!Array.isArray(e.uninterpretedOption))throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected");n.uninterpretedOption=[];for(var o=0;o<e.uninterpretedOption.length;++o){if(!d.isObject(e.uninterpretedOption[o]))throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected");n.uninterpretedOption[o]=g.google.protobuf.UninterpretedOption.fromObject(e.uninterpretedOption[o],t+1)}}if(null!=e[".google.api.http"]){if(!d.isObject(e[".google.api.http"]))throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected");n[".google.api.http"]=g.google.api.HttpRule.fromObject(e[".google.api.http"],t+1)}if(e[".google.api.methodSignature"]){if(!Array.isArray(e[".google.api.methodSignature"]))throw TypeError(".google.protobuf.MethodOptions..google.api.methodSignature: array expected");n[".google.api.methodSignature"]=[];for(o=0;o<e[".google.api.methodSignature"].length;++o)n[".google.api.methodSignature"][o]=String(e[".google.api.methodSignature"][o])}if(null!=e[".google.longrunning.operationInfo"]){if(!d.isObject(e[".google.longrunning.operationInfo"]))throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected");n[".google.longrunning.operationInfo"]=g.google.longrunning.OperationInfo.fromObject(e[".google.longrunning.operationInfo"],t+1)}return n},ii.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.uninterpretedOption=[],o[".google.api.methodSignature"]=[]),t.defaults&&(o.deprecated=!1,o.idempotencyLevel=t.enums===String?"IDEMPOTENCY_UNKNOWN":0,o.features=null,o[".google.longrunning.operationInfo"]=null,o[".google.api.http"]=null),null!=e.deprecated&&Object.hasOwnProperty.call(e,"deprecated")&&(o.deprecated=e.deprecated),null!=e.idempotencyLevel&&Object.hasOwnProperty.call(e,"idempotencyLevel")&&(o.idempotencyLevel=t.enums!==String||void 0===g.google.protobuf.MethodOptions.IdempotencyLevel[e.idempotencyLevel]?e.idempotencyLevel:g.google.protobuf.MethodOptions.IdempotencyLevel[e.idempotencyLevel]),null!=e.features&&Object.hasOwnProperty.call(e,"features")&&(o.features=g.google.protobuf.FeatureSet.toObject(e.features,t,n+1)),e.uninterpretedOption&&e.uninterpretedOption.length){o.uninterpretedOption=[];for(var r=0;r<e.uninterpretedOption.length;++r)o.uninterpretedOption[r]=g.google.protobuf.UninterpretedOption.toObject(e.uninterpretedOption[r],t,n+1)}if(null!=e[".google.longrunning.operationInfo"]&&Object.hasOwnProperty.call(e,".google.longrunning.operationInfo")&&(o[".google.longrunning.operationInfo"]=g.google.longrunning.OperationInfo.toObject(e[".google.longrunning.operationInfo"],t,n+1)),e[".google.api.methodSignature"]&&e[".google.api.methodSignature"].length){o[".google.api.methodSignature"]=[];for(r=0;r<e[".google.api.methodSignature"].length;++r)o[".google.api.methodSignature"][r]=e[".google.api.methodSignature"][r]}return null!=e[".google.api.http"]&&Object.hasOwnProperty.call(e,".google.api.http")&&(o[".google.api.http"]=g.google.api.HttpRule.toObject(e[".google.api.http"],t,n+1)),o},ii.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ii.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.MethodOptions"},ii.IdempotencyLevel=(r={},(i=Object.create(r))[r[0]="IDEMPOTENCY_UNKNOWN"]=0,i[r[1]="NO_SIDE_EFFECTS"]=1,i[r[2]="IDEMPOTENT"]=2,i),ii),t.UninterpretedOption=(ai.prototype.name=d.emptyArray,ai.prototype.identifierValue="",ai.prototype.positiveIntValue=d.Long?d.Long.fromBits(0,0,!0):0,ai.prototype.negativeIntValue=d.Long?d.Long.fromBits(0,0,!1):0,ai.prototype.doubleValue=0,ai.prototype.stringValue=d.newBuffer([]),ai.prototype.aggregateValue="",ai.create=function(e){return new ai(e)},ai.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.name&&e.name.length)for(var o=0;o<e.name.length;++o)g.google.protobuf.UninterpretedOption.NamePart.encode(e.name[o],t.uint32(18).fork(),n+1).ldelim();return null!=e.identifierValue&&Object.hasOwnProperty.call(e,"identifierValue")&&t.uint32(26).string(e.identifierValue),null!=e.positiveIntValue&&Object.hasOwnProperty.call(e,"positiveIntValue")&&t.uint32(32).uint64(e.positiveIntValue),null!=e.negativeIntValue&&Object.hasOwnProperty.call(e,"negativeIntValue")&&t.uint32(40).int64(e.negativeIntValue),null!=e.doubleValue&&Object.hasOwnProperty.call(e,"doubleValue")&&t.uint32(49).double(e.doubleValue),null!=e.stringValue&&Object.hasOwnProperty.call(e,"stringValue")&&t.uint32(58).bytes(e.stringValue),null!=e.aggregateValue&&Object.hasOwnProperty.call(e,"aggregateValue")&&t.uint32(66).string(e.aggregateValue),t},ai.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ai.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.UninterpretedOption;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 2:i.name&&i.name.length||(i.name=[]),i.name.push(g.google.protobuf.UninterpretedOption.NamePart.decode(e,e.uint32(),void 0,o+1));break;case 3:i.identifierValue=e.string();break;case 4:i.positiveIntValue=e.uint64();break;case 5:i.negativeIntValue=e.int64();break;case 6:i.doubleValue=e.double();break;case 7:i.stringValue=e.bytes();break;case 8:i.aggregateValue=e.string();break;default:e.skipType(7&a,o)}}return i},ai.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ai.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")){if(!Array.isArray(e.name))return"name: array expected";for(var n=0;n<e.name.length;++n){var o=g.google.protobuf.UninterpretedOption.NamePart.verify(e.name[n],t+1);if(o)return"name."+o}}return null!=e.identifierValue&&Object.hasOwnProperty.call(e,"identifierValue")&&!d.isString(e.identifierValue)?"identifierValue: string expected":null!=e.positiveIntValue&&Object.hasOwnProperty.call(e,"positiveIntValue")&&!(d.isInteger(e.positiveIntValue)||e.positiveIntValue&&d.isInteger(e.positiveIntValue.low)&&d.isInteger(e.positiveIntValue.high))?"positiveIntValue: integer|Long expected":null!=e.negativeIntValue&&Object.hasOwnProperty.call(e,"negativeIntValue")&&!(d.isInteger(e.negativeIntValue)||e.negativeIntValue&&d.isInteger(e.negativeIntValue.low)&&d.isInteger(e.negativeIntValue.high))?"negativeIntValue: integer|Long expected":null!=e.doubleValue&&Object.hasOwnProperty.call(e,"doubleValue")&&"number"!=typeof e.doubleValue?"doubleValue: number expected":null!=e.stringValue&&Object.hasOwnProperty.call(e,"stringValue")&&!(e.stringValue&&"number"==typeof e.stringValue.length||d.isString(e.stringValue))?"stringValue: buffer expected":null!=e.aggregateValue&&Object.hasOwnProperty.call(e,"aggregateValue")&&!d.isString(e.aggregateValue)?"aggregateValue: string expected":null},ai.fromObject=function(e,t){if(e instanceof g.google.protobuf.UninterpretedOption)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.UninterpretedOption: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.UninterpretedOption;if(e.name){if(!Array.isArray(e.name))throw TypeError(".google.protobuf.UninterpretedOption.name: array expected");n.name=[];for(var o=0;o<e.name.length;++o){if(!d.isObject(e.name[o]))throw TypeError(".google.protobuf.UninterpretedOption.name: object expected");n.name[o]=g.google.protobuf.UninterpretedOption.NamePart.fromObject(e.name[o],t+1)}}return null!=e.identifierValue&&(n.identifierValue=String(e.identifierValue)),null!=e.positiveIntValue&&(d.Long?n.positiveIntValue=d.Long.fromValue(e.positiveIntValue,!0):"string"==typeof e.positiveIntValue?n.positiveIntValue=parseInt(e.positiveIntValue,10):"number"==typeof e.positiveIntValue?n.positiveIntValue=e.positiveIntValue:"object"==typeof e.positiveIntValue&&(n.positiveIntValue=new d.LongBits(e.positiveIntValue.low>>>0,e.positiveIntValue.high>>>0).toNumber(!0))),null!=e.negativeIntValue&&(d.Long?n.negativeIntValue=d.Long.fromValue(e.negativeIntValue,!1):"string"==typeof e.negativeIntValue?n.negativeIntValue=parseInt(e.negativeIntValue,10):"number"==typeof e.negativeIntValue?n.negativeIntValue=e.negativeIntValue:"object"==typeof e.negativeIntValue&&(n.negativeIntValue=new d.LongBits(e.negativeIntValue.low>>>0,e.negativeIntValue.high>>>0).toNumber())),null!=e.doubleValue&&(n.doubleValue=Number(e.doubleValue)),null!=e.stringValue&&("string"==typeof e.stringValue?d.base64.decode(e.stringValue,n.stringValue=d.newBuffer(d.base64.length(e.stringValue)),0):0<=e.stringValue.length&&(n.stringValue=e.stringValue)),null!=e.aggregateValue&&(n.aggregateValue=String(e.aggregateValue)),n},ai.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.arrays||t.defaults)&&(r.name=[]),t.defaults&&(r.identifierValue="",d.Long?(o=new d.Long(0,0,!0),r.positiveIntValue=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.positiveIntValue=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,d.Long?(o=new d.Long(0,0,!1),r.negativeIntValue=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):r.negativeIntValue=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,r.doubleValue=0,t.bytes===String?r.stringValue="":(r.stringValue=[],t.bytes!==Array&&(r.stringValue=d.newBuffer(r.stringValue))),r.aggregateValue=""),e.name&&e.name.length){r.name=[];for(var i=0;i<e.name.length;++i)r.name[i]=g.google.protobuf.UninterpretedOption.NamePart.toObject(e.name[i],t,n+1)}return null!=e.identifierValue&&Object.hasOwnProperty.call(e,"identifierValue")&&(r.identifierValue=e.identifierValue),null!=e.positiveIntValue&&Object.hasOwnProperty.call(e,"positiveIntValue")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.positiveIntValue="number"==typeof e.positiveIntValue?BigInt(e.positiveIntValue):d.Long.fromBits(e.positiveIntValue.low>>>0,e.positiveIntValue.high>>>0,!0).toBigInt():"number"==typeof e.positiveIntValue?r.positiveIntValue=t.longs===String?String(e.positiveIntValue):e.positiveIntValue:r.positiveIntValue=t.longs===String?d.Long.prototype.toString.call(e.positiveIntValue):t.longs===Number?new d.LongBits(e.positiveIntValue.low>>>0,e.positiveIntValue.high>>>0).toNumber(!0):e.positiveIntValue),null!=e.negativeIntValue&&Object.hasOwnProperty.call(e,"negativeIntValue")&&("undefined"!=typeof BigInt&&t.longs===BigInt?r.negativeIntValue="number"==typeof e.negativeIntValue?BigInt(e.negativeIntValue):d.Long.fromBits(e.negativeIntValue.low>>>0,e.negativeIntValue.high>>>0,!1).toBigInt():"number"==typeof e.negativeIntValue?r.negativeIntValue=t.longs===String?String(e.negativeIntValue):e.negativeIntValue:r.negativeIntValue=t.longs===String?d.Long.prototype.toString.call(e.negativeIntValue):t.longs===Number?new d.LongBits(e.negativeIntValue.low>>>0,e.negativeIntValue.high>>>0).toNumber():e.negativeIntValue),null!=e.doubleValue&&Object.hasOwnProperty.call(e,"doubleValue")&&(r.doubleValue=t.json&&!isFinite(e.doubleValue)?String(e.doubleValue):e.doubleValue),null!=e.stringValue&&Object.hasOwnProperty.call(e,"stringValue")&&(r.stringValue=t.bytes===String?d.base64.encode(e.stringValue,0,e.stringValue.length):t.bytes===Array?Array.prototype.slice.call(e.stringValue):e.stringValue),null!=e.aggregateValue&&Object.hasOwnProperty.call(e,"aggregateValue")&&(r.aggregateValue=e.aggregateValue),r},ai.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ai.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.UninterpretedOption"},ai.NamePart=(si.prototype.namePart="",si.prototype.isExtension=!1,si.create=function(e){return new si(e)},si.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return t.uint32(10).string(e.namePart),t.uint32(16).bool(e.isExtension),t},si.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},si.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.UninterpretedOption.NamePart;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.namePart=e.string();break;case 2:i.isExtension=e.bool();break;default:e.skipType(7&a,o)}}if(!Object.hasOwnProperty.call(i,"namePart"))throw d.ProtocolError("missing required 'namePart'",{instance:i});if(Object.hasOwnProperty.call(i,"isExtension"))return i;throw d.ProtocolError("missing required 'isExtension'",{instance:i})},si.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},si.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":d.isString(e.namePart)?"boolean"!=typeof e.isExtension?"isExtension: boolean expected":null:"namePart: string expected"},si.fromObject=function(e,t){if(e instanceof g.google.protobuf.UninterpretedOption.NamePart)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.UninterpretedOption.NamePart: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.protobuf.UninterpretedOption.NamePart;return null!=e.namePart&&(t.namePart=String(e.namePart)),null!=e.isExtension&&(t.isExtension=Boolean(e.isExtension)),t},si.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.namePart="",n.isExtension=!1),null!=e.namePart&&Object.hasOwnProperty.call(e,"namePart")&&(n.namePart=e.namePart),null!=e.isExtension&&Object.hasOwnProperty.call(e,"isExtension")&&(n.isExtension=e.isExtension),n},si.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},si.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.UninterpretedOption.NamePart"},si),ai),t.FeatureSet=(N.prototype.fieldPresence=0,N.prototype.enumType=0,N.prototype.repeatedFieldEncoding=0,N.prototype.utf8Validation=0,N.prototype.messageEncoding=0,N.prototype.jsonFormat=0,N.prototype.enforceNamingStyle=0,N.prototype.defaultSymbolVisibility=0,N.create=function(e){return new N(e)},N.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.fieldPresence&&Object.hasOwnProperty.call(e,"fieldPresence")&&t.uint32(8).int32(e.fieldPresence),null!=e.enumType&&Object.hasOwnProperty.call(e,"enumType")&&t.uint32(16).int32(e.enumType),null!=e.repeatedFieldEncoding&&Object.hasOwnProperty.call(e,"repeatedFieldEncoding")&&t.uint32(24).int32(e.repeatedFieldEncoding),null!=e.utf8Validation&&Object.hasOwnProperty.call(e,"utf8Validation")&&t.uint32(32).int32(e.utf8Validation),null!=e.messageEncoding&&Object.hasOwnProperty.call(e,"messageEncoding")&&t.uint32(40).int32(e.messageEncoding),null!=e.jsonFormat&&Object.hasOwnProperty.call(e,"jsonFormat")&&t.uint32(48).int32(e.jsonFormat),null!=e.enforceNamingStyle&&Object.hasOwnProperty.call(e,"enforceNamingStyle")&&t.uint32(56).int32(e.enforceNamingStyle),null!=e.defaultSymbolVisibility&&Object.hasOwnProperty.call(e,"defaultSymbolVisibility")&&t.uint32(64).int32(e.defaultSymbolVisibility),t},N.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},N.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FeatureSet;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.fieldPresence=e.int32();break;case 2:i.enumType=e.int32();break;case 3:i.repeatedFieldEncoding=e.int32();break;case 4:i.utf8Validation=e.int32();break;case 5:i.messageEncoding=e.int32();break;case 6:i.jsonFormat=e.int32();break;case 7:i.enforceNamingStyle=e.int32();break;case 8:i.defaultSymbolVisibility=e.int32();break;default:e.skipType(7&a,o)}}return i},N.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},N.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.fieldPresence&&Object.hasOwnProperty.call(e,"fieldPresence"))switch(e.fieldPresence){default:return"fieldPresence: enum value expected";case 0:case 1:case 2:case 3:}if(null!=e.enumType&&Object.hasOwnProperty.call(e,"enumType"))switch(e.enumType){default:return"enumType: enum value expected";case 0:case 1:case 2:}if(null!=e.repeatedFieldEncoding&&Object.hasOwnProperty.call(e,"repeatedFieldEncoding"))switch(e.repeatedFieldEncoding){default:return"repeatedFieldEncoding: enum value expected";case 0:case 1:case 2:}if(null!=e.utf8Validation&&Object.hasOwnProperty.call(e,"utf8Validation"))switch(e.utf8Validation){default:return"utf8Validation: enum value expected";case 0:case 2:case 3:}if(null!=e.messageEncoding&&Object.hasOwnProperty.call(e,"messageEncoding"))switch(e.messageEncoding){default:return"messageEncoding: enum value expected";case 0:case 1:case 2:}if(null!=e.jsonFormat&&Object.hasOwnProperty.call(e,"jsonFormat"))switch(e.jsonFormat){default:return"jsonFormat: enum value expected";case 0:case 1:case 2:}if(null!=e.enforceNamingStyle&&Object.hasOwnProperty.call(e,"enforceNamingStyle"))switch(e.enforceNamingStyle){default:return"enforceNamingStyle: enum value expected";case 0:case 1:case 2:}if(null!=e.defaultSymbolVisibility&&Object.hasOwnProperty.call(e,"defaultSymbolVisibility"))switch(e.defaultSymbolVisibility){default:return"defaultSymbolVisibility: enum value expected";case 0:case 1:case 2:case 3:case 4:}return null},N.fromObject=function(e,t){if(e instanceof g.google.protobuf.FeatureSet)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FeatureSet: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FeatureSet;switch(e.fieldPresence){default:"number"==typeof e.fieldPresence&&(n.fieldPresence=e.fieldPresence);break;case"FIELD_PRESENCE_UNKNOWN":case 0:n.fieldPresence=0;break;case"EXPLICIT":case 1:n.fieldPresence=1;break;case"IMPLICIT":case 2:n.fieldPresence=2;break;case"LEGACY_REQUIRED":case 3:n.fieldPresence=3}switch(e.enumType){default:"number"==typeof e.enumType&&(n.enumType=e.enumType);break;case"ENUM_TYPE_UNKNOWN":case 0:n.enumType=0;break;case"OPEN":case 1:n.enumType=1;break;case"CLOSED":case 2:n.enumType=2}switch(e.repeatedFieldEncoding){default:"number"==typeof e.repeatedFieldEncoding&&(n.repeatedFieldEncoding=e.repeatedFieldEncoding);break;case"REPEATED_FIELD_ENCODING_UNKNOWN":case 0:n.repeatedFieldEncoding=0;break;case"PACKED":case 1:n.repeatedFieldEncoding=1;break;case"EXPANDED":case 2:n.repeatedFieldEncoding=2}switch(e.utf8Validation){default:"number"==typeof e.utf8Validation&&(n.utf8Validation=e.utf8Validation);break;case"UTF8_VALIDATION_UNKNOWN":case 0:n.utf8Validation=0;break;case"VERIFY":case 2:n.utf8Validation=2;break;case"NONE":case 3:n.utf8Validation=3}switch(e.messageEncoding){default:"number"==typeof e.messageEncoding&&(n.messageEncoding=e.messageEncoding);break;case"MESSAGE_ENCODING_UNKNOWN":case 0:n.messageEncoding=0;break;case"LENGTH_PREFIXED":case 1:n.messageEncoding=1;break;case"DELIMITED":case 2:n.messageEncoding=2}switch(e.jsonFormat){default:"number"==typeof e.jsonFormat&&(n.jsonFormat=e.jsonFormat);break;case"JSON_FORMAT_UNKNOWN":case 0:n.jsonFormat=0;break;case"ALLOW":case 1:n.jsonFormat=1;break;case"LEGACY_BEST_EFFORT":case 2:n.jsonFormat=2}switch(e.enforceNamingStyle){default:"number"==typeof e.enforceNamingStyle&&(n.enforceNamingStyle=e.enforceNamingStyle);break;case"ENFORCE_NAMING_STYLE_UNKNOWN":case 0:n.enforceNamingStyle=0;break;case"STYLE2024":case 1:n.enforceNamingStyle=1;break;case"STYLE_LEGACY":case 2:n.enforceNamingStyle=2}switch(e.defaultSymbolVisibility){default:"number"==typeof e.defaultSymbolVisibility&&(n.defaultSymbolVisibility=e.defaultSymbolVisibility);break;case"DEFAULT_SYMBOL_VISIBILITY_UNKNOWN":case 0:n.defaultSymbolVisibility=0;break;case"EXPORT_ALL":case 1:n.defaultSymbolVisibility=1;break;case"EXPORT_TOP_LEVEL":case 2:n.defaultSymbolVisibility=2;break;case"LOCAL_ALL":case 3:n.defaultSymbolVisibility=3;break;case"STRICT":case 4:n.defaultSymbolVisibility=4}return n},N.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.fieldPresence=t.enums===String?"FIELD_PRESENCE_UNKNOWN":0,n.enumType=t.enums===String?"ENUM_TYPE_UNKNOWN":0,n.repeatedFieldEncoding=t.enums===String?"REPEATED_FIELD_ENCODING_UNKNOWN":0,n.utf8Validation=t.enums===String?"UTF8_VALIDATION_UNKNOWN":0,n.messageEncoding=t.enums===String?"MESSAGE_ENCODING_UNKNOWN":0,n.jsonFormat=t.enums===String?"JSON_FORMAT_UNKNOWN":0,n.enforceNamingStyle=t.enums===String?"ENFORCE_NAMING_STYLE_UNKNOWN":0,n.defaultSymbolVisibility=t.enums===String?"DEFAULT_SYMBOL_VISIBILITY_UNKNOWN":0),null!=e.fieldPresence&&Object.hasOwnProperty.call(e,"fieldPresence")&&(n.fieldPresence=t.enums!==String||void 0===g.google.protobuf.FeatureSet.FieldPresence[e.fieldPresence]?e.fieldPresence:g.google.protobuf.FeatureSet.FieldPresence[e.fieldPresence]),null!=e.enumType&&Object.hasOwnProperty.call(e,"enumType")&&(n.enumType=t.enums!==String||void 0===g.google.protobuf.FeatureSet.EnumType[e.enumType]?e.enumType:g.google.protobuf.FeatureSet.EnumType[e.enumType]),null!=e.repeatedFieldEncoding&&Object.hasOwnProperty.call(e,"repeatedFieldEncoding")&&(n.repeatedFieldEncoding=t.enums!==String||void 0===g.google.protobuf.FeatureSet.RepeatedFieldEncoding[e.repeatedFieldEncoding]?e.repeatedFieldEncoding:g.google.protobuf.FeatureSet.RepeatedFieldEncoding[e.repeatedFieldEncoding]),null!=e.utf8Validation&&Object.hasOwnProperty.call(e,"utf8Validation")&&(n.utf8Validation=t.enums!==String||void 0===g.google.protobuf.FeatureSet.Utf8Validation[e.utf8Validation]?e.utf8Validation:g.google.protobuf.FeatureSet.Utf8Validation[e.utf8Validation]),null!=e.messageEncoding&&Object.hasOwnProperty.call(e,"messageEncoding")&&(n.messageEncoding=t.enums!==String||void 0===g.google.protobuf.FeatureSet.MessageEncoding[e.messageEncoding]?e.messageEncoding:g.google.protobuf.FeatureSet.MessageEncoding[e.messageEncoding]),null!=e.jsonFormat&&Object.hasOwnProperty.call(e,"jsonFormat")&&(n.jsonFormat=t.enums!==String||void 0===g.google.protobuf.FeatureSet.JsonFormat[e.jsonFormat]?e.jsonFormat:g.google.protobuf.FeatureSet.JsonFormat[e.jsonFormat]),null!=e.enforceNamingStyle&&Object.hasOwnProperty.call(e,"enforceNamingStyle")&&(n.enforceNamingStyle=t.enums!==String||void 0===g.google.protobuf.FeatureSet.EnforceNamingStyle[e.enforceNamingStyle]?e.enforceNamingStyle:g.google.protobuf.FeatureSet.EnforceNamingStyle[e.enforceNamingStyle]),null!=e.defaultSymbolVisibility&&Object.hasOwnProperty.call(e,"defaultSymbolVisibility")&&(n.defaultSymbolVisibility=t.enums!==String||void 0===g.google.protobuf.FeatureSet.VisibilityFeature.DefaultSymbolVisibility[e.defaultSymbolVisibility]?e.defaultSymbolVisibility:g.google.protobuf.FeatureSet.VisibilityFeature.DefaultSymbolVisibility[e.defaultSymbolVisibility]),n},N.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},N.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FeatureSet"},N.FieldPresence=(r={},(i=Object.create(r))[r[0]="FIELD_PRESENCE_UNKNOWN"]=0,i[r[1]="EXPLICIT"]=1,i[r[2]="IMPLICIT"]=2,i[r[3]="LEGACY_REQUIRED"]=3,i),N.EnumType=(r={},(i=Object.create(r))[r[0]="ENUM_TYPE_UNKNOWN"]=0,i[r[1]="OPEN"]=1,i[r[2]="CLOSED"]=2,i),N.RepeatedFieldEncoding=(r={},(i=Object.create(r))[r[0]="REPEATED_FIELD_ENCODING_UNKNOWN"]=0,i[r[1]="PACKED"]=1,i[r[2]="EXPANDED"]=2,i),N.Utf8Validation=(r={},(i=Object.create(r))[r[0]="UTF8_VALIDATION_UNKNOWN"]=0,i[r[2]="VERIFY"]=2,i[r[3]="NONE"]=3,i),N.MessageEncoding=(r={},(i=Object.create(r))[r[0]="MESSAGE_ENCODING_UNKNOWN"]=0,i[r[1]="LENGTH_PREFIXED"]=1,i[r[2]="DELIMITED"]=2,i),N.JsonFormat=(r={},(i=Object.create(r))[r[0]="JSON_FORMAT_UNKNOWN"]=0,i[r[1]="ALLOW"]=1,i[r[2]="LEGACY_BEST_EFFORT"]=2,i),N.EnforceNamingStyle=(r={},(i=Object.create(r))[r[0]="ENFORCE_NAMING_STYLE_UNKNOWN"]=0,i[r[1]="STYLE2024"]=1,i[r[2]="STYLE_LEGACY"]=2,i),N.VisibilityFeature=(ci.create=function(e){return new ci(e)},ci.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return t},ci.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ci.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,t=new g.google.protobuf.FeatureSet.VisibilityFeature;e.pos<r;){var i=e.uint32();if(i===n)break;e.skipType(7&i,o)}return t},ci.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ci.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null},ci.fromObject=function(e,t){return e instanceof g.google.protobuf.FeatureSet.VisibilityFeature?e:new g.google.protobuf.FeatureSet.VisibilityFeature},ci.toObject=function(){return{}},ci.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ci.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FeatureSet.VisibilityFeature"},ci.DefaultSymbolVisibility=(r={},(i=Object.create(r))[r[0]="DEFAULT_SYMBOL_VISIBILITY_UNKNOWN"]=0,i[r[1]="EXPORT_ALL"]=1,i[r[2]="EXPORT_TOP_LEVEL"]=2,i[r[3]="LOCAL_ALL"]=3,i[r[4]="STRICT"]=4,i),ci),N),t.FeatureSetDefaults=(li.prototype.defaults=d.emptyArray,li.prototype.minimumEdition=0,li.prototype.maximumEdition=0,li.create=function(e){return new li(e)},li.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.defaults&&e.defaults.length)for(var o=0;o<e.defaults.length;++o)g.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.encode(e.defaults[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.minimumEdition&&Object.hasOwnProperty.call(e,"minimumEdition")&&t.uint32(32).int32(e.minimumEdition),null!=e.maximumEdition&&Object.hasOwnProperty.call(e,"maximumEdition")&&t.uint32(40).int32(e.maximumEdition),t},li.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},li.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FeatureSetDefaults;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.defaults&&i.defaults.length||(i.defaults=[]),i.defaults.push(g.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(e,e.uint32(),void 0,o+1));break;case 4:i.minimumEdition=e.int32();break;case 5:i.maximumEdition=e.int32();break;default:e.skipType(7&a,o)}}return i},li.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},li.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.defaults&&Object.hasOwnProperty.call(e,"defaults")){if(!Array.isArray(e.defaults))return"defaults: array expected";for(var n=0;n<e.defaults.length;++n){var o=g.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(e.defaults[n],t+1);if(o)return"defaults."+o}}if(null!=e.minimumEdition&&Object.hasOwnProperty.call(e,"minimumEdition"))switch(e.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:}if(null!=e.maximumEdition&&Object.hasOwnProperty.call(e,"maximumEdition"))switch(e.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:}return null},li.fromObject=function(e,t){if(e instanceof g.google.protobuf.FeatureSetDefaults)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FeatureSetDefaults: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FeatureSetDefaults;if(e.defaults){if(!Array.isArray(e.defaults))throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: array expected");n.defaults=[];for(var o=0;o<e.defaults.length;++o){if(!d.isObject(e.defaults[o]))throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected");n.defaults[o]=g.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(e.defaults[o],t+1)}}switch(e.minimumEdition){default:"number"==typeof e.minimumEdition&&(n.minimumEdition=e.minimumEdition);break;case"EDITION_UNKNOWN":case 0:n.minimumEdition=0;break;case"EDITION_LEGACY":case 900:n.minimumEdition=900;break;case"EDITION_PROTO2":case 998:n.minimumEdition=998;break;case"EDITION_PROTO3":case 999:n.minimumEdition=999;break;case"EDITION_2023":case 1e3:n.minimumEdition=1e3;break;case"EDITION_2024":case 1001:n.minimumEdition=1001;break;case"EDITION_1_TEST_ONLY":case 1:n.minimumEdition=1;break;case"EDITION_2_TEST_ONLY":case 2:n.minimumEdition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:n.minimumEdition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:n.minimumEdition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:n.minimumEdition=99999;break;case"EDITION_MAX":case 2147483647:n.minimumEdition=2147483647}switch(e.maximumEdition){default:"number"==typeof e.maximumEdition&&(n.maximumEdition=e.maximumEdition);break;case"EDITION_UNKNOWN":case 0:n.maximumEdition=0;break;case"EDITION_LEGACY":case 900:n.maximumEdition=900;break;case"EDITION_PROTO2":case 998:n.maximumEdition=998;break;case"EDITION_PROTO3":case 999:n.maximumEdition=999;break;case"EDITION_2023":case 1e3:n.maximumEdition=1e3;break;case"EDITION_2024":case 1001:n.maximumEdition=1001;break;case"EDITION_1_TEST_ONLY":case 1:n.maximumEdition=1;break;case"EDITION_2_TEST_ONLY":case 2:n.maximumEdition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:n.maximumEdition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:n.maximumEdition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:n.maximumEdition=99999;break;case"EDITION_MAX":case 2147483647:n.maximumEdition=2147483647}return n},li.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.defaults=[]),t.defaults&&(o.minimumEdition=t.enums===String?"EDITION_UNKNOWN":0,o.maximumEdition=t.enums===String?"EDITION_UNKNOWN":0),e.defaults&&e.defaults.length){o.defaults=[];for(var r=0;r<e.defaults.length;++r)o.defaults[r]=g.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.toObject(e.defaults[r],t,n+1)}return null!=e.minimumEdition&&Object.hasOwnProperty.call(e,"minimumEdition")&&(o.minimumEdition=t.enums!==String||void 0===g.google.protobuf.Edition[e.minimumEdition]?e.minimumEdition:g.google.protobuf.Edition[e.minimumEdition]),null!=e.maximumEdition&&Object.hasOwnProperty.call(e,"maximumEdition")&&(o.maximumEdition=t.enums!==String||void 0===g.google.protobuf.Edition[e.maximumEdition]?e.maximumEdition:g.google.protobuf.Edition[e.maximumEdition]),o},li.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},li.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FeatureSetDefaults"},li.FeatureSetEditionDefault=(ui.prototype.edition=0,ui.prototype.overridableFeatures=null,ui.prototype.fixedFeatures=null,ui.create=function(e){return new ui(e)},ui.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&t.uint32(24).int32(e.edition),null!=e.overridableFeatures&&Object.hasOwnProperty.call(e,"overridableFeatures")&&g.google.protobuf.FeatureSet.encode(e.overridableFeatures,t.uint32(34).fork(),n+1).ldelim(),null!=e.fixedFeatures&&Object.hasOwnProperty.call(e,"fixedFeatures")&&g.google.protobuf.FeatureSet.encode(e.fixedFeatures,t.uint32(42).fork(),n+1).ldelim(),t},ui.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ui.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 3:i.edition=e.int32();break;case 4:i.overridableFeatures=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;case 5:i.fixedFeatures=g.google.protobuf.FeatureSet.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ui.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ui.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.edition&&Object.hasOwnProperty.call(e,"edition"))switch(e.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:}var n;if(null!=e.overridableFeatures&&Object.hasOwnProperty.call(e,"overridableFeatures")&&(n=g.google.protobuf.FeatureSet.verify(e.overridableFeatures,t+1)))return"overridableFeatures."+n;if(null!=e.fixedFeatures&&Object.hasOwnProperty.call(e,"fixedFeatures")&&(n=g.google.protobuf.FeatureSet.verify(e.fixedFeatures,t+1)))return"fixedFeatures."+n;return null},ui.fromObject=function(e,t){if(e instanceof g.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault;switch(e.edition){default:"number"==typeof e.edition&&(n.edition=e.edition);break;case"EDITION_UNKNOWN":case 0:n.edition=0;break;case"EDITION_LEGACY":case 900:n.edition=900;break;case"EDITION_PROTO2":case 998:n.edition=998;break;case"EDITION_PROTO3":case 999:n.edition=999;break;case"EDITION_2023":case 1e3:n.edition=1e3;break;case"EDITION_2024":case 1001:n.edition=1001;break;case"EDITION_1_TEST_ONLY":case 1:n.edition=1;break;case"EDITION_2_TEST_ONLY":case 2:n.edition=2;break;case"EDITION_99997_TEST_ONLY":case 99997:n.edition=99997;break;case"EDITION_99998_TEST_ONLY":case 99998:n.edition=99998;break;case"EDITION_99999_TEST_ONLY":case 99999:n.edition=99999;break;case"EDITION_MAX":case 2147483647:n.edition=2147483647}if(null!=e.overridableFeatures){if(!d.isObject(e.overridableFeatures))throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected");n.overridableFeatures=g.google.protobuf.FeatureSet.fromObject(e.overridableFeatures,t+1)}if(null!=e.fixedFeatures){if(!d.isObject(e.fixedFeatures))throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected");n.fixedFeatures=g.google.protobuf.FeatureSet.fromObject(e.fixedFeatures,t+1)}return n},ui.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.edition=t.enums===String?"EDITION_UNKNOWN":0,o.overridableFeatures=null,o.fixedFeatures=null),null!=e.edition&&Object.hasOwnProperty.call(e,"edition")&&(o.edition=t.enums!==String||void 0===g.google.protobuf.Edition[e.edition]?e.edition:g.google.protobuf.Edition[e.edition]),null!=e.overridableFeatures&&Object.hasOwnProperty.call(e,"overridableFeatures")&&(o.overridableFeatures=g.google.protobuf.FeatureSet.toObject(e.overridableFeatures,t,n+1)),null!=e.fixedFeatures&&Object.hasOwnProperty.call(e,"fixedFeatures")&&(o.fixedFeatures=g.google.protobuf.FeatureSet.toObject(e.fixedFeatures,t,n+1)),o},ui.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ui.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault"},ui),li),t.SourceCodeInfo=(pi.prototype.location=d.emptyArray,pi.create=function(e){return new pi(e)},pi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.location&&e.location.length)for(var o=0;o<e.location.length;++o)g.google.protobuf.SourceCodeInfo.Location.encode(e.location[o],t.uint32(10).fork(),n+1).ldelim();return t},pi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},pi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.SourceCodeInfo;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.location&&i.location.length||(i.location=[]),i.location.push(g.google.protobuf.SourceCodeInfo.Location.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},pi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},pi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.location&&Object.hasOwnProperty.call(e,"location")){if(!Array.isArray(e.location))return"location: array expected";for(var n=0;n<e.location.length;++n){var o=g.google.protobuf.SourceCodeInfo.Location.verify(e.location[n],t+1);if(o)return"location."+o}}return null},pi.fromObject=function(e,t){if(e instanceof g.google.protobuf.SourceCodeInfo)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.SourceCodeInfo: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.SourceCodeInfo;if(e.location){if(!Array.isArray(e.location))throw TypeError(".google.protobuf.SourceCodeInfo.location: array expected");n.location=[];for(var o=0;o<e.location.length;++o){if(!d.isObject(e.location[o]))throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected");n.location[o]=g.google.protobuf.SourceCodeInfo.Location.fromObject(e.location[o],t+1)}}return n},pi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.location=[]),e.location&&e.location.length){o.location=[];for(var r=0;r<e.location.length;++r)o.location[r]=g.google.protobuf.SourceCodeInfo.Location.toObject(e.location[r],t,n+1)}return o},pi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},pi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.SourceCodeInfo"},pi.Location=(di.prototype.path=d.emptyArray,di.prototype.span=d.emptyArray,di.prototype.leadingComments="",di.prototype.trailingComments="",di.prototype.leadingDetachedComments=d.emptyArray,di.create=function(e){return new di(e)},di.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.path&&e.path.length){t.uint32(10).fork();for(var o=0;o<e.path.length;++o)t.int32(e.path[o]);t.ldelim()}if(null!=e.span&&e.span.length){t.uint32(18).fork();for(o=0;o<e.span.length;++o)t.int32(e.span[o]);t.ldelim()}if(null!=e.leadingComments&&Object.hasOwnProperty.call(e,"leadingComments")&&t.uint32(26).string(e.leadingComments),null!=e.trailingComments&&Object.hasOwnProperty.call(e,"trailingComments")&&t.uint32(34).string(e.trailingComments),null!=e.leadingDetachedComments&&e.leadingDetachedComments.length)for(o=0;o<e.leadingDetachedComments.length;++o)t.uint32(50).string(e.leadingDetachedComments[o]);return t},di.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},di.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.SourceCodeInfo.Location;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:if(i.path&&i.path.length||(i.path=[]),2==(7&a))for(var s=e.uint32()+e.pos;e.pos<s;)i.path.push(e.int32());else i.path.push(e.int32());break;case 2:if(i.span&&i.span.length||(i.span=[]),2==(7&a))for(s=e.uint32()+e.pos;e.pos<s;)i.span.push(e.int32());else i.span.push(e.int32());break;case 3:i.leadingComments=e.string();break;case 4:i.trailingComments=e.string();break;case 6:i.leadingDetachedComments&&i.leadingDetachedComments.length||(i.leadingDetachedComments=[]),i.leadingDetachedComments.push(e.string());break;default:e.skipType(7&a,o)}}return i},di.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},di.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.path&&Object.hasOwnProperty.call(e,"path")){if(!Array.isArray(e.path))return"path: array expected";for(var n=0;n<e.path.length;++n)if(!d.isInteger(e.path[n]))return"path: integer[] expected"}if(null!=e.span&&Object.hasOwnProperty.call(e,"span")){if(!Array.isArray(e.span))return"span: array expected";for(n=0;n<e.span.length;++n)if(!d.isInteger(e.span[n]))return"span: integer[] expected"}if(null!=e.leadingComments&&Object.hasOwnProperty.call(e,"leadingComments")&&!d.isString(e.leadingComments))return"leadingComments: string expected";if(null!=e.trailingComments&&Object.hasOwnProperty.call(e,"trailingComments")&&!d.isString(e.trailingComments))return"trailingComments: string expected";if(null!=e.leadingDetachedComments&&Object.hasOwnProperty.call(e,"leadingDetachedComments")){if(!Array.isArray(e.leadingDetachedComments))return"leadingDetachedComments: array expected";for(n=0;n<e.leadingDetachedComments.length;++n)if(!d.isString(e.leadingDetachedComments[n]))return"leadingDetachedComments: string[] expected"}return null},di.fromObject=function(e,t){if(e instanceof g.google.protobuf.SourceCodeInfo.Location)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.SourceCodeInfo.Location: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.SourceCodeInfo.Location;if(e.path){if(!Array.isArray(e.path))throw TypeError(".google.protobuf.SourceCodeInfo.Location.path: array expected");n.path=[];for(var o=0;o<e.path.length;++o)n.path[o]=0|e.path[o]}if(e.span){if(!Array.isArray(e.span))throw TypeError(".google.protobuf.SourceCodeInfo.Location.span: array expected");n.span=[];for(o=0;o<e.span.length;++o)n.span[o]=0|e.span[o]}if(null!=e.leadingComments&&(n.leadingComments=String(e.leadingComments)),null!=e.trailingComments&&(n.trailingComments=String(e.trailingComments)),e.leadingDetachedComments){if(!Array.isArray(e.leadingDetachedComments))throw TypeError(".google.protobuf.SourceCodeInfo.Location.leadingDetachedComments: array expected");n.leadingDetachedComments=[];for(o=0;o<e.leadingDetachedComments.length;++o)n.leadingDetachedComments[o]=String(e.leadingDetachedComments[o])}return n},di.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.path=[],o.span=[],o.leadingDetachedComments=[]),t.defaults&&(o.leadingComments="",o.trailingComments=""),e.path&&e.path.length){o.path=[];for(var r=0;r<e.path.length;++r)o.path[r]=e.path[r]}if(e.span&&e.span.length){o.span=[];for(r=0;r<e.span.length;++r)o.span[r]=e.span[r]}if(null!=e.leadingComments&&Object.hasOwnProperty.call(e,"leadingComments")&&(o.leadingComments=e.leadingComments),null!=e.trailingComments&&Object.hasOwnProperty.call(e,"trailingComments")&&(o.trailingComments=e.trailingComments),e.leadingDetachedComments&&e.leadingDetachedComments.length){o.leadingDetachedComments=[];for(r=0;r<e.leadingDetachedComments.length;++r)o.leadingDetachedComments[r]=e.leadingDetachedComments[r]}return o},di.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},di.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.SourceCodeInfo.Location"},di),pi),t.GeneratedCodeInfo=(gi.prototype.annotation=d.emptyArray,gi.create=function(e){return new gi(e)},gi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.annotation&&e.annotation.length)for(var o=0;o<e.annotation.length;++o)g.google.protobuf.GeneratedCodeInfo.Annotation.encode(e.annotation[o],t.uint32(10).fork(),n+1).ldelim();return t},gi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},gi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.GeneratedCodeInfo;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.annotation&&i.annotation.length||(i.annotation=[]),i.annotation.push(g.google.protobuf.GeneratedCodeInfo.Annotation.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},gi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},gi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.annotation&&Object.hasOwnProperty.call(e,"annotation")){if(!Array.isArray(e.annotation))return"annotation: array expected";for(var n=0;n<e.annotation.length;++n){var o=g.google.protobuf.GeneratedCodeInfo.Annotation.verify(e.annotation[n],t+1);if(o)return"annotation."+o}}return null},gi.fromObject=function(e,t){if(e instanceof g.google.protobuf.GeneratedCodeInfo)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.GeneratedCodeInfo: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.GeneratedCodeInfo;if(e.annotation){if(!Array.isArray(e.annotation))throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: array expected");n.annotation=[];for(var o=0;o<e.annotation.length;++o){if(!d.isObject(e.annotation[o]))throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected");n.annotation[o]=g.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(e.annotation[o],t+1)}}return n},gi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.annotation=[]),e.annotation&&e.annotation.length){o.annotation=[];for(var r=0;r<e.annotation.length;++r)o.annotation[r]=g.google.protobuf.GeneratedCodeInfo.Annotation.toObject(e.annotation[r],t,n+1)}return o},gi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},gi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.GeneratedCodeInfo"},gi.Annotation=(fi.prototype.path=d.emptyArray,fi.prototype.sourceFile="",fi.prototype.begin=0,fi.prototype.end=0,fi.prototype.semantic=0,fi.create=function(e){return new fi(e)},fi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.path&&e.path.length){t.uint32(10).fork();for(var o=0;o<e.path.length;++o)t.int32(e.path[o]);t.ldelim()}return null!=e.sourceFile&&Object.hasOwnProperty.call(e,"sourceFile")&&t.uint32(18).string(e.sourceFile),null!=e.begin&&Object.hasOwnProperty.call(e,"begin")&&t.uint32(24).int32(e.begin),null!=e.end&&Object.hasOwnProperty.call(e,"end")&&t.uint32(32).int32(e.end),null!=e.semantic&&Object.hasOwnProperty.call(e,"semantic")&&t.uint32(40).int32(e.semantic),t},fi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},fi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.GeneratedCodeInfo.Annotation;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:if(i.path&&i.path.length||(i.path=[]),2==(7&a))for(var s=e.uint32()+e.pos;e.pos<s;)i.path.push(e.int32());else i.path.push(e.int32());break;case 2:i.sourceFile=e.string();break;case 3:i.begin=e.int32();break;case 4:i.end=e.int32();break;case 5:i.semantic=e.int32();break;default:e.skipType(7&a,o)}}return i},fi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},fi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.path&&Object.hasOwnProperty.call(e,"path")){if(!Array.isArray(e.path))return"path: array expected";for(var n=0;n<e.path.length;++n)if(!d.isInteger(e.path[n]))return"path: integer[] expected"}if(null!=e.sourceFile&&Object.hasOwnProperty.call(e,"sourceFile")&&!d.isString(e.sourceFile))return"sourceFile: string expected";if(null!=e.begin&&Object.hasOwnProperty.call(e,"begin")&&!d.isInteger(e.begin))return"begin: integer expected";if(null!=e.end&&Object.hasOwnProperty.call(e,"end")&&!d.isInteger(e.end))return"end: integer expected";if(null!=e.semantic&&Object.hasOwnProperty.call(e,"semantic"))switch(e.semantic){default:return"semantic: enum value expected";case 0:case 1:case 2:}return null},fi.fromObject=function(e,t){if(e instanceof g.google.protobuf.GeneratedCodeInfo.Annotation)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.GeneratedCodeInfo.Annotation;if(e.path){if(!Array.isArray(e.path))throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation.path: array expected");n.path=[];for(var o=0;o<e.path.length;++o)n.path[o]=0|e.path[o]}switch(null!=e.sourceFile&&(n.sourceFile=String(e.sourceFile)),null!=e.begin&&(n.begin=0|e.begin),null!=e.end&&(n.end=0|e.end),e.semantic){default:"number"==typeof e.semantic&&(n.semantic=e.semantic);break;case"NONE":case 0:n.semantic=0;break;case"SET":case 1:n.semantic=1;break;case"ALIAS":case 2:n.semantic=2}return n},fi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.path=[]),t.defaults&&(o.sourceFile="",o.begin=0,o.end=0,o.semantic=t.enums===String?"NONE":0),e.path&&e.path.length){o.path=[];for(var r=0;r<e.path.length;++r)o.path[r]=e.path[r]}return null!=e.sourceFile&&Object.hasOwnProperty.call(e,"sourceFile")&&(o.sourceFile=e.sourceFile),null!=e.begin&&Object.hasOwnProperty.call(e,"begin")&&(o.begin=e.begin),null!=e.end&&Object.hasOwnProperty.call(e,"end")&&(o.end=e.end),null!=e.semantic&&Object.hasOwnProperty.call(e,"semantic")&&(o.semantic=t.enums!==String||void 0===g.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[e.semantic]?e.semantic:g.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[e.semantic]),o},fi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},fi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.GeneratedCodeInfo.Annotation"},fi.Semantic=(r={},(i=Object.create(r))[r[0]="NONE"]=0,i[r[1]="SET"]=1,i[r[2]="ALIAS"]=2,i),fi),gi),t.SymbolVisibility=(r={},(i=Object.create(r))[r[0]="VISIBILITY_UNSET"]=0,i[r[1]="VISIBILITY_LOCAL"]=1,i[r[2]="VISIBILITY_EXPORT"]=2,i),t.Duration=(mi.prototype.seconds=d.Long?d.Long.fromBits(0,0,!1):0,mi.prototype.nanos=0,mi.create=function(e){return new mi(e)},mi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.seconds&&Object.hasOwnProperty.call(e,"seconds")&&t.uint32(8).int64(e.seconds),null!=e.nanos&&Object.hasOwnProperty.call(e,"nanos")&&t.uint32(16).int32(e.nanos),t},mi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},mi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.Duration;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.seconds=e.int64();break;case 2:i.nanos=e.int32();break;default:e.skipType(7&a,o)}}return i},mi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},mi.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.seconds&&Object.hasOwnProperty.call(e,"seconds")&&!(d.isInteger(e.seconds)||e.seconds&&d.isInteger(e.seconds.low)&&d.isInteger(e.seconds.high))?"seconds: integer|Long expected":null!=e.nanos&&Object.hasOwnProperty.call(e,"nanos")&&!d.isInteger(e.nanos)?"nanos: integer expected":null},mi.fromObject=function(e,t){if(e instanceof g.google.protobuf.Duration)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.Duration: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.protobuf.Duration;return null!=e.seconds&&(d.Long?t.seconds=d.Long.fromValue(e.seconds,!1):"string"==typeof e.seconds?t.seconds=parseInt(e.seconds,10):"number"==typeof e.seconds?t.seconds=e.seconds:"object"==typeof e.seconds&&(t.seconds=new d.LongBits(e.seconds.low>>>0,e.seconds.high>>>0).toNumber())),null!=e.nanos&&(t.nanos=0|e.nanos),t},mi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,n={};return t.defaults&&(d.Long?(o=new d.Long(0,0,!1),n.seconds=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.seconds=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,n.nanos=0),null!=e.seconds&&Object.hasOwnProperty.call(e,"seconds")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.seconds="number"==typeof e.seconds?BigInt(e.seconds):d.Long.fromBits(e.seconds.low>>>0,e.seconds.high>>>0,!1).toBigInt():"number"==typeof e.seconds?n.seconds=t.longs===String?String(e.seconds):e.seconds:n.seconds=t.longs===String?d.Long.prototype.toString.call(e.seconds):t.longs===Number?new d.LongBits(e.seconds.low>>>0,e.seconds.high>>>0).toNumber():e.seconds),null!=e.nanos&&Object.hasOwnProperty.call(e,"nanos")&&(n.nanos=e.nanos),n},mi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},mi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.Duration"},mi),t.Any=(bi.prototype.type_url="",bi.prototype.value=d.newBuffer([]),bi.create=function(e){return new bi(e)},bi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.type_url&&Object.hasOwnProperty.call(e,"type_url")&&t.uint32(10).string(e.type_url),null!=e.value&&Object.hasOwnProperty.call(e,"value")&&t.uint32(18).bytes(e.value),t},bi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},bi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.Any;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.type_url=e.string();break;case 2:i.value=e.bytes();break;default:e.skipType(7&a,o)}}return i},bi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},bi.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.type_url&&Object.hasOwnProperty.call(e,"type_url")&&!d.isString(e.type_url)?"type_url: string expected":null!=e.value&&Object.hasOwnProperty.call(e,"value")&&!(e.value&&"number"==typeof e.value.length||d.isString(e.value))?"value: buffer expected":null},bi.fromObject=function(e,t){if(e instanceof g.google.protobuf.Any)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.Any: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.protobuf.Any;return null!=e.type_url&&(t.type_url=String(e.type_url)),null!=e.value&&("string"==typeof e.value?d.base64.decode(e.value,t.value=d.newBuffer(d.base64.length(e.value)),0):0<=e.value.length&&(t.value=e.value)),t},bi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.type_url="",t.bytes===String?n.value="":(n.value=[],t.bytes!==Array&&(n.value=d.newBuffer(n.value)))),null!=e.type_url&&Object.hasOwnProperty.call(e,"type_url")&&(n.type_url=e.type_url),null!=e.value&&Object.hasOwnProperty.call(e,"value")&&(n.value=t.bytes===String?d.base64.encode(e.value,0,e.value.length):t.bytes===Array?Array.prototype.slice.call(e.value):e.value),n},bi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},bi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.Any"},bi),t.Empty=(yi.create=function(e){return new yi(e)},yi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return t},yi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},yi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,t=new g.google.protobuf.Empty;e.pos<r;){var i=e.uint32();if(i===n)break;e.skipType(7&i,o)}return t},yi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},yi.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null},yi.fromObject=function(e,t){return e instanceof g.google.protobuf.Empty?e:new g.google.protobuf.Empty},yi.toObject=function(){return{}},yi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},yi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.Empty"},yi),t.FieldMask=(hi.prototype.paths=d.emptyArray,hi.create=function(e){return new hi(e)},hi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.paths&&e.paths.length)for(var o=0;o<e.paths.length;++o)t.uint32(10).string(e.paths[o]);return t},hi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},hi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.FieldMask;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.paths&&i.paths.length||(i.paths=[]),i.paths.push(e.string())):e.skipType(7&a,o)}return i},hi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},hi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.paths&&Object.hasOwnProperty.call(e,"paths")){if(!Array.isArray(e.paths))return"paths: array expected";for(var n=0;n<e.paths.length;++n)if(!d.isString(e.paths[n]))return"paths: string[] expected"}return null},hi.fromObject=function(e,t){if(e instanceof g.google.protobuf.FieldMask)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.FieldMask: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.FieldMask;if(e.paths){if(!Array.isArray(e.paths))throw TypeError(".google.protobuf.FieldMask.paths: array expected");n.paths=[];for(var o=0;o<e.paths.length;++o)n.paths[o]=String(e.paths[o])}return n},hi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.paths=[]),e.paths&&e.paths.length){o.paths=[];for(var r=0;r<e.paths.length;++r)o.paths[r]=e.paths[r]}return o},hi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},hi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.FieldMask"},hi),t.Timestamp=(Oi.prototype.seconds=d.Long?d.Long.fromBits(0,0,!1):0,Oi.prototype.nanos=0,Oi.create=function(e){return new Oi(e)},Oi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.seconds&&Object.hasOwnProperty.call(e,"seconds")&&t.uint32(8).int64(e.seconds),null!=e.nanos&&Object.hasOwnProperty.call(e,"nanos")&&t.uint32(16).int32(e.nanos),t},Oi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Oi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.Timestamp;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.seconds=e.int64();break;case 2:i.nanos=e.int32();break;default:e.skipType(7&a,o)}}return i},Oi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Oi.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.seconds&&Object.hasOwnProperty.call(e,"seconds")&&!(d.isInteger(e.seconds)||e.seconds&&d.isInteger(e.seconds.low)&&d.isInteger(e.seconds.high))?"seconds: integer|Long expected":null!=e.nanos&&Object.hasOwnProperty.call(e,"nanos")&&!d.isInteger(e.nanos)?"nanos: integer expected":null},Oi.fromObject=function(e,t){if(e instanceof g.google.protobuf.Timestamp)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.Timestamp: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.protobuf.Timestamp;return null!=e.seconds&&(d.Long?t.seconds=d.Long.fromValue(e.seconds,!1):"string"==typeof e.seconds?t.seconds=parseInt(e.seconds,10):"number"==typeof e.seconds?t.seconds=e.seconds:"object"==typeof e.seconds&&(t.seconds=new d.LongBits(e.seconds.low>>>0,e.seconds.high>>>0).toNumber())),null!=e.nanos&&(t.nanos=0|e.nanos),t},Oi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,n={};return t.defaults&&(d.Long?(o=new d.Long(0,0,!1),n.seconds=t.longs===String?o.toString():t.longs===Number?o.toNumber():"undefined"!=typeof BigInt&&t.longs===BigInt?o.toBigInt():o):n.seconds=t.longs===String?"0":"undefined"!=typeof BigInt&&t.longs===BigInt?BigInt("0"):0,n.nanos=0),null!=e.seconds&&Object.hasOwnProperty.call(e,"seconds")&&("undefined"!=typeof BigInt&&t.longs===BigInt?n.seconds="number"==typeof e.seconds?BigInt(e.seconds):d.Long.fromBits(e.seconds.low>>>0,e.seconds.high>>>0,!1).toBigInt():"number"==typeof e.seconds?n.seconds=t.longs===String?String(e.seconds):e.seconds:n.seconds=t.longs===String?d.Long.prototype.toString.call(e.seconds):t.longs===Number?new d.LongBits(e.seconds.low>>>0,e.seconds.high>>>0).toNumber():e.seconds),null!=e.nanos&&Object.hasOwnProperty.call(e,"nanos")&&(n.nanos=e.nanos),n},Oi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Oi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.Timestamp"},Oi),t.Struct=(vi.prototype.fields=d.emptyObject,vi.create=function(e){return new vi(e)},vi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.fields&&Object.hasOwnProperty.call(e,"fields"))for(var o=Object.keys(e.fields),r=0;r<o.length;++r)t.uint32(10).fork().uint32(10).string(o[r]),g.google.protobuf.Value.encode(e.fields[o[r]],t.uint32(18).fork(),n+1).ldelim().ldelim();return t},vi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},vi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.Struct;e.pos<r;){var a=e.uint32();if(a===n)break;if(a>>>3==1){i.fields===d.emptyObject&&(i.fields={});for(var s=e.uint32()+e.pos,c="",l=null;e.pos<s;){var u=e.uint32();switch(u>>>3){case 1:c=e.string();break;case 2:l=g.google.protobuf.Value.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&u,o)}}"__proto__"===c&&d.makeProp(i.fields,c),i.fields[c]=l}else e.skipType(7&a,o)}return i},vi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},vi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.fields&&Object.hasOwnProperty.call(e,"fields")){if(!d.isObject(e.fields))return"fields: object expected";for(var n=Object.keys(e.fields),o=0;o<n.length;++o){var r=g.google.protobuf.Value.verify(e.fields[n[o]],t+1);if(r)return"fields."+r}}return null},vi.fromObject=function(e,t){if(e instanceof g.google.protobuf.Struct)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.Struct: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.Struct;if(e.fields){if(!d.isObject(e.fields))throw TypeError(".google.protobuf.Struct.fields: object expected");n.fields={};for(var o=Object.keys(e.fields),r=0;r<o.length;++r){if("__proto__"===o[r]&&d.makeProp(n.fields,o[r]),!d.isObject(e.fields[o[r]]))throw TypeError(".google.protobuf.Struct.fields: object expected");n.fields[o[r]]=g.google.protobuf.Value.fromObject(e.fields[o[r]],t+1)}}return n},vi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o,r={};if((t.objects||t.defaults)&&(r.fields={}),e.fields&&(o=Object.keys(e.fields)).length){r.fields={};for(var i=0;i<o.length;++i)"__proto__"===o[i]&&d.makeProp(r.fields,o[i]),r.fields[o[i]]=g.google.protobuf.Value.toObject(e.fields[o[i]],t,n+1)}return r},vi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},vi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.Struct"},vi),t.Value=(ji.prototype.nullValue=null,ji.prototype.numberValue=null,ji.prototype.stringValue=null,ji.prototype.boolValue=null,ji.prototype.structValue=null,ji.prototype.listValue=null,Object.defineProperty(ji.prototype,"kind",{get:d.oneOfGetter(r=["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]),set:d.oneOfSetter(r)}),ji.create=function(e){return new ji(e)},ji.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.nullValue&&Object.hasOwnProperty.call(e,"nullValue")&&t.uint32(8).int32(e.nullValue),null!=e.numberValue&&Object.hasOwnProperty.call(e,"numberValue")&&t.uint32(17).double(e.numberValue),null!=e.stringValue&&Object.hasOwnProperty.call(e,"stringValue")&&t.uint32(26).string(e.stringValue),null!=e.boolValue&&Object.hasOwnProperty.call(e,"boolValue")&&t.uint32(32).bool(e.boolValue),null!=e.structValue&&Object.hasOwnProperty.call(e,"structValue")&&g.google.protobuf.Struct.encode(e.structValue,t.uint32(42).fork(),n+1).ldelim(),null!=e.listValue&&Object.hasOwnProperty.call(e,"listValue")&&g.google.protobuf.ListValue.encode(e.listValue,t.uint32(50).fork(),n+1).ldelim(),t},ji.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ji.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.Value;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.nullValue=e.int32();break;case 2:i.numberValue=e.double();break;case 3:i.stringValue=e.string();break;case 4:i.boolValue=e.bool();break;case 5:i.structValue=g.google.protobuf.Struct.decode(e,e.uint32(),void 0,o+1);break;case 6:i.listValue=g.google.protobuf.ListValue.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},ji.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ji.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.nullValue&&Object.hasOwnProperty.call(e,"nullValue")&&(o.kind=1,0!==e.nullValue))return"nullValue: enum value expected";if(null!=e.numberValue&&Object.hasOwnProperty.call(e,"numberValue")){if(1===o.kind)return"kind: multiple values";if(o.kind=1,"number"!=typeof e.numberValue)return"numberValue: number expected"}if(null!=e.stringValue&&Object.hasOwnProperty.call(e,"stringValue")){if(1===o.kind)return"kind: multiple values";if(o.kind=1,!d.isString(e.stringValue))return"stringValue: string expected"}if(null!=e.boolValue&&Object.hasOwnProperty.call(e,"boolValue")){if(1===o.kind)return"kind: multiple values";if(o.kind=1,"boolean"!=typeof e.boolValue)return"boolValue: boolean expected"}if(null!=e.structValue&&Object.hasOwnProperty.call(e,"structValue")){if(1===o.kind)return"kind: multiple values";if(n=g.google.protobuf.Struct.verify(e.structValue,t+(o.kind=1)))return"structValue."+n}if(null!=e.listValue&&Object.hasOwnProperty.call(e,"listValue")){if(1===o.kind)return"kind: multiple values";if(n=g.google.protobuf.ListValue.verify(e.listValue,t+(o.kind=1)))return"listValue."+n}return null},ji.fromObject=function(e,t){if(e instanceof g.google.protobuf.Value)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.Value: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.Value;switch(e.nullValue){default:"number"==typeof e.nullValue&&(n.nullValue=e.nullValue);break;case"NULL_VALUE":case 0:n.nullValue=0}if(null!=e.numberValue&&(n.numberValue=Number(e.numberValue)),null!=e.stringValue&&(n.stringValue=String(e.stringValue)),null!=e.boolValue&&(n.boolValue=Boolean(e.boolValue)),null!=e.structValue){if(!d.isObject(e.structValue))throw TypeError(".google.protobuf.Value.structValue: object expected");n.structValue=g.google.protobuf.Struct.fromObject(e.structValue,t+1)}if(null!=e.listValue){if(!d.isObject(e.listValue))throw TypeError(".google.protobuf.Value.listValue: object expected");n.listValue=g.google.protobuf.ListValue.fromObject(e.listValue,t+1)}return n},ji.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return null!=e.nullValue&&Object.hasOwnProperty.call(e,"nullValue")&&(o.nullValue=t.enums!==String||void 0===g.google.protobuf.NullValue[e.nullValue]?e.nullValue:g.google.protobuf.NullValue[e.nullValue],t.oneofs)&&(o.kind="nullValue"),null!=e.numberValue&&Object.hasOwnProperty.call(e,"numberValue")&&(o.numberValue=t.json&&!isFinite(e.numberValue)?String(e.numberValue):e.numberValue,t.oneofs)&&(o.kind="numberValue"),null!=e.stringValue&&Object.hasOwnProperty.call(e,"stringValue")&&(o.stringValue=e.stringValue,t.oneofs)&&(o.kind="stringValue"),null!=e.boolValue&&Object.hasOwnProperty.call(e,"boolValue")&&(o.boolValue=e.boolValue,t.oneofs)&&(o.kind="boolValue"),null!=e.structValue&&Object.hasOwnProperty.call(e,"structValue")&&(o.structValue=g.google.protobuf.Struct.toObject(e.structValue,t,n+1),t.oneofs)&&(o.kind="structValue"),null!=e.listValue&&Object.hasOwnProperty.call(e,"listValue")&&(o.listValue=g.google.protobuf.ListValue.toObject(e.listValue,t,n+1),t.oneofs)&&(o.kind="listValue"),o},ji.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ji.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.Value"},ji),t.NullValue=(i={},(r=Object.create(i))[i[0]="NULL_VALUE"]=0,r),t.ListValue=(xi.prototype.values=d.emptyArray,xi.create=function(e){return new xi(e)},xi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.values&&e.values.length)for(var o=0;o<e.values.length;++o)g.google.protobuf.Value.encode(e.values[o],t.uint32(10).fork(),n+1).ldelim();return t},xi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},xi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.protobuf.ListValue;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.values&&i.values.length||(i.values=[]),i.values.push(g.google.protobuf.Value.decode(e,e.uint32(),void 0,o+1))):e.skipType(7&a,o)}return i},xi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},xi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.values&&Object.hasOwnProperty.call(e,"values")){if(!Array.isArray(e.values))return"values: array expected";for(var n=0;n<e.values.length;++n){var o=g.google.protobuf.Value.verify(e.values[n],t+1);if(o)return"values."+o}}return null},xi.fromObject=function(e,t){if(e instanceof g.google.protobuf.ListValue)return e;if(!d.isObject(e))throw TypeError(".google.protobuf.ListValue: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.protobuf.ListValue;if(e.values){if(!Array.isArray(e.values))throw TypeError(".google.protobuf.ListValue.values: array expected");n.values=[];for(var o=0;o<e.values.length;++o){if(!d.isObject(e.values[o]))throw TypeError(".google.protobuf.ListValue.values: object expected");n.values[o]=g.google.protobuf.Value.fromObject(e.values[o],t+1)}}return n},xi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.values=[]),e.values&&e.values.length){o.values=[];for(var r=0;r<e.values.length;++r)o.values[r]=g.google.protobuf.Value.toObject(e.values[r],t,n+1)}return o},xi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},xi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.protobuf.ListValue"},xi),t),_.longrunning=((a={}).Operations=(((wi.prototype=Object.create(o.rpc.Service.prototype)).constructor=wi).create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(wi.prototype.listOperations=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.longrunning.ListOperationsRequest,g.google.longrunning.ListOperationsResponse,t,n)},"name",{value:"ListOperations"}),Object.defineProperty(wi.prototype.getOperation=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.longrunning.GetOperationRequest,g.google.longrunning.Operation,t,n)},"name",{value:"GetOperation"}),Object.defineProperty(wi.prototype.deleteOperation=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.longrunning.DeleteOperationRequest,g.google.protobuf.Empty,t,n)},"name",{value:"DeleteOperation"}),Object.defineProperty(wi.prototype.cancelOperation=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.longrunning.CancelOperationRequest,g.google.protobuf.Empty,t,n)},"name",{value:"CancelOperation"}),Object.defineProperty(wi.prototype.waitOperation=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.longrunning.WaitOperationRequest,g.google.longrunning.Operation,t,n)},"name",{value:"WaitOperation"}),wi),a.Operation=(Ti.prototype.name="",Ti.prototype.metadata=null,Ti.prototype.done=!1,Ti.prototype.error=null,Ti.prototype.response=null,Object.defineProperty(Ti.prototype,"result",{get:d.oneOfGetter(n=["error","response"]),set:d.oneOfSetter(n)}),Ti.create=function(e){return new Ti(e)},Ti.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&g.google.protobuf.Any.encode(e.metadata,t.uint32(18).fork(),n+1).ldelim(),null!=e.done&&Object.hasOwnProperty.call(e,"done")&&t.uint32(24).bool(e.done),null!=e.error&&Object.hasOwnProperty.call(e,"error")&&g.google.rpc.Status.encode(e.error,t.uint32(34).fork(),n+1).ldelim(),null!=e.response&&Object.hasOwnProperty.call(e,"response")&&g.google.protobuf.Any.encode(e.response,t.uint32(42).fork(),n+1).ldelim(),t},Ti.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ti.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.longrunning.Operation;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.metadata=g.google.protobuf.Any.decode(e,e.uint32(),void 0,o+1);break;case 3:i.done=e.bool();break;case 4:i.error=g.google.rpc.Status.decode(e,e.uint32(),void 0,o+1);break;case 5:i.response=g.google.protobuf.Any.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ti.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ti.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";var n,o={};if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&(n=g.google.protobuf.Any.verify(e.metadata,t+1)))return"metadata."+n;if(null!=e.done&&Object.hasOwnProperty.call(e,"done")&&"boolean"!=typeof e.done)return"done: boolean expected";if(null!=e.error&&Object.hasOwnProperty.call(e,"error")&&(n=g.google.rpc.Status.verify(e.error,t+(o.result=1))))return"error."+n;if(null!=e.response&&Object.hasOwnProperty.call(e,"response")){if(1===o.result)return"result: multiple values";if(n=g.google.protobuf.Any.verify(e.response,t+(o.result=1)))return"response."+n}return null},Ti.fromObject=function(e,t){if(e instanceof g.google.longrunning.Operation)return e;if(!d.isObject(e))throw TypeError(".google.longrunning.Operation: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.longrunning.Operation;if(null!=e.name&&(n.name=String(e.name)),null!=e.metadata){if(!d.isObject(e.metadata))throw TypeError(".google.longrunning.Operation.metadata: object expected");n.metadata=g.google.protobuf.Any.fromObject(e.metadata,t+1)}if(null!=e.done&&(n.done=Boolean(e.done)),null!=e.error){if(!d.isObject(e.error))throw TypeError(".google.longrunning.Operation.error: object expected");n.error=g.google.rpc.Status.fromObject(e.error,t+1)}if(null!=e.response){if(!d.isObject(e.response))throw TypeError(".google.longrunning.Operation.response: object expected");n.response=g.google.protobuf.Any.fromObject(e.response,t+1)}return n},Ti.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.metadata=null,o.done=!1),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.metadata&&Object.hasOwnProperty.call(e,"metadata")&&(o.metadata=g.google.protobuf.Any.toObject(e.metadata,t,n+1)),null!=e.done&&Object.hasOwnProperty.call(e,"done")&&(o.done=e.done),null!=e.error&&Object.hasOwnProperty.call(e,"error")&&(o.error=g.google.rpc.Status.toObject(e.error,t,n+1),t.oneofs)&&(o.result="error"),null!=e.response&&Object.hasOwnProperty.call(e,"response")&&(o.response=g.google.protobuf.Any.toObject(e.response,t,n+1),t.oneofs)&&(o.result="response"),o},Ti.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ti.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.longrunning.Operation"},Ti),a.GetOperationRequest=(ki.prototype.name="",ki.create=function(e){return new ki(e)},ki.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},ki.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},ki.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.longrunning.GetOperationRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},ki.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},ki.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},ki.fromObject=function(e,t){if(e instanceof g.google.longrunning.GetOperationRequest)return e;if(!d.isObject(e))throw TypeError(".google.longrunning.GetOperationRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.longrunning.GetOperationRequest;return null!=e.name&&(t.name=String(e.name)),t},ki.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},ki.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},ki.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.longrunning.GetOperationRequest"},ki),a.ListOperationsRequest=(Pi.prototype.name="",Pi.prototype.filter="",Pi.prototype.pageSize=0,Pi.prototype.pageToken="",Pi.create=function(e){return new Pi(e)},Pi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&t.uint32(10).string(e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&t.uint32(16).int32(e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&t.uint32(26).string(e.pageToken),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(34).string(e.name),t},Pi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Pi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.longrunning.ListOperationsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 4:i.name=e.string();break;case 1:i.filter=e.string();break;case 2:i.pageSize=e.int32();break;case 3:i.pageToken=e.string();break;default:e.skipType(7&a,o)}}return i},Pi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Pi.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&!d.isString(e.filter)?"filter: string expected":null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&!d.isInteger(e.pageSize)?"pageSize: integer expected":null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&!d.isString(e.pageToken)?"pageToken: string expected":null},Pi.fromObject=function(e,t){if(e instanceof g.google.longrunning.ListOperationsRequest)return e;if(!d.isObject(e))throw TypeError(".google.longrunning.ListOperationsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.longrunning.ListOperationsRequest;return null!=e.name&&(t.name=String(e.name)),null!=e.filter&&(t.filter=String(e.filter)),null!=e.pageSize&&(t.pageSize=0|e.pageSize),null!=e.pageToken&&(t.pageToken=String(e.pageToken)),t},Pi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.filter="",n.pageSize=0,n.pageToken="",n.name=""),null!=e.filter&&Object.hasOwnProperty.call(e,"filter")&&(n.filter=e.filter),null!=e.pageSize&&Object.hasOwnProperty.call(e,"pageSize")&&(n.pageSize=e.pageSize),null!=e.pageToken&&Object.hasOwnProperty.call(e,"pageToken")&&(n.pageToken=e.pageToken),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},Pi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Pi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.longrunning.ListOperationsRequest"},Pi),a.ListOperationsResponse=(Si.prototype.operations=d.emptyArray,Si.prototype.nextPageToken="",Si.create=function(e){return new Si(e)},Si.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.operations&&e.operations.length)for(var o=0;o<e.operations.length;++o)g.google.longrunning.Operation.encode(e.operations[o],t.uint32(10).fork(),n+1).ldelim();return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&t.uint32(18).string(e.nextPageToken),t},Si.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Si.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.longrunning.ListOperationsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.operations&&i.operations.length||(i.operations=[]),i.operations.push(g.google.longrunning.Operation.decode(e,e.uint32(),void 0,o+1));break;case 2:i.nextPageToken=e.string();break;default:e.skipType(7&a,o)}}return i},Si.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Si.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.operations&&Object.hasOwnProperty.call(e,"operations")){if(!Array.isArray(e.operations))return"operations: array expected";for(var n=0;n<e.operations.length;++n){var o=g.google.longrunning.Operation.verify(e.operations[n],t+1);if(o)return"operations."+o}}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&!d.isString(e.nextPageToken)?"nextPageToken: string expected":null},Si.fromObject=function(e,t){if(e instanceof g.google.longrunning.ListOperationsResponse)return e;if(!d.isObject(e))throw TypeError(".google.longrunning.ListOperationsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.longrunning.ListOperationsResponse;if(e.operations){if(!Array.isArray(e.operations))throw TypeError(".google.longrunning.ListOperationsResponse.operations: array expected");n.operations=[];for(var o=0;o<e.operations.length;++o){if(!d.isObject(e.operations[o]))throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected");n.operations[o]=g.google.longrunning.Operation.fromObject(e.operations[o],t+1)}}return null!=e.nextPageToken&&(n.nextPageToken=String(e.nextPageToken)),n},Si.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.operations=[]),t.defaults&&(o.nextPageToken=""),e.operations&&e.operations.length){o.operations=[];for(var r=0;r<e.operations.length;++r)o.operations[r]=g.google.longrunning.Operation.toObject(e.operations[r],t,n+1)}return null!=e.nextPageToken&&Object.hasOwnProperty.call(e,"nextPageToken")&&(o.nextPageToken=e.nextPageToken),o},Si.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Si.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.longrunning.ListOperationsResponse"},Si),a.CancelOperationRequest=(Ii.prototype.name="",Ii.create=function(e){return new Ii(e)},Ii.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},Ii.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ii.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.longrunning.CancelOperationRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},Ii.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ii.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},Ii.fromObject=function(e,t){if(e instanceof g.google.longrunning.CancelOperationRequest)return e;if(!d.isObject(e))throw TypeError(".google.longrunning.CancelOperationRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.longrunning.CancelOperationRequest;return null!=e.name&&(t.name=String(e.name)),t},Ii.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},Ii.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ii.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.longrunning.CancelOperationRequest"},Ii),a.DeleteOperationRequest=(Ei.prototype.name="",Ei.create=function(e){return new Ei(e)},Ei.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),t},Ei.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ei.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.longrunning.DeleteOperationRequest;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.name=e.string():e.skipType(7&a,o)}return i},Ei.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ei.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name)?"name: string expected":null},Ei.fromObject=function(e,t){if(e instanceof g.google.longrunning.DeleteOperationRequest)return e;if(!d.isObject(e))throw TypeError(".google.longrunning.DeleteOperationRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.longrunning.DeleteOperationRequest;return null!=e.name&&(t.name=String(e.name)),t},Ei.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.name=""),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(n.name=e.name),n},Ei.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ei.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.longrunning.DeleteOperationRequest"},Ei),a.WaitOperationRequest=(Ci.prototype.name="",Ci.prototype.timeout=null,Ci.create=function(e){return new Ci(e)},Ci.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.name&&Object.hasOwnProperty.call(e,"name")&&t.uint32(10).string(e.name),null!=e.timeout&&Object.hasOwnProperty.call(e,"timeout")&&g.google.protobuf.Duration.encode(e.timeout,t.uint32(18).fork(),n+1).ldelim(),t},Ci.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ci.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.longrunning.WaitOperationRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.name=e.string();break;case 2:i.timeout=g.google.protobuf.Duration.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ci.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ci.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.name&&Object.hasOwnProperty.call(e,"name")&&!d.isString(e.name))return"name: string expected";if(null!=e.timeout&&Object.hasOwnProperty.call(e,"timeout")){e=g.google.protobuf.Duration.verify(e.timeout,t+1);if(e)return"timeout."+e}return null},Ci.fromObject=function(e,t){if(e instanceof g.google.longrunning.WaitOperationRequest)return e;if(!d.isObject(e))throw TypeError(".google.longrunning.WaitOperationRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.longrunning.WaitOperationRequest;if(null!=e.name&&(n.name=String(e.name)),null!=e.timeout){if(!d.isObject(e.timeout))throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected");n.timeout=g.google.protobuf.Duration.fromObject(e.timeout,t+1)}return n},Ci.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.name="",o.timeout=null),null!=e.name&&Object.hasOwnProperty.call(e,"name")&&(o.name=e.name),null!=e.timeout&&Object.hasOwnProperty.call(e,"timeout")&&(o.timeout=g.google.protobuf.Duration.toObject(e.timeout,t,n+1)),o},Ci.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ci.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.longrunning.WaitOperationRequest"},Ci),a.OperationInfo=(Ri.prototype.responseType="",Ri.prototype.metadataType="",Ri.create=function(e){return new Ri(e)},Ri.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.responseType&&Object.hasOwnProperty.call(e,"responseType")&&t.uint32(10).string(e.responseType),null!=e.metadataType&&Object.hasOwnProperty.call(e,"metadataType")&&t.uint32(18).string(e.metadataType),t},Ri.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ri.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.longrunning.OperationInfo;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.responseType=e.string();break;case 2:i.metadataType=e.string();break;default:e.skipType(7&a,o)}}return i},Ri.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ri.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.responseType&&Object.hasOwnProperty.call(e,"responseType")&&!d.isString(e.responseType)?"responseType: string expected":null!=e.metadataType&&Object.hasOwnProperty.call(e,"metadataType")&&!d.isString(e.metadataType)?"metadataType: string expected":null},Ri.fromObject=function(e,t){if(e instanceof g.google.longrunning.OperationInfo)return e;if(!d.isObject(e))throw TypeError(".google.longrunning.OperationInfo: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.longrunning.OperationInfo;return null!=e.responseType&&(t.responseType=String(e.responseType)),null!=e.metadataType&&(t.metadataType=String(e.metadataType)),t},Ri.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.responseType="",n.metadataType=""),null!=e.responseType&&Object.hasOwnProperty.call(e,"responseType")&&(n.responseType=e.responseType),null!=e.metadataType&&Object.hasOwnProperty.call(e,"metadataType")&&(n.metadataType=e.metadataType),n},Ri.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ri.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.longrunning.OperationInfo"},Ri),a),_.rpc=((e={}).Status=(Di.prototype.code=0,Di.prototype.message="",Di.prototype.details=d.emptyArray,Di.create=function(e){return new Di(e)},Di.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.code&&Object.hasOwnProperty.call(e,"code")&&t.uint32(8).int32(e.code),null!=e.message&&Object.hasOwnProperty.call(e,"message")&&t.uint32(18).string(e.message),null!=e.details&&e.details.length)for(var o=0;o<e.details.length;++o)g.google.protobuf.Any.encode(e.details[o],t.uint32(26).fork(),n+1).ldelim();return t},Di.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Di.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.rpc.Status;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.code=e.int32();break;case 2:i.message=e.string();break;case 3:i.details&&i.details.length||(i.details=[]),i.details.push(g.google.protobuf.Any.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Di.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Di.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.code&&Object.hasOwnProperty.call(e,"code")&&!d.isInteger(e.code))return"code: integer expected";if(null!=e.message&&Object.hasOwnProperty.call(e,"message")&&!d.isString(e.message))return"message: string expected";if(null!=e.details&&Object.hasOwnProperty.call(e,"details")){if(!Array.isArray(e.details))return"details: array expected";for(var n=0;n<e.details.length;++n){var o=g.google.protobuf.Any.verify(e.details[n],t+1);if(o)return"details."+o}}return null},Di.fromObject=function(e,t){if(e instanceof g.google.rpc.Status)return e;if(!d.isObject(e))throw TypeError(".google.rpc.Status: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.rpc.Status;if(null!=e.code&&(n.code=0|e.code),null!=e.message&&(n.message=String(e.message)),e.details){if(!Array.isArray(e.details))throw TypeError(".google.rpc.Status.details: array expected");n.details=[];for(var o=0;o<e.details.length;++o){if(!d.isObject(e.details[o]))throw TypeError(".google.rpc.Status.details: object expected");n.details[o]=g.google.protobuf.Any.fromObject(e.details[o],t+1)}}return n},Di.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.details=[]),t.defaults&&(o.code=0,o.message=""),null!=e.code&&Object.hasOwnProperty.call(e,"code")&&(o.code=e.code),null!=e.message&&Object.hasOwnProperty.call(e,"message")&&(o.message=e.message),e.details&&e.details.length){o.details=[];for(var r=0;r<e.details.length;++r)o.details[r]=g.google.protobuf.Any.toObject(e.details[r],t,n+1)}return o},Di.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Di.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.rpc.Status"},Di),e),_.iam=((i={}).v1=((r={}).IAMPolicy=(((Li.prototype=Object.create(o.rpc.Service.prototype)).constructor=Li).create=function(e,t,n){return new this(e,t,n)},Object.defineProperty(Li.prototype.setIamPolicy=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.iam.v1.SetIamPolicyRequest,g.google.iam.v1.Policy,t,n)},"name",{value:"SetIamPolicy"}),Object.defineProperty(Li.prototype.getIamPolicy=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.iam.v1.GetIamPolicyRequest,g.google.iam.v1.Policy,t,n)},"name",{value:"GetIamPolicy"}),Object.defineProperty(Li.prototype.testIamPermissions=function e(t,n){return o.rpc.Service.prototype.rpcCall.call(this,e,g.google.iam.v1.TestIamPermissionsRequest,g.google.iam.v1.TestIamPermissionsResponse,t,n)},"name",{value:"TestIamPermissions"}),Li),r.SetIamPolicyRequest=(Ai.prototype.resource="",Ai.prototype.policy=null,Ai.prototype.updateMask=null,Ai.create=function(e){return new Ai(e)},Ai.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.resource&&Object.hasOwnProperty.call(e,"resource")&&t.uint32(10).string(e.resource),null!=e.policy&&Object.hasOwnProperty.call(e,"policy")&&g.google.iam.v1.Policy.encode(e.policy,t.uint32(18).fork(),n+1).ldelim(),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&g.google.protobuf.FieldMask.encode(e.updateMask,t.uint32(26).fork(),n+1).ldelim(),t},Ai.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ai.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.SetIamPolicyRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.resource=e.string();break;case 2:i.policy=g.google.iam.v1.Policy.decode(e,e.uint32(),void 0,o+1);break;case 3:i.updateMask=g.google.protobuf.FieldMask.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ai.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ai.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.resource&&Object.hasOwnProperty.call(e,"resource")&&!d.isString(e.resource))return"resource: string expected";var n;if(null!=e.policy&&Object.hasOwnProperty.call(e,"policy")&&(n=g.google.iam.v1.Policy.verify(e.policy,t+1)))return"policy."+n;if(null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(n=g.google.protobuf.FieldMask.verify(e.updateMask,t+1)))return"updateMask."+n;return null},Ai.fromObject=function(e,t){if(e instanceof g.google.iam.v1.SetIamPolicyRequest)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.SetIamPolicyRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.SetIamPolicyRequest;if(null!=e.resource&&(n.resource=String(e.resource)),null!=e.policy){if(!d.isObject(e.policy))throw TypeError(".google.iam.v1.SetIamPolicyRequest.policy: object expected");n.policy=g.google.iam.v1.Policy.fromObject(e.policy,t+1)}if(null!=e.updateMask){if(!d.isObject(e.updateMask))throw TypeError(".google.iam.v1.SetIamPolicyRequest.updateMask: object expected");n.updateMask=g.google.protobuf.FieldMask.fromObject(e.updateMask,t+1)}return n},Ai.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.resource="",o.policy=null,o.updateMask=null),null!=e.resource&&Object.hasOwnProperty.call(e,"resource")&&(o.resource=e.resource),null!=e.policy&&Object.hasOwnProperty.call(e,"policy")&&(o.policy=g.google.iam.v1.Policy.toObject(e.policy,t,n+1)),null!=e.updateMask&&Object.hasOwnProperty.call(e,"updateMask")&&(o.updateMask=g.google.protobuf.FieldMask.toObject(e.updateMask,t,n+1)),o},Ai.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ai.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.SetIamPolicyRequest"},Ai),r.GetIamPolicyRequest=(Ni.prototype.resource="",Ni.prototype.options=null,Ni.create=function(e){return new Ni(e)},Ni.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.resource&&Object.hasOwnProperty.call(e,"resource")&&t.uint32(10).string(e.resource),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&g.google.iam.v1.GetPolicyOptions.encode(e.options,t.uint32(18).fork(),n+1).ldelim(),t},Ni.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ni.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.GetIamPolicyRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.resource=e.string();break;case 2:i.options=g.google.iam.v1.GetPolicyOptions.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ni.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ni.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.resource&&Object.hasOwnProperty.call(e,"resource")&&!d.isString(e.resource))return"resource: string expected";if(null!=e.options&&Object.hasOwnProperty.call(e,"options")){e=g.google.iam.v1.GetPolicyOptions.verify(e.options,t+1);if(e)return"options."+e}return null},Ni.fromObject=function(e,t){if(e instanceof g.google.iam.v1.GetIamPolicyRequest)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.GetIamPolicyRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.GetIamPolicyRequest;if(null!=e.resource&&(n.resource=String(e.resource)),null!=e.options){if(!d.isObject(e.options))throw TypeError(".google.iam.v1.GetIamPolicyRequest.options: object expected");n.options=g.google.iam.v1.GetPolicyOptions.fromObject(e.options,t+1)}return n},Ni.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.resource="",o.options=null),null!=e.resource&&Object.hasOwnProperty.call(e,"resource")&&(o.resource=e.resource),null!=e.options&&Object.hasOwnProperty.call(e,"options")&&(o.options=g.google.iam.v1.GetPolicyOptions.toObject(e.options,t,n+1)),o},Ni.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ni.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.GetIamPolicyRequest"},Ni),r.TestIamPermissionsRequest=(_i.prototype.resource="",_i.prototype.permissions=d.emptyArray,_i.create=function(e){return new _i(e)},_i.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.resource&&Object.hasOwnProperty.call(e,"resource")&&t.uint32(10).string(e.resource),null!=e.permissions&&e.permissions.length)for(var o=0;o<e.permissions.length;++o)t.uint32(18).string(e.permissions[o]);return t},_i.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},_i.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.TestIamPermissionsRequest;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.resource=e.string();break;case 2:i.permissions&&i.permissions.length||(i.permissions=[]),i.permissions.push(e.string());break;default:e.skipType(7&a,o)}}return i},_i.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},_i.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.resource&&Object.hasOwnProperty.call(e,"resource")&&!d.isString(e.resource))return"resource: string expected";if(null!=e.permissions&&Object.hasOwnProperty.call(e,"permissions")){if(!Array.isArray(e.permissions))return"permissions: array expected";for(var n=0;n<e.permissions.length;++n)if(!d.isString(e.permissions[n]))return"permissions: string[] expected"}return null},_i.fromObject=function(e,t){if(e instanceof g.google.iam.v1.TestIamPermissionsRequest)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.TestIamPermissionsRequest: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.TestIamPermissionsRequest;if(null!=e.resource&&(n.resource=String(e.resource)),e.permissions){if(!Array.isArray(e.permissions))throw TypeError(".google.iam.v1.TestIamPermissionsRequest.permissions: array expected");n.permissions=[];for(var o=0;o<e.permissions.length;++o)n.permissions[o]=String(e.permissions[o])}return n},_i.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.permissions=[]),t.defaults&&(o.resource=""),null!=e.resource&&Object.hasOwnProperty.call(e,"resource")&&(o.resource=e.resource),e.permissions&&e.permissions.length){o.permissions=[];for(var r=0;r<e.permissions.length;++r)o.permissions[r]=e.permissions[r]}return o},_i.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},_i.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.TestIamPermissionsRequest"},_i),r.TestIamPermissionsResponse=(Bi.prototype.permissions=d.emptyArray,Bi.create=function(e){return new Bi(e)},Bi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.permissions&&e.permissions.length)for(var o=0;o<e.permissions.length;++o)t.uint32(10).string(e.permissions[o]);return t},Bi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Bi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.TestIamPermissionsResponse;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?(i.permissions&&i.permissions.length||(i.permissions=[]),i.permissions.push(e.string())):e.skipType(7&a,o)}return i},Bi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Bi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.permissions&&Object.hasOwnProperty.call(e,"permissions")){if(!Array.isArray(e.permissions))return"permissions: array expected";for(var n=0;n<e.permissions.length;++n)if(!d.isString(e.permissions[n]))return"permissions: string[] expected"}return null},Bi.fromObject=function(e,t){if(e instanceof g.google.iam.v1.TestIamPermissionsResponse)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.TestIamPermissionsResponse: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.TestIamPermissionsResponse;if(e.permissions){if(!Array.isArray(e.permissions))throw TypeError(".google.iam.v1.TestIamPermissionsResponse.permissions: array expected");n.permissions=[];for(var o=0;o<e.permissions.length;++o)n.permissions[o]=String(e.permissions[o])}return n},Bi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.permissions=[]),e.permissions&&e.permissions.length){o.permissions=[];for(var r=0;r<e.permissions.length;++r)o.permissions[r]=e.permissions[r]}return o},Bi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Bi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.TestIamPermissionsResponse"},Bi),r.GetPolicyOptions=(Ui.prototype.requestedPolicyVersion=0,Ui.create=function(e){return new Ui(e)},Ui.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.requestedPolicyVersion&&Object.hasOwnProperty.call(e,"requestedPolicyVersion")&&t.uint32(8).int32(e.requestedPolicyVersion),t},Ui.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ui.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.GetPolicyOptions;e.pos<r;){var a=e.uint32();if(a===n)break;a>>>3==1?i.requestedPolicyVersion=e.int32():e.skipType(7&a,o)}return i},Ui.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ui.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.requestedPolicyVersion&&Object.hasOwnProperty.call(e,"requestedPolicyVersion")&&!d.isInteger(e.requestedPolicyVersion)?"requestedPolicyVersion: integer expected":null},Ui.fromObject=function(e,t){if(e instanceof g.google.iam.v1.GetPolicyOptions)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.GetPolicyOptions: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.iam.v1.GetPolicyOptions;return null!=e.requestedPolicyVersion&&(t.requestedPolicyVersion=0|e.requestedPolicyVersion),t},Ui.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.requestedPolicyVersion=0),null!=e.requestedPolicyVersion&&Object.hasOwnProperty.call(e,"requestedPolicyVersion")&&(n.requestedPolicyVersion=e.requestedPolicyVersion),n},Ui.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ui.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.GetPolicyOptions"},Ui),r.Policy=(Mi.prototype.version=0,Mi.prototype.bindings=d.emptyArray,Mi.prototype.auditConfigs=d.emptyArray,Mi.prototype.etag=d.newBuffer([]),Mi.create=function(e){return new Mi(e)},Mi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.version&&Object.hasOwnProperty.call(e,"version")&&t.uint32(8).int32(e.version),null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&t.uint32(26).bytes(e.etag),null!=e.bindings&&e.bindings.length)for(var o=0;o<e.bindings.length;++o)g.google.iam.v1.Binding.encode(e.bindings[o],t.uint32(34).fork(),n+1).ldelim();if(null!=e.auditConfigs&&e.auditConfigs.length)for(o=0;o<e.auditConfigs.length;++o)g.google.iam.v1.AuditConfig.encode(e.auditConfigs[o],t.uint32(50).fork(),n+1).ldelim();return t},Mi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Mi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.Policy;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.version=e.int32();break;case 4:i.bindings&&i.bindings.length||(i.bindings=[]),i.bindings.push(g.google.iam.v1.Binding.decode(e,e.uint32(),void 0,o+1));break;case 6:i.auditConfigs&&i.auditConfigs.length||(i.auditConfigs=[]),i.auditConfigs.push(g.google.iam.v1.AuditConfig.decode(e,e.uint32(),void 0,o+1));break;case 3:i.etag=e.bytes();break;default:e.skipType(7&a,o)}}return i},Mi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Mi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.version&&Object.hasOwnProperty.call(e,"version")&&!d.isInteger(e.version))return"version: integer expected";if(null!=e.bindings&&Object.hasOwnProperty.call(e,"bindings")){if(!Array.isArray(e.bindings))return"bindings: array expected";for(var n=0;n<e.bindings.length;++n)if(o=g.google.iam.v1.Binding.verify(e.bindings[n],t+1))return"bindings."+o}if(null!=e.auditConfigs&&Object.hasOwnProperty.call(e,"auditConfigs")){if(!Array.isArray(e.auditConfigs))return"auditConfigs: array expected";for(var o,n=0;n<e.auditConfigs.length;++n)if(o=g.google.iam.v1.AuditConfig.verify(e.auditConfigs[n],t+1))return"auditConfigs."+o}return null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&!(e.etag&&"number"==typeof e.etag.length||d.isString(e.etag))?"etag: buffer expected":null},Mi.fromObject=function(e,t){if(e instanceof g.google.iam.v1.Policy)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.Policy: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.Policy;if(null!=e.version&&(n.version=0|e.version),e.bindings){if(!Array.isArray(e.bindings))throw TypeError(".google.iam.v1.Policy.bindings: array expected");n.bindings=[];for(var o=0;o<e.bindings.length;++o){if(!d.isObject(e.bindings[o]))throw TypeError(".google.iam.v1.Policy.bindings: object expected");n.bindings[o]=g.google.iam.v1.Binding.fromObject(e.bindings[o],t+1)}}if(e.auditConfigs){if(!Array.isArray(e.auditConfigs))throw TypeError(".google.iam.v1.Policy.auditConfigs: array expected");n.auditConfigs=[];for(o=0;o<e.auditConfigs.length;++o){if(!d.isObject(e.auditConfigs[o]))throw TypeError(".google.iam.v1.Policy.auditConfigs: object expected");n.auditConfigs[o]=g.google.iam.v1.AuditConfig.fromObject(e.auditConfigs[o],t+1)}}return null!=e.etag&&("string"==typeof e.etag?d.base64.decode(e.etag,n.etag=d.newBuffer(d.base64.length(e.etag)),0):0<=e.etag.length&&(n.etag=e.etag)),n},Mi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.bindings=[],o.auditConfigs=[]),t.defaults&&(o.version=0,t.bytes===String?o.etag="":(o.etag=[],t.bytes!==Array&&(o.etag=d.newBuffer(o.etag)))),null!=e.version&&Object.hasOwnProperty.call(e,"version")&&(o.version=e.version),null!=e.etag&&Object.hasOwnProperty.call(e,"etag")&&(o.etag=t.bytes===String?d.base64.encode(e.etag,0,e.etag.length):t.bytes===Array?Array.prototype.slice.call(e.etag):e.etag),e.bindings&&e.bindings.length){o.bindings=[];for(var r=0;r<e.bindings.length;++r)o.bindings[r]=g.google.iam.v1.Binding.toObject(e.bindings[r],t,n+1)}if(e.auditConfigs&&e.auditConfigs.length){o.auditConfigs=[];for(r=0;r<e.auditConfigs.length;++r)o.auditConfigs[r]=g.google.iam.v1.AuditConfig.toObject(e.auditConfigs[r],t,n+1)}return o},Mi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Mi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.Policy"},Mi),r.Binding=(qi.prototype.role="",qi.prototype.members=d.emptyArray,qi.prototype.condition=null,qi.create=function(e){return new qi(e)},qi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.role&&Object.hasOwnProperty.call(e,"role")&&t.uint32(10).string(e.role),null!=e.members&&e.members.length)for(var o=0;o<e.members.length;++o)t.uint32(18).string(e.members[o]);return null!=e.condition&&Object.hasOwnProperty.call(e,"condition")&&g.google.type.Expr.encode(e.condition,t.uint32(26).fork(),n+1).ldelim(),t},qi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},qi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.Binding;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.role=e.string();break;case 2:i.members&&i.members.length||(i.members=[]),i.members.push(e.string());break;case 3:i.condition=g.google.type.Expr.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},qi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},qi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.role&&Object.hasOwnProperty.call(e,"role")&&!d.isString(e.role))return"role: string expected";if(null!=e.members&&Object.hasOwnProperty.call(e,"members")){if(!Array.isArray(e.members))return"members: array expected";for(var n=0;n<e.members.length;++n)if(!d.isString(e.members[n]))return"members: string[] expected"}if(null!=e.condition&&Object.hasOwnProperty.call(e,"condition")){t=g.google.type.Expr.verify(e.condition,t+1);if(t)return"condition."+t}return null},qi.fromObject=function(e,t){if(e instanceof g.google.iam.v1.Binding)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.Binding: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.Binding;if(null!=e.role&&(n.role=String(e.role)),e.members){if(!Array.isArray(e.members))throw TypeError(".google.iam.v1.Binding.members: array expected");n.members=[];for(var o=0;o<e.members.length;++o)n.members[o]=String(e.members[o])}if(null!=e.condition){if(!d.isObject(e.condition))throw TypeError(".google.iam.v1.Binding.condition: object expected");n.condition=g.google.type.Expr.fromObject(e.condition,t+1)}return n},qi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.members=[]),t.defaults&&(o.role="",o.condition=null),null!=e.role&&Object.hasOwnProperty.call(e,"role")&&(o.role=e.role),e.members&&e.members.length){o.members=[];for(var r=0;r<e.members.length;++r)o.members[r]=e.members[r]}return null!=e.condition&&Object.hasOwnProperty.call(e,"condition")&&(o.condition=g.google.type.Expr.toObject(e.condition,t,n+1)),o},qi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},qi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.Binding"},qi),r.AuditConfig=(Vi.prototype.service="",Vi.prototype.auditLogConfigs=d.emptyArray,Vi.create=function(e){return new Vi(e)},Vi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.service&&Object.hasOwnProperty.call(e,"service")&&t.uint32(10).string(e.service),null!=e.auditLogConfigs&&e.auditLogConfigs.length)for(var o=0;o<e.auditLogConfigs.length;++o)g.google.iam.v1.AuditLogConfig.encode(e.auditLogConfigs[o],t.uint32(26).fork(),n+1).ldelim();return t},Vi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Vi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.AuditConfig;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.service=e.string();break;case 3:i.auditLogConfigs&&i.auditLogConfigs.length||(i.auditLogConfigs=[]),i.auditLogConfigs.push(g.google.iam.v1.AuditLogConfig.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Vi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Vi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.service&&Object.hasOwnProperty.call(e,"service")&&!d.isString(e.service))return"service: string expected";if(null!=e.auditLogConfigs&&Object.hasOwnProperty.call(e,"auditLogConfigs")){if(!Array.isArray(e.auditLogConfigs))return"auditLogConfigs: array expected";for(var n=0;n<e.auditLogConfigs.length;++n){var o=g.google.iam.v1.AuditLogConfig.verify(e.auditLogConfigs[n],t+1);if(o)return"auditLogConfigs."+o}}return null},Vi.fromObject=function(e,t){if(e instanceof g.google.iam.v1.AuditConfig)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.AuditConfig: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.AuditConfig;if(null!=e.service&&(n.service=String(e.service)),e.auditLogConfigs){if(!Array.isArray(e.auditLogConfigs))throw TypeError(".google.iam.v1.AuditConfig.auditLogConfigs: array expected");n.auditLogConfigs=[];for(var o=0;o<e.auditLogConfigs.length;++o){if(!d.isObject(e.auditLogConfigs[o]))throw TypeError(".google.iam.v1.AuditConfig.auditLogConfigs: object expected");n.auditLogConfigs[o]=g.google.iam.v1.AuditLogConfig.fromObject(e.auditLogConfigs[o],t+1)}}return n},Vi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.auditLogConfigs=[]),t.defaults&&(o.service=""),null!=e.service&&Object.hasOwnProperty.call(e,"service")&&(o.service=e.service),e.auditLogConfigs&&e.auditLogConfigs.length){o.auditLogConfigs=[];for(var r=0;r<e.auditLogConfigs.length;++r)o.auditLogConfigs[r]=g.google.iam.v1.AuditLogConfig.toObject(e.auditLogConfigs[r],t,n+1)}return o},Vi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Vi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.AuditConfig"},Vi),r.AuditLogConfig=(Fi.prototype.logType=0,Fi.prototype.exemptedMembers=d.emptyArray,Fi.create=function(e){return new Fi(e)},Fi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.logType&&Object.hasOwnProperty.call(e,"logType")&&t.uint32(8).int32(e.logType),null!=e.exemptedMembers&&e.exemptedMembers.length)for(var o=0;o<e.exemptedMembers.length;++o)t.uint32(18).string(e.exemptedMembers[o]);return t},Fi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Fi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.AuditLogConfig;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.logType=e.int32();break;case 2:i.exemptedMembers&&i.exemptedMembers.length||(i.exemptedMembers=[]),i.exemptedMembers.push(e.string());break;default:e.skipType(7&a,o)}}return i},Fi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Fi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.logType&&Object.hasOwnProperty.call(e,"logType"))switch(e.logType){default:return"logType: enum value expected";case 0:case 1:case 2:case 3:}if(null!=e.exemptedMembers&&Object.hasOwnProperty.call(e,"exemptedMembers")){if(!Array.isArray(e.exemptedMembers))return"exemptedMembers: array expected";for(var n=0;n<e.exemptedMembers.length;++n)if(!d.isString(e.exemptedMembers[n]))return"exemptedMembers: string[] expected"}return null},Fi.fromObject=function(e,t){if(e instanceof g.google.iam.v1.AuditLogConfig)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.AuditLogConfig: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.AuditLogConfig;switch(e.logType){default:"number"==typeof e.logType&&(n.logType=e.logType);break;case"LOG_TYPE_UNSPECIFIED":case 0:n.logType=0;break;case"ADMIN_READ":case 1:n.logType=1;break;case"DATA_WRITE":case 2:n.logType=2;break;case"DATA_READ":case 3:n.logType=3}if(e.exemptedMembers){if(!Array.isArray(e.exemptedMembers))throw TypeError(".google.iam.v1.AuditLogConfig.exemptedMembers: array expected");n.exemptedMembers=[];for(var o=0;o<e.exemptedMembers.length;++o)n.exemptedMembers[o]=String(e.exemptedMembers[o])}return n},Fi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.exemptedMembers=[]),t.defaults&&(o.logType=t.enums===String?"LOG_TYPE_UNSPECIFIED":0),null!=e.logType&&Object.hasOwnProperty.call(e,"logType")&&(o.logType=t.enums!==String||void 0===g.google.iam.v1.AuditLogConfig.LogType[e.logType]?e.logType:g.google.iam.v1.AuditLogConfig.LogType[e.logType]),e.exemptedMembers&&e.exemptedMembers.length){o.exemptedMembers=[];for(var r=0;r<e.exemptedMembers.length;++r)o.exemptedMembers[r]=e.exemptedMembers[r]}return o},Fi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Fi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.AuditLogConfig"},Fi.LogType=(t={},(n=Object.create(t))[t[0]="LOG_TYPE_UNSPECIFIED"]=0,n[t[1]="ADMIN_READ"]=1,n[t[2]="DATA_WRITE"]=2,n[t[3]="DATA_READ"]=3,n),Fi),r.PolicyDelta=(Gi.prototype.bindingDeltas=d.emptyArray,Gi.prototype.auditConfigDeltas=d.emptyArray,Gi.create=function(e){return new Gi(e)},Gi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");if(null!=e.bindingDeltas&&e.bindingDeltas.length)for(var o=0;o<e.bindingDeltas.length;++o)g.google.iam.v1.BindingDelta.encode(e.bindingDeltas[o],t.uint32(10).fork(),n+1).ldelim();if(null!=e.auditConfigDeltas&&e.auditConfigDeltas.length)for(o=0;o<e.auditConfigDeltas.length;++o)g.google.iam.v1.AuditConfigDelta.encode(e.auditConfigDeltas[o],t.uint32(18).fork(),n+1).ldelim();return t},Gi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Gi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.PolicyDelta;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.bindingDeltas&&i.bindingDeltas.length||(i.bindingDeltas=[]),i.bindingDeltas.push(g.google.iam.v1.BindingDelta.decode(e,e.uint32(),void 0,o+1));break;case 2:i.auditConfigDeltas&&i.auditConfigDeltas.length||(i.auditConfigDeltas=[]),i.auditConfigDeltas.push(g.google.iam.v1.AuditConfigDelta.decode(e,e.uint32(),void 0,o+1));break;default:e.skipType(7&a,o)}}return i},Gi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Gi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.bindingDeltas&&Object.hasOwnProperty.call(e,"bindingDeltas")){if(!Array.isArray(e.bindingDeltas))return"bindingDeltas: array expected";for(var n=0;n<e.bindingDeltas.length;++n)if(o=g.google.iam.v1.BindingDelta.verify(e.bindingDeltas[n],t+1))return"bindingDeltas."+o}if(null!=e.auditConfigDeltas&&Object.hasOwnProperty.call(e,"auditConfigDeltas")){if(!Array.isArray(e.auditConfigDeltas))return"auditConfigDeltas: array expected";for(var o,n=0;n<e.auditConfigDeltas.length;++n)if(o=g.google.iam.v1.AuditConfigDelta.verify(e.auditConfigDeltas[n],t+1))return"auditConfigDeltas."+o}return null},Gi.fromObject=function(e,t){if(e instanceof g.google.iam.v1.PolicyDelta)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.PolicyDelta: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.PolicyDelta;if(e.bindingDeltas){if(!Array.isArray(e.bindingDeltas))throw TypeError(".google.iam.v1.PolicyDelta.bindingDeltas: array expected");n.bindingDeltas=[];for(var o=0;o<e.bindingDeltas.length;++o){if(!d.isObject(e.bindingDeltas[o]))throw TypeError(".google.iam.v1.PolicyDelta.bindingDeltas: object expected");n.bindingDeltas[o]=g.google.iam.v1.BindingDelta.fromObject(e.bindingDeltas[o],t+1)}}if(e.auditConfigDeltas){if(!Array.isArray(e.auditConfigDeltas))throw TypeError(".google.iam.v1.PolicyDelta.auditConfigDeltas: array expected");n.auditConfigDeltas=[];for(o=0;o<e.auditConfigDeltas.length;++o){if(!d.isObject(e.auditConfigDeltas[o]))throw TypeError(".google.iam.v1.PolicyDelta.auditConfigDeltas: object expected");n.auditConfigDeltas[o]=g.google.iam.v1.AuditConfigDelta.fromObject(e.auditConfigDeltas[o],t+1)}}return n},Gi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};if((t.arrays||t.defaults)&&(o.bindingDeltas=[],o.auditConfigDeltas=[]),e.bindingDeltas&&e.bindingDeltas.length){o.bindingDeltas=[];for(var r=0;r<e.bindingDeltas.length;++r)o.bindingDeltas[r]=g.google.iam.v1.BindingDelta.toObject(e.bindingDeltas[r],t,n+1)}if(e.auditConfigDeltas&&e.auditConfigDeltas.length){o.auditConfigDeltas=[];for(r=0;r<e.auditConfigDeltas.length;++r)o.auditConfigDeltas[r]=g.google.iam.v1.AuditConfigDelta.toObject(e.auditConfigDeltas[r],t,n+1)}return o},Gi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Gi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.PolicyDelta"},Gi),r.BindingDelta=(Ji.prototype.action=0,Ji.prototype.role="",Ji.prototype.member="",Ji.prototype.condition=null,Ji.create=function(e){return new Ji(e)},Ji.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.action&&Object.hasOwnProperty.call(e,"action")&&t.uint32(8).int32(e.action),null!=e.role&&Object.hasOwnProperty.call(e,"role")&&t.uint32(18).string(e.role),null!=e.member&&Object.hasOwnProperty.call(e,"member")&&t.uint32(26).string(e.member),null!=e.condition&&Object.hasOwnProperty.call(e,"condition")&&g.google.type.Expr.encode(e.condition,t.uint32(34).fork(),n+1).ldelim(),t},Ji.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ji.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.BindingDelta;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.action=e.int32();break;case 2:i.role=e.string();break;case 3:i.member=e.string();break;case 4:i.condition=g.google.type.Expr.decode(e,e.uint32(),void 0,o+1);break;default:e.skipType(7&a,o)}}return i},Ji.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ji.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.action&&Object.hasOwnProperty.call(e,"action"))switch(e.action){default:return"action: enum value expected";case 0:case 1:case 2:}if(null!=e.role&&Object.hasOwnProperty.call(e,"role")&&!d.isString(e.role))return"role: string expected";if(null!=e.member&&Object.hasOwnProperty.call(e,"member")&&!d.isString(e.member))return"member: string expected";if(null!=e.condition&&Object.hasOwnProperty.call(e,"condition")){e=g.google.type.Expr.verify(e.condition,t+1);if(e)return"condition."+e}return null},Ji.fromObject=function(e,t){if(e instanceof g.google.iam.v1.BindingDelta)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.BindingDelta: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.BindingDelta;switch(e.action){default:"number"==typeof e.action&&(n.action=e.action);break;case"ACTION_UNSPECIFIED":case 0:n.action=0;break;case"ADD":case 1:n.action=1;break;case"REMOVE":case 2:n.action=2}if(null!=e.role&&(n.role=String(e.role)),null!=e.member&&(n.member=String(e.member)),null!=e.condition){if(!d.isObject(e.condition))throw TypeError(".google.iam.v1.BindingDelta.condition: object expected");n.condition=g.google.type.Expr.fromObject(e.condition,t+1)}return n},Ji.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");var o={};return t.defaults&&(o.action=t.enums===String?"ACTION_UNSPECIFIED":0,o.role="",o.member="",o.condition=null),null!=e.action&&Object.hasOwnProperty.call(e,"action")&&(o.action=t.enums!==String||void 0===g.google.iam.v1.BindingDelta.Action[e.action]?e.action:g.google.iam.v1.BindingDelta.Action[e.action]),null!=e.role&&Object.hasOwnProperty.call(e,"role")&&(o.role=e.role),null!=e.member&&Object.hasOwnProperty.call(e,"member")&&(o.member=e.member),null!=e.condition&&Object.hasOwnProperty.call(e,"condition")&&(o.condition=g.google.type.Expr.toObject(e.condition,t,n+1)),o},Ji.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ji.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.BindingDelta"},Ji.Action=(t={},(n=Object.create(t))[t[0]="ACTION_UNSPECIFIED"]=0,n[t[1]="ADD"]=1,n[t[2]="REMOVE"]=2,n),Ji),r.AuditConfigDelta=(zi.prototype.action=0,zi.prototype.service="",zi.prototype.exemptedMember="",zi.prototype.logType="",zi.create=function(e){return new zi(e)},zi.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.action&&Object.hasOwnProperty.call(e,"action")&&t.uint32(8).int32(e.action),null!=e.service&&Object.hasOwnProperty.call(e,"service")&&t.uint32(18).string(e.service),null!=e.exemptedMember&&Object.hasOwnProperty.call(e,"exemptedMember")&&t.uint32(26).string(e.exemptedMember),null!=e.logType&&Object.hasOwnProperty.call(e,"logType")&&t.uint32(34).string(e.logType),t},zi.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},zi.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.iam.v1.AuditConfigDelta;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.action=e.int32();break;case 2:i.service=e.string();break;case 3:i.exemptedMember=e.string();break;case 4:i.logType=e.string();break;default:e.skipType(7&a,o)}}return i},zi.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},zi.verify=function(e,t){if("object"!=typeof e||null===e)return"object expected";if((t=void 0===t?0:t)>d.recursionLimit)return"maximum nesting depth exceeded";if(null!=e.action&&Object.hasOwnProperty.call(e,"action"))switch(e.action){default:return"action: enum value expected";case 0:case 1:case 2:}return null!=e.service&&Object.hasOwnProperty.call(e,"service")&&!d.isString(e.service)?"service: string expected":null!=e.exemptedMember&&Object.hasOwnProperty.call(e,"exemptedMember")&&!d.isString(e.exemptedMember)?"exemptedMember: string expected":null!=e.logType&&Object.hasOwnProperty.call(e,"logType")&&!d.isString(e.logType)?"logType: string expected":null},zi.fromObject=function(e,t){if(e instanceof g.google.iam.v1.AuditConfigDelta)return e;if(!d.isObject(e))throw TypeError(".google.iam.v1.AuditConfigDelta: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");var n=new g.google.iam.v1.AuditConfigDelta;switch(e.action){default:"number"==typeof e.action&&(n.action=e.action);break;case"ACTION_UNSPECIFIED":case 0:n.action=0;break;case"ADD":case 1:n.action=1;break;case"REMOVE":case 2:n.action=2}return null!=e.service&&(n.service=String(e.service)),null!=e.exemptedMember&&(n.exemptedMember=String(e.exemptedMember)),null!=e.logType&&(n.logType=String(e.logType)),n},zi.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.action=t.enums===String?"ACTION_UNSPECIFIED":0,n.service="",n.exemptedMember="",n.logType=""),null!=e.action&&Object.hasOwnProperty.call(e,"action")&&(n.action=t.enums!==String||void 0===g.google.iam.v1.AuditConfigDelta.Action[e.action]?e.action:g.google.iam.v1.AuditConfigDelta.Action[e.action]),null!=e.service&&Object.hasOwnProperty.call(e,"service")&&(n.service=e.service),null!=e.exemptedMember&&Object.hasOwnProperty.call(e,"exemptedMember")&&(n.exemptedMember=e.exemptedMember),null!=e.logType&&Object.hasOwnProperty.call(e,"logType")&&(n.logType=e.logType),n},zi.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},zi.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.iam.v1.AuditConfigDelta"},zi.Action=(t={},(n=Object.create(t))[t[0]="ACTION_UNSPECIFIED"]=0,n[t[1]="ADD"]=1,n[t[2]="REMOVE"]=2,n),zi),r),i),_.type=((a={}).Expr=(Ki.prototype.expression="",Ki.prototype.title="",Ki.prototype.description="",Ki.prototype.location="",Ki.create=function(e){return new Ki(e)},Ki.encode=function(e,t,n){if(t=t||s.create(),(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");return null!=e.expression&&Object.hasOwnProperty.call(e,"expression")&&t.uint32(10).string(e.expression),null!=e.title&&Object.hasOwnProperty.call(e,"title")&&t.uint32(18).string(e.title),null!=e.description&&Object.hasOwnProperty.call(e,"description")&&t.uint32(26).string(e.description),null!=e.location&&Object.hasOwnProperty.call(e,"location")&&t.uint32(34).string(e.location),t},Ki.encodeDelimited=function(e,t){return this.encode(e,t&&t.len?t.fork():t).ldelim()},Ki.decode=function(e,t,n,o){if(e instanceof p||(e=p.create(e)),(o=void 0===o?0:o)>p.recursionLimit)throw Error("maximum nesting depth exceeded");for(var r=void 0===t?e.len:e.pos+t,i=new g.google.type.Expr;e.pos<r;){var a=e.uint32();if(a===n)break;switch(a>>>3){case 1:i.expression=e.string();break;case 2:i.title=e.string();break;case 3:i.description=e.string();break;case 4:i.location=e.string();break;default:e.skipType(7&a,o)}}return i},Ki.decodeDelimited=function(e){return e instanceof p||(e=new p(e)),this.decode(e,e.uint32())},Ki.verify=function(e,t){return"object"!=typeof e||null===e?"object expected":(t=void 0===t?0:t)>d.recursionLimit?"maximum nesting depth exceeded":null!=e.expression&&Object.hasOwnProperty.call(e,"expression")&&!d.isString(e.expression)?"expression: string expected":null!=e.title&&Object.hasOwnProperty.call(e,"title")&&!d.isString(e.title)?"title: string expected":null!=e.description&&Object.hasOwnProperty.call(e,"description")&&!d.isString(e.description)?"description: string expected":null!=e.location&&Object.hasOwnProperty.call(e,"location")&&!d.isString(e.location)?"location: string expected":null},Ki.fromObject=function(e,t){if(e instanceof g.google.type.Expr)return e;if(!d.isObject(e))throw TypeError(".google.type.Expr: object expected");if((t=void 0===t?0:t)>d.recursionLimit)throw Error("maximum nesting depth exceeded");t=new g.google.type.Expr;return null!=e.expression&&(t.expression=String(e.expression)),null!=e.title&&(t.title=String(e.title)),null!=e.description&&(t.description=String(e.description)),null!=e.location&&(t.location=String(e.location)),t},Ki.toObject=function(e,t,n){if(t=t||{},(n=void 0===n?0:n)>d.recursionLimit)throw Error("max depth exceeded");n={};return t.defaults&&(n.expression="",n.title="",n.description="",n.location=""),null!=e.expression&&Object.hasOwnProperty.call(e,"expression")&&(n.expression=e.expression),null!=e.title&&Object.hasOwnProperty.call(e,"title")&&(n.title=e.title),null!=e.description&&Object.hasOwnProperty.call(e,"description")&&(n.description=e.description),null!=e.location&&Object.hasOwnProperty.call(e,"location")&&(n.location=e.location),n},Ki.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},Ki.getTypeUrl=function(e){return(e=void 0===e?"type.googleapis.com":e)+"/google.type.Expr"},Ki),a),_),g});